/* Händlersuche (WP Store Locator Plugin) */

#wpsl-wrap .wpsl-search {
  background: var(--ast-global-color-3) !important;
  padding: var(--gap-m);
  margin-bottom: var(--gap-m);
}

#wpsl-wrap .wpsl-search #wpsl-search-wrap {
  display: flex;
  justify-content: center;
}

/*  Search bar */
#wpsl-search-wrap form * {
  margin: 0 !important;
}

/* remove plugin floats and fixed widths */
#wpsl-search-wrap .wpsl-input,
#wpsl-search-wrap .wpsl-select-wrap,
#wpsl-search-wrap .wpsl-search-btn-wrap,
#wpsl-search-wrap #wpsl-radius,
#wpsl-search-wrap #wpsl-results {
  float: none;
  width: auto;
  margin: 0;
}

#wpsl-search-wrap form {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: var(--gap-m);
  width: 100%;
  flex-wrap: wrap;
}

#wpsl-search-wrap .wpsl-input,
#wpsl-search-wrap #wpsl-radius,
#wpsl-search-wrap #wpsl-results {
  display: flex !important;
  flex-direction: column;
  gap: 10px;
}

/* the text input absorbs the leftover space */
#wpsl-search-wrap .wpsl-input {
  flex: 1;
}

#wpsl-search-wrap #wpsl-search-input {
  width: 100%;
}

/* dropdowns and button stay at natural width */
#wpsl-search-wrap .wpsl-select-wrap,
#wpsl-search-wrap .wpsl-search-btn-wrap {
  flex: 0 0 auto;
}

#wpsl-search-wrap .wpsl-select-wrap {
  display: flex;
  gap: var(--gap-m);
}

/* Search bar: labels, inputs, dropdowns */

.wpsl-select-wrap label,
.wpsl-input label {
  font-size: var(--h1-font-size) !important;
  text-transform: uppercase;
  color: var(--ast-global-color-0);
  white-space: nowrap;
  font-weight: 700;
}

#wpsl-search-btn,
#wpsl-search-wrap input {
  border-radius: 0;
}

.wpsl-dropdown {
  width: clamp(95px, 4.702rem + 2.6vw, 120px) !important;
}

#wpsl-results .wpsl-dropdown {
  width: clamp(80px, 4.357rem + 1.35vw, 93px) !important;
}

/* remove padding open dropdown list */
.wpsl-dropdown.wpsl-active ul {
  padding-left: 0 !important;
}

/* Search button background-image: unset removes the plugin gradient */
.wpsl-search-btn-wrap > #wpsl-search-btn {
  padding-inline: calc(var(--gap-s) * 3) !important;
  padding-block: 9px;
  text-transform: uppercase !important;
  font-weight: 700;
  color: var(--ast-global-color-3) !important;
  background-color: var(--ast-global-color-0) !important;
  background-image: unset;
  border: unset;
}

/* Result list – cards */

.wpsl-store-below #wpsl-result-list {
  margin-top: var(--gap-m) !important;
}

#wpsl-wrap.wpsl-store-below #wpsl-result-list ul {
  padding: 0 !important;
}

#wpsl-wrap.wpsl-store-below #wpsl-result-list li {
  padding: var(--gap-m) !important;
  background-color: var(--ast-global-color-3);
  border: 1px solid var(--ast-global-color-1) !important;
}

/* Result list – text */

/* address block: tight lines */
.wpsl-store-location p {
  line-height: 1 !important;
}

.wpsl-store-location p strong {
  font-family: var(--headlinefont);
  font-size: clamp(17px, 1.017rem + 0.16vw, 19px);
  line-height: 2;
}

/* distance + directions link */
.wpsl-direction-wrap {
  color: var(--ast-global-color-0);
  margin-top: 5px;
}

/* Result list scrollbar */

/* Firefox + newer Chrome/Safari */
#wpsl-stores {
  scrollbar-width: thin;
  scrollbar-color: var(--ast-global-color-0) #f5e9e6;
}

/* WebKit fallback */
#wpsl-stores::-webkit-scrollbar {
  width: 8px;
}

#wpsl-stores::-webkit-scrollbar-track {
  background: #f5e9e6;
  border-radius: 4px;
}

#wpsl-stores::-webkit-scrollbar-thumb {
  background: var(--ast-global-color-0);
  border-radius: 4px;
}

#wpsl-stores::-webkit-scrollbar-thumb:hover {
  background: #8a0019;
}
