/* Telas institucionais, documentos, jornadas e painéis demonstrativos. */
.titulo-missao{
  margin-top:23px
}
.formulario-espacado{
  margin-top:26px
}
.legenda-tabela{
  text-align:left;
  font-size:.72rem;
  color:var(--muted);
  padding:15px 20px
}
.prosa .acoes{
  margin-top:28px
}
main h1:focus{
  outline:none
}
.pagina-intro{
  padding:58px 0 34px
}
.pagina-intro .sobretitulo{
  margin-bottom:20px
}
.pagina-intro h1{
  max-width:930px
}
.pagina-intro>p:last-child:not(.sobretitulo){
  max-width:660px;
  margin-top:23px;
  font-size:.95rem
}
.voltar{
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:.77rem;
  min-height:44px;
  margin-top:25px;
  color:var(--muted)
}
.intro-dupla{
  display:grid;
  grid-template-columns:1.05fr 1fr;
  gap:65px;
  align-items:center;
  margin-top:38px
}
.intro-dupla .pagina-intro{
  padding:20px 0
}
.foto-editorial{
  height:440px;
  position:relative;
  border-radius:28px;
  overflow:hidden
}
.foto-editorial img{
  height:100%;
  object-fit:cover;
  object-position:70% 50%
}
.intro-dupla h1{
  font-size:3.7rem
}
.pagina-faixa{
  margin-top:40px;
  padding:35px 40px;
  border-radius:28px;
  background:var(--menta);
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px
}
.pagina-faixa h2{
  font-size:1.9rem
}
.pagina-faixa p{
  font-size:.86rem;
  margin-top:13px
}
.conteudo-duplo{
  display:grid;
  grid-template-columns:1.35fr 1fr;
  gap:27px;
  align-items:start
}
.lateral-info{
  padding:34px;
  background:var(--menta);
  border-radius:26px
}
.lateral-info h2{
  font-size:1.65rem;
  margin:18px 0
}
.lateral-info p{
  font-size:.85rem
}
.lateral-info .campanha-valores{
  margin-top:26px
}
.lateral-info .progresso{
  background:#c9d7bf
}
.lateral-info .progresso>span{
  background:var(--verde)
}
.lateral-info .progresso-legenda,.lateral-info .campanha-valores span{
  color:#536a57
}
.lateral-info .progresso-legenda strong{
  color:var(--verde)
}
.lateral-info .foto-editorial{
  height:230px;
  margin-bottom:23px;
  border-radius:17px
}
.etapas{
  display:flex;
  gap:27px;
  margin-bottom:28px;
  font-size:.72rem;
  color:var(--muted)
}
.etapa{
  display:flex;
  align-items:center;
  gap:9px
}
.etapa span{
  width:27px;
  height:27px;
  border:1px solid var(--borda);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center
}
.etapa.ativa{
  color:var(--verde);
  font-weight:600
}
.etapa.ativa span{
  background:var(--verde);
  color:white;
  border-color:var(--verde)
}
.titulo-cartao{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:24px
}
.titulo-cartao h2{
  font-size:1.65rem
}
.valor-grande{
  font-size:3.3rem;
  letter-spacing:-.065em;
  color:var(--verde);
  font-weight:400;
  margin:24px 0;
  line-height:1.2
}
.resumo-doacao{
  border-top:1px solid var(--borda);
  padding-top:22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  font-size:.8rem;
  margin-top:23px
}
.resumo-doacao strong{
  font-size:1.3rem;
  font-weight:500;
  letter-spacing:-.04em
}
.pix-ilustrativo{
  background:var(--menta);
  width:176px;
  height:176px;
  margin:25px auto;
  border-radius:18px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  border:1px dashed #95a786
}
.pix-ilustrativo .icone{
  width:55px;
  height:55px;
  margin-bottom:15px
}
.pix-ilustrativo strong{
  font-size:.8rem;
  letter-spacing:.08em
}
.pix-ilustrativo small{
  font-size:.67rem;
  color:var(--muted)
}
.centralizado{
  text-align:center
}
.estado-final{
  max-width:780px;
  margin:65px auto 0;
  text-align:center;
  padding:50px 35px
}
.estado-final .sobretitulo{
  justify-content:center;
  margin-bottom:21px
}
.estado-final h1{
  font-size:3.2rem
}
.estado-final p{
  max-width:530px;
  margin:21px auto;
  font-size:.94rem
}
.estado-final .acoes{
  justify-content:center;
  margin-top:30px
}
.icone-sucesso{
  width:74px;
  height:74px;
  display:flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:var(--menta);
  color:var(--verde);
  margin:0 auto 27px
}
.icone-sucesso .icone{
  width:33px;
  height:33px
}
.filtros{
  display:flex;
  align-items:center;
  gap:9px;
  flex-wrap:wrap;
  margin:10px 0 28px
}
.filtro{
  min-height:43px;
  padding:9px 20px;
  border-radius:999px;
  border:1px solid var(--borda);
  font-size:.77rem
}
.filtro[aria-pressed=true]{
  background:var(--verde);
  color:white;
  border-color:var(--verde)
}
.documento-lista{
  display:flex;
  flex-direction:column;
  gap:14px;
  margin-top:22px
}
.documento-linha{
  border:1px solid var(--borda);
  background:white;
  border-radius:18px;
  display:flex;
  align-items:center;
  gap:22px;
  padding:23px 26px
}
.documento-icone{
  width:50px;
  height:58px;
  background:var(--menta);
  border-radius:10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  font-size:.49rem;
  gap:4px;
  flex:none
}
.documento-linha h2{
  font-size:1.2rem;
  letter-spacing:-.02em
}
.documento-linha p{
  font-size:.72rem;
  margin-top:7px
}
.documento-linha .botao{
  margin-left:auto;
  font-size:.75rem;
  white-space:nowrap
}
.resultados-vazios{
  padding:42px;
  border:1px dashed var(--borda);
  border-radius:18px;
  text-align:center
}
.prosa{
  max-width:860px
}
.prosa h2{
  font-size:1.75rem;
  margin:30px 0 16px
}
.prosa p{
  margin-top:15px;
  font-size:.95rem;
  line-height:1.9
}
.prosa li{
  font-size:.9rem;
  line-height:1.9;
  color:var(--muted);
  margin-bottom:10px
}
.prosa a{
  text-decoration:underline;
  text-underline-offset:4px
}
.artigo-foto{
  height:480px;
  margin:10px 0 35px
}
.artigo-meta{
  font-size:.74rem;
  margin-top:20px;
  display:flex;
  gap:18px;
  flex-wrap:wrap
}
.evento-detalhes{
  display:flex;
  gap:30px;
  flex-wrap:wrap;
  margin:23px 0;
  font-size:.8rem;
  color:var(--muted)
}
.evento-detalhes>span{
  display:flex;
  align-items:center;
  gap:9px
}
.apoio-planejamento{
  margin-top:32px;
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:45px
}
.apoio-planejamento h2{
  font-size:2rem
}
.apoio-planejamento p{
  font-size:.87rem;
  margin-top:16px
}
.apoio-total{
  padding-left:35px;
  border-left:1px solid #c9d5be
}
.apoio-total .valor-grande{
  margin:8px 0
}
.apoio-total>small{
  font-size:.76rem;
  color:var(--muted)
}
.painel{
  display:grid;
  grid-template-columns:225px 1fr;
  gap:28px;
  margin-top:42px
}
.painel-menu{
  background:var(--verde);
  color:white;
  border-radius:22px;
  padding:27px 18px;
  height:fit-content
}
.painel-menu .sobretitulo{
  color:var(--lima);
  padding:0 12px;
  margin-bottom:25px
}
.painel-menu a{
  display:flex;
  align-items:center;
  gap:12px;
  padding:12px;
  border-radius:10px;
  font-size:.8rem;
  margin:4px 0;
  color:#e3ece6
}
.painel-menu a[aria-current=page]{
  background:#ffffff15;
  color:var(--lima)
}
.painel-menu a:hover{
  background:#ffffff10
}
.painel-conteudo{
  min-width:0
}
.painel-conteudo h1{
  font-size:2.7rem
}
.painel-conteudo .pagina-intro{
  padding:0 0 27px
}
.indicador .sobretitulo{
  font-size:.6rem;
  color:var(--muted)
}
.indicador strong{
  font-size:2.35rem;
  letter-spacing:-.06em;
  font-weight:500;
  display:block;
  line-height:1.25;
  margin-top:14px
}
.indicador p{
  font-size:.73rem;
  margin-top:7px
}
.painel-conteudo .grade-tres{
  gap:14px
}
.painel-conteudo .cartao{
  padding:24px
}
.painel-conteudo .grade-dois{
  margin-top:23px
}
.tabela-container{
  overflow:auto;
  margin-top:24px;
  border:1px solid var(--borda);
  border-radius:17px;
  background:white
}
.tabela{
  border-collapse:collapse;
  width:100%;
  font-size:.77rem;
  text-align:left;
  white-space:nowrap
}
.tabela th{
  background:#eef1e9;
  padding:16px 20px;
  font-weight:600
}
.tabela td{
  padding:19px 20px;
  border-top:1px solid var(--borda)
}
.tabela td .botao{
  font-size:.68rem;
  min-height:36px;
  padding:6px 14px
}
.painel-lista{
  margin-top:23px
}
.painel-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  border-bottom:1px solid var(--borda);
  padding:20px 0
}
.painel-item h3{
  font-size:1.1rem
}
.painel-item p{
  font-size:.72rem;
  margin-top:7px
}
.painel-item .acoes{
  gap:8px
}
.painel-item .botao{
  font-size:.7rem;
  min-height:40px;
  margin:0;
  padding:8px 15px
}
.grafico-demo{
  display:flex;
  gap:12px;
  align-items:flex-end;
  height:180px;
  margin-top:28px;
  padding:12px 0 0;
  border-bottom:1px solid var(--borda)
}
.grafico-coluna{
  flex:1;
  display:flex;
  align-items:center;
  flex-direction:column;
  justify-content:flex-end;
  height:100%;
  gap:8px
}
.grafico-coluna span{
  display:block;
  background:#a4c582;
  width:75%;
  border-radius:6px 6px 0 0
}
.grafico-coluna:nth-child(1) span{
  height:38%
}
.grafico-coluna:nth-child(2) span{
  height:53%
}
.grafico-coluna:nth-child(3) span{
  height:45%
}
.grafico-coluna:nth-child(4) span{
  height:69%
}
.grafico-coluna:nth-child(5) span{
  height:61%
}
.grafico-coluna:nth-child(6) span{
  height:87%;
  background:var(--verde)
}
.grafico-coluna small{
  font-size:.6rem;
  color:var(--muted)
}
.configuracao-linha{
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:22px;
  padding:21px 0;
  border-bottom:1px solid var(--borda)
}
.configuracao-linha p{
  font-size:.75rem;
  margin-top:7px
}
.configuracao-linha strong{
  font-size:.86rem;
  font-weight:600
}
