.ngw-header-search { position: relative; }
.ngw-header-search > summary { display: flex; align-items: center; gap: .45rem; cursor: pointer; list-style: none; min-height: 44px; padding: .5rem; font-weight: 600; }
.ngw-header-search > summary::-webkit-details-marker { display: none; }
.ngw-header-search svg { width: 1.2rem; height: 1.2rem; flex: none; }
.ngw-header-search__panel { position: absolute; right: 0; top: calc(100% + .5rem); width: min(30rem, calc(100vw - 2rem)); padding: 1.25rem; background: var(--ngw-white, #fff); color: var(--ngw-ink, #17212c); border: 1px solid #cbd2d9; border-radius: 12px; box-shadow: 0 16px 40px #17212c26; z-index: 40; }
.ngw-search { max-width: 64rem; margin-inline: auto; }
.ngw-search__form label, .ngw-header-search__panel label { display: block; margin-bottom: .5rem; font-weight: 600; }
.ngw-search__input-row { display: flex; align-items: stretch; gap: .65rem; }
.ngw-search__input-row input { min-width: 0; flex: 1; width: 100%; min-height: 48px; padding: .7rem .9rem; border: 1px solid #758391; border-radius: 8px; background: #fff; color: #17212c; font: inherit; }
.ngw-search__input-row button { flex: none; }
.ngw-search__summary { margin-block: 2rem 1rem; overflow-wrap: anywhere; }
.ngw-search__results { list-style: none; padding: 0; margin: 0; }
.ngw-search__result { padding: 1.5rem 0; border-bottom: 1px solid #dce2e7; overflow-wrap: anywhere; }
.ngw-search__result h2 { font-size: clamp(1.2rem, 3vw, 1.55rem); margin: 0 0 .6rem; }
.ngw-search__result p { margin: 0; max-width: 75ch; }
.ngw-search__result .results-highlight { background: #fff0ae; color: #17212c; font-weight: 600; }
.ngw-search__empty { padding: 1.25rem; margin-top: 1.5rem; background: #f1f5f7; border-radius: 8px; }
.ngw-search__pagination { display: flex; flex-wrap: wrap; gap: .4rem; align-items: center; margin-top: 2rem; }
.ngw-search__pagination > * { min-width: 44px; min-height: 44px; padding: .6rem .85rem; border: 1px solid #cbd2d9; border-radius: 6px; text-align: center; }
.ngw-search__pagination [aria-current] { background: #17212c; color: #fff; }
.ngw-header-search summary:focus-visible, .ngw-search input:focus-visible, .ngw-header-search input:focus-visible { outline: 3px solid #1671bb; outline-offset: 3px; }
@media (max-width: 700px) {
  .ngw-header-search > summary span { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
  .ngw-header-search__panel { position: fixed; left: 1rem; right: 1rem; top: 5.5rem; width: auto; }
}
@media (max-width: 420px) { .ngw-search__input-row { flex-wrap: wrap; } .ngw-search__input-row input { flex-basis: 100%; } .ngw-search__input-row button { width: 100%; } }
