#legend {
  padding: 15px 5px 0;
  padding-left: 10px;
  line-height: 30px;
  text-align: left;
  border: 2px solid #03aeef;
}
#legend label {
  font-weight: 500;
}
#legend p.title {
  font-weight: 500;
  text-align: center;
  text-transform: uppercase;
}
.browser-height {
  height: 100vh;
}
.map-margin {
  width: 100%;
  height: 115px;
}
.slide img {
  margin: 0 auto;
}
.key {
  position: relative;
  display: inline-block;
  width: 100%;
  padding-left: 35px;
  margin-bottom: 12px;
  font-size: 14px;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
.key img {
  padding-right: 7px;
}
.key input {
  position: absolute;
  width: 0;
  height: 0;
  cursor: pointer;
  opacity: 0;
}
.checkmark {
  position: absolute;
  top: 5px;
  left: 0;
  width: 25px;
  height: 25px;
  background-color: #eee;
}
.key:hover input ~ .checkmark {
  background-color: #ccc;
}
.key input:checked ~ .checkmark {
  background-color: #2196f3;
}
.checkmark:after {
  position: absolute;
  display: none;
  content: "";
}
.key input:checked ~ .checkmark:after {
  display: block;
}
.key .checkmark:after {
  top: 5px;
  left: 9px;
  width: 7px;
  height: 12px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  border: solid white;
  border-width: 0 3px 3px 0;
}
@media screen and (min-width: 768px) {
  #legend {
    position: absolute;
    left: 15px;
    z-index: 2;
    width: 240px;
    min-height: 100%;
    text-align: left;
    background: #fff;
  }
  #map {
    margin-left: 240px;
  }
}
@media screen and (min-width: 992px) {
  #legend {
    width: 260px;
  }
  #map {
    margin-left: 260px;
  }
}
@media screen and (min-width: 1200px) {
  #legend {
    width: 300px;
  }
  #map {
    margin-left: 300px;
  }
}
@media screen and (min-width: 1500px) {
  #legend {
    width: 340px;
  }
  #map {
    margin-left: 340px;
  }
}
