/* general typography */
.leaflet-container {
  background:#fff;
  //font:12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif;
  color: #000;
  outline:0;
  overflow:hidden;
  -ms-touch-action:none;
  }

.leaflet-container *,
.leaflet-container *:after,
.leaflet-container *:before {
  -webkit-box-sizing:border-box;
     -moz-box-sizing:border-box;
          box-sizing:border-box;
  }

.leaflet-container .marker-description img {
  margin-bottom: 10px;
  }

.leaflet-container a {
  text-decoration:none;
  }

/* Base Leaflet
------------------------------------------------------- */
.leaflet-map-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-pane,
.leaflet-tile-container,
.leaflet-overlay-pane,
.leaflet-shadow-pane,
.leaflet-marker-pane,
.leaflet-popup-pane,
.leaflet-overlay-pane svg,
.leaflet-zoom-box,
.leaflet-image-layer,
.leaflet-layer {
  position:absolute;
  left:0;
  top:0;
  }

.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow {
  -webkit-user-drag:none;
  -webkit-user-select:none;
     -moz-user-select:none;
          user-select:none;
  }
.leaflet-marker-icon,
.leaflet-marker-shadow {
  display: block;
  }

.leaflet-tile {
  filter:inherit;
  visibility:hidden;
  }
.leaflet-tile-loaded {
  visibility:inherit;
  }
.leaflet-zoom-box {
  width:0;
  height:0;
  }

.leaflet-tile-pane    { z-index:2; }
.leaflet-objects-pane { z-index:3; }
.leaflet-overlay-pane { z-index:4; }
.leaflet-shadow-pane  { z-index:5; }
.leaflet-marker-pane  { z-index:6; }
.leaflet-popup-pane   { z-index:7; }

.leaflet-control {
  position:relative;
  z-index:7;
  pointer-events:auto;
  float:left;
  clear:both;
  }
  .leaflet-right .leaflet-control   { float:right; }
  .leaflet-top .leaflet-control     { margin-top:10px; }
  .leaflet-bottom .leaflet-control  { margin-bottom:10px; }
  .leaflet-left .leaflet-control    { margin-left:10px; }
  .leaflet-right .leaflet-control   { margin-right:10px; }

.leaflet-top,
.leaflet-bottom {
  position:absolute;
  z-index:1000;
  pointer-events:none;
  }
  .leaflet-top    { top:0; }
  .leaflet-right  { right:0; }
  .leaflet-bottom { bottom:0; }
  .leaflet-left   { left:0; }

/* zoom and fade animations */
.leaflet-fade-anim .leaflet-tile,
.leaflet-fade-anim .leaflet-popup {
  opacity:0;
  -webkit-transition:opacity 0.2s linear;
     -moz-transition:opacity 0.2s linear;
       -o-transition:opacity 0.2s linear;
          transition:opacity 0.2s linear;
  }
  .leaflet-fade-anim .leaflet-tile-loaded,
  .leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
    opacity:1;
    }

.leaflet-zoom-anim .leaflet-zoom-animated {
  -webkit-transition:-webkit-transform 0.25s cubic-bezier(0,0,0.25,1);
     -moz-transition:   -moz-transform 0.25s cubic-bezier(0,0,0.25,1);
       -o-transition:     -o-transform 0.25s cubic-bezier(0,0,0.25,1);
          transition:        transform 0.25s cubic-bezier(0,0,0.25,1);
  }
.leaflet-zoom-anim .leaflet-tile,
.leaflet-pan-anim .leaflet-tile,
.leaflet-touching .leaflet-zoom-animated {
  -webkit-transition:none;
     -moz-transition:none;
       -o-transition:none;
          transition:none;
  }
.leaflet-zoom-anim .leaflet-zoom-hide { visibility: hidden; }

/* cursors */
.leaflet-container {
  cursor:-webkit-grab;
  cursor:   -moz-grab;
  }
.leaflet-overlay-pane path,
.leaflet-marker-icon,
.leaflet-container.map-clickable,
.leaflet-container.leaflet-clickable {
  cursor:pointer;
  }
.leaflet-popup-pane,
.leaflet-control {
  cursor:auto;
  }
.leaflet-dragging,
.leaflet-dragging .map-clickable,
.leaflet-dragging .leaflet-clickable,
.leaflet-dragging .leaflet-container {
  cursor:move;
  cursor:-webkit-grabbing;
  cursor:   -moz-grabbing;
  }


/* general toolbar styles */
.leaflet-control-layers,
.leaflet-bar {
  background-color:#fff;
  border:1px solid #000;
  box-shadow:none;
  }
.leaflet-bar a {
  color: #000;
}
.leaflet-bar a:hover {
  color: #fff;
}
.leaflet-bar a:hover,
.leaflet-bar a:active {
  color: #fff;
  background-color:#000;
  cursor:pointer;
}


.leaflet-bar .leaflet-disabled {
  cursor:default;
  opacity:0.75;
  }


.leaflet-control-layers .leaflet-control-layers-list,
.leaflet-control-layers-expanded .leaflet-control-layers-toggle {
  display:none;
  }
  .leaflet-control-layers-expanded .leaflet-control-layers-list {
    display:block;
    position:relative;
    }


/* popup */
.leaflet-popup {
  position:absolute;
  text-align:center;
  pointer-events:none;
  }
.leaflet-popup-content-wrapper {
  padding:1px;
  text-align:left;
  pointer-events:all;
  }
.leaflet-popup-content {
  padding:10px 10px 15px;
  margin:0;
  line-height:inherit;
  }
  .leaflet-popup-close-button + .leaflet-popup-content-wrapper .leaflet-popup-content {
    padding-top:15px;
    }

.leaflet-popup-tip-container {
  width:20px;
  height:20px;
  margin:0 auto;
  position:relative;
  }
.leaflet-popup-tip {
  width:0;
	height:0;
  margin:0;
	border-left:10px solid transparent;
	border-right:10px solid transparent;
	border-top:10px solid #fff;
  box-shadow:none;
  }
.leaflet-popup-close-button {
  position:absolute;
  top:0;
  right:0;
  pointer-events: all;
  }


/* Leaflet + Mapbox
------------------------------------------------------- */
.leaflet-bar a,
.mapbox-icon,
.map-tooltip.closable .close,
.leaflet-control-layers-toggle,
.mapbox-button-icon:before {
  content:'';
  display:inline-block;
  width: rem(26px);
  height: rem(26px);
  vertical-align:middle;
  background-repeat:no-repeat;
  }
.leaflet-bar a {
  display:block;
  }

.leaflet-popup-content-wrapper,
.map-legends,
.map-tooltip {
  background: #fff;
  }
.map-legends,
.map-tooltip {
  max-width:300px;
  }
.map-legends .map-legend {
  padding:10px;
  }
.map-tooltip {
  z-index:999999;
  padding:10px;
  min-width:180px;
  max-height:400px;
  overflow:auto;
  opacity:1;
  -webkit-transition:opacity 150ms;
     -moz-transition:opacity 150ms;
       -o-transition:opacity 150ms;
          transition:opacity 150ms;
  }


/* Print
------------------------------------------------------- */
@media print { .mapbox-improve-map { display:none; } }

/* Browser Fixes
------------------------------------------------------- */
/* VML support for IE8 */
.leaflet-vml-shape { width:1px; height:1px; }
.lvml { behavior:url(#default#VML); display:inline-block; position:absolute; }
/* Map is broken in FF if you have max-width: 100% on tiles */
.leaflet-container img.leaflet-tile { max-width:none !important; }
/* Markers are broken in FF/IE if you have max-width: 100% on marker images */
.leaflet-container img.leaflet-marker-icon { max-width:none; }
/* Stupid Android 2 doesn't understand "max-width: none" properly */
.leaflet-container img.leaflet-image-layer { max-width:15000px !important; }
/* workaround for https://bugzilla.mozilla.org/show_bug.cgi?id=888319 */
.leaflet-overlay-pane svg { -moz-user-select:none; }
/* Older IEs don't support the translateY property for display animation */
.leaflet-oldie .mapbox-modal .mapbox-modal-content        { display:none; }
.leaflet-oldie .mapbox-modal.active .mapbox-modal-content { display:block; }
.map-tooltip { width:280px\8; /* < IE9 */ }

.leaflet-oldie .mapbox-logo-true {
  background-image: none;
}
