:root{--azul:#06457f;--verde:#009b72;--fundo:#eef5f9;--borda:#cfe0ec;--texto:#073f73;--altura-topo:150px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,Helvetica,sans-serif;color:#073f73;background:var(--fundo)}a{color:inherit;text-decoration:none}.limite{width:min(1516px,calc(100% - 70px));margin-inline:auto}.pular{position:fixed;left:-999px;top:8px;z-index:99;background:#fff;padding:10px}.pular:focus{left:8px}.topo{background:#fff}.identidade{min-height:var(--altura-topo);display:flex;align-items:center;justify-content:space-between;gap:24px}.marca{display:flex;min-width:300px;align-items:center}.marca[data-posicao=centro]{justify-content:center}.marca[data-posicao=direita]{justify-content:flex-end}.marca img{max-width:390px;max-height:125px;object-fit:contain}.acoes-topo{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.acessibilidade{display:flex;border:1px solid var(--borda);border-radius:14px;padding:6px}.acessibilidade button{border:0;background:#f2f8fc;color:var(--azul);height:38px;min-width:38px;border-radius:9px;font-weight:700}.pesquisar-topo,.atalho{height:54px;border:1px solid var(--borda);border-radius:13px;background:#fff;padding:0 18px;display:inline-flex;align-items:center;gap:9px;font-weight:700}.whatsapp{color:#008c65}.whatsapp img{width:24px;height:24px;object-fit:contain}.navegacao{padding:10px 0 16px}.menu-principal{display:flex;align-items:center;justify-content:center;gap:4px;background:#fff;border:1px solid var(--borda);border-radius:13px;padding:9px 14px;box-shadow:0 10px 25px rgba(25,65,96,.06)}.menu-link,.menu-gatilho{border:0;background:transparent;padding:13px 12px;border-radius:9px;color:#073f73;font-size:1rem;white-space:nowrap}.menu-link.ativo,.menu-link:hover,.menu-gatilho:hover{background:#e9f8f3;color:#008d69}.menu-item{position:relative}.submenu{display:none;position:absolute;top:100%;left:0;z-index:20;min-width:245px;background:#fff;border:1px solid var(--borda);border-radius:12px;padding:8px;box-shadow:0 18px 35px rgba(18,54,83,.16)}.menu-item.aberto .submenu{display:grid;animation:descer .2s ease}.submenu-largo{grid-template-columns:1fr 1fr;min-width:430px}.submenu a{padding:10px;border-radius:8px}.submenu a:hover{background:#edf7fb}.busca-geral{border-top:1px solid var(--borda);padding:13px}.busca-geral>div{display:flex;gap:8px}.busca-geral input{flex:1;border:1px solid var(--borda);border-radius:10px;padding:13px}.busca-geral button{border:0;border-radius:10px;background:var(--verde);color:#fff;padding:0 22px;font-weight:700}main{padding-bottom:38px}.hero{height:340px;position:relative;border-radius:15px;overflow:hidden;margin-top:2px;background:#dce9f1}.hero-slides,.hero-slide{position:absolute;inset:0}.hero-slide{opacity:0;visibility:hidden;background-size:cover;background-position:center;transition:opacity .55s}.hero-slide.ativo{opacity:1;visibility:visible}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,37,74,.78),rgba(0,37,74,.08) 70%)}.hero-conteudo{position:absolute;left:7%;top:50%;transform:translateY(-50%);max-width:620px;color:#fff}.hero-conteudo span{display:inline-block;background:#00a078;padding:6px 10px;border-radius:999px;font-size:.78rem;font-weight:700}.hero-conteudo h1{font-size:2.25rem;margin:14px 0 8px}.hero-conteudo p{font-size:1.05rem;line-height:1.5}.hero-conteudo a{display:inline-block;margin-top:8px;background:#fff;color:var(--azul);padding:11px 17px;border-radius:9px;font-weight:700}.hero-seta{position:absolute;top:50%;transform:translateY(-50%);z-index:3;border:0;border-radius:10px;background:rgba(1,48,88,.66);color:#fff;width:42px;height:42px;font-size:28px}.hero-seta.anterior{left:16px}.hero-seta.proxima{right:16px}.hero-pontos{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);z-index:4;display:flex;gap:8px}.hero-pontos button{border:0;width:14px;height:7px;border-radius:999px;background:#d6e0e8}.hero-pontos button.ativo{width:30px;background:#fff}.duas-colunas{display:grid;grid-template-columns:1.42fr 1fr;gap:30px;margin-top:16px}.painel{background:#fff;border:1px solid var(--borda);border-radius:16px;padding:20px;box-shadow:0 14px 34px rgba(25,65,96,.06)}.titulo-secao{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:16px}.titulo-secao>div{display:flex;gap:10px;align-items:flex-start}.titulo-secao h2{margin:0 0 5px;font-size:1.55rem;font-weight:500}.titulo-secao p{margin:0;color:#5b7187}.titulo-secao>a{color:#0069b2}.icone{border:2px solid #0964aa;border-radius:7px;padding:7px;min-width:34px;text-align:center}.noticias-corpo{display:grid;grid-template-columns:1.65fr 1fr;gap:14px;min-height:310px}.noticia-principal{display:grid;grid-template-columns:42% 1fr;border:1px solid var(--borda);border-radius:14px;overflow:hidden}.noticia-principal>img{width:100%;height:100%;object-fit:cover}.noticia-info{padding:20px}.noticia-info>span{display:inline-block;padding:7px 13px;background:#eef6ff;border-radius:999px;font-size:.8rem}.noticia-info h3{font-size:1.45rem;margin:15px 0}.noticia-info p{color:#5e7184;line-height:1.55}.noticia-info small{color:#708399}.noticias-menores{display:grid;gap:10px}.noticias-menores a{display:grid;grid-template-columns:88px 1fr;gap:10px;padding:9px;border:1px solid var(--borda);border-radius:12px}.noticias-menores img{width:88px;height:70px;object-fit:cover;border-radius:8px}.noticias-menores strong{display:block;font-size:.96rem}.noticias-menores small{display:block;margin-top:10px;color:#6b7c8d}.evento{display:grid;grid-template-columns:75px 1fr;gap:15px;align-items:center;padding:13px;border:1px solid var(--borda);border-bottom:0}.evento:first-child{border-radius:13px 13px 0 0}.evento time{border:1px solid #a9cdeb;border-radius:10px;text-align:center;padding:7px}.evento time b{display:block;font-size:1.7rem;font-weight:500}.evento time span{font-size:.8rem}.evento strong{display:block;font-size:1rem}.evento small{display:block;margin-top:8px;color:#667b8d}.botao-cheio{display:block;text-align:center;background:#00a06f;color:#fff;padding:13px;margin-top:0;font-weight:700}.servicos,.faixa-dados{margin-top:28px}.grade-servicos{display:grid;grid-template-columns:repeat(8,1fr);gap:14px}.grade-servicos a{border:1px solid var(--borda);border-radius:14px;padding:15px;text-align:center;min-height:165px;display:flex;flex-direction:column;align-items:center;justify-content:center;transition:.2s}.grade-servicos a:hover{transform:translateY(-4px);box-shadow:0 12px 25px rgba(14,69,106,.12)}.grade-servicos b{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#edf6ff;font-size:1.35rem}.grade-servicos strong{margin:12px 0 7px;font-weight:500}.grade-servicos span{font-size:.83rem;line-height:1.35;color:#5e7184}.etiqueta{display:inline-block;color:#008c69;background:#e7f7f1;border-radius:999px;padding:5px 10px;font-size:.72rem;letter-spacing:.08em;margin-bottom:8px}.carrossel-cards{display:flex;gap:16px;overflow-x:auto;padding:5px 1px 12px;scroll-snap-type:x mandatory}.dado-card{flex:0 0 305px;min-height:225px;border:1px solid var(--borda);border-radius:14px;padding:18px;scroll-snap-align:start}.dado-card .selo{display:inline-block;background:#e6f7ef;color:#00865f;border-radius:999px;padding:6px 10px;font-size:.78rem}.dado-card h3{font-size:1.3rem;margin:15px 0 10px}.dado-card p{color:#5e7184;line-height:1.45;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.dado-card small{display:block;color:#6a7d8e}.dado-card a{display:inline-block;margin-top:16px;color:#006bb1;font-weight:700}.estado-vazio{width:100%;min-height:110px;display:grid;place-items:center;border:1px dashed var(--borda);border-radius:12px;color:#64788a;background:#f8fbfd}footer{background:#06427d;color:#fff;padding:30px 0 12px}.rodape{display:grid;grid-template-columns:230px 1.3fr 1fr 1fr;gap:35px;align-items:center}.rodape-logo-wrap{display:flex}.rodape-logo-wrap[data-posicao=centro]{justify-content:center}.rodape-logo-wrap[data-posicao=direita]{justify-content:flex-end}.rodape img{max-width:190px;max-height:125px;object-fit:contain}.rodape>div:not(:first-child){display:flex;flex-direction:column;gap:7px}.redes{display:flex;flex-wrap:wrap;gap:8px}.redes a{border:1px solid rgba(255,255,255,.34);border-radius:8px;padding:8px 11px;display:flex;align-items:center;gap:6px}.redes img{width:20px;height:20px}.copyright{margin-top:16px;text-align:center;background:#053462;padding:9px}.alto-contraste{filter:contrast(1.4) grayscale(.1)}@keyframes descer{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@media(max-width:1100px){.identidade{align-items:flex-start;padding:20px 0}.acoes-topo{justify-content:flex-end}.menu-principal{justify-content:flex-start;overflow-x:auto}.duas-colunas{grid-template-columns:1fr}.grade-servicos{grid-template-columns:repeat(4,1fr)}}@media(max-width:700px){.limite{width:calc(100% - 24px)}.identidade{display:block}.marca{justify-content:center!important;min-width:0}.marca img{max-width:100%}.acoes-topo{margin-top:15px;justify-content:center}.hero{height:410px}.hero-conteudo{left:8%;right:8%;max-width:none}.hero-conteudo h1{font-size:1.7rem}.noticias-corpo,.noticia-principal{grid-template-columns:1fr}.noticia-principal>img{height:210px}.grade-servicos{grid-template-columns:repeat(2,1fr)}.rodape{grid-template-columns:1fr;text-align:center}.rodape-logo-wrap{justify-content:center!important}}

/* Menu publico da pagina inicial - ajuste isolado */
.menu-link,.menu-gatilho{display:inline-flex;align-items:center;gap:7px;font-weight:600;transition:background .18s ease,color .18s ease,transform .18s ease}
.menu-link:hover,.menu-gatilho:hover{transform:translateY(-1px)}
.menu-icone{display:inline-grid;place-items:center;width:22px;height:22px;border-radius:6px;background:#edf6ff;color:#075b9d;font-size:.88rem;flex:0 0 22px}
.menu-link.ativo .menu-icone,.menu-link:hover .menu-icone,.menu-gatilho:hover .menu-icone{background:#d8f3e9;color:#008c69}
.menu-seta{margin-left:1px;font-size:.82rem;transition:transform .18s ease}
.menu-item:hover>.menu-gatilho .menu-seta,.menu-item.aberto>.menu-gatilho .menu-seta{transform:rotate(180deg)}
.menu-item:hover>.submenu,.menu-item:focus-within>.submenu,.menu-item.aberto>.submenu{display:grid;animation:descer .2s ease}
.submenu{top:calc(100% + 5px);gap:2px}
.submenu::before{content:"";position:absolute;left:0;right:0;top:-7px;height:8px}
.submenu a{display:flex;align-items:center;gap:9px;font-weight:500;white-space:nowrap}
.submenu a>span{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:6px;background:#edf6ff;color:#075b9d;font-size:.82rem;flex:0 0 24px}
.submenu a:hover>span{background:#dff5ed;color:#008c69}
@media(max-width:1100px){.menu-principal{overflow:visible;flex-wrap:wrap}.submenu{position:absolute}}
@media(max-width:700px){.menu-principal{display:block}.menu-link,.menu-gatilho{width:100%;justify-content:flex-start}.submenu,.submenu-largo{position:static;min-width:0;grid-template-columns:1fr;box-shadow:none;margin:4px 0 8px}}

.redes .rede-icone-padrao{width:20px;height:20px;display:inline-grid;place-items:center;flex:0 0 20px}.redes .rede-icone-padrao[hidden]{display:none}.redes .rede-icone-padrao svg{width:20px;height:20px;display:block}.redes a:hover{background:rgba(255,255,255,.12)}

/* Pagina inicial: noticias e agenda no padrao visual de referencia */
.duas-colunas{
  align-items:stretch;
  gap:30px;
}
.duas-colunas>.painel{
  min-width:0;
  height:558px;
  overflow:hidden;
}
.noticias-corpo{
  grid-template-columns:minmax(0,1.72fr) minmax(245px,.92fr);
  gap:14px;
  height:466px;
  min-height:0;
  overflow:hidden;
}
.noticia-principal{
  grid-template-columns:minmax(190px,42%) minmax(0,1fr);
  height:100%;
  min-width:0;
  overflow:hidden;
  background:#fff;
}
.noticia-principal>img{
  display:block;
  width:100%;
  height:100%;
  min-width:0;
  object-fit:cover;
  object-position:center;
}
.noticia-info{
  min-width:0;
  padding:18px 20px;
  overflow:hidden;
}
.noticia-info h3{
  margin:14px 0 12px;
  font-size:1.42rem;
  line-height:1.18;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.noticia-info p{
  margin:0 0 12px;
  font-size:1rem;
  line-height:1.48;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:10;
  overflow:hidden;
}
.noticia-info small{
  display:block;
  margin-top:8px;
}
.noticias-menores{
  grid-template-rows:repeat(3,minmax(0,1fr));
  min-width:0;
  min-height:0;
  overflow:hidden;
}
.noticias-menores a{
  grid-template-columns:86px minmax(0,1fr);
  align-items:start;
  min-width:0;
  min-height:0;
  overflow:hidden;
  background:#f8fbfd;
}
.noticias-menores img{
  width:86px;
  height:72px;
  object-fit:cover;
  object-position:center;
}
.noticias-menores span{
  min-width:0;
  overflow:hidden;
}
.noticias-menores strong{
  line-height:1.22;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:3;
  overflow:hidden;
}
.noticias-menores small{
  margin-top:8px;
}
.agenda{
  display:flex;
  flex-direction:column;
}
.agenda .titulo-secao{
  flex:0 0 auto;
}
#agendaLista{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden;
}
.agenda .evento{
  min-height:86px;
  background:#fff;
}
.agenda .evento strong{
  line-height:1.28;
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
}
.agenda .botao-cheio{
  flex:0 0 auto;
}
@media(max-width:1100px){
  .duas-colunas>.painel{height:auto;overflow:visible}
  .noticias-corpo{height:auto;min-height:420px}
}
@media(max-width:700px){
  .noticias-corpo{display:block;min-height:0}
  .noticia-principal{height:auto;grid-template-columns:1fr}
  .noticia-principal>img{height:230px}
  .noticias-menores{margin-top:12px;display:grid;grid-template-rows:none}
}

/* Banner institucional: exibe somente a imagem cadastrada em Configurações > Banner. */
.banner-principal{position:relative;aspect-ratio:9/2;border-radius:15px;overflow:hidden;margin-top:2px;background:#fff}.banner-principal[hidden]{display:none!important}.banner-principal img{position:absolute;inset:0;display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;object-position:center;transform-origin:center center}.banner-principal img[hidden]{display:none!important}@media(max-width:700px){.banner-principal{aspect-ratio:16/7}}

/* Vereadores na pagina inicial */
.vereadores-carrossel{position:relative;padding:0 46px}
.vereadores-cards{display:flex;gap:14px;overflow:hidden;padding:4px 0 8px;scroll-behavior:auto;will-change:scroll-position}
.vereador-card{flex:0 0 178px;min-height:270px;overflow:hidden;border:1px solid var(--borda);border-radius:14px;background:#fff;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;text-align:center}
.vereador-card:hover{transform:translateY(-3px);border-color:#9fc7e4;box-shadow:0 12px 24px rgba(14,69,106,.11)}
.vereador-foto{height:145px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#edf6fc,#dcecf5);color:var(--azul);font-size:3rem;font-weight:500}
.vereador-foto img{width:100%;height:100%;object-fit:cover;object-position:center top}
.vereador-info{padding:12px 10px 14px;display:flex;flex-direction:column;align-items:center}
.vereador-info h3{margin:0 0 6px;font-size:.98rem;line-height:1.25;color:var(--azul);font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.vereador-nome-completo{margin:0 0 8px;color:#65798a;font-size:.76rem;line-height:1.25;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden}
.vereador-partido{display:inline-block;margin-top:2px;padding:5px 9px;border-radius:999px;background:#e6f7ef;color:#00865f;font-size:.72rem;font-weight:500}
.vereador-info small{display:block;margin-top:8px;color:#5f7385;font-size:.76rem;font-weight:400}
.vereador-detalhes{display:block;margin-top:10px;color:#006bb1;font-size:.8rem;font-weight:400}
.vereadores-seta{position:absolute;top:50%;transform:translateY(-50%);z-index:2;width:34px;height:44px;border:1px solid var(--borda);border-radius:10px;background:#fff;color:var(--azul);font-size:1.8rem;line-height:1;box-shadow:0 8px 18px rgba(14,69,106,.12);cursor:pointer}
.vereadores-seta:hover{background:#eef7fb}
.vereadores-seta.anterior{left:4px}.vereadores-seta.proxima{right:4px}
@media(max-width:700px){.vereadores-carrossel{padding:0 38px}.vereador-card{flex-basis:164px}.vereador-foto{height:135px}}

/* Carrosseis continuos iguais ao movimento da referencia em video */
.carrossel-continuo{position:relative;padding:0 46px}
.carrossel-continuo .carrossel-cards{display:flex;flex-wrap:nowrap;gap:14px;overflow:hidden;scroll-behavior:auto;will-change:scroll-position;padding:4px 0 8px}
.carrossel-continuo .dado-card{flex:0 0 285px}
.carrossel-seta{position:absolute;top:50%;transform:translateY(-50%);z-index:4;width:34px;height:44px;border:1px solid var(--borda);border-radius:10px;background:#fff;color:var(--azul);font-size:1.8rem;line-height:1;box-shadow:0 8px 18px rgba(14,69,106,.12);cursor:pointer}
.carrossel-seta:hover{background:#eef7fb}
.carrossel-seta.anterior{left:4px}.carrossel-seta.proxima{right:4px}
@media(max-width:700px){.carrossel-continuo{padding:0 38px}.carrossel-continuo .dado-card{flex-basis:250px}}


/* Correcao definitiva dos carrosseis da pagina inicial */
.vereadores-carrossel,.carrossel-continuo{
  position:relative!important;
  overflow:hidden!important;
  padding:0 46px!important;
}
.vereadores-cards,.carrossel-continuo .carrossel-cards{
  display:flex!important;
  flex-wrap:nowrap!important;
  width:max-content!important;
  max-width:none!important;
  gap:14px!important;
  overflow:visible!important;
  padding:4px 0 8px!important;
  will-change:transform!important;
}
.vereadores-seta,.carrossel-seta{
  display:grid!important;
  place-items:center!important;
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:30!important;
  width:38px!important;
  height:48px!important;
  border:1px solid #b8d2e5!important;
  border-radius:11px!important;
  background:#fff!important;
  color:#06457f!important;
  font-size:2rem!important;
  box-shadow:0 8px 20px rgba(14,69,106,.18)!important;
  cursor:pointer!important;
}
.vereadores-seta.anterior,.carrossel-seta.anterior{left:3px!important}
.vereadores-seta.proxima,.carrossel-seta.proxima{right:3px!important}
@media(max-width:700px){
  .vereadores-carrossel,.carrossel-continuo{padding-inline:40px!important}
}


/* Ajuste final: cards compactos, trilho contido e setas visiveis */
#vereadoresSecao{overflow:hidden!important}
.vereadores-carrossel,.carrossel-continuo{
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  overflow:visible!important;
  padding:0 42px!important;
  box-sizing:border-box!important;
}
.vereadores-viewport,.carrossel-viewport{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  position:relative!important;
}
.vereadores-cards,.carrossel-continuo .carrossel-cards{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:12px!important;
  width:max-content!important;
  max-width:none!important;
  padding:3px 0 7px!important;
  margin:0!important;
  overflow:visible!important;
  transform:translate3d(0,0,0);
  will-change:transform!important;
}
.vereador-card{
  flex:0 0 148px!important;
  width:148px!important;
  min-width:148px!important;
  min-height:228px!important;
  max-height:228px!important;
  border-radius:12px!important;
}
.vereador-foto{height:108px!important;font-size:2.3rem!important}
.vereador-info{padding:8px 7px 9px!important;min-height:120px!important;box-sizing:border-box!important}
.vereador-info h3{font-size:.82rem!important;line-height:1.18!important;margin:0 0 4px!important;font-weight:400!important;-webkit-line-clamp:2!important}
.vereador-nome-completo{font-size:.65rem!important;margin:0 0 5px!important;max-width:100%!important}
.vereador-partido{font-size:.64rem!important;padding:3px 7px!important;margin-top:0!important;font-weight:400!important;max-width:100%!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.vereador-info small{font-size:.66rem!important;margin-top:5px!important;line-height:1.15!important;font-weight:400!important}
.vereador-detalhes{font-size:.68rem!important;margin-top:6px!important;font-weight:400!important}
.vereadores-seta,.carrossel-seta{
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  position:absolute!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  z-index:100!important;
  width:32px!important;
  height:46px!important;
  padding:0!important;
  border:1px solid #9fc4df!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#06457f!important;
  font-size:1.75rem!important;
  line-height:1!important;
  box-shadow:0 6px 16px rgba(14,69,106,.18)!important;
  cursor:pointer!important;
}
.vereadores-seta.anterior,.carrossel-seta.anterior{left:4px!important}
.vereadores-seta.proxima,.carrossel-seta.proxima{right:4px!important}
@media(max-width:700px){
  .vereadores-carrossel,.carrossel-continuo{padding-inline:36px!important}
  .vereador-card{flex-basis:138px!important;width:138px!important;min-width:138px!important}
  .vereador-foto{height:102px!important}
}


/* Ajuste carousel 10: cards maiores, centralizacao e ocupacao integral */
#vereadoresSecao{overflow:hidden!important}
.vereadores-carrossel{padding-inline:40px!important;overflow:visible!important}
.vereadores-viewport{overflow:hidden!important;width:100%!important}
.vereadores-cards{gap:13px!important;justify-content:flex-start!important;align-items:stretch!important}
.vereador-card{flex:0 0 166px!important;width:166px!important;min-width:166px!important;min-height:238px!important;max-height:238px!important}
.vereador-foto{height:116px!important}
.vereador-info{min-height:122px!important;padding:9px 8px 10px!important}
.vereadores-seta{display:grid!important;visibility:visible!important;opacity:1!important;z-index:120!important}
@media(max-width:700px){.vereador-card{flex-basis:150px!important;width:150px!important;min-width:150px!important}.vereador-foto{height:106px!important}}


/* Localizacao da Camara na coluna lateral da pagina inicial */
.localizacao-camara{display:flex;flex-direction:column;min-height:0;overflow:hidden}
.localizacao-camara .titulo-secao{flex:0 0 auto}
.localizacao-mapa-wrap{flex:1 1 auto;min-height:245px;border:1px solid var(--borda);border-radius:13px;overflow:hidden;background:#eef5f9}
.localizacao-mapa{display:block;width:100%;height:100%;min-height:245px;border:0}
.localizacao-mapa[hidden]{display:none!important}
.localizacao-info{display:grid;gap:4px;padding:12px 2px 10px;color:#5f7385;font-size:.88rem;line-height:1.35}
.localizacao-info strong{color:var(--azul);font-size:1rem;font-weight:500}
.localizacao-info span:empty{display:none}
.localizacao-camara .botao-cheio{flex:0 0 auto;margin-top:auto}
@media(max-width:1100px){.localizacao-mapa-wrap,.localizacao-mapa{min-height:300px}}

/* Posicionamento e zoom configuraveis das imagens institucionais */
.marca,.rodape-logo-wrap,.banner-principal{overflow:hidden}.marca img,.rodape-logo-wrap img,.banner-principal img{transform-origin:center center;transition:transform .18s ease}.marca{justify-content:center!important}.rodape-logo-wrap{justify-content:center!important}.banner-principal img{will-change:transform}

/* Logos institucionais sempre acima das demais secoes */
.topo{
  position:relative;
  z-index:500;
  overflow:visible!important;
}
.identidade{
  position:relative;
  z-index:520;
  overflow:visible!important;
}
.marca{
  position:relative;
  z-index:540;
  overflow:visible!important;
  isolation:isolate;
}
.marca img{
  position:relative;
  z-index:550;
  overflow:visible!important;
  pointer-events:none;
}
.navegacao{
  position:relative;
  z-index:510;
}
main{
  position:relative;
  z-index:1;
}
footer,
#rodape{
  position:relative;
  z-index:400;
  overflow:visible!important;
}
.rodape{
  position:relative;
  z-index:410;
  overflow:visible!important;
}
.rodape-logo-wrap{
  position:relative;
  z-index:430;
  overflow:visible!important;
  isolation:isolate;
}
.rodape-logo-wrap img,
#logoInferior{
  position:relative;
  z-index:440;
  overflow:visible!important;
  pointer-events:none;
}


/* Ajuste vereadores: foto encostada na borda superior e faixa interna compacta */
#vereadoresSecao .vereador-card{
  height:238px!important;
  min-height:238px!important;
  max-height:238px!important;
  padding:0!important;
  overflow:hidden!important;
  display:flex!important;
  flex-direction:column!important;
}
#vereadoresSecao .vereador-foto{
  flex:1 1 auto!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:11px 11px 0 0!important;
  background:#f3f7fa!important;
}
#vereadoresSecao .vereador-foto img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  margin:0!important;
  padding:0!important;
  object-fit:cover!important;
  object-position:50% 0%!important;
}
#vereadoresSecao .vereador-info{
  flex:0 0 48px!important;
  min-height:48px!important;
  height:48px!important;
  padding:5px 7px!important;
  margin:0!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  box-sizing:border-box!important;
  border-top:1px solid #edf2f6!important;
  background:#fff!important;
}
#vereadoresSecao .vereador-info h3{
  flex:1 1 auto!important;
  min-width:0!important;
  margin:0!important;
  font-size:.73rem!important;
  line-height:1.12!important;
  font-weight:400!important;
  text-align:center!important;
  display:-webkit-box!important;
  -webkit-box-orient:vertical!important;
  -webkit-line-clamp:2!important;
  overflow:hidden!important;
}
#vereadoresSecao .vereador-partido{
  flex:0 0 auto!important;
  margin:0!important;
  padding:3px 6px!important;
  max-width:62px!important;
  font-size:.61rem!important;
  line-height:1!important;
  font-weight:400!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#vereadoresSecao .vereador-nome-completo,
#vereadoresSecao .vereador-info small,
#vereadoresSecao .vereador-detalhes{display:none!important}
@media(max-width:700px){
  #vereadoresSecao .vereador-card{height:222px!important;min-height:222px!important;max-height:222px!important}
  #vereadoresSecao .vereador-info{flex-basis:46px!important;height:46px!important;min-height:46px!important}
}


/* Animacao automatica das Ultimas Noticias */
#noticiasDestaque{position:relative;overflow:hidden}
.noticias-slide{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(230px,.95fr);gap:14px;width:100%;height:100%;opacity:1;transform:translate3d(0,0,0);transition:opacity .55s ease,transform .55s ease}
.noticias-slide.entrando{opacity:0;transform:translate3d(28px,0,0)}
.noticia-principal{text-decoration:none;color:inherit}
@media(max-width:700px){.noticias-slide{display:block}.noticias-slide.entrando{transform:translate3d(18px,0,0)}}

/* Ajuste de preenchimento da secao Ultimas Noticias */
#noticiasDestaque.noticias-corpo{
  display:block;
  width:100%;
  height:466px;
  min-height:466px;
  overflow:hidden;
}
#noticiasDestaque .noticias-slide{
  display:grid;
  grid-template-columns:minmax(0,1.72fr) minmax(245px,.92fr);
  gap:14px;
  width:100%;
  height:100%;
  min-width:0;
}
#noticiasDestaque .noticia-principal{
  width:100%;
  height:100%;
  min-width:0;
}
#noticiasDestaque .noticias-menores{
  display:grid;
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:10px;
  width:100%;
  height:100%;
  min-width:0;
}
#noticiasDestaque .noticias-menores a{
  height:100%;
  min-height:0;
  align-items:center;
}
#noticiasDestaque .noticias-menores img{
  width:88px;
  height:78px;
}
@media(max-width:1100px){
  #noticiasDestaque.noticias-corpo{height:430px;min-height:430px}
}
@media(max-width:700px){
  #noticiasDestaque.noticias-corpo{height:auto;min-height:0;overflow:visible}
  #noticiasDestaque .noticias-slide{display:block;height:auto}
  #noticiasDestaque .noticias-menores{height:auto;grid-template-rows:none;margin-top:12px}
  #noticiasDestaque .noticias-menores a{min-height:96px}
}

/* Submenus completos das paginas publicas */
.submenu{max-height:min(70vh,620px);overflow:auto}
.submenu-largo{grid-template-columns:1fr 1fr;min-width:540px}
@media(max-width:700px){.submenu-largo{grid-template-columns:1fr;min-width:280px}}

.popup-publico{position:fixed;right:25px;top:25px;z-index:3000;padding:16px;min-width:330px;max-width:min(430px,calc(100% - 32px));color:#fff;border-radius:14px;background:#07845f;display:flex;align-items:flex-start;gap:12px;box-shadow:0 18px 45px rgba(10,37,57,.28)}
.popup-publico.erro{background:#bd3e38}
.popup-publico[hidden]{display:none}
.popup-publico>b{width:26px;height:26px;display:grid;place-items:center;border-radius:50%;background:rgba(255,255,255,.18);font-size:18px;line-height:1;flex:0 0 26px}
.popup-publico strong{display:block;margin:1px 0 5px}
.popup-publico p{margin:0;line-height:1.45}
@media(max-width:700px){.popup-publico{left:12px;right:12px;top:12px;min-width:0;max-width:none}}
