.header__search-wrap > #search { display: none !important; }
.search-launch { display: flex; align-items: center; justify-content: space-between; gap: 12px; width: 100%; height: 40px; padding: 0 0 0 12px; box-sizing: border-box; border: 1px solid #ccc; background: #fff; color: #6c604f; font-size: 16px; line-height: 1.3; text-decoration: none; }
.search-launch svg { flex: 0 0 35px; display: block; color: #8d7045; }
.search-launch:focus-visible { outline: 2px solid #8d7045; outline-offset: 3px; }
/* Each of the nine links, two shortcuts and search receives one equal share
   of the row's free space. Separators sit on cell boundaries, not in text flow. */
@media (min-width: 1200px) {
  .header .header__menu-mob-wrap > .header__bottom {
    --header-inline: clamp(5px, .5vw, 10px);
    display: flex !important;
    flex-flow: row nowrap;
    align-items: center;
    gap: 0;
  }
  .header .header__bottom > .menu {
    display: block;
    flex: 9 1 auto;
    width: max-content;
    min-width: 0;
    margin: 0;
    order: 0;
  }
  .header .header__bottom > .menu .menu__list {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-wrap: nowrap;
    align-items: stretch;
    justify-content: flex-start;
    gap: 0;
    margin: 0;
    padding: 0;
  }
  .header .header__bottom > .menu .menu__item {
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    margin: 0;
    padding: 0;
  }
  .header .header__bottom > .menu .menu__item::after {
    content: none;
    margin: 0;
  }
  .header .header__bottom > .menu .menu__item + .menu__item::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 50%;
    width: 1px;
    height: 14px;
    transform: translateY(-50%);
    background: #8d704566;
    pointer-events: none;
  }
  .header .header__bottom > .menu .menu__link {
    display: inline-block;
    min-height: 0;
    margin: 0;
    padding: 8px;
    font-size: clamp(14px, 1.12vw, 16px);
    line-height: 24px;
    text-align: center;
    white-space: nowrap;
  }
  .header .header__bottom > .link__favor-wrap {
    position: relative;
    display: flex;
    flex: 2 0 auto;
    width: max-content;
    align-items: center;
    justify-content: center;
    gap: 0;
    margin: 0;
    padding: 0;
    order: 0;
  }
  .header .header__bottom > .link__favor-wrap > .link {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1 1 auto;
    min-width: 44px;
    width: auto;
    height: 44px;
    margin: 0;
    padding: 0 var(--header-inline);
    box-sizing: border-box;
  }
  .header .header__bottom > .link__favor-wrap > .link > span {
    inset-inline-start: calc(50% + 2px);
    inset-inline-end: auto;
    top: 0;
  }
  .header .header__bottom > .header__search-wrap {
    position: relative;
    flex: 1 0 auto;
    width: max-content;
    min-width: 0;
    margin: 0;
    padding: 0;
    order: 0;
  }
  .header .header__search-wrap > .search-launch {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    width: 100%;
    height: 44px;
    margin: 0;
    padding: 0 var(--header-inline);
    border: 0;
    background: transparent;
    font-size: clamp(14px, 1.12vw, 16px);
  }
  .header .header__search-wrap > .search-launch span {
    display: inline;
  }
}

@media (min-width: 1600px) {
  .header .header__bottom > .menu .menu__link { padding-inline: 16px; }
}

/* Search is a stationary panel, rather than a draggable gallery slide. */
.fancybox-site-search .gslide-inner-content { width: 100%; height: 100%; }
.fancybox-site-search .gslider { align-items: flex-start; }
.fancybox-site-search .gslide { align-self: flex-start; }
.fancybox-site-search .ginner-container { align-items: flex-start; padding: 32px 48px; box-sizing: border-box; }
.fancybox-site-search .gslide-inline { width: min(1200px, 100%) !important; max-height: calc(100dvh - 64px); margin: 0 auto; overflow: visible; border-radius: 5px; }
.fancybox-site-search .ginlined-content { width: 100%; max-height: none; overflow: visible; }
.fancybox-site-search :is(.gprev, .gnext) { display: none; }
.fancybox-site-search #search { display: flex !important; flex-direction: column; position: relative; width: 100%; height: auto; max-height: calc(100dvh - 64px); min-height: 0; margin: 0; padding: 24px 48px 0; box-sizing: border-box; overflow: visible; border-radius: 5px; background: #fff; color: #111; font: 16px/1.45 Verdana, Arial, sans-serif; text-align: left; box-shadow: 0 15px 40px #29314326; }
#search *, #search *::before, #search *::after { box-sizing: border-box; }
#search [hidden] { display: none !important; }
.ss-sr-only { position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
#search .ss-status--quiet { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
#search :is(button, input, select, summary) { font-family: inherit; }
#search :is(a, button, input, select, summary):focus-visible { outline: 2px solid #8d7045; outline-offset: 3px; }
#search .ss-form { display: flex; position: relative; align-items: stretch; flex: 0 0 auto; width: 100%; min-width: 0; height: 50px; padding: 0; margin: 0 0 24px; border: 1px solid #c9b89b; border-radius: 5px; background: #fbf9f5; }
#search .ss-input { display: block; flex: 1 1 auto; min-width: 0; width: 0; height: 100%; margin: 0; padding: 0 20px; border: 0; border-radius: 0; background: transparent; color: #111; font-size: 20px; line-height: normal; box-shadow: none; }
#search .ss-input::placeholder { color: #8a8a8a; opacity: 1; }
#search .ss-input::-webkit-search-cancel-button { display: none; }
#search .ss-input:focus-visible { outline-offset: -3px; }
#search .ss-icon-button { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 100%; padding: 0; border: 0; margin: 0; border-radius: 0; background: transparent; color: #737c8f; cursor: pointer; }
#search .ss-icon-button svg { display: block; pointer-events: none; }
#search .ss-icon-button:hover { color: #8d7045; }
#search .ss-submit { margin-right: 8px; }
#search .ss-catalog { position: static; flex: 0 1 auto; max-width: 260px; margin: 0; border-right: 1px solid #e4dccf; }
#search .ss-catalog > summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; height: 100%; padding: 0 20px; border-radius: 4px 0 0 4px; color: #111; font-size: 18px; cursor: pointer; list-style: none; background: #8d70450b; }
#search .ss-catalog > summary::-webkit-details-marker { display: none; }
#search .ss-catalog > summary span { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
#search .ss-catalog > summary svg { flex: 0 0 12px; }
#search .ss-catalog[open] > summary { background: #8d704514; }
#search .ss-catalog[open] > summary svg { rotate: 180deg; }
#search .ss-catalog__panel { display: grid; grid-template-columns: minmax(170px, 22%) minmax(0, 1fr); position: absolute; top: calc(100% + 16px); left: -1px; right: -1px; z-index: 10; max-height: min(560px, calc(100dvh - 180px)); overflow-y: auto; overscroll-behavior: contain; padding: 20px; border: 1px solid #ece8e2; border-radius: 5px; background: #fff; box-shadow: 0 12px 28px #29314326; }
#search .ss-catalog__roots { display: flex; flex-direction: column; align-items: stretch; gap: 2px; padding-right: 16px; border-right: 1px solid #eee; }
#search .ss-catalog__roots button { display: block; width: 100%; padding: 10px 12px; border: 0; background: transparent; color: #333; font-size: 14px; line-height: 1.5; text-align: left; cursor: pointer; }
#search .ss-catalog__roots button:hover, #search .ss-catalog__roots button[aria-pressed="true"] { color: #8d7045; background: #8d70450d; }
#search .ss-catalog__root { display: flex !important; justify-content: space-between; gap: 8px; }
#search .ss-catalog__root.is-preview { background: #f6f5f2; color: #8d7045; }
#search .ss-catalog__name { min-width: 0; }
#search .ss-catalog__count { flex: 0 0 auto; padding-top: 2px; color: #737c8f; font-size: 11px; }
#search .ss-catalog__children { column-count: 3; column-gap: 20px; padding-left: 24px; min-width: 0; font-size: 13px; }
#search .ss-catalog__children a { display: block; break-inside: avoid; padding: 8px 0; color: #333; line-height: 1.5; text-decoration: none; overflow-wrap: anywhere; }
#search .ss-catalog__children a:hover { color: #8d7045; text-decoration: underline; }
#search .ss-catalog__children p { margin: 0 0 12px; column-span: all; }
#search .ss-catalog__column { break-inside: avoid; margin-bottom: 12px; }
#search .ss-catalog__children .ss-catalog__heading { font-weight: 700; }
#search .ss-catalog__links { list-style: none; margin: 0; padding: 0 0 0 8px; }
#search .ss-catalog__links li { margin: 0; padding: 0; }
#search .ss-body { display: block; flex: 1 1 auto; min-height: 0; padding: 0 0 24px; margin: 0; overflow-y: auto; overflow-x: hidden; overscroll-behavior: contain; scrollbar-gutter: stable; }
#search .ss-status { margin: 0 0 16px; padding: 0; color: #737c8f; font-size: 14px; line-height: 1.5; }
#search .ss-status:empty { display: none; }
#search .ss-toolbar { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 16px; margin-bottom: 24px; font-size: 13px; color: #737c8f; }
#search .ss-sort { display: flex; align-items: center; gap: 10px; margin: 0; color: inherit; font-size: 13px; }
#search .ss-sort select { max-width: 100%; height: 34px; border: 1px solid #ddd; border-radius: 3px; padding: 0 28px 0 10px; background: #fff; color: #333; font-size: 13px; cursor: pointer; }
#search .ss-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 28px 24px; margin: 0; padding: 0; list-style: none; }
#search .ss-grid__item { min-width: 0; margin: 0; padding: 0; }
#search .ss-card { display: flex; flex-direction: column; gap: 9px; height: 100%; min-width: 0; padding: 0 8px 8px; background: #fff; color: #111; text-decoration: none; border: 1px solid transparent; border-radius: 3px; }
#search .ss-card:hover { border-color: #e5ded1; }
#search .ss-card__image { display: grid; place-items: center; width: 100%; height: 168px; margin-bottom: 4px; overflow: hidden; background: #fff; }
#search .ss-card__image img { display: block; width: 100%; height: 100%; object-fit: contain; }
#search .ss-card__title { display: block; font-size: 13px; font-weight: 400; line-height: 1.55; overflow-wrap: anywhere; }
#search .ss-card__article { color: #737c8f; font-size: 12px; line-height: 1.4; }
#search .ss-card__price { display: block; margin-top: auto; padding-top: 4px; color: #111; font-size: 16px; font-weight: 700; line-height: 1.4; }
#search .ss-card mark { padding: 0; background: #8d70451c; color: inherit; }
#search .ss-group { margin: 0 0 32px; min-width: 0; }
#search .ss-group__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 16px; }
#search .ss-group__heading { min-width: 0; margin: 0; font: inherit; }
#search .ss-group__title { display: inline-flex; align-items: baseline; gap: 8px; margin: 0; padding: 0; border: 0; background: transparent; color: #333; font-size: 18px; font-weight: 400; text-align: left; cursor: pointer; }
#search .ss-group__title:hover { color: #8d7045; }
#search .ss-group__title span { color: #737c8f; font-size: 12px; font-weight: 400; }
#search .ss-group__nav { display: flex; gap: 4px; }
#search .ss-group__nav button { display: grid; place-items: center; width: 32px; height: 32px; margin: 0; border: 1px solid #e4e4e4; border-radius: 50%; background: #fff; color: #737c8f; cursor: pointer; font-size: 18px; }
#search .ss-group__nav button:disabled { opacity: .35; cursor: default; }
#search .ss-lane { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 72px) / 4); gap: 24px; margin: 0; padding: 3px 3px 12px; overflow-x: auto; overscroll-behavior-inline: contain; scroll-snap-type: x proximity; list-style: none; }
#search .ss-lane > li { display: block; min-width: 0; scroll-snap-align: start; }
#search .ss-group__more { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; width: 100%; min-height: 100%; padding: 24px 16px; margin: 0; border: 0; border-radius: 4px; background: #8d70450c; color: #8d7045; font-size: 14px; line-height: 1.5; cursor: pointer; }
#search .ss-group__more-count { font-size: 18px; font-weight: 700; }
#search .ss-group__more-arrow { font-size: 28px; line-height: 1; }
#search .ss-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 16px; margin-top: 32px; font-size: 12px; color: #737c8f; }
#search .ss-more { min-width: 180px; min-height: 42px; margin: 0; padding: 10px 24px; border: 1px solid #b49a70; border-radius: 3px; background: #8d70450d; color: #806239; font-size: 14px; cursor: pointer; }
#search .ss-more:hover { background: #8d70451a; }
#search .ss-text-button { display: inline-block; margin: 0; padding: 8px 0; border: 0; background: transparent; color: #737c8f; font-size: 13px; cursor: pointer; }
#search .ss-full-link { display: block; margin: 24px 0 0; color: #737c8f; font-size: 12px; text-align: right; text-decoration: underline; }
#search [aria-busy="true"] { cursor: progress; }
#search button:disabled { cursor: wait; opacity: .6; }
@media (max-width: 1023px) {
  .fancybox-site-search .ginner-container { padding: 24px 32px; }
  .fancybox-site-search #search { max-height: calc(100dvh - 48px); padding: 20px 24px 0; }
  #search .ss-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px 16px; }
  #search .ss-lane { grid-auto-columns: calc((100% - 32px) / 3); gap: 16px; }
  #search .ss-catalog__children { column-count: 2; }
  #search .ss-catalog > summary { max-width: 180px; padding-inline: 14px; font-size: 16px; }
  #search .ss-input { padding-inline: 14px; font-size: 18px; }
}
@media (max-width: 599px) {
  .fancybox-site-search .ginner-container { padding: 52px 8px 12px; }
  .fancybox-site-search .gslide-inline, .fancybox-site-search #search { max-height: calc(100dvh - 64px); }
  .fancybox-site-search #search { padding: 12px 12px 0; }
  #search .ss-form { height: 46px; margin-bottom: 16px; }
  #search .ss-catalog { max-width: 104px; }
  #search .ss-catalog > summary { max-width: 104px; gap: 5px; padding-inline: 8px; font-size: 13px; }
  #search .ss-input { padding-inline: 8px; font-size: 16px; }
  #search .ss-input::placeholder { font-size: 13px; }
  #search .ss-icon-button { flex-basis: 32px; width: 32px; }
  #search .ss-submit { margin-right: 2px; }
  #search .ss-submit svg { width: 20px; height: 20px; }
  #search .ss-catalog__panel { grid-template-columns: minmax(112px, 42%) minmax(0, 1fr); gap: 0; padding: 8px; top: calc(100% + 12px); max-height: calc(100dvh - 160px); }
  #search .ss-catalog__roots { padding-right: 6px; }
  #search .ss-catalog__roots button { padding: 9px 6px; font-size: 12px; }
  #search .ss-catalog__children { column-count: 1; padding-left: 10px; font-size: 12px; }
  #search .ss-toolbar { gap: 8px; margin-bottom: 16px; font-size: 12px; }
  #search .ss-sort { width: 100%; justify-content: space-between; }
  #search .ss-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px 8px; }
  #search .ss-lane { grid-auto-columns: calc((100% - 8px) / 2); gap: 8px; }
  #search .ss-card { padding-inline: 2px; }
  #search .ss-card__image { height: 125px; }
  #search .ss-card__title { font-size: 12px; }
  #search .ss-card__article { font-size: 11px; }
  #search .ss-card__price { font-size: 14px; }
  #search .ss-group__title { font-size: 16px; }
  #search .ss-group__nav button { width: 28px; height: 28px; }
  #search .ss-footer { justify-content: center; gap: 12px; }
  #search .ss-full-link { text-align: center; }
}
@media (max-height: 480px) and (min-width: 600px) {
  .fancybox-site-search .ginner-container { padding-block: 16px; }
  .fancybox-site-search #search, .fancybox-site-search .gslide-inline { max-height: calc(100dvh - 32px); }
  .fancybox-site-search #search { padding-top: 12px; }
  #search .ss-form { margin-bottom: 12px; }
}
@media (prefers-reduced-motion: reduce) { #search *, #search *::before, #search *::after { scroll-behavior: auto !important; transition: none !important; animation: none !important; } }
/* Standalone GET results remain usable without JavaScript. */
.search-page { padding-block: 48px 64px; }
.search-page__summary { margin: 0 0 20px; font-size: 18px; line-height: 1.5; overflow-wrap: anywhere; }
.search-page__empty { margin: 24px 0; font-size: 18px; line-height: 1.5; }
.search-page__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px; }
.search-card { display: flex; flex-direction: column; min-width: 0; color: inherit; border: 1px solid #e5e0d7; text-decoration: none; }
.search-card:hover { border-color: #8d7045; }
.search-card:focus-visible { outline: 2px solid #8d7045; outline-offset: 3px; }
.search-card__image { display: block; aspect-ratio: 4 / 3; background: #f5f3ee; overflow: hidden; }
.search-card__image img { display: block; width: 100%; height: 100%; object-fit: contain; }
.search-card__body { display: flex; flex: 1; flex-direction: column; align-items: flex-start; gap: 10px; padding: 16px; }
.search-card__category { color: #6c604f; font-size: 14px; line-height: 1.4; }
.search-card__title { font-size: 20px; line-height: 1.4; overflow-wrap: anywhere; }
.search-card__price { margin-top: auto; padding-top: 6px; font-size: 18px; line-height: 1.4; }
.search-page__pagination { display: flex; justify-content: center; align-items: center; flex-wrap: wrap; gap: 24px; margin-top: 32px; }
.search-page__pagination a { padding: 10px; }
.search-page__filters { display: flex; flex-wrap: wrap; align-items: end; gap: 16px; margin-bottom: 32px; }
.search-page__filters label { display: flex; flex-direction: column; gap: 6px; font-size: 14px; }
.search-page__filters :is(input, select, button) { min-height: 42px; padding: 8px 12px; border: 1px solid #ccc; background: #fff; font: inherit; }
.search-page__filters button { background: #8d7045; color: #fff; cursor: pointer; }
@media (max-width: 1199px) { .search-page__grid { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 899px) { .search-page__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; } }
@media (max-width: 599px) { .search-page__grid { grid-template-columns: minmax(0, 1fr); } .search-page { padding-block: 32px 48px; } .search-page__filters label { width: 100%; } }
