.search-shell { padding-block: clamp(48px, 8vw, 110px); }
.search-hero { max-width: 720px; margin-bottom: clamp(34px, 6vw, 72px); }
.search-hero h1 { margin: 10px 0 16px; font-size: clamp(40px, 6vw, 74px); letter-spacing: -0.075em; }
.search-hero p { max-width: 38em; color: var(--color-muted); font-size: 18px; }
.search-form { padding: 24px; border: 1px solid var(--color-rule); background: var(--color-mist); }
.search-form > label { display: block; margin-bottom: 10px; font-size: 14px; font-weight: 800; }
.search-input-row { display: grid; grid-template-columns: 1fr auto; gap: 10px; }
.search-input-row input, .search-filters input, .search-filters select { width: 100%; min-height: 46px; border: 1px solid var(--color-rule); border-radius: 0; background: #fff; padding: 10px 12px; }
.search-input-row button { min-height: 46px; padding-inline: 20px; background: var(--color-text); color: #fff; cursor: pointer; font-weight: 800; }
.search-filters { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 12px; margin-top: 16px; }
.search-filters label { display: grid; gap: 5px; color: var(--color-muted); font-size: 12px; font-weight: 750; }
.search-results { margin-top: 54px; }
.search-results .section-heading { display: flex; align-items: baseline; justify-content: space-between; gap: 18px; border-bottom: 1px solid var(--color-rule); }
.search-results .section-heading p { color: var(--color-muted); font-size: 14px; }
.search-status { min-height: 1.5em; margin-block: 16px; color: var(--color-muted); }
.search-result-list { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--color-rule); }
.search-result { display: grid; grid-template-columns: minmax(92px, 0.24fr) minmax(0, 1fr); gap: 18px; padding: 22px 0; border-bottom: 1px solid var(--color-rule); }
.search-result-meta { color: var(--color-muted); font-family: var(--font-condensed); font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; }
.search-result h3 { margin-bottom: 7px; font-size: 22px; }
.search-result p { margin: 0; color: var(--color-muted); }
@media (max-width: 800px) { .search-filters { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .search-shell { padding-top: 38px; } .search-input-row { grid-template-columns: 1fr; } .search-filters { grid-template-columns: 1fr; } .search-result { grid-template-columns: 1fr; gap: 7px; } .search-results .section-heading { display: block; } }
