.catalogue-search { margin: auto; width: min(700px,94vw); max-height: 90dvh; padding: clamp(22px,4vw,40px); border: 1px solid #C4B5A5; background: #FFFBF5; color: #1C1C1C; font-family: 'DM Sans',sans-serif; }
.catalogue-search::backdrop { background: rgba(28,28,28,.6); }
.search-heading { display: flex; align-items: center; justify-content: space-between; gap: 15px; margin-bottom: 24px; }
.search-heading h2 { font: 38px/1.1 'Cormorant Garamond',Georgia,serif; }
.search-close { border: 0; background: transparent; color: inherit; padding: 12px; cursor: pointer; font: 14px 'DM Sans',sans-serif; }
.catalogue-search label { display: block; font-size: 14px; margin-bottom: 8px; }
.catalogue-search input { width: 100%; padding: 15px; border: 1px solid #A69080; background: #FEFCF9; color: #1C1C1C; font: 16px 'DM Sans',sans-serif; }
.search-status { font-size: 13px; margin: 16px 0; color: #3A3A3A; }
.search-result { display: flex; align-items: center; gap: 18px; padding: 14px 0; border-bottom: 1px solid #C4B5A5; color: #1C1C1C; text-decoration: none; }
.search-result img { width: 65px; height: 75px; object-fit: contain; background:#fff; }
.search-result>span:nth-child(2) { flex: 1; }
.search-result strong { font: 23px/1.2 'Cormorant Garamond',Georgia,serif; display: block; }
.search-result small { display: block; font-size: 12px; line-height: 1.6; color: #3A3A3A; margin-top: 5px; }
.search-all { display: block; padding-top: 22px; color: #8B6914; }
.catalogue-filters { display: flex; flex-wrap: wrap; gap: 16px; align-items: end; max-width: 1400px; padding: 0 32px 20px; margin: auto; font-family: 'DM Sans',sans-serif; }
.catalogue-filters label { font-size: 13px; flex: 1; min-width: 155px; }
.catalogue-filters :is(input,select) { width: 100%; display: block; margin-top: 7px; padding: 12px; color: #1C1C1C; background: #FEFCF9; border: 1px solid #C4B5A5; font: 16px 'DM Sans',sans-serif; }
.catalogue-filters button { padding: 13px 18px; color: #1C1C1C; background: transparent; border: 1px solid #C4B5A5; cursor: pointer; font: 14px 'DM Sans',sans-serif; }
.filter-status,.filter-empty { max-width: 1336px; margin: 0 auto 24px; padding-inline: 20px; font: 14px/1.6 'DM Sans',sans-serif; color: #3A3A3A; }
.filter-empty { padding-block: 60px; text-align: center; background: #F7F3ED; }
:is(.collection-section,.product-card,.product-grid,.category-label,.filter-empty)[hidden] { display: none !important; }
.product-card[tabindex]:focus-visible { outline: 2px solid #8B6914; outline-offset: 5px; }
@media(max-width:600px) { .catalogue-filters { padding-inline: 16px; gap: 12px; } .catalogue-filters label:first-child { flex-basis: 100%; } .search-heading h2 { font-size: 32px; } }
