/* SearchPRO presentation only. Load after the theme and homepage styles. */
.sf-search-field {
  width:100%;
  max-width:100%;
  min-width:0;
}
.sf-search-field .searchpro__field-container {
  min-height:48px;
  border-radius:8px;
}
.sf-search-field .searchpro__field-input-container {
  flex:1 1 0;
  min-width:0;
}
.sf-search-field .searchpro__field-input-container .searchpro__field-input {
  min-width:0;
  font-size:16px;
  line-height:1.4;
  padding-right:48px;
}
.sf-search-field .searchpro__field-input-container .searchpro__field-input::placeholder {
  color:#646080;
  opacity:1;
}
/* Keep the existing SearchPRO clear control as the single clear action. */
.sf-search-field .searchpro__field-input::-webkit-search-cancel-button {
  -webkit-appearance:none;
}
.sf-search-field .searchpro__field-container:focus-within,
.sf-search-field .searchpro__field-container.js-searchpro__field-container--focus {
  border-color:#9005b4;
  box-shadow:0 0 0 3px rgb(144 5 180 / 15%);
}
.sf-search-field .searchpro__field-container .searchpro__field-clear-button {
  appearance:none;
  border:0;
  border-radius:6px;
  padding:0;
  width:44px;
  min-width:44px;
  min-height:44px;
  background-color:transparent;
  box-shadow:none;
  touch-action:manipulation;
}
.sf-search-field .searchpro__field-clear-button:focus-visible,
.sf-search-field .searchpro__field-button:focus-visible {
  outline:3px solid #9005b4;
  outline-offset:-3px;
}
.sf-search-field .searchpro__field-button-container {
  flex-shrink:0;
}
.sf-search-field .searchpro__field-button {
  min-width:44px;
  min-height:44px;
  touch-action:manipulation;
}

/* SearchPRO positions its own lists; keep their horizontal bounds with the field. */
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) .js-searchpro__field {
  position:relative;
  min-width:0;
  max-width:100%;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) :is(.js-searchpro__dropdown,.js-searchpro__helper) {
  left:0!important;
  width:100%!important;
  max-width:100%;
  box-sizing:border-box;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) .js-searchpro__dropdown-extend-container {
  width:100%!important;
  max-width:100%;
  min-width:0;
  box-sizing:border-box;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) .js-searchpro__dropdown-extend-container-inner {
  margin-left:0!important;
  min-width:0;
  max-width:100%;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) :is(.searchpro__dropdown,.searchpro__dropdown-extend,.sarafanovo-smart-search-suggestions) {
  max-height:min(600px,60vh);
  max-height:min(600px,60dvh);
  overflow-x:hidden;
  overflow-y:auto;
  overscroll-behavior:contain;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) .searchpro__dropdown-extend-container {
  width:100%;
  min-width:0;
  box-sizing:border-box;
  flex-direction:column;
  gap:20px;
  padding:20px 16px;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) :is(.searchpro__dropdown-extend-groups,.searchpro__dropdown-extend-groups_left,.searchpro__dropdown-extend-groups_middle,.searchpro__dropdown-extend-groups_right,.searchpro__dropdown-extend-group-products) {
  width:100%;
  min-width:0;
  margin-left:0;
  padding:0;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) .searchpro__dropdown-extend-entity-content {
  min-width:0;
  overflow-wrap:anywhere;
}
.sf-unified :is(.top__search,.fixed__search,.sfh-search-host) .searchpro__dropdown-entity_name {
  white-space:normal;
  overflow-wrap:anywhere;
}
.sf-search-empty-help {
  margin-top:24px;
}
.sf-search-empty-help h2 {
  margin:0 0 12px;
  color:#282128;
  font-size:20px;
  line-height:1.3;
}
.sf-search-empty-categories {
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.sf-search-empty-categories a,
.sf-search-empty-contact a {
  display:inline-flex;
  align-items:center;
  min-height:44px;
  box-sizing:border-box;
}
.sf-search-empty-categories a {
  padding:8px 14px;
  border:1px solid #e0d4e4;
  border-radius:999px;
  background:#fff;
  color:#72117f;
  font-weight:600;
  text-decoration:none;
}
.sf-search-empty-categories a:hover,
.sf-search-empty-categories a:focus-visible,
.sf-search-empty-contact a:focus-visible {
  border-color:#9005b4;
  outline:3px solid rgb(144 5 180 / 15%);
  outline-offset:2px;
}
.sf-search-empty-contact {
  margin:16px 0 0;
  color:#514854;
  line-height:1.5;
}
.sf-search-empty-contact a {
  color:#72117f;
  font-weight:700;
  white-space:nowrap;
}
@media (max-width:767px) {
  .sf-search-field .searchpro__field-input-container .searchpro__field-input {
    padding-left:10px;
  }
  .sf-search-empty-categories a {
    flex:1 1 calc(50% - 4px);
    justify-content:center;
    text-align:center;
  }
}
