/* Search follows navigation on the right; mobile retains a full-width field. */
.header-inner { display:grid; grid-template-columns:auto 1fr 170px; gap:.2rem 1rem; padding-block:.7rem; }
.header-inner>.brand { grid-column:1; grid-row:1; width:160px; }
.header-inner>.site-nav { grid-column:2; grid-row:1; gap:.8rem; }
.header-inner>.header-tools { display:none; margin-left:0; }
.site-search { display:flex; align-items:stretch; min-width:0; border:1px solid var(--border); border-radius:.5rem; overflow:hidden; background:var(--canvas); }
.site-search:focus-within { outline:2px solid var(--focus); outline-offset:3px; }
.site-search input { width:100%; min-width:0; min-height:44px; border:0; border-radius:0; padding:.6rem .8rem; background:transparent; color:var(--text); font:inherit; font-size:.9rem; }
.site-search input::placeholder { color:var(--text-muted); opacity:1; }
.site-search input:focus-visible { outline:0; }
.site-search button { display:grid; place-items:center; min-width:46px; min-height:44px; padding:.5rem; border:0; background:var(--primary); color:var(--on-primary); cursor:pointer; }
.site-search button:hover { background:var(--primary-hover); }
.site-search button:focus-visible { outline:2px solid var(--focus); outline-offset:-4px; }
.site-search svg { fill:none; stroke:currentColor; stroke-width:2; stroke-linecap:round; }
.header-search { grid-column:3; grid-row:1; justify-self:end; width:100%; }
.search-page { padding-top:3rem; }
.search-content { max-width:900px; }
.search-large { max-width:720px; }
.search-large input { min-height:52px; font-size:1.05rem; }
.search-status { margin:1.5rem 0; color:var(--text-muted); }
.search-results { list-style:none; padding:0; margin:0; }
.search-results li { border-top:1px solid var(--border); padding:1.6rem 0; }
.search-results h2 { font-size:1.3rem; line-height:1.45; margin:0 0 .5rem; }
.search-results h2 a { color:var(--primary); text-decoration-thickness:1px; text-underline-offset:.2em; }
.search-results p { line-height:1.7; margin:0 0 .5rem; }
.search-result-path { color:var(--text-muted); font-size:.8rem; overflow-wrap:anywhere; }
@media(min-width:901px) and (max-width:1350px) {
 .header-inner>.brand { grid-column:1 / 3; }
 .header-inner>.site-nav { grid-column:1 / 3; grid-row:2; justify-self:start; margin-left:0; gap:.6rem; }
 .header-search { grid-column:3; grid-row:2; }
}
@media(max-width:900px) {
 .header-inner { grid-template-columns:auto 1fr auto; }
 .header-inner>.brand { grid-row:1; }
 .header-inner>.header-tools { display:flex; grid-column:2 / 4; grid-row:1; justify-self:end; }
 .header-search { grid-column:1 / 4; grid-row:2; width:100%; margin-top:.5rem; }
 .header-inner>.site-nav { max-height:calc(100dvh - 155px); }
 :root:not(.js) .header-inner { display:grid; }
 :root:not(.js) .site-header { position:static; }
 :root:not(.js) .header-inner>.site-nav { grid-column:1 / 4; grid-row:3; width:100%; max-height:none; padding-inline:0; }
}
@media(min-width:901px) and (hover:none) {
 .header-inner>.site-nav { grid-column:1 / -1; grid-row:2; flex-wrap:wrap; justify-self:stretch; margin-left:0; }
 .header-inner>.brand { grid-column:1; grid-row:1; }
 .header-search { grid-column:3; grid-row:1; }
}
