/* Search results page — shared across brands. */

.search-page {
    max-width: 820px;
}

.search-page__form {
    margin-bottom: 1.25rem;
}

.search-page__intro {
    margin-bottom: 2rem;
    color: #444;
    font-size: 1rem;
    line-height: 1.6;
}

.search-page__intro p {
    margin: 0;
}

.search-page__summary {
    color: #666;
    font-size: 0.9375rem;
    margin-bottom: 1.5rem;
}

.search-page__empty {
    padding: 1.5rem;
    background: #f9f9f9;
    border-left: 4px solid var(--brand-primary);
}

.search-results {
    list-style: none;
    margin: 0;
    padding: 0;
}

.search-result {
    padding: 1rem 0;
    border-bottom: 1px solid #eee;
}

.search-result__link {
    display: flex;
    align-items: baseline;
    gap: 0.75rem;
    text-decoration: none;
}

.search-result__name {
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
    color: #212529;
}

.search-result__link:hover .search-result__name {
    color: var(--brand-accent-text, var(--brand-primary)); /* the accent hue is 3.58:1 as text on white */
}

/* Visible keyboard focus (WCAG 2.4.7). The link removes its underline, so
   without this a keyboard user has no indication of the focused result. */
.search-result__link:focus-visible {
    outline: 2px solid var(--brand-primary);
    outline-offset: 3px;
    border-radius: 2px;
}

.search-page__intro a:focus-visible,
.search-page__empty a:focus-visible {
    outline: 2px solid var(--brand-primary);
    outline-offset: 2px;
    border-radius: 2px;
}

.search-result__type {
    font-size: 0.6875rem;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #6b6b75; /* 5.27:1 on white; #999 was 2.85:1 (WAVE, 2026-09-21) */
    border: 1px solid #ddd;
    padding: 0.1rem 0.4rem;
}

.search-result__description {
    margin: 0.35rem 0 0;
    color: #666;
    font-size: 0.9375rem;
}
