.google-map-search {
  overflow: visible;
  &__label {
    display: block;
    font-weight: bold;
  }

  &__description {
    color: #888;
    font-size: .75em;
  }

  &__container {
    border: 2px solid #000;
    background: #FFF;
    overflow: visible;
  }

  &__map-object {
    height: 200px;
  }

  &__button {
    width: 100%;
    padding: 10px;
    background: skyblue;
    font-size: 13px;
    border: none;
  }

  &__click-to-edit {
    position: relative;
    box-sizing: border-box;

    img {
      width: 100%;
    }

    &:after {
      content: '';
      transition: background .2s;
      background: rgba(0, 0, 0, 0);
      pointer-events: none;
      position: absolute;
      top: 0;
      bottom: 0;
      right: 0;
      left: 0;
    }

    &:hover {

      &:after {
        font-weight: bold;
        background: rgba(0, 0, 0, .3);
        color: #fff;
        text-align: center;
        line-height: 100%;
        padding-top: 50px;
        text-shadow: 0 1px 0 #000;
        content: 'click to edit';
      }
    }
  }
}

.geosuggest {
  font-size: 18px;
  position: relative;
  //margin: 1em auto;
  text-align: left;
  overflow: visible;

  &__input-wrapper {
    overflow: visible;
    margin: -2px;
    position: relative;
    padding-bottom: ( 12px * 2 ) + 14px;
  }
  &__input {
    position: absolute;
    width: 100%;
    background: transparent;
    padding: 12px;
    font-weight: bold;
    font-size: 14px;
    
    &:focus {
      background-color: #FFF;
      outline-offset: -2px;
    }
  }

  &__suggests {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    max-height: 25em;
    padding: 0;
    margin-top: -4px;
    background: #FFF;
    border-bottom: 2px solid rgba(0,0,0,.2);
    border-top-width: 0;
    overflow-x: hidden;
    overflow-y: auto;
    list-style: none;
    z-index: 5;
    -webkit-transition: max-height 0.2s, border 0.2s;
    transition: max-height 0.2s, border 0.2s;
  }

  &__suggests--hidden {
    max-height: 0;
    overflow: hidden;
    border-top-width: 0;
    border-bottom-width: 0;
  }

  &__item {
    font-size: 18px;
    padding: .5em .65em;
    cursor: pointer;
    &:hover,
    &:focus {
      background: #267dc0;
      color: #fff;
    }
    &--active:nth-of-type(odd),
    &--active {
      background: #267dc0;
      color: #fff;

      &:hover,
      &:focus {
        background: #267dc0;
      }
    }

    // NoooOOoooOO..
    &__matched-text {
      font-weight: bold;
    }
  }
}
