.elementor-8989 .elementor-element.elementor-element-cf31b25{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--padding-top:30px;--padding-bottom:30px;--padding-left:0px;--padding-right:0px;}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-8989 .elementor-element.elementor-element-062446f .elementor-heading-title{font-family:var( --e-global-typography-dc5fedf-font-family ), Sans-serif;font-size:var( --e-global-typography-dc5fedf-font-size );font-weight:var( --e-global-typography-dc5fedf-font-weight );line-height:var( --e-global-typography-dc5fedf-line-height );color:var( --e-global-color-2448cb8 );}.elementor-8989 .elementor-element.elementor-element-e89c660{width:100%;max-width:100%;}.elementor-8989 .elementor-element.elementor-element-e89c660.elementor-element{--align-self:center;}@media(max-width:1024px){.elementor-8989 .elementor-element.elementor-element-062446f .elementor-heading-title{font-size:var( --e-global-typography-dc5fedf-font-size );line-height:var( --e-global-typography-dc5fedf-line-height );}}@media(max-width:767px){.elementor-8989 .elementor-element.elementor-element-cf31b25{--padding-top:15px;--padding-bottom:15px;--padding-left:15px;--padding-right:15px;}.elementor-8989 .elementor-element.elementor-element-062446f{text-align:center;}.elementor-8989 .elementor-element.elementor-element-062446f .elementor-heading-title{font-size:var( --e-global-typography-dc5fedf-font-size );line-height:var( --e-global-typography-dc5fedf-line-height );}}/* Start custom CSS for shortcode, class: .elementor-element-e89c660 *//* ==========================================================================
   WP STORE LOCATOR - COMPLETE CUSTOM GLOBAL STYLES
   Mapped to Power Products Design System
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. STORE MODAL TITLE
   -------------------------------------------------------------------------- */
.store_modal_title {
  font-family: var(--font-headings, "Montserrat", sans-serif);
  font-size: 27px;
  font-weight: 600;
  line-height: 31px;
  color: var(--dark-blue, #00375E);
  margin-bottom: 12px;
}

@media (max-width: 767px) {
  .store_modal_title {
    font-size: 26px;
    line-height: 32px;
  }
}

/* --------------------------------------------------------------------------
   2. STORE LOCATOR RESULT LIST TITLE
   -------------------------------------------------------------------------- */
.store_locator_result_list_title {
  font-family: var(--font-headings, "Montserrat", sans-serif);
  font-size: 22px;
  font-weight: 600;
  line-height: 27px;
  color: var(--cr-blue, #0167AF);
  margin-bottom: 15px;
  padding-bottom: 8px;
  border-bottom: 2px solid var(--cr-lite-blue, #8CBCE0);
}

@media (max-width: 767px) {
  .store_locator_result_list_title {
    font-size: 20px;
    line-height: 26px;
  }
}

/* --------------------------------------------------------------------------
   3. INDIVIDUAL STORE NAME
   -------------------------------------------------------------------------- */
.store_locator_name {
  font-family: var(--font-headings, "Montserrat", sans-serif);
  font-size: 20px;
  font-weight: 600;
  line-height: 25px;
  color: var(--black, #000000);
  margin-bottom: 6px;
}

@media (max-width: 767px) {
  .store_locator_name {
    font-size: 18px;
    line-height: 24px;
  }
}

/* --------------------------------------------------------------------------
   4. STORE ADDRESS DETAILS
   -------------------------------------------------------------------------- */
.store_locator_address {
  font-family: var(--font-body, "Open Sans", sans-serif);
  font-size: 17px;
  font-weight: 400;
  line-height: 26px;
  color: var(--black, #000000);
  margin-bottom: 8px;
}

@media (max-width: 767px) {
  .store_locator_address {
    font-size: 17px;
    line-height: 24px;
  }
}

/* --------------------------------------------------------------------------
   5. STORE CONTACT INFO (Phone, Email, Web)
   -------------------------------------------------------------------------- */
.store_locator_contact {
  font-family: var(--font-body, "Open Sans", sans-serif);
  font-size: 17px;
  font-weight: 400;
  line-height: 26px;
  color: var(--black, #000000);
  margin-bottom: 12px;
}

.store_locator_contact a {
  color: var(--cr-blue, #0167AF);
  text-decoration: none;
  transition: color 0.3s ease;
}

.store_locator_contact a:hover {
  color: var(--dark-blue, #00375E);
  text-decoration: underline;
}

@media (max-width: 767px) {
  .store_locator_contact {
    font-size: 17px;
    line-height: 24px;
  }
}

/* --------------------------------------------------------------------------
   6. SEARCH ADDRESS INPUT FIELD
   -------------------------------------------------------------------------- */
.store_locator_address_field,
.store_locator_address_field.pac-target-input {
  font-family: var(--font-body, "Open Sans", sans-serif);
  font-size: 17px;
  font-weight: 400;
  line-height: 26px;
  color: var(--black, #000000);
  background-color: var(--white, #FFFFFF);
  border: 1px solid var(--cr-lite-blue, #8CBCE0);
  border-radius: 4px;
  padding: 10px 14px;
  width: 100%;
  box-sizing: border-box;
  outline: none;
  transition: border-color 0.3s ease, box-shadow 0.3s ease;
}

.store_locator_address_field:focus,
.store_locator_address_field.pac-target-input:focus {
  border-color: var(--cr-blue, #0167AF);
  box-shadow: 0 0 0 2px rgba(1, 103, 175, 0.2);
}

@media (max-width: 767px) {
  .store_locator_address_field,
  .store_locator_address_field.pac-target-input {
    font-size: 17px;
    line-height: 24px;
    padding: 12px;
  }
}

/* --------------------------------------------------------------------------
   7. MAIN "FIND STORES" BUTTON
   -------------------------------------------------------------------------- */
.store_locator_find_stores_button,
.store_locator_find_stores_button.btn,
.store_locator_find_stores_button.button,
.store_locator_find_stores_button.et_pb_button,
.store_locator_find_stores_button.btn-primary {
  font-family: var(--font-headings, "Montserrat", sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 23px;
  color: var(--white, #FFFFFF);
  background-color: var(--cr-blue, #0167AF);
  border: 1px solid var(--cr-blue, #0167AF);
  padding: 10px 24px;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s ease;
}

.store_locator_find_stores_button:hover,
.store_locator_find_stores_button.btn:hover,
.store_locator_find_stores_button.button:hover,
.store_locator_find_stores_button.et_pb_button:hover,
.store_locator_find_stores_button.btn-primary:hover {
  background-color: var(--dark-blue, #00375E);
  border-color: var(--dark-blue, #00375E);
  color: var(--white, #FFFFFF);
}

@media (max-width: 767px) {
  .store_locator_find_stores_button,
  .store_locator_find_stores_button.btn,
  .store_locator_find_stores_button.button,
  .store_locator_find_stores_button.et_pb_button,
  .store_locator_find_stores_button.btn-primary {
    font-size: 18px;
    line-height: 24px;
    width: 100%;
    padding: 12px;
  }
}

/* --------------------------------------------------------------------------
   8. GEOLOCATE & SHOW ALL STORES BUTTONS
   -------------------------------------------------------------------------- */
.store_locator_get_my_position,
.store_locator_get_all_stores {
  font-family: var(--font-headings, "Montserrat", sans-serif);
  font-size: 17px;
  font-weight: 600;
  line-height: 23px;
  color: var(--cr-blue, #0167AF);
  background-color: var(--white, #FFFFFF);
  border: 1px solid var(--cr-blue, #0167AF);
  padding: 8px 16px;
  border-radius: 4px;
  cursor: pointer;
  display: inline-block;
  text-decoration: none;
  transition: all 0.3s ease;
}

.store_locator_get_my_position:hover,
.store_locator_get_all_stores:hover {
  background-color: var(--cr-lite-blue, #8CBCE0);
  border-color: var(--cr-blue, #0167AF);
  color: var(--dark-blue, #00375E);
}

@media (max-width: 767px) {
  .store_locator_get_my_position,
  .store_locator_get_all_stores {
    font-size: 17px;
    line-height: 24px;
    width: 100%;
    text-align: center;
  }
}

/* --------------------------------------------------------------------------
   9. RESULT CARD ACTION BUTTONS & LINKS
   -------------------------------------------------------------------------- */
.store_locator_actions {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  margin-top: 10px;
}

.store_locator_actions a,
.store_locator_actions button {
  font-family: var(--font-headings, "Montserrat", sans-serif);
  font-size: 18px;
  font-weight: 600;
  line-height: 23px;
  color: var(--cr-blue, #0167AF);
  background-color: var(--white, #FFFFFF);
  border: 1px solid var(--cr-blue, #0167AF);
  padding: 8px 16px;
  border-radius: 4px;
  text-decoration: none;
  display: inline-block;
  cursor: pointer;
  transition: all 0.3s ease;
}

.store_locator_actions a:hover,
.store_locator_actions button:hover {
  background-color: var(--cr-blue, #0167AF);
  color: var(--white, #FFFFFF);
  border-color: var(--cr-blue, #0167AF);
}

@media (max-width: 767px) {
  .store_locator_actions a,
  .store_locator_actions button {
    font-size: 18px;
    line-height: 24px;
    width: 100%;
    text-align: center;
  }
}/* End custom CSS */