.municipality-picker,.municipality-directory{margin-block:clamp(2rem,5vw,5rem)}
.municipality-jump,.municipality-filters{display:grid;grid-template-columns:minmax(220px,2fr) minmax(190px,1fr) auto;gap:1rem;align-items:end;padding:1.2rem;border:1px solid #d8e6df;border-radius:24px;background:#f5faf7}
.municipality-jump label,.municipality-filters label{display:grid;gap:.45rem;font-weight:700}
.municipality-jump input,.municipality-jump select,.municipality-filters input,.municipality-filters select{width:100%;min-height:48px;padding:.7rem .85rem;border:1px solid #a7c4b7;border-radius:12px;background:#fff;font:inherit}
.featured-town-grid,.municipality-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:1rem;margin-top:1.4rem}
.featured-town-grid a,.municipality-card a{display:flex;min-height:170px;flex-direction:column;justify-content:center;gap:.45rem;padding:1rem;border:1px solid #d8e6df;border-radius:20px;background:#fff;color:inherit;text-align:center;text-decoration:none;box-shadow:0 10px 28px rgba(19,63,58,.07);transition:transform .18s,box-shadow .18s}
.featured-town-grid a:hover,.municipality-card a:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(19,63,58,.14)}
.featured-town-grid img,.municipality-card img{width:100%;height:92px;object-fit:contain}
.municipality-card strong{font-size:1.05rem}.municipality-card span,.municipality-card small{color:#60776e}.municipality-card small{font-weight:700;color:#087c7c}
.letter-filter{grid-column:1/-1;display:flex;flex-wrap:wrap;gap:.35rem}
.letter-filter button{min-width:34px;padding:.45rem;border:1px solid #bad0c6;border-radius:9px;background:#fff;color:#174640;cursor:pointer}
.letter-filter button.active{background:#087c7c;color:#fff;border-color:#087c7c}
.directory-count{font-weight:700;color:#526a61}.directory-more{display:block;margin:1.5rem auto 0}.directory-empty{text-align:center}
@media(max-width:760px){.municipality-jump,.municipality-filters{grid-template-columns:1fr}.featured-town-grid,.municipality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.featured-town-grid a,.municipality-card a{min-height:145px;padding:.7rem}.featured-town-grid img,.municipality-card img{height:72px}}
@media(max-width:420px){.featured-town-grid,.municipality-grid{grid-template-columns:1fr}}
