@import url("https://fonts.googleapis.com/css2?family=Glory:ital,wght@0,100..800;1,100..800&display=swap");

.asl-store-locator *:not(i) {
  font-family: "Glory", sans-serif !important;
}

.asl-store-locator p {
  margin-bottom: 0 !important;
}

.asl-store-locator {
  display: flex !important;
  align-items: stretch !important;
  position: relative !important;
}

.asl-sidebar {
  width: 350px !important;
  max-width: calc(100% - 36px) !important;
  position: relative !important;
  z-index: 10 !important;
  background: #fff !important;
  max-height: calc(100vh - 119px) !important;
}

.asl-sidebar-scrollable {
  max-height: calc(100vh - 119px) !important;
  overflow-y: scroll !important;
  overflow-x: visible !important;
}

div#asl-map {
  flex: 1 !important;
  height: calc(100vh - 119px) !important;
}

.asl-search-bar {
  padding: 24px 16px !important;
  background: #2e3a27 !important;
  position: relative !important;
  margin-bottom: 15px !important;
}

.asl-search {
  position: relative !important;
}

button.asl-search-btn {
  position: absolute !important;
  right: 10px !important;
  width: 36px !important;
  height: 36px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
  border-radius: 50% !important;
  background: #f26b23 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  z-index: 1 !important;
}

input#asl-search-input {
  height: auto !important;
  border: none !important;
  border-radius: 50px !important;
  padding: 13px 15px !important;
}

.asl-filter,
.asl-stores-section {
  padding: 0 16px 16px !important;
}

h2.asl-block-title {
  font-size: 20px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  margin-bottom: 15px !important;
  color: #000 !important;
}

.asl-facilities {
  column-count: 2 !important;
}

.asl-facilities label {
  display: flex !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin-bottom: 10px !important;
  gap: 5px !important;
  font-weight: 500 !important;
  color: #5a5c5f !important;
}

.asl-single-store {
  border: 1px solid #d9d9d9 !important;
  padding: 12px !important;
  border-radius: 10px !important;
  background: rgba(0, 0, 0, 0.05) !important;
}

.asl-stores {
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

p.asl-title {
  font-size: 12px !important;
  margin: 0 !important;
  color: #7a7a7a !important;
  line-height: 1.5 !important;
}

h2.asl-location {
  margin: 0 !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  color: #000 !important;
}

p.asl-address {
  font-size: 13px !important;
  color: #5a5c5f !important;
  line-height: 1.5 !important;
  margin: 0 0 10px !important;
}

.asl-action-btn {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
}

.asl-action-btn .asl-btn {
  background: #2e3a27 !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  display: flex !important;
  gap: 5px !important;
  padding: 13px !important;
  border-radius: 6px !important;
  flex: 1 !important;
  justify-content: center !important;
  text-align: center !important;
  transition: all 0.3s ease !important;
  color: #fff !important;
  line-height: 1 !important;
  border: none !important;
  outline: none !important;
}

.asl-action-btn .asl-btn i {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}

.asl-action-btn .asl-btn:hover {
  background: #f26b23 !important;
}

div#asl-details {
  position: absolute !important;
  top: 0 !important;
  left: -100% !important;
  z-index: 10 !important;
  background: #fff !important;
  width: 350px !important;
  max-width: 100% !important;
  padding: 16px !important;
  top: 0 !important;
  height: 100% !important;
  overflow-y: scroll !important;
  border-left: 1px solid #d9d9d9 !important;
  transition: all 0.4s ease !important;
}

div#asl-details.active {
  left: 100% !important;
}

div#asl-details::-webkit-scrollbar {
  width: 5px !important;
}

/* Track */
div#asl-details::-webkit-scrollbar-track {
  background: #f1f1f1 !important;
}

/* Handle */
div#asl-details::-webkit-scrollbar-thumb {
  background: #2e3a27 !important;
  border-radius: 30px !important;
}

/* Handle on hover */
div#asl-details::-webkit-scrollbar-thumb:hover {
  background: #2e3a27 !important;
}

.asl-sidebar-scrollable::-webkit-scrollbar {
  width: 5px !important;
}

/* Track */
.asl-sidebar-scrollable::-webkit-scrollbar-track {
  background: #f1f1f1 !important;
}

/* Handle */
.asl-sidebar-scrollable::-webkit-scrollbar-thumb {
  background: #2e3a27 !important;
  border-radius: 30px !important;
}

/* Handle on hover */
.asl-sidebar-scrollable::-webkit-scrollbar-thumb:hover {
  background: #2e3a27 !important;
}

ul.asl-links {
  display: grid !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  align-items: stretch !important;
  gap: 5px !important;
  grid-template-columns: repeat(3, 1fr) !important;
  margin-top: 20px !important;
}

ul.asl-links li a {
  display: flex !important;
  flex-direction: column !important;
  gap: 6px !important;
  align-items: center !important;
  background: #eee !important;
  padding: 10px !important;
  border-radius: 9px !important;
  color: #000 !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
}

ul.asl-links li a i {
  color: #f26b23 !important;
  font-size: 18px !important;
}

.asl-details-block {
  padding-bottom: 20px !important;
  border-bottom: 1px solid #d9d9d9 !important;
  margin-bottom: 20px !important;
}

ul.asl-facilites {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
  column-count: 2 !important;
}

ul.asl-facilites li {
  color: #5a5c5f !important;
  line-height: 1.5 !important;
  font-size: 14px !important;
  margin-bottom: 5px !important;
}

.asl-details-block p,
.asl-details-block article {
  font-size: 14px !important;
  line-height: 1.5 !important;
  margin: 0 !important;
  color: #5a5c5f !important;
  font-weight: 400 !important;
  word-break: break-all !important;
}

span.close-details {
  width: 24px !important;
  height: 24px !important;
  display: inline-block !important;
  background: #2e3a27 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  position: absolute !important;
  right: 10px !important;
  top: 10px !important;
  border-radius: 50% !important;
  color: #fff !important;
  font-size: 13px !important;
  cursor: pointer !important;
  user-select: none !important;
}

.asl-mobile-button {
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
  z-index: 100 !important;
  background: #2e3a27 !important;
  width: 36px !important;
  height: 36px !important;
  color: #fff !important;
  display: none !important;
  align-items: center !important;
  justify-content: center !important;
}

.asl-search br {
  display: none !important;
}

@media (max-width: 767px) {
  .asl-mobile-button {
    display: flex !important;
  }

  .asl-sidebar {
    position: absolute !important;
    left: -100% !important;
    height: 100% !important;
    overflow-y: scroll !important;
    transition: all 0.3s ease !important;
  }

  .asl-sidebar.active {
    left: 0 !important;
  }

  div#asl-details.active {
    left: 0 !important;
  }

  .asl-sidebar {
    max-height: calc(100vh - 64.8) !important;
  }

  div#asl-map {
    height: calc(100vh - 64.8) !important;
  }
}
