.search-shell { position:relative; min-inline-size:0; }
.search-shell input[type="search"]::-webkit-search-cancel-button { -webkit-appearance:none; }
.live-search { --ls-ink:#20232c; --ls-muted:#737985; --ls-line:#edf0f3; position:absolute; inset-block-start:calc(100% + 14px); inset-inline-start:0; z-index:30; inline-size:100%; max-inline-size:640px; min-inline-size:0; max-block-size:min(510px,var(--search-available,65dvh)); overflow:auto; overscroll-behavior:contain; scrollbar-width:thin; scrollbar-color:#dfe2e8 transparent; padding:6px; border:1px solid #eceef2; border-radius:16px; background:#fff; color:var(--ls-ink); box-shadow:0 20px 55px rgb(15 23 42 / 13%),0 3px 10px rgb(15 23 42 / 3%); font-family:Heebo,Arial,sans-serif; text-align:start; transform-origin:top center; animation:live-search-reveal .24s cubic-bezier(.2,.75,.25,1); }
.live-search[hidden] { display:none; }
.live-search__status:empty { display:none; }
@keyframes live-search-reveal { from { opacity:0; transform:translateY(-7px); } to { opacity:1; transform:translateY(0); } }
@keyframes live-search-enter { from { opacity:0; transform:translateY(-3px); } to { opacity:1; transform:translateY(0); } }
@media (prefers-reduced-motion:reduce) { .live-search { animation:none; } }
.live-search__status { margin:0; padding:10px 12px; color:var(--ls-muted); font-size:12px; line-height:1.5; }
.live-search[aria-busy="true"] .live-search__status::before { content:""; display:inline-block; inline-size:6px; block-size:6px; margin-inline-end:8px; border-radius:50%; background:var(--c-crimson); }
.live-search[aria-busy="true"] :is(.live-search__list,.live-search__custom,.live-search__all) { opacity:.55; pointer-events:none; }
.live-search__skeleton { display:grid; gap:10px; padding:4px 12px 12px; }
.live-search__skeleton span { block-size:65px; border-radius:8px; background:linear-gradient(to left,#f1f3f6 0 54px,transparent 54px 66px,#f7f8fa 66px 100%); }
.live-search__heading { display:flex; align-items:center; justify-content:space-between; margin:0; padding:8px 12px; font-size:11px; font-weight:500; color:var(--ls-muted); }
.live-search__heading span { font-variant-numeric:tabular-nums; }
.live-search__list { list-style:none; padding:0; margin:0; }
.live-search__list li + li { border-block-start:1px solid var(--ls-line); }
.live-search .live-search__result { display:flex; align-items:center; gap:11px; min-block-size:62px; padding:9px 10px; color:var(--ls-ink); text-decoration:none; border-radius:9px; }
.live-search__result:hover,.live-search__result:focus-visible { background:#f7f8fa; }
.live-search__thumb { display:grid; place-items:center; flex:0 0 42px; inline-size:42px; block-size:42px; overflow:hidden; border-radius:7px; background:#f1f3f6; color:#a3a9b4; }
.live-search__thumb img { inline-size:100%; block-size:100%; object-fit:cover; }
.live-search__thumb .icon { inline-size:20px; block-size:20px; }
.live-search__text { display:grid; gap:2px; min-inline-size:0; flex:1; }
.live-search__type { font-size:10px; color:var(--ls-muted); }
.live-search__text strong { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; font-size:14px; font-weight:500; line-height:1.4; overflow-wrap:anywhere; }
.live-search__excerpt { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden; font-size:12px; line-height:1.6; color:var(--ls-muted); }
.live-search__arrow { flex:none; font-size:14px; color:#b0b5bf; }
.live-search__arrow .icon,.live-search__all > span > .icon { inline-size:17px; block-size:17px; }
.live-search .live-search__all { display:flex; align-items:center; justify-content:space-between; gap:12px; margin:5px 2px 2px; padding:12px; border:1px solid #f2e5e9; border-radius:9px; background:#fff8fa; color:var(--c-crimson); text-decoration:none; font-size:12px; font-weight:400; overflow-wrap:anywhere; }
.live-search__all strong { font-weight:500; }
.live-search .live-search__all:hover { background:#fff0f4; }
.live-search__empty { padding:22px 16px; text-align:center; color:var(--ls-muted); font-size:13px; }
.live-search__empty .icon { inline-size:24px; block-size:24px; margin:auto; opacity:.5; }
.live-search__empty p { margin:10px 0 0; }
.live-search__custom { display:grid; grid-template-columns:32px minmax(0,1fr); gap:10px; align-items:start; padding:12px; border:1px solid #eee9ec; border-radius:12px; background:linear-gradient(115deg,#fff 45%,#fdf9fa); color:var(--ls-ink,#20232c); margin:3px 0 6px; overflow-wrap:anywhere; text-align:start; }
.live-search__mark { display:grid; place-items:center; inline-size:32px; block-size:32px; border:1px solid #f1e1e7; border-radius:10px; background:#faf0f3; color:#b72a49; }
.live-search__custom-main { min-inline-size:0; }
.live-search__custom-head { display:flex; flex-wrap:wrap; align-items:center; gap:4px 8px; }
.live-search__custom h3 { flex:1 1 110px; min-inline-size:0; margin:0; color:inherit; font-family:inherit; font-size:14px; line-height:1.5; font-weight:600; letter-spacing:-.01em; }
.live-search__badge { flex:none; display:inline-block; margin:0; padding:2px 6px; border-radius:5px; background:#f5eff2; color:#8a626e; font-size:9px; font-weight:400; line-height:1.5; }
.live-search__copy { margin-block-start:3px; font-size:12px; line-height:1.65; color:#737782; }
.live-search__copy p { margin:0 0 4px; }
.live-search__copy > :last-child { margin-block-end:0; }
.live-search__copy img { max-inline-size:100%; block-size:auto; border-radius:6px; }
.live-search__custom .live-search__cta { display:inline-flex; gap:8px; align-items:center; min-block-size:32px; margin-block-start:5px; padding:0 2px; border-radius:6px; color:#545b68; font-size:11px; line-height:1.4; font-weight:500; text-decoration:none; transition:color .15s ease; }
.live-search__custom .live-search__cta:is(:hover,:focus,:active) { color:var(--c-crimson); text-decoration:none; }
.live-search__custom .live-search__cta .icon { flex:none; box-sizing:border-box; inline-size:24px; block-size:24px; padding:5px; border-radius:50%; background:#f5edf0; color:#b72a49; stroke-width:1.7; transition:background-color .15s ease; }
.live-search__custom .live-search__cta:hover .icon { background:#f0dfe5; }
.live-search__custom .live-search__cta > span { text-decoration:none; }
.live-search__divider { display:flex; align-items:center; gap:9px; margin:10px 6px 3px; color:var(--ls-muted,#737985); font-size:10px; line-height:1.6; font-weight:400; }
.live-search__divider::after { content:""; flex:1; block-size:1px; background:var(--ls-line,#edf0f3); }
.live-search__suggestions { display:flex; flex-wrap:wrap; gap:7px; padding:4px 12px 12px; }
.live-search__suggestions button { padding:7px 11px; border:1px solid #e7e9ed; border-radius:8px; background:#f8f9fb; color:#454b57; font:inherit; font-size:12px; cursor:pointer; }
.live-search__suggestions button:hover { background:#fff0f3; border-color:#efd0d8; }
.live-search :is(a,button):focus-visible { outline:2px solid var(--c-crimson); outline-offset:-2px; }
/* The input and its results share a single surface anchored inside the header. */
.site-header .header-search { max-inline-size:760px; margin-inline:auto; animation:live-search-enter .2s ease-out; }
.site-header .header-search .search-form { padding-inline-end:47px; border-radius:14px; border-color:#e7eaf0; background:#fff; color:#20232c; transition:border-radius .2s ease,border-color .2s ease; }
.site-header .header-search .search-form:focus-within { border-color:#dce1e8; box-shadow:none; }
.site-header .header-search .search-form button:hover { background:#f1f3f6; }
.site-header .header-search > .icon-btn { position:absolute; inset-inline-end:4px; inset-block:0; margin-block:auto; z-index:2; color:#737985; }
.site-header .site-header__bar .header-search > .icon-btn,
.site-header .site-header__bar .header-search > .icon-btn:is(:hover,:active) { transform:none; transition:color .15s ease,background-color .15s ease; }
.site-header .header-search > .icon-btn:hover { color:#20232c; }
.site-header .header-search > .search-shell:has(.live-search:not([hidden])) .search-form { border-end-start-radius:0; border-end-end-radius:0; border-block-end-color:transparent; }
.site-header .header-search .live-search { inset-block-start:calc(100% - 1px); inline-size:100%; max-inline-size:none; max-block-size:min(480px,var(--search-available,65dvh)); padding:8px; border-color:#e7eaf0; border-block-start:0; border-radius:0 0 14px 14px; box-shadow:0 18px 36px -14px rgb(15 23 42 / 18%); }
.site-header .header-search .live-search::before { content:""; display:block; block-size:1px; margin:0 4px 8px; background:#edf0f3; }
.site-header .header-search .live-search__all { margin-block-start:8px; padding:10px; border-color:transparent; background:#f7f8fa; color:#596271; }
.site-header .header-search .live-search__all:hover { background:#f0f2f6; color:var(--c-crimson); }
@media (prefers-reduced-motion:reduce) {
 .site-header .header-search { animation:none; }
 .site-header .header-search .search-form { transition:none; }
}
@media (max-width:600px) {
 .live-search { padding:6px; border-radius:13px; }
 .live-search .live-search__result { gap:9px; padding:8px; }
 .live-search__thumb { flex-basis:38px; inline-size:38px; block-size:40px; border-radius:6px; }
 .live-search__text strong { font-size:13px; }
 .live-search__excerpt { font-size:11px; }
 .live-search__custom { padding:10px; }
}
