.form-group.required .form-control-label::before {
  content: "*";
  color: #c00; }

.locator-title-content {
  font-size: 16px;
  line-height: 24px;
  color: #464944;
  padding-bottom: 32px; }
  .locator-title-content h3 {
    font-size: 28px;
    line-height: 42px;
    font-weight: 700;
    margin-bottom: 0;
    color: #2D5843;
    text-transform: uppercase;
    font-family: "qualion"; }
    @media (max-width: 991.98px) {
      .locator-title-content h3 {
        display: flex;
        justify-content: center; } }
  @media (max-width: 991.98px) {
    .locator-title-content .locator-subtitle,
    .locator-title-content .previewText {
      display: none; } }
  .locator-title-content .see-more-link,
  .locator-title-content .see-less-link {
    font-size: 14px;
    line-height: 20px;
    font-weight: 700;
    text-decoration: underline;
    color: #2D5843;
    cursor: pointer; }

.store-locator-container .btn-storelocator-search {
  position: absolute;
  top: 12%;
  background: none;
  border: none; }
  .store-locator-container .btn-storelocator-search:hover {
    background: none; }

.store-locator-container .detect-location {
  margin-bottom: 1em; }

.store-locator-container .results .store-details .store-hours,
.store-locator-container .results .store-details .store-phone {
  display: none; }

.store-locator-container .store-details {
  display: block; }
  .store-locator-container .store-details address .store-link-group {
    padding-bottom: 24px; }
  .store-locator-container .store-details address .store-link.online-store {
    margin-left: 24px; }

@media (max-width: 991.98px) {
  .store-locator-container .striped > div {
    padding: 0; } }

.store-locator-container .striped > div .card-body {
  background-color: #fff;
  border-radius: 4px;
  padding: 20px;
  position: relative;
  cursor: pointer; }
  .store-locator-container .striped > div .card-body.active {
    box-shadow: -1px 14px 26px -11px rgba(0, 0, 0, 0.51); }

.store-locator-container .search-form {
  width: 100%; }
  .store-locator-container .search-form .form-control {
    height: 56px;
    padding-left: 48px;
    background-color: #EFEBE7;
    color: #80817C;
    border: none;
    border-radius: 0;
    font-size: 14px;
    line-height: 20px; }
    .store-locator-container .search-form .form-control::placeholder {
      color: #80817C; }

@media (min-width: 544px) {
  .store-locator-container .select-store {
    margin-top: -3rem; } }

.store-locator-container .custom-radio .store-details {
  margin-left: 1.125em; }

.store-locator-container .store-locator-no-results {
  display: none; }

.number-of-stores {
  font-size: 16px;
  line-height: 24px;
  font-weight: 400;
  color: #2D5843; }

.alert.alert-sm {
  display: flex;
  flex-direction: row;
  align-items: center;
  padding: 4px 8px;
  gap: 8px;
  width: 100%;
  height: fit-content;
  border-radius: 4px; }
  .alert.alert-sm.alert-error {
    background: #FEEDEA;
    border: 1px solid #FCBDBD;
    color: #EE4B4B; }
  .alert.alert-sm.alert-info {
    background: #F0F8FB;
    border: 1px solid #9ED6EB;
    color: #21A0CE; }
  .alert.alert-sm.alert-success {
    background: #ECF6EC;
    border: 1px solid #9FD39E;
    color: #07624A; }
  .alert.alert-sm.alert-warn {
    background: #FDF3ED;
    border: 1px solid #FFCAA7;
    color: #EF792C; }
  .alert.alert-sm svg {
    width: 14px;
    height: 56px;
    margin-right: 0.5rem; }

.alert.alert-lg {
  border-radius: 4px;
  font-size: 14px;
  line-height: 20px;
  height: fit-content;
  padding: 1rem; }
  .alert.alert-lg.alert-error {
    background-color: #FEEDEA;
    border: 1px solid #FCBDBD;
    color: #EE4B4B; }
    .alert.alert-lg.alert-error svg {
      color: #EE4B4B; }
  .alert.alert-lg.alert-info {
    background: #F0F8FB;
    border: 1px solid #9ED6EB;
    color: #21A0CE; }
    .alert.alert-lg.alert-info svg {
      color: #21A0CE; }
  .alert.alert-lg.alert-success {
    background: #ECF6EC;
    border: 1px solid #9FD39E;
    color: #07624A; }
    .alert.alert-lg.alert-success svg {
      color: #07624A; }
  .alert.alert-lg.alert-warn, .alert.alert-lg.alert-danger {
    background: #FDF3ED;
    border: 1px solid #FFCAA7;
    color: #EF792C; }
    .alert.alert-lg.alert-warn svg, .alert.alert-lg.alert-danger svg {
      color: #EF792C; }
  .alert.alert-lg.floating {
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.16); }
  .alert.alert-lg svg {
    width: 20px;
    height: 20px;
    margin-right: 1rem; }

.alert .alert-text {
  font-weight: 400;
  font-size: 14px;
  line-height: 20px;
  width: 100%;
  height: min-content; }
  @media (max-width: 768.98px) {
    .alert .alert-text {
      font-size: 12px;
      line-height: 18px; } }

.alert.flash-messages {
  width: fit-content !important; }

.alert-danger {
  background-color: #FDF3ED; }

.alert-success {
  background-color: #ECF6EC; }

.alert-danger,
.alert-success {
  color: #000;
  font-size: 14px;
  line-height: 20px;
  font-weight: 400;
  border-radius: 4px; }

@media (max-width: 991.98px) {
  .store-locator-main {
    padding: 0; } }

.map-marker {
  position: absolute;
  top: 80px;
  left: 25px; }
  .map-marker svg {
    width: 18px;
    height: 20px; }

.gm-style-iw .store-details {
  margin-left: 0;
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  font-size: 1rem;
  font-weight: normal;
  line-height: 1.5; }

@media (max-width: 991.98px) {
  .jumbotron {
    margin-bottom: 16px; } }

.store-link {
  color: #2D5843;
  font-size: 14px;
  font-weight: 700;
  line-height: 20px;
  text-decoration: underline; }
  .store-link:hover {
    color: #3B7A5B; }

.map-canvas {
  height: 28.125em;
  display: block; }
  .map-canvas .store-details {
    position: relative; }
    .map-canvas .store-details .store-name {
      padding-left: 10px; }
    .map-canvas .store-details .store-phone {
      display: flex;
      align-items: center;
      padding-top: 24px; }
      .map-canvas .store-details .store-phone svg {
        width: 20px;
        height: 20px;
        color: #9D9D98;
        position: absolute;
        left: 10px; }
    .map-canvas .store-details .store-hours {
      padding-top: 24px; }
      .map-canvas .store-details .store-hours .store-hours-title {
        padding-bottom: 8px;
        cursor: pointer; }
        .map-canvas .store-details .store-hours .store-hours-title.collapsed .store-down-icon {
          transform: rotate(180deg); }
      .map-canvas .store-details .store-hours .clock-icon {
        width: 20px;
        height: 17px;
        position: absolute;
        left: 10px; }
      .map-canvas .store-details .store-hours .store-down-icon {
        width: 10px;
        height: 10px;
        margin-left: 9px;
        margin-top: 4px; }
    .map-canvas .store-details .direction-link {
      margin-right: 24px; }
    .map-canvas .store-details .store-label-group {
      padding-bottom: 15px;
      margin-left: -35px; }
    .map-canvas .store-details .map-marker {
      top: 63px;
      left: 10px; }

.store-name {
  font-weight: 700;
  padding-bottom: 24px;
  padding-top: 10px;
  padding-left: 5px;
  font-size: 20px;
  line-height: 30px;
  color: #292E28; }

.store-label-group {
  display: flex;
  gap: 8px;
  padding-top: 24px;
  margin-left: -40px;
  margin-right: 0; }
  .store-label-group .store-label {
    padding: 4px 8px;
    background-color: #FCF9F4;
    border-radius: 4px; }

.store-details {
  display: block; }
  .store-details address {
    margin-left: 44px;
    font-size: 16px;
    line-height: 24px;
    margin-bottom: 0; }
    .store-details address .storelocator-distance {
      padding: 8px 0;
      display: flex;
      gap: 5px; }

.store-locator-no-apiKey {
  display: none; }

.store-locator-no-results {
  display: none; }

.store-locator-hero {
  background-image: url("../images/storelocator.jpg");
  margin-bottom: 0.625em; }
  @media (min-width: 544px) {
    .store-locator-hero {
      display: none; } }

/*# sourceMappingURL=storeLocator.css.map*/