/* Site-wide product and page search */
.site-search-panel[hidden] { display: none !important; }
.site-search-panel { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); width: min(94vw, 680px); max-height: min(70vh, 600px); overflow-y: auto; padding: 22px; background: #fff; border: 3px solid var(--brand); border-radius: 0 0 22px 22px; box-shadow: 0 18px 35px #17223824; z-index: 10001; }
.site-search-panel label { display: block; font-weight: 800; margin-bottom: 10px; }
.site-search-field { display: flex; align-items: stretch; border: 2px solid #ffcf9b; border-radius: 12px; overflow: hidden; }
.site-search-field input { min-width: 0; flex: 1; border: 0; padding: 13px; font: 600 1rem Quicksand,sans-serif; outline-offset: -3px; }
.site-search-close { border: 0; background: #fff6eb; color: #77400a; cursor: pointer; font: 700 1.6rem Quicksand,sans-serif; padding: 0 15px; }
.site-search-results { display: grid; gap: 4px; margin-top: 14px; }
.site-search-results a { display: flex; flex-direction: column; gap: 3px; padding: 11px 12px; border-radius: 10px; color: #24344b; text-decoration: none; }
.site-search-results a:hover, .site-search-results a:focus-visible { background: #fff3e3; }
.site-search-results span, .site-search-results p { color: #56667b; font-size: .87rem; margin: 0; }
.site-search-mobile-item { display: none; }
@media (max-width: 900px) {
  .site-search-panel { width: 100%; max-height: calc(100vh - 64px); padding: 18px; border-left: 0; border-right: 0; border-radius: 0 0 18px 18px; }
  .site-search-mobile-item { display: list-item; }
  .site-search-mobile-trigger { width: 100%; text-align: left; padding: 12px 14px; background: #fff6eb; border: 1px solid #ffcf9b; border-radius: 10px; color: #24344b; font: 800 1rem Quicksand,sans-serif; cursor: pointer; }
}
