/* =============================================================================
   Onde adotar — locais por estado.

   Mesma linguagem do glossário: verde como cor da seção, régua de navegação no
   topo, cards em grade. O que muda é a unidade — ali é um nome de raça, aqui é
   um lugar com tipo, cidade e destino.
   ========================================================================== */

.brl-ad-topo{ padding-bottom:20px }

/* A ressalva sobre telefone fica visível, não em letra miúda de rodapé: é o
   que explica por que a lista parece mais enxuta que a de um catálogo. */
.brl-ad-aviso{
  margin:22px 0 0; max-width:62ch;
  background:var(--brl-fundo-menta); border-left:4px solid var(--brl-verde);
  border-radius:0 var(--brl-raio-p) var(--brl-raio-p) 0;
  padding:14px 18px; font-size:15.5px; color:var(--brl-texto);
}

/* ------------------------------------------------- régua dos estados --- */

.brl-ad-menu{ display:flex; flex-wrap:wrap; gap:8px; margin:28px 0 0 }
.brl-ad-menu a{
  display:grid; place-items:center; min-width:48px; height:42px; padding:0 10px;
  border-radius:12px; background:#fff; border:2px solid #c9e3d8;
  color:var(--brl-verde); font-family:var(--brl-fonte-titulo);
  font-weight:800; font-size:15px;
  transition:transform .13s, background .13s, color .13s, border-color .13s;
}
.brl-ad-menu a:hover{
  text-decoration:none; background:var(--brl-verde); color:#fff;
  border-color:var(--brl-verde); transform:translateY(-2px);
}
.brl-ad-menu a.is-ativo{
  background:var(--brl-verde); color:#fff; border-color:var(--brl-verde);
}
/* Estado sem local curado: continua clicável, só não se anuncia. */
.brl-ad-menu a.is-so-diretorio{ border-style:dashed; opacity:.72 }

/* A faixa de estado escolhido: diz o que está na tela e oferece a saída.
   Vinha como link sublinhado solto — num lugar onde tudo em volta é pastilha,
   texto sublinhado lê como erro de estilo, não como escolha. */
.brl-ad-todos{
  display:flex; flex-wrap:wrap; align-items:center; gap:14px;
  margin:20px 0 0;
}
.brl-ad-todos[hidden]{ display:none }

.brl-ad-ativo{
  display:inline-flex; align-items:center; gap:8px;
  font-family:var(--brl-fonte-titulo); font-weight:700; font-size:15px;
  color:var(--brl-verde); background:var(--brl-fundo-menta);
  border-radius:999px; padding:9px 18px;
}
.brl-ad-ativo:empty{ display:none }

.brl-ad-limpar{
  display:inline-flex; align-items:center; gap:9px;
  font-family:var(--brl-fonte-titulo); font-weight:700; font-size:15px;
  /* O border explícito não é redundante: o tema do site estiliza <button> e,
     sem declarar o nosso, o botão herda a moldura cinza dele. */
  border:2px solid var(--brl-verde); border-radius:999px;
  background:#fff; color:var(--brl-verde);
  padding:9px 20px; cursor:pointer; text-decoration:none;
  transition:background .14s, color .14s, transform .14s, box-shadow .14s;
}
.brl-ad-limpar svg{ width:12px; height:12px; flex:none }
.brl-ad-limpar:hover{
  background:var(--brl-verde); color:#fff;
  transform:translateY(-2px); box-shadow:0 8px 18px rgba(15,114,102,.18);
}
.brl-ad-limpar:active{ transform:translateY(0) }

/* --------------------------------------------------------- estados ---- */

.brl-ad-estado{ margin-bottom:40px }
.brl-ad-estado[hidden]{ display:none }

.brl-ad-titulo{
  display:flex; align-items:center; gap:14px;
  font-size:clamp(21px,2.6vw,27px); margin:0 0 16px;
  padding-bottom:12px; border-bottom:2px solid var(--brl-borda);
  scroll-margin-top:92px;
}
.brl-ad-uf{
  display:grid; place-items:center; min-width:52px; height:44px; padding:0 10px;
  flex:none; border-radius:13px;
  background:var(--brl-fundo-menta); color:var(--brl-verde);
  font-family:var(--brl-fonte-titulo); font-weight:800; font-size:18px;
}

.brl-ad-nota{
  margin:0 0 16px; font-size:15.5px; color:var(--brl-texto-fraco);
  max-width:62ch;
}

/* ----------------------------------------------------------- cards ---- */

.brl-ad-grade{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px }
@media (max-width:980px){ .brl-ad-grade{ grid-template-columns:repeat(2,1fr) } }
@media (max-width:620px){ .brl-ad-grade{ grid-template-columns:1fr } }

.brl-ad-item{
  display:flex; flex-direction:column; gap:8px;
  background:#fff; border:2px solid var(--brl-borda); border-radius:var(--brl-raio);
  padding:18px 20px; color:var(--brl-texto); text-decoration:none;
  transition:transform .16s, box-shadow .16s, border-color .16s;
}
.brl-ad-item:hover{
  text-decoration:none; transform:translateY(-3px);
  border-color:var(--brl-verde); box-shadow:0 12px 24px rgba(15,114,102,.12);
}

.brl-ad-cab{ display:flex; flex-wrap:wrap; align-items:baseline; gap:10px }
.brl-ad-cab b{ font-family:var(--brl-fonte-titulo); font-size:17.5px; line-height:1.25 }

/* A etiqueta de tipo tem cor própria: órgão público, plataforma e ONG não são
   a mesma coisa, e quem procura costuma preferir um dos três. */
.brl-ad-tipo{
  flex:none; font-size:11.5px; font-weight:800; letter-spacing:.04em;
  text-transform:uppercase; border-radius:999px; padding:4px 10px;
}
.brl-ad-orgao      .brl-ad-tipo{ background:#dfeaf7; color:#36608a }
.brl-ad-plataforma .brl-ad-tipo{ background:var(--brl-fundo-menta); color:var(--brl-verde) }
.brl-ad-ong        .brl-ad-tipo{ background:var(--brl-cor-clara); color:var(--brl-cor) }

.brl-ad-cidade{ font-size:14px; font-weight:700; color:var(--brl-texto-fraco) }
.brl-ad-nota-item{ font-size:15px; color:var(--brl-texto-fraco); line-height:1.5 }

.brl-ad-link{
  margin-top:auto; padding-top:6px;
  font-size:13.5px; font-weight:700; color:var(--brl-verde);
  overflow-wrap:anywhere;
}

/* Sem resultado do filtro — só acontece se a UF não existir no HTML. */
.brl-ad-vazio{
  padding:26px; text-align:center; border-radius:var(--brl-raio);
  background:var(--brl-fundo-menta); font-weight:600;
}
.brl-ad-vazio[hidden]{ display:none }
