.thukura-search { position: relative; z-index: 20; }
.thukura-search:focus-within { box-shadow: 0 0 0 2px rgba(183,154,98,.45), 0 8px 24px rgba(36,29,32,.08); }
.thukura-search input { min-width: 0; }
.thukura-search input[type="search"]::-webkit-search-cancel-button { appearance: none; }
.thukura-search-clear { appearance: none; border: 0; background: transparent; color: var(--thukura-color-wine,#681a32); font-size: 1.4rem; line-height: 1; padding: .25rem .45rem; cursor: pointer; }
.thukura-search-clear[hidden] { display: none; }
.thukura-search-submit { white-space: nowrap; }
.thukura-search-results { position: absolute; z-index: 50; top: calc(100% + .65rem); left: 0; right: 0; min-width: 24rem; max-height: min(70vh, 34rem); overflow: auto; padding: 1rem; background: #fffdf9; border: 1px solid rgba(104,26,50,.14); border-top: 3px solid var(--thukura-color-gold,#b79a62); border-radius: .35rem; box-shadow: 0 18px 42px rgba(36,29,32,.16); }
.thukura-search-results[hidden] { display: none; }
.thukura-search-group + .thukura-search-group { margin-top: .9rem; }
.thukura-search-group h3 { margin: 0 0 .45rem; color: var(--thukura-color-wine,#681a32); font-size: .68rem; letter-spacing: .14em; text-transform: uppercase; }
.thukura-search-terms { display: flex; flex-wrap: wrap; gap: .4rem; }
.thukura-search-term { display: inline-block; padding: .4rem .6rem; color: var(--thukura-color-wine,#681a32); background: rgba(183,154,98,.1); border-radius: 99px; font-size: .8rem; text-decoration: none; }
.thukura-search-term:hover, .thukura-search-term:focus-visible { background: rgba(183,154,98,.24); text-decoration: underline; }
.thukura-search-products { display: grid; gap: .35rem; }
.thukura-search-product { display: flex; align-items: center; gap: .7rem; padding: .45rem; color: var(--thukura-color-ink,#241d20); border-radius: .25rem; text-decoration: none; }
.thukura-search-product:hover, .thukura-search-product:focus-visible, .thukura-search-product.is-active { background: rgba(104,26,50,.07); outline: none; }
.thukura-search-product img { width: 3.25rem; height: 3.25rem; flex: 0 0 3.25rem; object-fit: cover; border-radius: .2rem; background: #f3eee7; }
.thukura-search-product-copy { display: grid; min-width: 0; gap: .08rem; }
.thukura-search-product-brand { color: var(--thukura-color-wine,#681a32); font-size: .66rem; font-weight: 700; letter-spacing: .09em; text-transform: uppercase; }
.thukura-search-product strong { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-size: .84rem; }
.thukura-search-product-meta { display: flex; align-items: center; gap: .5rem; font-size: .78rem; }
.thukura-search-product-meta .price { color: var(--thukura-color-wine,#681a32); }
.thukura-search-product-meta em { color: #8b3c27; font-size: .68rem; font-style: normal; }
.thukura-search-product-meta em.is-in-stock { color: #2f6d4a; }
.thukura-search-product-sku { color: #756d6e; font-size: .65rem; }
.thukura-search-footer { display: flex; justify-content: space-between; gap: .75rem; align-items: center; margin-top: .75rem; padding-top: .75rem; border-top: 1px solid rgba(36,29,32,.1); color: #756d6e; font-size: .72rem; }
.thukura-search-footer a { color: var(--thukura-color-wine,#681a32); font-weight: 700; text-decoration: none; }
.thukura-search-footer a:hover, .thukura-search-footer a:focus-visible { text-decoration: underline; }
.thukura-search-message { margin: .5rem; color: #756d6e; font-size: .85rem; }
.thukura-search-message::first-letter { color: var(--thukura-color-wine,#681a32); }
.thukura-search-page .thukura-category-hero { --category-accent: var(--thukura-color-wine,#681a32); }
.thukura-search-filter-note { margin: .5rem 0 1rem; color: #756d6e; font-size: .85rem; }
@media (max-width: 900px) {
	.thukura-search-results { left: -1rem; right: -1rem; min-width: 0; }
}
@media (max-width: 600px) {
	.thukura-search-results { position: fixed; top: 7.8rem; left: .75rem; right: .75rem; max-height: calc(100vh - 9rem); padding: .85rem; border-radius: .5rem; }
	.thukura-search-footer { align-items: flex-start; flex-direction: column; }
	.thukura-search-product { min-height: 4.25rem; padding: .55rem .35rem; }
}
@media (prefers-reduced-motion: reduce) {
	.thukura-search-results, .thukura-search-product { transition: none !important; }
}
