/* Header search type-ahead (search.js). Fixed-position panel under the search box: never shifts the layout. */
.search-suggest {
  position: fixed; z-index: 60; overflow-y: auto; overscroll-behavior: contain;
  background: var(--bg); border: 1px solid var(--line); border-radius: var(--radius);
  box-shadow: 0 16px 40px rgba(30, 27, 24, .14); padding: 6px;
}
.search-suggest .sg-img {
  width: 44px; height: 44px; flex: none; object-fit: cover; border-radius: 0; background: var(--surface);
}
.search-suggest .sg-category a::before {
  content: ""; width: 8px; height: 8px; flex: none; border-radius: 0; background: var(--accent);
}

/* Search without results: centered, small capital labels, the underlined search field of browse.css. */
.empty.empty-search-state { text-align: center; align-items: center; }
.empty-search-state .ess-head h1 { font-size: clamp(20px, 2.4vw, 24px); letter-spacing: .06em; }
.empty-search-state .ess-group { align-items: center; }
.empty-search-state .ess-chips { justify-content: center; gap: 8px 24px; }
.empty-search-state .ess-label { font-size: 12px; font-weight: 400; letter-spacing: .18em; text-transform: uppercase; color: var(--muted); }
.empty-search-state .ess-products { align-self: stretch; }
.empty-search-state .ess-title { font-size: 14px; font-weight: 400; letter-spacing: .18em; text-transform: uppercase; }
