.home-search-page {
    --service-blue: #1557d2;
    --service-blue-hover: #1045aa;
    --service-border: #e1e9f3;
    --service-ink: #122338;
    gap: 32px;
}
.home-search-page .qadm-ui-icon { display: inline-block; width: 22px; height: 22px; flex: 0 0 auto; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.main.main--home-search { width: 100%; padding-top: 0; }
.topbar--home-search .topbar__inner { padding-left: 28px; padding-right: 28px; }
.home-search-page > :is(.home-search-content, .home-search-feedback, .home-process, .home-messages, .rubric-directory) { width: min(1220px, calc(100% - 40px)); margin-left: auto; margin-right: auto; }
.home-search-page .home-search-hero { min-width: 0; border: 0; border-radius: 0; padding: 64px max(48px, calc((100% - 1164px) / 2)); color: #fff; background: linear-gradient(110deg, #3157ff 0%, #6150f5 62%, #7a3ee6 100%); }
.home-search-page .home-search-hero h1 { max-width: 980px; color: #fff; font-size: 32px; line-height: 1.25; font-weight: 550; }
.home-search-page .home-search-hero__lead { max-width: 800px; margin: 14px 0 24px; color: #fff; }
.home-search-page .home-search-hero__search-title { margin-top: 26px; font-size: 21px; color: #fff; }
.home-search-page .home-search { max-width: 860px; }
.home-search-row { display: flex; align-items: flex-start; gap: 12px; max-width: 1040px; }
.home-search-row .home-search { flex: 1 1 auto; min-width: 0; }
.home-tell { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; gap: 10px; min-height: 56px; padding: 14px 24px; border: 1px solid #fff; border-radius: 8px; background: #fff; color: #3157ff; font-size: 16px; font-weight: 500; white-space: nowrap; }
.home-tell:hover { background: #eef3ff; color: #2547d9; text-decoration: none; }
.home-tell:focus-visible { outline-color: #fff; }
.home-search__field { position: relative; display: flex; flex: 1 1 auto; min-width: 0; width: 100%; }
.home-search__field > .qadm-ui-icon { position: absolute; top: 50%; right: 18px; width: 20px; height: 20px; color: #6a7e95; transform: translateY(-50%); pointer-events: none; }
.home-search-page .home-search__field input { min-height: 56px; border-color: #cdd9e8; border-radius: 8px; padding-left: 18px; padding-right: 48px; background: #fff; font-size: 16px; color: var(--service-ink); }
.home-search-page .home-search__field input::placeholder { color: #74869a; opacity: 1; }
.home-search-page .home-search__field input:focus { border-color: var(--service-blue); outline: 3px solid rgba(255, 255, 255, .45); outline-offset: 0; }
.home-search-page .home-search-examples { max-width: 860px; gap: 8px 20px; margin-top: 16px; }
.home-search-page .home-search-examples button { line-height: 1.65; color: #fff; text-decoration-color: rgba(255, 255, 255, .6); }
.home-search-page .home-search-examples button:focus-visible { outline-color: #fff; }
.home-search-page .home-search-topic, .home-search-page .home-search-topic strong, .home-search-page .home-search-topic a { color: #fff; }
.home-search-page .home-search-topic a:hover { background: rgba(255, 255, 255, .16); }
.home-search-page .home-search-topic a:focus-visible { outline-color: #fff; }
.home-search-page .home-search__suggestions { color: var(--service-ink); border-color: var(--service-border); border-radius: 8px; padding: 12px 16px; box-shadow: 0 12px 32px rgba(18, 35, 56, .12); }
.home-search-page .home-search-results__caption { color: #5a6f86; }
.home-search-page .home-search-results__list > li { border-color: #e7edf5; }
.home-search-page a.home-search-result { margin: 0 -8px; padding: 12px 8px; border-radius: 6px; }
.home-search-page a.home-search-result:hover, .home-search-page a.home-search-result:focus-visible { background: #f0f5ff; }
.home-search-page .home-search-result__name { font-weight: 500; color: var(--service-ink); }
.home-search-page .home-search-result__context { color: #687c92; }
.home-search-page .home-search-results__all, .home-search-page .home-search-results__picker, .home-search-page .home-search-results__pagination button { color: var(--service-blue); }
.home-process { padding: 12px 28px 16px; }
.home-process > h2 { margin: 0 0 28px; color: var(--service-ink); font-size: 27px; line-height: 1.3; font-weight: 500; }
.home-process__steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 32px; padding: 0; margin: 0; list-style: none; }
.home-process__item { min-width: 0; }
.home-process__visual { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; }
.home-process__item:not(:last-child) .home-process__visual::after { content: ""; flex: 1; height: 1px; background: var(--service-border); }
.home-process__icon { display: flex; align-items: center; justify-content: center; width: 56px; height: 56px; flex: 0 0 56px; border-radius: 8px; background: #eaf0ff; color: #3157ff; }
.home-search-page .home-process__icon .qadm-ui-icon { width: 28px; height: 28px; }
.home-process__item--message .home-process__icon { background: #e6f4ef; color: #137b64; }
.home-process__item--public .home-process__icon { background: #f9edf2; color: #ae466f; }
.home-process__number { color: #687c92; font-size: 14px; font-weight: 500; }
.home-process__copy h3 { margin: 0 0 10px; color: var(--service-ink); font-size: 19px; line-height: 1.4; font-weight: 500; }
.home-process__copy p { max-width: 340px; margin: 0; color: #586d84; font-size: 15px; line-height: 1.6; overflow-wrap: anywhere; }
.home-search-page .home-messages { padding-top: 12px; }
.home-search-page .home-messages__heading { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; }
.home-search-page .home-messages > h2, .home-search-page .home-messages__heading h2 { display: flex; align-items: center; gap: 12px; margin: 0; color: var(--service-ink); font-size: 27px; font-weight: 500; line-height: 1.3; }
.home-search-page .home-messages > h2 .qadm-ui-icon, .home-search-page .home-messages__heading h2 .qadm-ui-icon { width: 28px; height: 28px; color: var(--service-blue); }
.home-search-page .home-messages__lead { color: #687c92; }
.home-search-page .home-messages__grid { align-items: stretch; gap: 24px; margin-top: 28px; }
.home-search-page .home-message { display: flex; flex-direction: column; height: 360px; min-height: 0; overflow: hidden; padding: 20px; border: 1px solid var(--service-border); border-radius: 8px; background: #fff; box-shadow: 0 3px 12px rgba(18, 35, 56, .025); }
.home-search-page .home-message__author { flex: 0 0 52px; min-height: 0; margin-bottom: 16px; }
.home-search-page .home-message__avatar { height: 38px; background: #eaf0fb; color: #43608f; }
.home-search-page .home-message:nth-child(3n + 2) .home-message__avatar { background: #eaf4ee; color: #426f54; }
.home-search-page .home-message:nth-child(3n + 3) .home-message__avatar { background: #f8edf0; color: #9a5669; }
.home-search-page .home-message__name { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; color: var(--service-ink); }
.home-search-page .home-message__place { display: inline-flex; align-items: flex-start; gap: 4px; color: #687c92; }
.home-search-page .home-message__place > span { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.home-search-page .home-message__place .qadm-ui-icon { width: 12px; height: 12px; margin-top: 3px; }
.home-search-page .home-message h3 { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2; line-clamp: 2; flex: 0 0 auto; max-height: 48px; overflow: hidden; font-size: 16px; line-height: 1.5; font-weight: 550; }
.home-search-page .home-message__body { color: #34475d; font-size: 15px; line-height: 1.65; }
.home-search-page .home-message__text { position: relative; flex: 1 1 auto; min-height: 0; }
.home-search-page .home-message--linked { position: relative; }
.home-search-page .home-message--linked .home-message__text { position: static; }
.home-search-page .home-message__read-more { display: inline-block; margin-top: 8px; min-height: 28px; color: var(--service-blue); font-size: 13px; line-height: 28px; text-decoration: underline; text-underline-offset: 3px; }
/* Stretch the native message link while keeping place and rubric links independent. */
.home-search-page .home-message__read-more::after { content: ""; position: absolute; inset: 0; z-index: 1; cursor: pointer; }
.home-search-page .home-message--linked :is(h3 a, .home-message__place, .home-message__rubric) { position: relative; z-index: 2; }
.home-search-page .home-message--linked:hover { border-color: #b8c8e6; }
.home-search-page .home-message--linked:focus-within { outline: 2px solid var(--service-blue); outline-offset: 3px; }
.home-search-page .home-message__excerpt { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 3; line-clamp: 3; overflow: hidden; }
.home-search-page .home-message__more { height: 28px; margin-top: 8px; }
.home-search-page .home-message__more[open] { position: absolute; inset: 0; height: auto; margin: 0; padding-bottom: 36px; }
.home-search-page .home-message__more[open] .home-message__body { position: absolute; inset: 0 0 36px; height: auto; overflow-y: auto; overscroll-behavior-y: contain; scrollbar-width: thin; padding-right: 8px; }
.home-search-page .home-message__more[open] .home-message__body:focus-visible { outline: 2px solid var(--service-blue); outline-offset: 2px; }
.home-search-page .home-message__more summary { color: var(--service-blue); min-height: 28px; line-height: 28px; }
.home-search-page .home-message__meta { flex: 0 0 auto; gap: 10px; margin-top: auto; padding-top: 18px; font-size: 12px; color: #6b7f94; }
.home-search-page .home-message__rubric { display: inline-flex; align-items: center; gap: 6px; width: fit-content; max-width: 100%; padding: 5px 8px; border-radius: 4px; background: #f1f5fb; color: #4c6481; font-size: 12px; }
.home-search-page .home-message__rubric .qadm-ui-icon { width: 14px; height: 14px; }
.home-search-page .home-message__rubric > span { min-width: 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
.home-search-page .home-message__footer { display: flex; align-items: center; justify-content: space-between; gap: 10px; min-width: 0; min-height: 28px; }
.home-search-page .home-message__footer .home-message__rubric { flex: 0 1 auto; min-width: 0; }
.home-search-page .home-message__counts { display: flex; flex: 0 0 auto; align-items: center; gap: 12px; margin-left: auto; }
.home-search-page .home-message__counter { display: inline-flex; align-items: center; gap: 5px; min-height: 28px; color: #687c92; font-size: 12px; line-height: 18px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.home-search-page a.home-message__counter { position: relative; z-index: 2; }
.home-search-page a.home-message__counter:hover { color: var(--service-blue); text-decoration: none; }
.home-search-page .home-message__counter .qadm-ui-icon { width: 15px; height: 15px; }
@media (max-width: 1000px) {
    .home-search-page .home-messages__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px) {
    .topbar--home-search .topbar__inner { padding-left: 20px; padding-right: 20px; }
    .home-search-page .home-search-hero { padding: 44px 28px; }
    .home-search-page > :is(.home-search-content, .home-search-feedback, .home-process, .home-messages, .rubric-directory) { width: calc(100% - 16px); }
    .home-process__steps { grid-template-columns: minmax(0, 1fr); gap: 24px; }
    .home-process__item { display: flex; align-items: flex-start; gap: 16px; }
    .home-process__visual { flex-direction: column; gap: 6px; margin: 0; }
    .home-process__item .home-process__visual::after { display: none; }
    .home-process__copy { min-width: 0; }
    .home-process__copy p { max-width: none; }
}
@media (max-width: 540px) {
    .home-search-page { gap: 24px; }
    .home-search-page .home-search-hero { padding: 40px 28px; }
    .home-search-page .home-search-hero h1 { font-size: 27px; line-height: 1.25; }
    .home-search-page .home-search-hero__lead { margin-bottom: 20px; font-size: 15px; line-height: 1.6; }
    .home-search-page .home-search-hero__search-title { margin: 22px 0 12px; font-size: 20px; }
    .home-search-page .home-search__form { flex-wrap: nowrap; }
    .home-search-row { flex-direction: column; align-items: stretch; }
    .home-tell { width: 100%; }
    .home-search__field { flex-basis: 0; }
    .home-search-page .home-search-examples { gap: 6px 14px; }
    .home-process { padding: 8px 20px 16px; }
    .home-process > h2 { font-size: 23px; margin-bottom: 24px; }
    .home-process__icon { width: 44px; height: 44px; flex-basis: 44px; }
    .home-search-page .home-process__icon .qadm-ui-icon { width: 24px; height: 24px; }
    .home-process__copy h3 { font-size: 18px; }
    .home-search-page .home-messages > h2, .home-search-page .home-messages__heading h2 { align-items: flex-start; gap: 10px; font-size: 23px; }
    .home-search-page .home-messages > h2 .qadm-ui-icon, .home-search-page .home-messages__heading h2 .qadm-ui-icon { width: 25px; height: 25px; margin-top: 3px; }
    .home-search-page .home-messages__grid { grid-template-columns: minmax(0, 1fr); gap: 16px; }
    .home-search-page .home-message { padding: 18px; }
}
