.area-businesses-search {
  display: flex;
  gap: 1rem;
  margin-inline: auto;
  margin-bottom: 2.5rem;
  align-items: center;
    max-width: 500px;
}

.area-businesses-search__label {
  min-width: max-content;
}

.area-businesses-search__input {
  width: 100%;
  padding: .5rem 1rem !important;
    border: none !important;
    border-radius: 12rem !important;
}

.area-businesses-empty {
  display: inline-block;
    margin: 0 auto;
}

.area-businesses {
  list-style: none;
  padding: 0 !important;

  --columns: var(--area-businesses-columns-sm, 1);

  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--area-businesses-gap, 1.5rem);

  @media (min-width: 750px) {
    --columns: var(--area-businesses-columns-md, 2);
  }

  @media (min-width: 1200px) {
    --columns: var(--area-businesses-columns-lg, 3);
  }

  @media (min-width: 1850px) {
    --columns: var(--area-businesses-columns-xl, 4);
  }
}

.area-business {
  flex: 0 1 calc((100% - (var(--columns) - 1) * var(--area-businesses-gap, 1.5rem)) / var(--columns));
  padding: 1.5rem;
  background: var(--area-business-bg, #fff);
  font-size: .9rem;
  min-width: 0;
  margin: 0 !important;
}

.area-business[hidden] {
  display: none !important;
}

.area-business__title {
  font-size: 1em;
  margin-bottom: 1em !important;  
}

.area-business__title-prefix {
  display: block;
  font-size: .8em;
  color: var(--area-business-title-prefix-color, var(--global-palette5));
  
  &:after {
    content: ":";
  }
}

.area-business__name {
  display: block;
  color: var(--area-business-name-color, var(--global-palette1));
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  
  &:hover,
  &:focus {
    color: var(--area-business-name-color-hover, var(--global-palette2));
    overflow: initial;
    white-space: initial;
  }
}

.area-business__meta {
  font-size: .85em;
  display: grid;
  gap: 1ch;
  grid-template-columns: 1fr 3fr;

  color: var(--area-business-meta-color, var(--global-palette5));

  &:not(:last-child) {
    margin-bottom: .5em;
  }
}

.area-business__meta-label {
  font-weight: 600;  
}

.area-business__meta-content {
  margin: 0;
}

.area-businesses-pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: .75rem;
  margin-top: 1.5rem;
}

.area-businesses-pagination__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: .5em;
}

.area-businesses-pagination__button:disabled {
  cursor: default;
  opacity: .5;
}

.area-businesses-pagination__icon {
  display: block;
}
