/* CT21-TERMINAL-SEMZIP */
.ct-metric-ribbon .wrap>a.ct21-link{
 display:flex!important;flex-direction:column;
 align-items:center;justify-content:center;
 text-align:center;text-decoration:none!important;
 background:#f8fafb;border-radius:13px;
 border:1px solid #d6e1e1;min-height:120px;
 padding:17px 12px;color:#35524d;
 transition:transform .15s,box-shadow .15s
}
.ct-metric-ribbon .wrap>a.ct21-link b{
 display:block;font-family:Georgia,serif;
 font-size:clamp(32px,3.2vw,46px);
 line-height:1.1;margin:0 0 9px;color:#173f35
}
.ct-metric-ribbon .wrap>a.ct21-link:hover{
 transform:translateY(-2px);
 box-shadow:0 8px 20px #041e3030
}
.ct-metric-ribbon .wrap>a.ct21-link:focus-visible,
.ct21-card:focus-visible{
 outline:3px solid #dfb65a;outline-offset:3px
}
.ct21-directory{padding:58px 0 80px}
.ct21-directory h1{margin:10px 0 15px}
.ct21-directory>p{color:#596b62}
.ct21-filter{
 display:grid;grid-template-columns:1fr 1fr auto auto;
 gap:14px;align-items:end;margin:30px 0 22px;
 padding:20px;background:#edf1ec;
 border:1px solid #d9dfd6;border-radius:12px
}
.ct21-filter label{
 display:flex;flex-direction:column;gap:7px;
 font-size:13px;font-weight:600
}
.ct21-filter input,.ct21-filter select{width:100%}
.ct21-filter>a{padding:12px}
.ct21-count{margin:10px 0 22px;font-size:13px}
.ct21-grid{
 display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
 gap:15px
}
.ct21-card{
 display:flex;flex-direction:column;min-width:0;
 gap:12px;background:#fff;border:1px solid #d8ded4;
 border-radius:10px;padding:22px;min-height:165px;
 text-decoration:none;color:#173f35
}
.ct21-card small{
 color:#697f70;text-transform:uppercase;letter-spacing:.07em
}
.ct21-card h2{
 font-size:clamp(23px,2.5vw,30px);
 margin:0;overflow-wrap:anywhere
}
.ct21-card span{font-size:12px;margin-top:auto}
.ct21-card:hover{border-color:#4c8270}
.ct21-pages{
 display:flex;gap:10px;align-items:center;
 justify-content:center;flex-wrap:wrap;margin-top:35px
}
.ct21-pages a,.ct21-pages strong{
 padding:7px 12px;border:1px solid #cfdbd3;
 border-radius:6px;text-decoration:none
}
@media(max-width:900px){
 .ct21-filter{grid-template-columns:1fr 1fr}
 .ct21-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
 .ct21-filter,.ct21-grid{grid-template-columns:1fr}
 .ct-metric-ribbon .wrap>a.ct21-link{
  min-height:95px;font-size:11px;padding:12px 6px
 }
 .ct-metric-ribbon .wrap>a.ct21-link b{
  font-size:clamp(27px,7vw,35px)
 }
 .ct21-directory{padding-top:34px}
}

/* CT28-CABECALHO-UNICO-MUNICIPIOS */
.ct21-directory { padding-top: 12px; }
.ct21-directory .ct21-filter { margin-top: 8px; }
@media (max-width:600px) {
  .ct21-directory { padding-top: 8px; }
}
