/* Search extends the storefront's charcoal surfaces and rose focus treatment. */
.header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.site-search-trigger{display:grid;place-items:center;width:44px;height:44px;flex-shrink:0;padding:0;border:1px solid var(--border);border-radius:50%;background:var(--panel);color:var(--text)}
.site-search-trigger[hidden]{display:none}
.site-search-trigger:hover{background:#f2ede3;color:#86602e}
.site-search{padding:0;border:1px solid #d8cfc0;border-radius:22px;background:#f2ede3;color:var(--text);width:min(720px,calc(100vw - 40px));max-width:none;max-height:calc(100dvh - 64px);margin:32px auto;box-shadow:0 24px 80px #493b2288;overflow:hidden}
.site-search::backdrop{background:#faf7f1bb;backdrop-filter:blur(5px)}
.search-shell{display:flex;flex-direction:column;max-height:calc(100dvh - 66px)}
.search-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:20px 24px 10px}
.search-heading h2{font-size:22px;letter-spacing:-.025em}
.search-close{display:grid;place-items:center;border:0;border-radius:50%;width:44px;height:44px;padding:0;background:transparent;color:var(--muted);flex-shrink:0}
.search-close:hover{background:#f2ede3;color:#28241e}
.search-form{padding:0 24px 20px;flex-shrink:0}
.search-field{display:flex;align-items:center;gap:12px;min-height:54px;padding:0 15px;border:1px solid #d8cfc0;border-radius:12px;background:#faf7f1;color:#665e52}
.search-field:focus-within{border-color:#b8a27d;box-shadow:0 0 0 1px #493b22}
.search-field input{min-width:0;width:100%;height:52px;background:none;border:0;outline:none;color:var(--text);font-size:16px;padding:0;appearance:none}
.search-field input:focus-visible{outline:none}
.search-field input::placeholder{color:#665e52;opacity:1}
.search-field input::-webkit-search-cancel-button{display:none}
.search-clear{flex-shrink:0;min-height:40px;background:transparent;border:0;color:#86602e;padding:0 2px;font-size:14px}
.search-results{overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch;min-height:0;padding:0 24px 24px;scrollbar-color:#766d60 #766d60;scrollbar-width:thin}
.search-message{padding:22px 0 8px;border-top:1px solid var(--border)}
.search-message h3{font-size:18px;letter-spacing:-.02em;margin-bottom:8px}
.search-message p{font-size:16px;line-height:1.6;max-width:50ch}
.search-browse-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:20px}
.search-browse-links a,.search-retry{font-size:14px;color:#86602e;text-decoration:underline;text-underline-offset:4px;padding-block:8px}
.search-retry{background:none;border:0;margin-top:12px}
.search-group+.search-group{margin-top:26px}
.search-group-heading{display:flex;align-items:center;justify-content:space-between;padding:12px 0;margin:0;border-top:1px solid var(--border);font-size:14px;font-weight:600;letter-spacing:0;color:#28241e}
.search-group-heading span{color:var(--muted);font-weight:400;font-size:14px}
.search-list{padding:0;margin:0;list-style:none}
.search-result{display:flex;align-items:center;gap:15px;padding:12px 10px;margin:0 -10px;border-radius:12px;min-width:0}
.search-result:hover,.search-result:focus-visible{background:#f2ede3}
.search-result:focus-visible{outline-offset:-2px}
.search-result-image{width:64px;height:64px;flex-shrink:0;object-fit:cover;border-radius:9px;background:#f2ede3}
.search-result-copy{display:block;min-width:0}
.search-result-title{display:block;font-size:16px;line-height:1.4;font-weight:600;overflow-wrap:anywhere}
.search-result-description{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;color:var(--muted);font-size:14px;line-height:1.5;margin-top:5px}
@media(max-width:800px){.header-row{gap:18px}.nav{gap:20px}}
@media(max-width:700px){.header-row{gap:8px}.header-actions{gap:6px}.site-search-trigger{width:36px;height:36px}.site-search-trigger svg{width:18px;height:18px}.nav{gap:12px}.site-search{width:calc(100vw - 20px);max-height:calc(100dvh - 20px);margin:10px auto;border-radius:18px}.search-shell{max-height:calc(100dvh - 22px)}.search-heading{padding:12px 16px 8px}.search-heading h2{font-size:20px}.search-form{padding:0 16px 16px}.search-results{padding:0 16px 20px}.search-result{gap:12px;margin:0 -6px;padding:12px 6px}.search-result-image{width:54px;height:54px}}
@media(max-width:380px){.header .header-row{flex-wrap:wrap;height:auto;min-height:76px;padding-block:12px;row-gap:6px}.header .nav{order:3;flex-basis:100%;justify-content:center;gap:28px}.header .nav a{padding:6px 0}.header .nav a[aria-current]:after{bottom:0}.header .brand{margin-right:auto}}
@media(forced-colors:active){.search-field:focus-within{outline:2px solid Highlight}.search-result:focus-visible{outline:2px solid Highlight}}
