.store-locator-container .btn-storelocator-search {
  background-color: #f9f9f9;
  border-color: var(--skin-primary-color-1);
  border-radius: 0;
  color: var(--skin-primary-color-1); }
  .store-locator-container .btn-storelocator-search:hover {
    background-color: var(--skin-primary-color-1);
    color: #f9f9f9; }

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

.store-locator-container .store-name {
  font-weight: 600; }

.store-locator-container .store-details {
  display: block; }
  @media (min-width: 769px) {
    .store-locator-container .store-details {
      margin-left: 3.125em; } }

.store-locator-container .striped > div:nth-of-type(odd) {
  background-color: rgba(0, 0, 0, 0.05); }

.store-locator-container .search-form {
  width: 100%;
  margin-bottom: 4rem; }

@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; }

@media (min-width: 769px) {
  .store-locator-container .results {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 21.875em; } }

.map-marker {
  float: left;
  width: 2em;
  height: 2em;
  text-align: center;
  line-height: 2em;
  border-radius: 0.375em;
  color: #fff;
  background-color: #7ed0ee;
  position: relative; }
  .map-marker::after {
    position: absolute;
    bottom: -0.625em;
    left: 50%;
    transform: translate(-50%, 0);
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 1em 0.5em 0;
    border-color: #7ed0ee transparent transparent transparent; }

.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; }

.gm-style-iw a {
  color: var(--skin-link-color-1); }

.map-canvas {
  display: none; }
  @media (min-width: 544px) {
    .map-canvas {
      height: 28.125em;
      display: block; } }

.store-name {
  font-weight: 600; }

.store-details {
  margin-left: 3.125em; }

.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; } }

@media (min-width: 769px) {
  .results {
    overflow-y: auto;
    overflow-x: hidden;
    max-height: 21.875em;
    margin-right: -0.938em; } }

.retailer input.form-control:not(:placeholder-shown) ~ .form-control-label,
.retailer input.form-control:focus ~ .form-control-label {
  transform: translateY(-8px);
  font-size: 13px;
  transition-timing-function: ease-out;
  transition-duration: 200ms; }
  .retailer input.form-control:not(:placeholder-shown) ~ .form-control-label i.question img,
  .retailer input.form-control:focus ~ .form-control-label i.question img {
    width: 12px; }

.retailer input.form-control:placeholder-shown:-ms-input-placeholder {
  color: transparent; }

.retailer input.form-control:placeholder-shown::placeholder {
  color: transparent; }

.retailer .card-body.stores-page {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-direction: column;
      flex-direction: column;
  -ms-flex-align: center;
      align-items: center; }

.retailer .find-title {
  font-size: 24px;
  line-height: 28px;
  width: 408px;
  margin-bottom: 25px;
  margin-top: 65px;
  font-family: 'Volvo Novum medium'; }

.retailer .google-message {
  width: 408px;
  background: #FAFAFA;
  font-size: 14px;
  line-height: 16px;
  padding: 12px 16px;
  color: #707070;
  display: none; }
  .retailer .google-message span {
    text-decoration: underline;
    cursor: pointer; }

.retailer .google-image {
  margin-top: 36px;
  width: 409px;
  text-align: center;
  display: none; }

.retailer .store-locator {
  width: 392px; }
  .retailer .store-locator .form-group.required {
    position: relative; }
  .retailer .store-locator input.form-control {
    height: 48px;
    width: 100%;
    padding-left: 44px;
    padding-right: 44px;
    text-indent: 5px;
    padding-top: 22px;
    font-size: 14px;
    color: #141414; }
  .retailer .store-locator .form-control-label {
    position: absolute;
    top: 14px;
    left: 50px;
    color: #707070;
    font-size: 14px;
    transition-timing-function: ease-out;
    transition-duration: 200ms; }
  .retailer .store-locator .localtion {
    height: 48px;
    width: 48px;
    position: absolute;
    left: 0;
    top: 1px;
    cursor: pointer;
    display: -ms-flexbox;
    display: flex; }
  .retailer .store-locator .search-icon {
    height: 22px;
    width: 22px;
    position: absolute;
    right: 15px;
    top: 14px;
    display: -ms-flexbox;
    display: flex;
    cursor: pointer; }
  .retailer .store-locator .clear-icon {
    position: absolute;
    font-size: 14px;
    right: 50px;
    bottom: 4px;
    cursor: pointer; }

.retailer .stores-page {
  margin-top: 0; }

.retailer .stores-page-hide {
  display: none !important;
  margin-top: 3rem; }

.retailer .store-locator-container {
  max-width: 1280px;
  padding: 0;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .retailer .store-locator-container .stores-page-left {
    width: calc(100% - 469px);
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-bottom: 50px;
    min-height: 500px;
    -ms-flex: none;
        flex: none; }
  .retailer .store-locator-container .stores-page-right {
    position: relative;
    width: 469px;
    box-shadow: -2px 0 6px rgba(20, 20, 20, 0.1);
    border: none;
    -ms-flex: none;
        flex: none;
    overflow: auto;
    padding: 0px; }
    @media screen and (min-width: 768px) {
      .retailer .store-locator-container .stores-page-right {
        height: calc(100vh - 176px); } }
    .retailer .store-locator-container .stores-page-right .results-card {
      border: none; }
      .retailer .store-locator-container .stores-page-right .results-card .card-body {
        padding: 0 !important; }
        .retailer .store-locator-container .stores-page-right .results-card .card-body .store-locator-no-results {
          display: none; }
        .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped {
          max-height: 100%;
          width: 100%; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .card-body {
            background: none;
            padding: 0;
            margin-bottom: 19px;
            border-radius: 8px;
            border: 1px solid #D5D5D5; }
            .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .card-body.selected {
              border: 2px solid #2A609D; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .form-check {
            padding: 0; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped #input-german_store {
            display: none; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .form-check-label {
            width: 100%; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .store-details {
            margin: 0; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .store-name {
            font-size: 16px;
            line-height: 19px;
            font-family: 'Volvo Novum medium'; }
            .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .store-name .added {
              display: none; }
            .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .store-name .add-to-prefer {
              float: right;
              cursor: pointer; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .store-name .add-to-prefer.active .no-added {
                display: none !important; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .store-name .add-to-prefer.active .added {
                display: block !important; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address {
            margin: 0; }
            .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address .store-info {
              display: -ms-flexbox;
              display: flex;
              -ms-flex-pack: justify;
                  justify-content: space-between;
              -ms-flex-align: center;
                  align-items: center; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address .store-info a.store-map {
                font-size: 14px;
                line-height: 17px;
                color: #707070 !important;
                margin: 8px 0;
                display: block;
                -ms-flex: 1;
                    flex: 1; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address .store-info .distance {
                font-size: 12px;
                line-height: 14px;
                color: #707070;
                display: inline-block;
                margin-right: 12px;
                -ms-flex-negative: 0;
                    flex-shrink: 0; }
            .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address .store-hours {
              font-size: 12px;
              line-height: 14px;
              color: #707070; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address .store-hours br {
                display: none; }
            .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address p {
              font-size: 12px;
              line-height: 14px;
              color: #284E80 !important;
              margin: 0;
              margin-right: 12px; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address p.address-city-area.color-light {
                color: #707070 !important;
                font-size: 14px; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address p .storelocator-phone {
                color: #284E80 !important; }
              .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address p i {
                margin-right: 4px; }
                .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped address p i:before {
                  content: '';
                  background: url("data:image/svg+xml;charset=US-ASCII,%3Csvg%20width%3D%2211%22%20height%3D%2211%22%20viewBox%3D%220%200%2011%2011%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%0A%3Cpath%20d%3D%22M2.99826%201.19629C3.20583%201.19629%203.39709%201.30887%203.49786%201.49036L4.19683%202.74945C4.28835%202.91431%204.29266%203.11371%204.20832%203.28237L3.53495%204.62914C3.53495%204.62914%203.73009%205.63239%204.54678%206.44908C5.36349%207.26577%206.36338%207.45754%206.36338%207.45754L7.70992%206.78428C7.87869%206.69988%208.07823%206.70425%208.24315%206.79594L9.50581%207.49794C9.68715%207.59877%209.79958%207.78991%209.79958%207.99737V9.44694C9.79958%2010.1851%209.11389%2010.7183%208.41446%2010.4823C6.97789%209.99757%204.74798%209.07465%203.3346%207.66125C1.92123%206.24788%200.998298%204.01797%200.513573%202.58142C0.277567%201.88197%200.810736%201.19629%201.54892%201.19629H2.99826Z%22%20stroke%3D%22%23141414%22%20stroke-width%3D%220.571429%22%20stroke-linejoin%3D%22round%22%2F%3E%0A%3C%2Fsvg%3E%0A");
                  width: 12px;
                  height: 12px;
                  display: block;
                  background-size: contain;
                  position: relative;
                  top: 2px; }
          .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .button-area {
            display: none; }

.retailer .store-locator-container {
  -ms-flex-direction: column;
      flex-direction: column; }
  .retailer .store-locator-container.hide {
    display: none !important; }
  .retailer .store-locator-container .stores-page-left {
    width: 100%;
    min-height: auto;
    padding-bottom: 24px; }
    .retailer .store-locator-container .stores-page-left .card-body.stores-page {
      margin-top: -5px;
      padding-bottom: 2px; }
      .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator label.form-control-label {
        left: 20px; }
        .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator label.form-control-label span {
          display: none; }
          .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator label.form-control-label span.hide {
            display: block !important; }
      .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator .detect-location {
        display: none;
        top: 50px;
        width: 100%;
        color: #1c6bba;
        font-size: 12px;
        line-height: 46px;
        background: #fff;
        font-family: 'Volvo Novum medium';
        text-transform: uppercase; }
        .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator .detect-location img {
          display: none; }
        .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator .detect-location span.hide {
          display: block; }
      .retailer .store-locator-container .stores-page-left .card-body.stores-page .store-locator #pac-input {
        padding-left: 12px;
        padding-bottom: 4px; }
      .retailer .store-locator-container .stores-page-left .card-body.stores-page .find-title.stores-page {
        margin-top: 0; }
        .retailer .store-locator-container .stores-page-left .card-body.stores-page .find-title.stores-page span {
          font-weight: 500;
          font-size: 32px;
          line-height: 60px;
          margin-left: 0px; }
          @media screen and (max-width: 767px) {
            .retailer .store-locator-container .stores-page-left .card-body.stores-page .find-title.stores-page span {
              font-size: 30px; } }
          .retailer .store-locator-container .stores-page-left .card-body.stores-page .find-title.stores-page span:nth-child(2) {
            display: block;
            font-weight: 400;
            font-size: 16px;
            line-height: 19px;
            color: #707070; }
  .retailer .store-locator-container .stores-page-right {
    width: 100%;
    box-shadow: none;
    display: block; }
    @media screen and (min-width: 768px) {
      .retailer .store-locator-container .stores-page-right {
        height: 253px; } }
    .retailer .store-locator-container .stores-page-right .hide.list-store-button {
      display: block !important; }
      .retailer .store-locator-container .stores-page-right .hide.list-store-button .show-more {
        color: #1c6bba;
        font-size: 10px;
        line-height: 12px;
        font-family: 'Volvo Novum medium';
        text-align: center;
        cursor: pointer; }
        .retailer .store-locator-container .stores-page-right .hide.list-store-button .show-more img {
          margin-top: -2px; }
      .retailer .store-locator-container .stores-page-right .hide.list-store-button .google-image-test-drive {
        text-align: center;
        margin-top: 18px; }
      .retailer .store-locator-container .stores-page-right .hide.list-store-button .next-step {
        width: 100%; }
        .retailer .store-locator-container .stores-page-right .hide.list-store-button .next-step span {
          width: 186px;
          height: 36px;
          border: 1px solid #284e80;
          display: inherit;
          border-radius: 4px;
          font-size: 14px;
          text-align: center;
          line-height: 36px;
          color: #284e80;
          font-family: 'Volvo Novum medium';
          margin: 0 auto;
          cursor: pointer; }
          .retailer .store-locator-container .stores-page-right .hide.list-store-button .next-step span:hover {
            color: #fff;
            transition: all 0.5s linear;
            background-color: #284e80; }
    .retailer .store-locator-container .stores-page-right .results.striped {
      display: -ms-flexbox;
      display: flex;
      -ms-flex-direction: column;
          flex-direction: column;
      -ms-flex-wrap: wrap;
          flex-wrap: wrap; }
      .retailer .store-locator-container .stores-page-right .results.striped .card-body {
        border: 1px solid #d5d5d5;
        margin: 5px !important;
        padding: 16px !important;
        border-radius: 4px;
        cursor: pointer; }
        .retailer .store-locator-container .stores-page-right .results.striped .card-body a.store-map {
          width: fit-content; }
        .retailer .store-locator-container .stores-page-right .results.striped .card-body .store-details .store-map br {
          display: block !important; }
        .retailer .store-locator-container .stores-page-right .results.striped .card-body:hover {
          border-color: #707070; }
        .retailer .store-locator-container .stores-page-right .results.striped .card-body:nth-child(3n - 1) {
          margin-left: 38px;
          margin-right: 38px; }
        .retailer .store-locator-container .stores-page-right .results.striped .card-body .select-store-input {
          visibility: hidden; }
        .retailer .store-locator-container .stores-page-right .results.striped .card-body.active {
          border: 2px solid #1c6bba; }
      .retailer .store-locator-container .stores-page-right .results.striped.active .card-body:nth-child(6) ~ .card-body {
        display: block; }
  @media screen and (max-width: 767px) {
    .retailer .store-locator-container .stores-page {
      margin: 0; } }

.retailer .confirm-store {
  color: #FFFFFF;
  background: #2A609D;
  width: 100%;
  font-weight: 500;
  font-size: 14px;
  line-height: 22px;
  height: 50px;
  border-radius: 4px; }
  .retailer .confirm-store:hover {
    color: #FFFFFF;
    border-color: #007cad;
    background-color: #2A609D; }

.pac-container.pac-logo {
  border: none;
  box-shadow: none;
  font-size: 14px;
  top: 306px !important;
  box-shadow: 5px 5px #fff !important; }
  @media screen and (max-width: 767px) {
    .pac-container.pac-logo {
      position: fixed !important;
      top: calc(20vh + 186px) !important; } }
  .pac-container.pac-logo:after {
    display: none; }
  .pac-container.pac-logo .pac-item {
    border: none;
    color: #707070;
    padding: 8px;
    font-size: 14px;
    cursor: pointer;
    line-height: 19px; }
    .pac-container.pac-logo .pac-item span.pac-icon {
      display: none; }
    .pac-container.pac-logo .pac-item span.pac-item-query {
      color: #141414;
      font-weight: normal; }

@media screen and (max-width: 767px) {
  .retailer .find-title {
    width: 100%;
    margin-top: 0; }
  .retailer .store-locator {
    width: 100%; }
  .retailer .google-message {
    width: 100%; }
  .retailer .google-image {
    margin-top: 10px;
    width: 100%; }
  .retailer .store-locator-container {
    -ms-flex-direction: column;
        flex-direction: column; }
    .retailer .store-locator-container .stores-page-left {
      width: 100%;
      min-height: auto;
      padding: 0 0 24px 0; }
    .retailer .store-locator-container .stores-page-right {
      width: auto;
      margin: 0 20px 20px 20px;
      max-height: 253px; }
      .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped {
        -ms-flex-direction: column;
            flex-direction: column; }
        .retailer .store-locator-container .stores-page-right .results-card .card-body .results.striped .card-body {
          width: 100% !important;
          max-width: 100% !important; }
      .retailer .store-locator-container .stores-page-right .results-card .store-name {
        font-size: 14px;
        line-height: 16px; }
        .retailer .store-locator-container .stores-page-right .results-card .store-name address a.store-map {
          font-size: 12px;
          line-height: 14px; }
        .retailer .store-locator-container .stores-page-right .results-card .store-name address p.address-city-area.color-light {
          font-size: 12px; }
  .retailer .store-locator-container .stores-page-left .card-body.stores-page .find-title.stores-page {
    font-size: 20px;
    margin-bottom: 10px; }
  .retailer .store-locator-container .stores-page-right {
    padding: 0 20px 20px 20px;
    margin: 0; }
    .retailer .store-locator-container .stores-page-right .results.striped {
      -ms-flex-direction: column;
          flex-direction: column; }
      .retailer .store-locator-container .stores-page-right .results.striped .card-body {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 0 20px 0 !important; } }
