.site-search {
  width: min(760px, calc(100vw - 32px));
  max-height: min(720px, calc(100vh - 48px));
  padding: 0;
  border: 0;
  border-radius: 28px;
  color: #102c23;
  background: #fffdf8;
  box-shadow: 0 30px 90px rgba(16, 44, 35, 0.28);
}
.site-search .sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.site-search::backdrop { background: rgba(10, 30, 25, 0.72); backdrop-filter: blur(8px); }
.site-search-inner { padding: clamp(26px, 5vw, 48px); }
.site-search-head { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 26px; }
.site-search-title { margin: 0; font: 700 clamp(28px, 4vw, 42px)/1.05 Georgia, serif; }
.site-search-close { border: 1px solid rgba(16,44,35,.2); border-radius: 999px; background: transparent; padding: 10px 16px; color: inherit; font: 700 12px/1 Arial, sans-serif; letter-spacing: .1em; text-transform: uppercase; cursor: pointer; }
.site-search-field { width: 100%; border: 0; border-bottom: 3px solid #2454ff; background: transparent; padding: 14px 2px 16px; color: #102c23; font: 500 clamp(20px, 3vw, 28px)/1.2 Arial, sans-serif; outline: 0; }
.site-search-field:focus { border-color: #14833b; }
.site-search-results { display: grid; gap: 8px; margin-top: 24px; }
.site-search-result { display: grid; grid-template-columns: 1fr auto; gap: 20px; align-items: center; padding: 17px 18px; border: 1px solid rgba(16,44,35,.14); border-radius: 14px; color: inherit; text-decoration: none; transition: transform .16s ease, border-color .16s ease, background .16s ease; }
.site-search-result:hover, .site-search-result:focus-visible { transform: translateX(4px); border-color: #2454ff; background: rgba(36,84,255,.05); }
.site-search-result strong { font: 700 17px/1.2 Arial, sans-serif; }
.site-search-result span { color: #2454ff; font-size: 22px; }
.site-search-empty { margin: 10px 0 0; color: #5a625f; font: 400 16px/1.5 Arial, sans-serif; }
@media (max-width: 560px) { .site-search { border-radius: 20px; } .site-search-inner { padding: 24px 20px 30px; } }
