.csa-directory { max-width: none; }
.csa-directory__title { margin-top: 0; }
.csa-directory__filters { display:flex; flex-wrap:wrap; gap:10px 14px; align-items:end; padding:0 0 24px; border-bottom:1px solid var(--line); margin-bottom:28px; font:14px/1.4 var(--sans); }
.csa-directory__filters label { display:block; color:var(--ink-soft); font-weight:700; }
.csa-directory__filters input,.csa-directory__filters select { min-height:42px; padding:8px 10px; border:1px solid var(--line); background:transparent; color:var(--ink); }
.csa-directory__filters button { min-height:42px; padding:8px 16px; border:1px solid var(--accent); background:var(--accent); color:#fff; font-weight:700; cursor:pointer; }
.csa-directory__filters a { padding:11px 0; color:var(--accent); text-decoration:underline; }
.csa-directory__group { padding:0 0 26px; border-bottom:1px solid var(--line); margin-bottom:26px; }
.csa-directory__group h3 { margin:0 0 12px; }
.csa-directory__group ul { list-style:none; padding:0; margin:0; columns:2 280px; column-gap:34px; }
.csa-directory__group li { break-inside:avoid; padding:9px 0; border-top:1px solid color-mix(in srgb, var(--line) 70%, transparent); font:16px/1.45 var(--sans); }
.csa-directory__group li span { display:block; color:var(--muted); font-size:14px; }
.csa-directory__empty { color:var(--muted); }
@media (max-width:767px) { .csa-directory__filters { display:grid; grid-template-columns:1fr; align-items:stretch; } .csa-directory__filters input,.csa-directory__filters select,.csa-directory__filters button { width:100%; } .csa-directory__group ul { columns:1; } }
