/* =========================================================
   HEADER PRODUCT SEARCH
   ========================================================= */

   .site-header,
   .site-header__inner,
   .site-header__search,
   .product-search,
   .product-search__field {
       overflow: visible !important;
   }
   
   .site-header {
       position: relative;
       z-index: 1000;
   }
   
   .site-header__search {
       position: relative;
       z-index: 1100;
   }
   
   .product-search {
       position: relative;
       width: 100%;
   }
   
   .product-search__field {
       position: relative;
   
       display: grid;
       grid-template-columns: minmax(0, 1fr) auto;
   
       width: 100%;
   }
   
   
   /* =========================================================
      SEARCH INPUT
      ========================================================= */
   
   .product-search__input {
       width: 100%;
       height: 48px;
   
       min-width: 0;
   
       padding: 0 16px;
   
       border: 1px solid #d4cec5;
       border-right: 0;
   
       border-radius: 3px 0 0 3px;
   
       background: #fff;
       color: #25221f;
   
       font-size: 16px;
       line-height: 1.3;
       font-weight: 500;
   
       box-sizing: border-box;
   }
   
   .product-search__input::placeholder {
       color: #777169;
   
       font-size: 16px;
   
       opacity: 1;
   }
   
   .product-search__input:focus {
       position: relative;
       z-index: 2;
   
       outline: none;
   
       border-color: #cf351f;
   
       box-shadow:
           0 0 0 2px
           rgba(207, 53, 31, .14);
   }
   
   
   /* =========================================================
      SEARCH BUTTON
      ========================================================= */
   
   .product-search__button {
       display: inline-flex !important;
   
       align-items: center;
       justify-content: center;
   
       min-width: 110px;
       height: 48px;
   
       padding: 0 18px;
   
       border: 1px solid #cf351f;
       border-radius: 0 3px 3px 0;
   
       background: #cf351f;
       color: #fff;
   
       font-size: 16px;
       line-height: 1;
       font-weight: 700;
   
       cursor: pointer;
   
       transition:
           background .18s ease,
           border-color .18s ease;
   }
   
   .product-search__button:hover {
       background: #b92d1a;
       border-color: #b92d1a;
   }
   
   .product-search__button svg {
       display: none;
   }
   
   
   /* =========================================================
      AUTOCOMPLETE PANEL
      ========================================================= */
   
   .product-search-autocomplete {
       position: absolute;
       z-index: 9999;
   
       top: calc(100% + 8px);
       left: 0;
       right: 0;
   
       grid-column: 1 / -1;
   
       min-width: 460px;
       max-height: 620px;
   
       overflow-y: auto;
   
       border: 1px solid #d9d4cc;
   
       background: #fff;
       color: #25221f;
   
       box-shadow:
           0 18px 45px
           rgba(0, 0, 0, .16);
   }
   
   .product-search-autocomplete[hidden] {
       display: none !important;
   }
   
   
   /* =========================================================
      AUTOCOMPLETE STATUS
      ========================================================= */
   
   .product-search-autocomplete__loading,
   .product-search-autocomplete__empty {
       padding: 18px;
   
       color: #777169;
   
       font-size: 15px;
       line-height: 1.4;
   }
   
   
   /* =========================================================
      RESULT GROUPS
      ========================================================= */
   
   .product-search-group {
       padding: 14px;
   }
   
   .product-search-group + .product-search-group {
       border-top: 1px solid #ece7df;
   }
   
   .product-search-group__title {
       margin-bottom: 10px;
   
       color: #777169;
   
       font-size: 13px;
       line-height: 1.3;
       font-weight: 700;
   
       letter-spacing: .08em;
       text-transform: uppercase;
   }
   
   
   /* =========================================================
      PRODUCT RESULTS
      ========================================================= */
   
   .product-search-products {
       display: grid;
   }
   
   .product-search-item {
       display: grid;
   
       grid-template-columns:
           68px
           minmax(0, 1fr);
   
       gap: 14px;
   
       align-items: center;
   
       padding: 12px 0;
   
       border-top: 1px solid #f0ece6;
   
       color: #25221f;
   
       text-decoration: none;
   }
   
   .product-search-item:first-child {
       border-top: 0;
   }
   
   .product-search-item__image {
       display: block;
   
       width: 68px;
       height: 68px;
   
       overflow: hidden;
   
       background: #f3efe9;
   }
   
   .product-search-item__image img {
       display: block;
   
       width: 100%;
       height: 100%;
   
       object-fit: contain;
   }
   
   .product-search-item__body {
       min-width: 0;
   }
   
   .product-search-item__name {
       display: block;
   
       color: #25221f;
   
       font-size: 16px;
       line-height: 1.35;
       font-weight: 600;
   
       transition: color .18s ease;
   }
   
   .product-search-item:hover
   .product-search-item__name {
       color: #cf351f;
   }
   
   .product-search-item__price {
       display: block;
   
       margin-top: 5px;
   
       color: #777169;
   
       font-size: 15px;
       line-height: 1.3;
   }
   
   
   /* =========================================================
      BRAND / CATEGORY RESULTS
      ========================================================= */
   
   .product-search-terms {
       display: flex;
   
       flex-wrap: wrap;
   
       gap: 7px;
   }
   
   .product-search-term {
       display: inline-flex;
   
       align-items: center;
   
       min-height: 36px;
   
       padding: 7px 11px;
   
       background: #f3efe9;
       color: #25221f;
   
       font-size: 15px;
       line-height: 1.3;
   
       text-decoration: none;
   
       transition:
           background .18s ease,
           color .18s ease;
   }
   
   .product-search-term:hover {
       background: #cf351f;
       color: #fff;
   }
   
   
   /* =========================================================
      ALL RESULTS
      ========================================================= */
   
   .product-search-all {
       padding: 12px 14px 14px;
   
       border-top: 1px solid #ece7df;
   }
   
   .product-search-all__button {
       width: 100%;
       min-height: 46px;
   
       padding: 8px 12px;
   
       border: 0;
   
       background: #cf351f;
       color: #fff;
   
       font-size: 15px;
       line-height: 1.3;
       font-weight: 700;
   
       cursor: pointer;
   
       transition: background .18s ease;
   }
   
   .product-search-all__button:hover {
       background: #b92d1a;
   }
   
   
   /* =========================================================
      TABLET
      ========================================================= */
   
   @media (max-width: 980px) {
   
       .product-search__button {
           min-width: 96px;
   
           padding-left: 14px;
           padding-right: 14px;
       }
   
   }
   
   
   /* =========================================================
      MOBILE
      ========================================================= */
   
   @media (max-width: 760px) {
   
       .product-search__field {
           grid-template-columns:
               minmax(0, 1fr)
               auto;
       }
   
       .product-search__input {
           height: 46px;
   
           font-size: 16px;
       }
   
       .product-search__button {
           min-width: 84px;
           height: 46px;
   
           padding: 0 12px;
   
           font-size: 14px;
       }
   
       .product-search-autocomplete {
           position: fixed;
   
           top: 72px;
           left: 14px;
           right: 14px;
   
           width: auto;
           min-width: 0;
   
           max-height:
               calc(100vh - 90px);
       }
   
       .product-search-item {
           grid-template-columns:
               62px
               minmax(0, 1fr);
   
           gap: 12px;
       }
   
       .product-search-item__image {
           width: 62px;
           height: 62px;
       }
   
   }