/*
* Scut, a collection of Sass utilities
* to ease and improve our implementations of common style-code patterns.
* v2.0.0
* Docs at http://ramseyinhouse.github.io/scut
*/
.sn_map__legend__nav li button, .sn_map__legend__nav li button p, .sn_map__legend__nav li button .p {
  font-family: "Nunito Sans", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-weight: 400;
}

.sn_map__legend__nav li button, .sn_map__legend__nav li button p, .sn_map__legend__nav li button .p {
  font-size: 0.9375rem;
}

.sn_map__legend__nav li button, .sn_map__legend__nav li button p, .sn_map__legend__nav li button .p {
  line-height: 1.6;
}

.sn_map {
  min-height: 31.25rem;
  font-family: "Nunito Sans", system-ui, -apple-system, Roboto, "Helvetica Neue", Arial, "Noto Sans", "Liberation Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
@media only screen and (min-width: 62em) {
  .sn_map {
    display: flex;
    height: calc(var(--vh, 1vh) * 100 - 6.25rem);
  }
}
.sn_map .tab-pane {
  height: calc(var(--vh, 1vh) * 100 - 6.25rem - 6.25rem);
  min-height: 31.25rem;
  width: 100%;
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: #2b2a2a #cccccc;
}
@supports selector(::-webkit-scrollbar) {
  .sn_map .tab-pane {
    scrollbar-width: auto;
    scrollbar-color: auto;
  }
  .sn_map .tab-pane::-webkit-scrollbar {
    width: 0.75rem;
    height: 0.75rem;
  }
  .sn_map .tab-pane::-webkit-scrollbar-track {
    background: #cccccc;
  }
  .sn_map .tab-pane::-webkit-scrollbar-thumb {
    background-color: #2b2a2a;
    border-radius: 1.875rem;
    border: 0.1875rem solid #cccccc;
    background-clip: content-box;
  }
}
@media only screen and (min-width: 62em) {
  .sn_map .tab-pane {
    height: 100%;
    min-height: auto;
  }
}
.sn_map .tab-pane.fade:not(.show) {
  opacity: 1;
}
@media only screen and (min-width: 0em) and (max-width: 61.99em) {
  .sn_map .tab-pane.fade:not(.show) {
    opacity: 0;
    height: 0;
    min-height: 0;
    visibility: hidden;
  }
}
.sn_map__legend {
  width: 100%;
  background-color: #fff;
  display: flex;
  flex-direction: column;
  flex-shrink: 0;
}
@media only screen and (min-width: 62em) {
  .sn_map__legend {
    max-width: 25rem;
  }
}
.sn_map__legend__search {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  padding-right: 0.625rem;
  border-radius: var(--bs-border-radius);
  border: 0.0625rem solid transparent;
  font-size: 1rem;
  font-weight: 400;
  padding-top: 0.4375rem;
  padding-right: 0.5625rem;
  padding-bottom: 0.4375rem;
  padding-left: 1.75rem;
  transition: border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
  box-shadow: 0 0 0.9375rem 0 rgba(204, 204, 204, 0.5);
}
.sn_map__legend__search button {
  width: 2.8125rem;
  height: 2.8125rem;
  padding: 0.625rem;
}
.sn_map__legend__search button svg-sprite {
  width: 100%;
  height: 100%;
}
.sn_map__legend__search input {
  border: 0;
  padding: 0;
  outline: none;
  width: 100%;
}
.sn_map__legend__search:has(input:focus-visible), .sn_map__legend__search:has(input:focus) {
  border-color: #cccccc;
  color: var(--bs-body-color);
  box-shadow: 0 0 0.9375rem 0 rgba(204, 204, 204, 0.5);
}
.sn_map__legend__nav {
  padding-left: 0;
  list-style: none;
  display: flex;
  align-items: center;
  margin-bottom: 0;
}
@media only screen and (min-width: 62em) {
  .sn_map__legend__nav {
    display: none;
  }
}
.sn_map__legend__nav li button {
  padding-top: 0.8125rem;
  padding-bottom: 0.8125rem;
  padding-left: 1.875rem;
  padding-right: 1.875rem;
  font-weight: 600;
  text-transform: uppercase;
  color: #cccccc;
  border-bottom: 0.0625rem solid transparent;
  transition: color 0.35s ease, border-color 0.35s ease;
}
.sn_map__legend__nav li button.active {
  color: #2b2a2a;
  border-bottom-color: #2b2a2a;
}
.sn_map__legend__stores {
  border-top: 0.0625rem solid #cccccc;
}
.sn_map__legend__stores ul {
  padding-left: 0;
  list-style: none;
  margin: 0;
}
.sn_map__legend__stores ul li {
  position: relative;
  padding-top: 0.9375rem;
  padding-right: 1.25rem;
  padding-bottom: 1.875rem;
  padding-left: 1.25rem;
  border: 0.0625rem solid #cccccc;
  border-top: 0;
}
.sn_map__legend__stores ul li a {
  color: #2b2a2a;
}
.sn_map__legend__stores ul li a:hover {
  color: #e20714;
}
.sn_map__legend__stores__features {
  display: flex;
  align-items: center;
  gap: 1.5625rem;
  margin-top: 1.25rem;
  margin-bottom: 1.5625rem;
}
.sn_map__legend__stores__features svg-sprite {
  width: 1.875rem;
  height: 1.875rem;
}
.sn_map__blueprint {
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.sn_map__pin svg-sprite {
  color: #e20714;
  width: 3.125rem;
  height: 3.125rem;
}