@charset "utf-8";

/*---- CORPO PRINCIPAL ----*/

body {
  height: 100%;
  background-color: #F2F3F5; 
}

main {
  background: white;
  padding: 3%;
}

.main-bottom.card {
  background: white;
}

.container-bottom-a {
  width: 60%;
  margin: 1em 0 0 0;
}

.container-bottom-a {
  width: 40%;
}

/*.site-grid {
  background-image: 
    url('/media/templates/site/portal_mpam_v5/images/BACKGROUND_CIMA.png'),
    url('/media/templates/site/portal_mpam_v5/images/BACKGROUND_BAIXO.png');
  background-repeat: no-repeat, no-repeat;
  background-position: top left, bottom center;
   background-size: 100% auto, 100% auto;
}*/

/*---- RODAPÉ ----*/

#fundo-footer {
  height: 100%;
  background: url(/media/templates/site/portal_mpam_v5/images/fundo-footer.png) no-repeat right bottom;
}

#degrade-footer{
  /*background: linear-gradient(to bottom, #ffffff00 70%, #7e141a 100%);*/
  background: linear-gradient(to bottom, #53070e 50%, #7e141a 100%);
}

.endereco-bar {
  background-color: #7e141a;  /* Ajuste para a cor desejada */
  color: #ffffff;             /* Cor do texto (branco) */
  text-align: center;         /* Centraliza o conteúdo */
  padding: 1rem;              /* Espaçamento interno */
}

.endereco-bar p{
margin-bottom: 0rem;
  font-size: 0.8em;
}

#fundo-menu-principal {
  height: 100%;
  background: url(/media/templates/site/portal_mpam_v5/images/fundo-menu-topo.png) repeat-x;
  min-height: 72px;
}

.container-header {
   background: linear-gradient(to right, #fff 40%, #ffe7e8 60%, #7e141a 100%);
}

.footer {
  background-color:  transparent;
  background-image: none;
  margin-top: 3rem;
}

.paddingzero {
  padding: 0 !important;
}


/*---- TOPO DA PÁGINA ----*/

#fundobarratopo {
  background: #7e141a;
}

hr {
  margin: 0.3rem 0;
}

.container-banner {
  margin: 0;
}

h2.titulohome {
  color: #7e141a;
  margin: 10px 0 5px 0;
  display: block;
  border-bottom: 4px solid #7e141a;
  text-align: left;
  text-transform: uppercase;
  font-size: 1.6em;
}


/*---- UNIFICAÇÃO DAS REGRAS DE .card ----*/

.card {
  background: transparent;
  border: 0;
}

.wrapperlinks {
  text-align: center;
}

.boxservicos img {
  margin: 0.6em;
}

.boxareasdeatuacao img {
  margin: 1.5em;
}

a.brand-logo {
  width: 280px;
}

.bg-info {
  background-color: #a71817 !important;
}

.card-body {
  padding: 0;
}

.container-top-a,
.container-banner {
  width: 100%;
  max-width: none;
}
.container-header nav, .main-bottom {
  margin-top: 0;
}
.main-bottom {
  margin-bottom: 30px;
}


/*---- MENU DE ACESSIBILIDADE ----*/

#acessibilidade {
  align-items: center;
  justify-content: space-between;
  background: #7e141a;
  color: #FFF;
  font-size: 0.8em;
  height: fit-content;
  width: 100%;
  padding: .2em;
}

#acessibilidade ul {
  margin-top: 1px !important;
}

.acessibilidade-menu {
  animation: 0.3s fadeIn;
}

#acessibilidade ul li {
  float: none;
  /*cursor: pointer;*/
  padding: 0 2px;
}

#acessibilidade a {
  color: currentColor;
}

.acessibilidade-menu {
  max-width: 1320px !important;
  margin-left: -0.65em !important;
}

.acessibilidade-button {
  margin: 0 !important;
}

.acessibilidade-menu-container {
  justify-content: left !important;
}

#acessibilidade-options, .acessibilidade-menu-item {
  outline: none;
}


/*---- LOGIN TOPO (módulo acesso interno) ----*/

#logintopo {
  display: flex;
  align-items: center;
}

#quick-menu {
  width: 28em !important;
  height: fit-content !important;
  max-height: none !important;
  overflow: unset !important;
  animation: 0.3s fadeIn;
}

.quick-menu-item {
  font-size: 0.9em !important;
}

.acesso-interno-menu-button, .quick-menu-item,
.user-menu-button {
  outline: none;
}

#user-menu {
  animation: 0.3s fadeIn;
}


/*---- LAYOUT DE BOTÕES ----*/

/* Salvar na página de publicação de artigo */
main div #adminForm .d-grid .btn-primary {
  background: #448344;
  color: white;
  border-radius: 7px;
  text-align: center;
  border: 1px solid transparent;
}

/* Cancelar na página de publicação de artigo */
main div #adminForm .d-grid .btn-danger {
  background: #ca004b;
  color: white;
  border-radius: 7px;
  text-align: center;
  border: 1px solid transparent;
}

/* Botões principais (como o de entrar na página de login) */
.btn-primary {
  background: #7e141a;
  color: white;
  border-radius: 7px;
  text-align: center;
  border: 1px solid transparent;
}

/* Hover e focus desses três tipos de botão */
.btn-primary:hover, .btn-primary:focus,
main div #adminForm .d-grid .btn-primary:hover, 
main div #adminForm .d-grid .btn-primary:focus,
main div #adminForm .d-grid .btn-danger:hover, 
main div #adminForm .d-grid .btn-danger:focus {
  background: white;
  color: black;
  border: 1px solid black;
}

/* Botões secundários (como xtd botões na publicação de artigos) */
.btn-secondary {
  color: black;
  border: 1px solid black;
  background: white;
  border-radius: 7px;
  text-align: center;
}
.btn-secondary:hover, .btn-secondary:focus {
  color: #7e141a;
  border: 1px solid #7e141a;
}

/* Botão back to top no ca\nto inferior direito */
#back-top {
  color: white;
  background-color: #7e141a;
  border-color: white;
  border-width: 2px;
  border-radius: 50px;
  width: 3em;
  height: 3em;
  text-align: center;
  z-index: 9998;
}
#back-top:hover, #back-top:focus {
  color: #7e141a;
  background-color: white;
  border-color: #7e141a;
}
#back-top .icon-arrow-up {
  padding-top: .1em;
}
#back-top .icon-arrow-up::before {
  font-size: x-large;
}



.page-link {
  color: #7e141a;
}
.active .page-link {
  background: #7e141a;
  border-color: #7e141a;
}
.page-link:hover {
  color: black;
}


/*---- SLIDE DE BANNERS DA HOME ----*/

#mod-galeria-mpam506 .galeria-full-carousel {
  position: relative;
  width: 100%;
  margin: auto;
  overflow: hidden;
}

.galeria-carousel-image, .galeria-full-carousel {
  width: 100% !important;
  height: auto !important;
}

.galeria-carousel-prev, .galeria-carousel-next {
  top: 50% !important;
}


/*---- CONTAINER DE PESQUISA ----*/

.mod-search .input-group {
  display: flex;
  align-items: center;
  border: 1px solid #575757;  /* Borda leve */
  border-radius: 50px;        /* Bordas arredondadas para o container completo */
  background-color: #f0f0f0;  /* Fundo cinza claro */
  padding: 5px;
  box-sizing: border-box;
}

/* Campo de entrada de pesquisa */
.mod-search .form-control {
  border: none;
  padding: 10px 15px;
  margin: 0 8px 0 0;
  border-radius: 50px; /* Bordas arredondadas */
  background-color: #f0f0f0; /* Fundo cinza claro */
  font-size: 13px;
  outline: none; /* Remove o contorno ao focar */
  box-sizing: border-box;
  box-shadow: 0 0 0 0;
}

/* Botão de pesquisa com ícone de lupa */
.mod-search .search-btn {
  background-color: #f0f0f0; /* Fundo cinza claro para combinar com o campo */
  border: none;
  border-radius: 50%; /* Deixa o botão redondo */
  padding: 8px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: -40px; /* Ajusta a posição do botão para uni-lo ao campo de busca */
}

/* Ícone de lupa da barra de pesquisa */
.mod-search .search-btn .fa-search {
  color: #8a8a8a; /* Cor do ícone de lupa */
  font-size: 16px; /* Tamanho do ícone */
}

#mod-search-searchword450 {
  margin: 0 40px 0 0;
}

.container-header .container-nav {
  margin: 0;
  padding-bottom: 0em;
}


/*---- ATALHOS INTRANET -----*/

#mod-custom204 {
  overflow-x: scroll;
  white-space: nowrap;
  padding: 5px;
  border-radius: 5px;
  border: solid 1px;
  border-color: #ccc;
  font-size: 0.9rem;
}
.atalhos-intranet {
  width: 4800px;
}

.atalhos-intranet div {
  float: left;
  width: 150px;
  text-align: center;
  white-space: normal;
}


/*---- MÓDULO DE ÚLTIMAS NOTÍCIAS ----*/

.mod-ultimas-noticias-container {
  display: flex;
  border: 1px solid #e0e0e0;
  border-radius: 5px;
  overflow: hidden;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

.mod-ultimas-noticias-text {
  flex: 1;
  padding: 20px;
  background-color: #f5f5f5;
}

.mod-ultimas-noticias-text h2 {
  color: #b80000;
  font-size: 26px; 
  line-height: 1.3;
  margin: 0 0 10px;
}

.mod-ultimas-noticias-text a {
  text-decoration: none;
  color: #b80000;
}

.mod-ultimas-noticias-text a:hover {
  text-decoration: underline;
}

.mod-ultimas-noticias-image {
  flex: 1;
}

.mod-ultimas-noticias-image img {
  object-fit: cover;
}

.mod-news-slider {
  position: relative;
  width: 100%;
  overflow: hidden;
}

.slider .slide {
  position: relative;
  width: 100%;
  height: 500px;
  display: none; /* Apenas o slide ativo será exibido */
}

.slider .slide:first-child {
  display: block; /* Exibir o primeiro slide inicialmente */
}

.slider .overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
  padding: 10px;
}

.slider-nav, .galeria-carousel-navigation {
  text-align: center;
  display: none !important;
}

.slider-nav-button {
  width: 10px;
  height: 10px;
  margin: 0 5px;
  background-color: #ccc;
  border: none;
  border-radius: 50%;
  cursor: pointer;
}

.slider-nav-button.active {
  background-color: #000;
}

.slider-btn {
  z-index: 9 !important;
}


/*---- ESTILO PADRÃO PARA TELAS GRANDES (maior que 992px) ----*/

.container-header .navbar-brand {
  display: grid;
  grid-template-columns: 2fr 1fr 0fr; 
  gap: 30px; 
  width: 100%;
}

.container-bottom {
  display: grid;
  grid-template-columns: 3fr 2fr; 
  width: 100%;
  gap: 30px;
  margin-top: 0;
}
.container-right {
  background-color: white;
}



/*---- AJUSTES PARA TELAS PEQUENAS (menores que 992px) ----*/

@media (max-width: 992px) {
    .custom-grid, .container-bottom {
    grid-template-columns: 1fr;
  }

  .grid-child.position-left, .bottom-custom-esquerda {
    order: 1;
  }

  .grid-child.position-right, .bottom-custom-direita {
    order: 2;
  }
  #sessoes-plenario-next-videos {
    display: none!important;
  }
}

.bottom-custom-direita {
    background-color: #cdcdcd!important;
}



/*---- MENU DE NAVEGAÇÃO PRINCIPAL (mod_menu Menu Principal J5) ----*/

.item-2314 {
  width: 340px; 
}

#menuprincipal {
  max-width: fit-content;
}

ul#menuprincipal li ul {
  border-radius: 0px 0px 10px 10px;
  padding: .2em 0 .2em 0;
  margin-top: .1em;
  background: white;
  position: absolute;
  color: inherit;
  border-radius: 0px 0px 10px 10px;
  box-shadow: 5px 10px 5px rgba(0, 0, 0, 0.2);
  animation: 0.3s fadeIn;
}

ul#menuprincipal li span, .inicio-link {
  text-transform: uppercase;
  color: inherit;
  cursor: pointer;
}

ul#menuprincipal li span::after {
  content: '\f107';
  border: 0;
  width: .8em;
  height: .8em;
  font-family: "Font Awesome 6 Free";
  font-weight: 600;
  margin-inline-start: .5em;
  padding-bottom: 1.3em;
  display: inline-block;
  transform: none;
  transition: transform 0.3s ease-out;
}

/* Transforma a seta quando expande o menu no on hover do mouse */
ul#menuprincipal li span.active::after {
  transform: rotateX(-180deg) translateY(-2px);;
  transition: transform 0.3s ease-out;
  /*content: '\f106';*/
}

ul#menuprincipal li ul li span::after {
  content: '\f105';
}

/* Transforma a seta quando expande o menu no on hover do mouse */
ul#menuprincipal li ul li span.active::after {
  transition: transform 0.3s ease-out;
  transform: rotateY(-180deg) translateX(4px);;
  /*content: '\f104';*/
}

ul#menuprincipal li span:hover, ul#menuprincipal li a:hover,
ul#menuprincipal li span.active, .inicio-link:hover {
  color: #7e141a;
  font-weight: 600;
}

ul#menuprincipal li ul li ul {
  background-color: white;
  margin-top: -2em;
  top: auto;
  margin-bottom: 0;
  position: absolute;
  right: auto;
  left: 96%;
  border-radius: 0 10px 10px 0;
}

/* Iguala a área da li ao botão que ela contém */
ul#menuprincipal li {
  margin: .5em 1em;
  font-size: 0.9em;
  color: #636363;
  min-width: max-content;
  padding: .5em 1em;
  
}

ul#menuprincipal li ul li span {
  text-transform: none;
}

ul#menuprincipal li ul li {
  border-bottom: #636363 solid 1px;
  padding: 0 2em 0 .5em;
  color: inherit;
}

/* Tira o underline dos botões do menu que se expande */
ul#menuprincipal li ul li span,
ul#menuprincipal li ul li a,
.metismenu.mod-menu .parent > ul {
  text-decoration: none;
  color: inherit;
}


/*---- MENU DE NAVEGAÇÃO INTERNO DE CADA PÁGINA ----*/

#menucsscssinterno {
  color: #666;
  background: #f2f2f2;
  margin: 0 10px 20px 0;
  border-radius: 5px;
  border: 1px solid #CBCBCB;
  padding: 10px;
}



/*---- Removeu-se a duplicação no seletor abaixo ----*/

a, .footer, .metismenu-item.parent, .mm-collapse>li>a {
  color: #a71817;
}

.container-header .navbar-toggler {
  color: #a71817;
  border: 1px solid #a71817;
}



/* ---------------- ESTILO GERAL DO FOOTER -------------------------- */

.footer-content {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 10px;
  text-align: center;
}

.footer {
  color: white;
  justify-content: center;
}

.footer ul {
  grid-template-columns: none;
}

.footer ul li {
  width: 310px;
}

.footer ul li span:first-child{
  font-weight: bold;
  text-transform: uppercase;
 }

.footer ul li ul li span:first-child{
  font-weight: normal;
  text-transform: none;
 } 

.footer ul li ul{
  padding-left: 0em !important;
  }

/* Logo principal */
.footer-logo img {
  max-width: 100px;
  height: auto;
  margin-bottom: 10px;
}

/* Endereço (centralizado) */
.footer-address {
  flex: 2;
  font-size: 12px;
  text-align: center;
}

/* Contêiner para as duas logos menores */
.footer-logos {
  flex: 1;
  text-align: right;
  display: flex;
  justify-content: flex-end;
  gap: 10px;
}

/* Ajuste para as logos menores */
.footer-logo-pnpc img,
.footer-logo-radar img {
  max-width: 100%;
  height: auto;
}

/* Menu do footer */
#menu_footer {
  margin: 0 0 6rem 0;
  border-top: white 1px solid;
  padding: 2em 0;
}
#menu_footer a:hover, #menu_footer a:focus,
#menu-footer-atalhos a:hover, #menu-footer-atalhos a:focus{
  color: #d2ab68;
  font-weight: 600;
  text-decoration: none;
}
#menu_footer li ul li ul li {
  padding: 0;
  padding-inline-start: 1rem;
}
#menu_footer li ul li ul li a {
  font-size: 80%;
}
#menu_footer .item-1893 {
  width: 350px;
}
#menu_footer .item-1895 {
  width: 260px;
}


/* Responsividade para telas menores */
@media (max-width: 992px) {
  .footer-content {
    display: inline-grid;
  }
  .footer-logos {
    flex-direction: row; 
    gap: 10px;
  }
  .footer-address {
    font-size: 11px;
  }
  #menu_footer, #menu-footer-atalhos {
    display: none !important;
  }
  #degrade-footer {
    background: linear-gradient(to bottom, #ffffff00 70%, #7e141a 100%);
  }
}

/* Responsividade para transição entre telas menores (mobile) e maiores (desktop) */
@media (max-width: 1350px) {
  #menu_footer {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }
  #menu_footer li {
    margin-left: .2em;
    width: 260px !important;
  }
  #menu_footer .item-2316 {
    width: 200px !important;
  }
  footer div #mod-custom229 {
    margin-left: 1em;
  }
}
@media (max-width: 1100px) {
  #menu_footer li {
    width: 230px !important;
  }
}

/* ---------------- FIM Estilo geral do footer -------------------------- */


/* ---------------- ESTILO GERAL DO NOTICIAS-TAGS -------------------------- */

.mod-noticias-tags .noticias-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  gap: 20px;
}

.mod-noticias-tags .noticia-item {
  border: 1px solid #ddd;
  border-radius: 5px;
  overflow: hidden;
  background-color: #fff;
  text-align: center;
}

.mod-noticias-tags .noticia-item img {
  width: 100%;
  height: auto;
  display: block;
}

.mod-noticias-tags .noticia-content {
  padding: 15px;
}

.mod-noticias-tags .noticia-content h3 {
  font-size: 16px;
  margin-bottom: 10px;
}

.mod-noticias-tags .noticia-content p {
  font-size: 14px;
  color: #555;
}

/* ---------------- FIM Estilo geral do noticias-tags -------------------------- */


/* ---------------- ESTILO DO GIRO DE NOTÍCIAS E SERVIÇOS HOME -------------------------- */

.sessoes-plenario-container .card-body,
.servicos-container .card-body,
.mural-container {
  width: 100%;
  max-width: 1200px;
  margin: 0;
  padding: 20px 0 10px 0;
  background-color: #fff !important;
  text-align: center;
}

.servicos-links-uteis-container .card-body,
.parceiros-container .card-body {
  width: 100%;
  margin: 0;
  padding: 20px 0 10px 0;
  background-color: #fff !important;
}

.mural-container .card-body div p{
  font-size: 13px;
  color: #666;
  padding: 0 1em;
}

.sessoes-plenario-container .card-body h2,
.servicos-container .card-body h2,
.servicos-links-uteis-container .card-body h2,
.parceiros-container .card-body h2,
.mural-container h2,
.titulo-noticias
{
  font-size: 1.5em;
  border-bottom: 5px solid #f2f3f5;
  padding: 0 0 5px 20px;
  margin-bottom: 15px;
  color: #7e141a;
  text-align: left;
  text-transform: uppercase; /* Deixa o texto em letras maiúsculas */
}

.mural-container h2{
  background-color: #ffffff;
}

.servicos-container .card-body h2{
  margin-bottom: 0px;
}



#sessoes-plenario-playlist {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  padding: 0 20px;
}

#sessoes-plenario-main-video {
  flex: 1;
  max-width: 640px;
  min-width: 320px;
}

#sessoes-plenario-next-videos {
  display: flex;
  flex-direction: column;
  gap: 9px;
  flex: 0.7;
  min-width: 250px;
}

#sessoes-plenario-next-videos iframe {
  width: 100%;
  height: 186px;
}

#sessoes-plenario-link {
  display: inline-block;
  margin-top: 10px;
  font-weight: normal; /* Deixa o texto mais leve */
  text-decoration: none;
  color: #999; /* Cor cinza claro */
  font-size: 12px; /* Tamanho menor da fonte */
  letter-spacing: 1px; /* Espaçamento entre letras */
  text-transform: uppercase; /* Deixa o texto em letras maiúsculas */
  border-top: 2px solid #f2f3f5;
  width: -webkit-fill-available;
  padding: 11px 0 0 0;
}

#sessoes-plenario-link:hover, #sessoes-plenario-link:focus {
  color: #7e141a;
  font-weight: 600;
}

/* ---------------- FIM Estilo geral do giro de notícias -------------------------- */


/*------------- MENU DE SERVIÇOS -------------*/

.menu-servicos-container {
  width: 100%;
  max-width: 400px;
  border: 1px solid transparent; /* Remove a borda externa */
  font-family: Arial, sans-serif;
  margin: auto;
  color: #666;
}

.menu-servicos-item {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 13px;
  border-bottom: 2px solid #666; /* Linha mais escura abaixo do título */
}

.border-top{ 
  border-bottom: 0px solid #666; /* Linha mais escura abaixo do título */
  border-top: 2px solid #666 !important; /* Linha mais escura acima do título */
}

.menu-servicos-item .icon {
  margin-right: 8px;
}

.menu-servicos-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  border-top: none;
  border-left: none;
  border-right: none;
}

.menu-servicos-link {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 17px 5px;
  font-size: 13px;
  color: #666;
  border-bottom: 1px solid #ccc; /* Linhas horizontais */
  border-right: 1px solid #ccc;   /* Linhas verticais */
  text-transform: uppercase;
  text-align: center;
}

.menu-servicos-link:nth-child(2n) {
  border-right: none; /* Remove a borda da última coluna */
}

.menu-servicos-link .icon {
  margin-right: 8px;
}

.menu-servicos-link strong {
  font-weight: bold;
}


/*----------- MÓDULO DE CALENDÁRIO DE EVENTOS --------*/

small {
  font-size: 10px;
  color: #999;
}

.calendar{
  width: -webkit-fill-available;
}

.calendar td{
  width: 14%;
}

.calendar thead, tbody, tfoot, tr, td, th {
  text-align: center;
  padding: 20px;
  vertical-align: baseline;
}

.calendar-navigation{
  text-align: center;
}

.calendar-navigation a{
  margin: 20px;
}


/* ---------------- ESTILO GERAL DA AGENDA DE EVENTOS -------------------------- */

.mod-eventos-proximos {
  background-color: #cdcdcd;
  font-family: 'Arial', sans-serif;
  margin: 0;
  min-height: 404px;
  padding: 13px 0;
}

.mod-eventos-proximos p{
  margin-left: 1.4em;
}

.agenda-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 0 20px;
  border-bottom: 5px solid #f2f3f5;
}

.agenda-title {
  font-weight: bold;
}

.agenda-title-principal {
  font-size: 24px;
  font-weight: bold;
  margin: 0 0 0 20px;
  color: #5d5d5d;
}

.agenda-button {
  background-color: #f2f3f5;
  color: #5d5d5d;
  text-decoration: none;
  border: 1px solid #ccc;
  padding: 5px 10px;
  border-radius: 5px;
  margin: 0 20px 5px 0;
}

.agenda-button:hover, .agenda-button:focus,
.agenda-link:hover, .agenda-link:focus {
  color: #7e141a;
  font-weight: 700;
}

.agenda-events {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.agenda-event {
  display: flex;
  align-items: center;
  background: linear-gradient(to right, #7e141a 0%, #a04b50 17%, #fff 0%);
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  border-radius: 10px;
  margin: 0 20px;
}

.agenda-date {
  color: #fff;
  text-align: center;
  padding: 10px 20px;
  border-radius: 10px 0 0 10px;
}

.agenda-day {
  font-size: 24px;
  font-weight: bold;
}

.agenda-month {
  font-size: 18px;
}

.agenda-details {
  padding: 10px 15px;
}

.agenda-type {
  color: #a71c1c;
  font-weight: bold;
  text-transform: uppercase;
}

.agenda-link {
  text-decoration: none;
  color: #5d5d5d;
  font-size: 18px;
  margin-top: 5px;
}
/* ---------------- FIM Estilo geral do Agenda de Eventos -------------------------- */


/*---- MÓDULO DE DESTAQUES NO FINAL DA HOME ----*/

.destaques-final-portal {
  display: flex;
  flex-wrap: wrap;
}

.destaques-final-portal div {
  width: 33.33%;
  background: #fff;
  min-height: 257px;
  display: flex; 
  flex-direction: column; 
  justify-content: center; 
  align-items: center;
  text-align: center;
  padding: 9px;
}

.destaques-final-portal div p{
  font-size: 1.5em;
  color: #666;
}

/* CSS para o módulo de destaques no final da home */
.areas-atuacao-container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 2px;
  max-width: 1200px;
  margin: 0 auto;
}

.areas-atuacao-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  padding: 20px;
  text-align: center;
  min-height: 200px;
  transition: transform 0.3s ease;
}

.areas-atuacao-item:hover {
  transform: scale(1.02);
}

.area-titulo {
  background-color: #8B1B1E; /* Vermelho escuro */
  color: white;
  justify-content: center;
}

.area-titulo h2 {
  font-size: 1.8rem;
  font-weight: bold;
  margin: 0;
  line-height: 1.2;
}

.areas-icon-wrapper {

  margin-bottom: 15px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.areas-icon-wrapper img {
  max-width: 100%;
  max-height: 100%;
}

.areas-atuacao-item h3 {
  font-size: 1.1rem;
  margin: 0;
  line-height: 1.3;
  color: #666;
}

/* Cores específicas para cada ícone */
.areas-atuacao-item:nth-child(1) h3 {
  color: #8B1B1E; /* Cor do título para Centros de Apoio */
}

.areas-atuacao-item:nth-child(2) h3 {
  color: #1B3E59; /* Cor do título para Núcleos */
}

.areas-atuacao-item:nth-child(3) h3 {
  color: #C8B45A; /* Cor do título para Projetos */
}

.areas-atuacao-item:nth-child(4) h3 {
  color: #4D8979; /* Cor do título para Comarcas */
}

.areas-atuacao-item:nth-child(5) h3 {
  color: #8E5573; /* Cor do título para Ouvidoria */
}

/* Media queries para responsividade */
@media (max-width: 992px) {
  .areas-atuacao-container {
    grid-template-columns: repeat(2, 1fr);
  }
  
  .area-titulo {
    grid-column: 1 / -1; /* Ocupa toda a largura na primeira linha */
  }
}

@media (max-width: 576px) {
  .areas-atuacao-container {
    grid-template-columns: 1fr;
  }
  
  .areas-atuacao-item {
    min-height: 150px;
  }
}


/* ---- PÁGINA DO BUSCADOR DO PORTAL DA TRANSPARÊNCIA ----*/
#___gcse_0 a  {
  font-weight: 600;
  color: #7e141a;
  text-decoration: none !important;
}
#___gcse_0 a:hover, #___gcse_0 a:focus {
  color: var(--link-hover-color);
}
.gs-webResult div.gs-visibleUrl {
  font-size: 90%;
}
.gsc-control-cse,
.gsc-control-cse .gsc-table-result {
  font-family: var(--body-font-family) !important;
  font-size: 100%;
}
.gcsc-find-more-on-google {
  display: none !important;
}
.gsc-richsnippet-showsnippet-label {
  text-decoration: none !important;
}
.gsc-richsnippet-showsnippet-label:hover,
.gsc-richsnippet-showsnippet-label:focus {
  color: purple;
}
.gs-image-box.gs-web-image-box.gs-web-image-box-portrait,
.gs-image-box.gs-web-image-box.gs-web-image-box-landscape {
  margin-right: 10px;
}
.gsc-table-result {
  margin-top: 10px;
  display: flex;
}
.gsc-url-top {
  margin-top: 5px;
}
.gs-fileFormat, .gs-snippet, .gs-richsnippet-box {
  margin-bottom: 5px;
}
.gsc-above-wrapper-area, .gsc-refinementsArea {
  border: none !important;
}
.gsc-above-wrapper-area,
.gsc-result-info-container, .gsc-orderby-container {
  padding: 0;
}
.gsc-above-wrapper-area-container tbody tr {
  display: flex;
  justify-content: space-between;
  flex-direction: row-reverse;
  align-items: center;
  padding: 0 10px 15px 5px;
}
.gsc-webResult.gsc-result {
  display: flex;
  border-top: 1px solid #adadad !important;
  margin-bottom: 15px !important;
  padding-top: 25px !important;
}
#google-search-form {
  display: flex;
  line-height: 2.5;
}
#google-search-form #search {
  border: var(--border-width)solid #ced4da;
  width: 100%;
  padding: 3px 15px;
}
#google-search-form #button {
  color: inherit;
  border: none;
  font-family: var(--body-font-family);
  background: white;
  height: 100%;
}
#google-search-form span:hover, 
#google-search-form span:focus {
  color: #7e141a;
  border: 1px solid #7e141a;
}
#google-search-form span {
  color: black;
  border: 1px solid black;
  background: white;
  border-radius: 7px;
  text-align: center;
  padding: 0 15px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.gs-no-results-result .gs-snippet, .gs-error-result .gs-snippet {
  background: none !important;
  border: none !important;
  color: gray;
  font-weight: 900;
  font-size: 150%;
}
.gsc-results .gsc-cursor-box .gsc-cursor-page {
  margin: -1px !important;
  border: 1px solid #7E141A;
  padding: 10px 15px;
  color: #7E141A;
}
.gsc-results .gsc-cursor-box .gsc-cursor-current-page {
  background-color: #7E141A !important;
  color: white !important;
}
.gsc-results .gsc-cursor-box {
  margin: 40px 0 0 0 !important;
}

/* ---- lista de notícias na home ----*/
.mod-articles-item-content dl,
.mod-articles-item-content dd {
  margin-bottom: 0 !important;
  font-size: small;
}
.mod-articles-item-content .mod-articles-title{
  margin-bottom: 10px !important;
}











/* === GRID PRINCIPAL (já ok) === */
.custom-grid{
  display:grid;
  grid-template-columns: 4fr 3fr 2fr;
  gap:15px; width:100%;
  margin: 15px 0 30px 0;
}

/* === WRAP das 2 primeiras colunas === */
.lc-wrap{
  grid-column: 1 / span 2;
  display:grid; gap:15px;
  grid-template-columns: 1.3fr 1fr;      /* left | center */
  grid-template-areas:
    "title title"                         /* título ocupa a largura toda */
    "left  center";
  background:#fff;
  padding: 20px 0 0 0;
}

/* Título do bloco (linha de cima) */
.lc-wrap .titulo-noticias{
  grid-area:title;                        /* garante o título no topo */
  margin:0;
}

/* Mapeia as áreas */
.lc-wrap .container-left{  grid-area:left; padding: 0 0 10px 10px;}
.lc-wrap .container-center{grid-area:center; padding: 0 10px 0 0;}

/* ====== MOBILE ====== */
@media (max-width: 992px){
  .custom-grid{ grid-template-columns:1fr; }  /* 1 coluna no grid externo */

  .lc-wrap{
    grid-column:auto;                         /* deixa de 'span 2' no mobile */
    grid-template-columns:1fr;
    grid-template-areas:
      "title"
      "left"
      "center";                               /* left acima de center */
    gap:16px;
  }
}





/* estilo Serviços left / Destaques */
.menu-servicos {
  width: 100%;
  background: #fff;
  overflow: hidden;
  font-family: inherit;
  font-size: 14px;
  color: #333;
}

/* Cabeçalho */
.menu-servicos .menu-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  border-bottom: 1px solid #e5e5e5;
  font-weight: 700;
  letter-spacing: 0.02em;
}

/* Lista */
.menu-servicos .menu-list {
  display: flex;
  flex-direction: column;
}

.menu-servicos .menu-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-bottom: 1px solid #eee;
  line-height: 1.2;
  transition: background 0.2s ease;
}

.menu-servicos .menu-item:hover {
  background: #f9f9f9;
}

/* Letras SAJ */
.menu-servicos .saj {
  width: 28px;
  text-align: center;
  font-weight: 700;
}

/* Rodapé */
.menu-servicos .menu-footer {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  font-weight: 600;
  border-top: 1px solid #e5e5e5;
}

/* Ajuste do small */
.menu-servicos small {
  color: #666;
  font-size: 12px;
}







.titulo-parceiros {
  color: #7e141a;
  font-size: 18px;
  font-weight: 700;
  border-bottom: 1px solid #e0e0e0;
  padding-bottom: 5px;
  margin-bottom: 15px;
}

.parceiros-subcontainer {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
}

.parceiros-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 50px;
  padding: 10px 0;
}

.parceiros-row a img {
  max-height: 55px;
  width: auto;
  transition: transform 0.2s ease, opacity 0.2s ease;
}

.parceiros-row a:hover img {
  transform: scale(1.05);
  opacity: 0.9;
}

.ver-mais {
  margin-top: 8px;
}

.ver-mais a {
  color: #333;
  font-size: 14px;
  text-decoration: none;
  transition: color 0.2s;
}

.ver-mais a:hover {
  color: #7e141a;
  text-decoration: underline;
}

