#map {
  position: relative;
  height: 600px;
  width: 100%;
}

#map .leaflet-pane.leaflet-marker-pane img.hide {
  display: none;
}

#mapControl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

#mapControl > div {
  width: 110px;
  margin: 10px 10px 0 10px;
}

#mapControl > div > * {
  width: 100%;
}

#overlay {
  position: absolute;
  width: 320px;
  background: #d4072d;
  color: white;
  border-radius: 50px;
  padding: 10px;
  z-index: 999;
  left: 20px;
  top: 20px;
  -webkit-transition: 0.2s all ease-in;
  transition: 0.2s all ease-in;
  -webkit-box-shadow: 4px 4px 12px -4px rgba(0, 0, 0, 0.4);
          box-shadow: 4px 4px 12px -4px rgba(0, 0, 0, 0.4);
  max-height: calc(100% - 140px);
}

#overlay h2 {
  color: white;
  font-size: 16px;
  text-align: center;
}

#overlay .center {
  text-align: center;
}

#overlay #mapControl input, #overlay #mapControl button {
  padding: 10px 5px;
  font-size: 14px;
  height: auto;
  line-height: 16px;
  border: 2px solid white;
  border-radius: 6px !important;
  font-weight: normal;
  margin: 0;
}

#overlay #mapControl input::-webkit-outer-spin-button, #overlay #mapControl input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

#overlay #mapControl input[type=number] {
  -moz-appearance: textfield;
}

#overlay #mapControl #ZIP {
  background: white;
}

#overlay #mapControl #executeFilter {
  background: none;
  color: white;
}

#overlay #mapResults {
  overflow: hidden;
  max-height: 0;
}

#overlay #mapResults.active {
  overflow-y: scroll;
  max-height: 300px;
}

#overlay #mapResults .resultWrapper {
  margin-bottom: 20px;
}

#overlay #mapResults .resultWrapper .distance {
  display: none;
}

#overlay #mapResults .resultWrapper.active .distance {
  display: block;
}

#overlay #mapResults .resultWrapper .placename {
  border-radius: 6px;
  background: white;
  color: black;
  padding: 5px 10px;
}

#overlay #mapResults .resultWrapper .linktoplace {
  border-radius: 6px;
  background: none;
  padding: 5px 10px;
  border: 1.5px solid white;
  margin-top: 5px;
}

#overlay #mapResults .resultWrapper .linktoplace a {
  display: block;
  margin: 0;
  padding: 0;
  color: white;
  text-align: center;
}

#map::before {
  width: 100%;
  height: 40%;
  background: linear-gradient(173deg, rgba(255,255,255,255) 20%, rgba(255,255,255,0) 70%, rgba(255,255,255,0) 100%);
  content: "";
  display: block;
  z-index: 998;
  position: absolute;
  pointer-events: none;
}

.zindex998 {
  z-index: 998 !important;
}

.zindex999 {
  z-index: 999 !important;
}

.leaflet-control-container {
  position: absolute;
  right: 50px;
}