.portfolio-filters{margin:0 0 28px;padding:25px;background:var(--light);border:1px solid var(--line)}
.portfolio-filters fieldset{border:0;padding:0;margin:0;min-width:0}
.portfolio-filters legend{font-family:var(--font-primary);font-weight:700;font-size:20px;margin-bottom:12px}
.portfolio-filter-help{font-size:13px;line-height:1.7;max-width:800px;margin:0 0 21px;color:var(--muted)}
.portfolio-filter-fields{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(2,minmax(0,1fr));gap:18px}
.portfolio-filter-fields label{display:block;min-width:0;font-size:12px;font-weight:700}
.portfolio-filter-fields input,.portfolio-filter-fields select{display:block;width:100%;min-width:0;min-height:48px;margin-top:8px;padding:11px 13px;border:1px solid var(--line);background:#fff;font-size:14px;font-weight:400;line-height:1.5}
.portfolio-filter-fields input::placeholder{color:var(--muted);opacity:1}
.portfolio-filter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-top:23px}
.portfolio-filters .button,.portfolio-clear{min-height:48px}
.portfolio-clear{display:inline-flex;align-items:center;padding:10px 8px;font-size:13px;text-decoration:underline;text-underline-offset:4px}
.portfolio-result-count{font-size:13px;color:var(--muted);margin:0 0 28px}
.portfolio-filters input:focus-visible,.portfolio-filters select:focus-visible,.portfolio-filters button:focus-visible,.portfolio-clear:focus-visible{outline:2px solid var(--focus);outline-offset:3px}
@media(max-width:850px){.portfolio-filter-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.portfolio-search{grid-column:1/-1}}
@media(max-width:540px){.portfolio-filters{padding:20px 16px}.portfolio-filter-fields{grid-template-columns:minmax(0,1fr);gap:16px}.portfolio-search{grid-column:auto}.portfolio-filter-help{font-size:13px}.portfolio-filter-fields input,.portfolio-filter-fields select{font-size:16px}.portfolio-filter-actions{align-items:stretch;gap:10px}.portfolio-filter-actions .button{width:100%}.portfolio-clear{justify-content:center;width:100%;text-align:center}}
