@media all and (max-width: 991.98px) {
  .store-locator {
    max-height: unset;
  }

  .store-locator__sidebar {
    width: 100%;
    order: 2;
    max-height: unset;

    .views-row {
      padding-right: 0;
    }
  }

  .form-item-location {
    flex-grow: 1;
  }

  .store-locator__list {
    overflow-y: unset;
    max-height: unset;
    margin-top: 0;
  }

  .store-locator__main {
    width: 100%;
    max-height: calc(100vh - 40px);
    order: 1;
    margin-bottom: 2em;
    padding-left: 0;
  }
}

.store-locator__sidebar {
  width: 400px;
  max-height: 100%;
  display: flex;
  flex-direction: column;

  .views-row {
    padding-right: 1em;

    >.views-field-rendered-entity {
      margin-top: 2em;
      border-top: 1px solid var(--bs-gray-300);
      padding-top: 2em;
    }

    &:first-child {
      >.views-field-rendered-entity {
        margin-top: 0;
      }
    }

    h4 {
      font-size: 25px;
      font-weight: 400;
    }

    .country,
    .field-openinghours {
      display: none;
    }

  }
}

.store-locator__list {
  overflow-y: auto;
  max-height: calc(100vh - 303px);
  margin-top: 2em;
}

.store-locator__main {
  width: calc(100% - 400px);
  max-height: 100%;
  display: flex;
  flex-direction: column;
  padding-left: 3rem;
}

.store-locator {
  display: flex;
  flex-wrap: wrap;
  max-height: calc(100vh - 110px);
  width: 100%;
}

body.user-logged-in.role-administrator,
body.user-logged-in.role-contentmanager {
  .store-locator {
    max-height: calc(100vh - 169px);
  }

  .store-locator__list {
    max-height: calc(100vh - 362px);
  }
}

#views-exposed-form-stores-map {
  display: flex;
  flex-wrap: wrap;

  .form-item-location {
    max-width: calc(100% - 84px);
  }

  #edit-submit-stores {
    background: url(../../images/search.svg) #C4C4C4 center no-repeat;
    border-color: #C4C4C4;
    text-indent: -9999px;
    padding: 0;
    width: 84px;
    height: 46px;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
  }

  #edit-location {
    margin: 0;
    border-radius: 1rem 0 0 1rem;
    padding: 1.13rem;
  }

  #edit-actions-reset {
    width: 100%;
  }
}

.infobubble {
  font-size: 17px;

  h4 {
    font-size: 22px;
    font-weight: 500;
  }

  span.country {
    display: none;
  }

  .field-openinghours {
    margin-top: 1em;
  }

  .office-hours {
    font-size: 12px;
  }
}

.geolocation-map-wrapper,
.geolocation-map-container {
  max-height: 100%;
}


.norta-commerce-find-store-form {
  .form-text {
    margin: 0;
    border-radius: 7px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    border: none;
  }

  .form-submit {
    border-radius: 7px;
    border: none;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    height: 44px;
    width: 86px;
    background: url(../../images/search.svg) var(--bs-primary) center no-repeat;
    text-indent: -9999px;

  }
}

#views-exposed-form-stores-map #edit-submit-stores {
  --bs-btn-color: #000;
  --bs-btn-bg: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-color: #000;
  --bs-btn-hover-bg: var(--bs-primary);
  --bs-btn-hover-border-color: var(--bs-primary);

  --bs-btn-padding-x: 0.75rem;
  --bs-btn-padding-y: 0.375rem;
  --bs-btn-border-width: var(--bs-border-width);


  min-height: 3.875rem;
  transition: color var(--transition), background-color var(--transition), border-color var(--transition), box-shadow var(--transition), filter var(--transition);
  display: inline-block;
  padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
  color: var(--bs-btn-color);
  text-align: center;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
  border-radius: 0 1rem 1rem 0;
  background-color: var(--bs-primary);
  padding-inline: 2.41rem;
  padding-block: 1rem;

  &:hover {
    filter: brightness(1.1);
  }
}
