.leaflet-map-pane,
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow,
.leaflet-tile-pane,
.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-container{overflow:hidden;-ms-touch-action:none;}
.leaflet-tile,
.leaflet-marker-icon,
.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;}
.leaflet-marker-icon,
.leaflet-marker-shadow{display:block;}

/* map is broken in FF if you have max-width:100% on tiles */
.leaflet-container img{max-width:none !important;}

/* stupid Android 2 doesn't understand "max-width:none" properly */
.leaflet-container img.leaflet-image-layer{max-width:15000px !important;}
.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;}

/* control positioning */
.leaflet-control{position:relative;z-index:7;pointer-events:auto;}
.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;}
.leaflet-control{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:15px;}
.leaflet-right .leaflet-control{margin-right:15px;}

/* 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-clickable{cursor:pointer;}
.leaflet-container{cursor:-webkit-grab;cursor:-moz-grab;}
.leaflet-popup-pane,
.leaflet-control{cursor:auto;}
.leaflet-dragging,
.leaflet-dragging .leaflet-clickable,
.leaflet-dragging .leaflet-container{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;}

/* visual tweaks */
.leaflet-container{background:#202C3C;outline:0;}
.leaflet-container a{color:#0078A8;}
.leaflet-container a.leaflet-active{outline:2px solid orange;}

/* general typography */
.leaflet-container{font:12px/1.5 'Lato', sans-serif;;}

/* general toolbar styles */
.leaflet-bar{box-shadow:0 0 8px rgba(0,0,0,0.4);-webkit-border-radius:5px;border-radius:5px;}
.leaflet-bar-part{}
.leaflet-bar-part-top{-webkit-border-radius:4px 4px 0 0;border-radius:4px 4px 0 0;}
.leaflet-bar-part-bottom{-webkit-border-radius:0 0 4px 4px;border-radius:0 0 4px 4px;border-bottom:none;}

/* zoom control */
.leaflet-container .leaflet-control-zoom{margin-left:15px;margin-top:12px;}
.leaflet-control-zoom a{width:22px;height:22px;text-align:center;text-decoration:none;background:#34485E; color:#fff;}
.leaflet-control-zoom a,
.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block;}
.leaflet-control-zoom a:hover{background-color:#fff;color:#34485E;}
.leaflet-control-zoom-in{font:bold 18px/24px 'Lato', sans-serif;}
.leaflet-control-zoom-out{font:bold 23px/20px 'Lato', sans-serif;}
.leaflet-control-zoom a.leaflet-control-zoom-disabled{cursor:default;background:#34485E;color:#fff;}
.leaflet-touch .leaflet-control-zoom a{width:30px;height:30px;}
.leaflet-touch .leaflet-control-zoom-in{font-size:24px;line-height:29px;}
.leaflet-touch .leaflet-control-zoom-out{font-size:28px;line-height:24px;}

/* layers control */
.leaflet-control-layers{box-shadow:0 1px 7px rgba(0,0,0,0.4);background:#34485E center center;-webkit-border-radius:8px;border-radius:8px;}
.leaflet-control-layers-toggle{ background-image:url("images/layers.png"); background-size: 26px 26px; width:36px;height:36px; }
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
     .leaflet-control-layers-toggle { background-image: url("images/layers@2x.png"); }
}
.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px;}
.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;}
.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#fff;background:#34485E;}
.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px;}
.leaflet-control-layers label{display:block;}
.leaflet-control-layers-separator{height:0;border-top:1px solid #314459;margin:5px -10px 5px -6px;}
/* attribution and scale controls */
.leaflet-container .leaflet-control-attribution{margin:0;}
.leaflet-container .leaflet-control-attribution a{color:#eee;}
.leaflet-control-attribution,
.leaflet-control-scale-line{padding:0 5px;color:#999;}
.leaflet-container .leaflet-control-attribution,
.leaflet-container .leaflet-control-scale{font-size:11px;}
.leaflet-left .leaflet-control-scale{margin-left:5px;}
.leaflet-bottom .leaflet-control-scale{margin-bottom:5px;}
.leaflet-control-scale-line{border:2px solid #777;border-top:none;color:black;line-height:1.1;padding:2px 5px 1px;font-size:11px;text-shadow:1px 1px 1px #fff;background-color:rgba(255,255,255,0.5);box-shadow:0 -1px 5px rgba(0,0,0,0.2);white-space:nowrap;overflow:hidden;}
.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px;box-shadow:0 2px 5px rgba(0,0,0,0.2);}
.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777;}

/* popup */
.leaflet-popup{position:absolute;text-align:center;color:rgb(102, 118, 135);}
.leaflet-popup h2{font-size:14px; font-weight:bold; color:#fff;margin:-15px -16px 0 -16px;padding:8px 16px;-webkit-border-radius:10px;border-radius:10px;-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0;-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0;background:#3498DB;}
.leaflet-popup-content-wrapper{padding:1px;text-align:left;-webkit-border-radius:10px;border-radius:10px;}
.leaflet-popup-content{margin:14px 15px;line-height:1;}
.leaflet-popup-content p{margin:15px 0 15px 0; font-size:14px; overflow:auto; max-height:200px;}
.leaflet-popup-tip-container{margin:0 auto;width:40px;height:20px;position:relative;overflow:hidden;}
.leaflet-popup-tip{width:15px;height:15px;padding:1px;margin:-8px auto 0;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);-o-transform:rotate(45deg);transform:rotate(45deg);}
.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#34485E;box-shadow:0 3px 14px rgba(0,0,0,0.4);}
.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;padding:2px 2px 0 0;text-align:center;width:14px;height:10px;font:12px/10px Tahoma,Verdana,sans-serif;color:#2980B9;text-decoration:none;font-weight:bold;background:transparent;}
.leaflet-container a.leaflet-popup-close-button:hover{color:#ffffff;}
.leaflet-popup-scrolled{overflow:auto;border-bottom:1px solid #ddd;border-top:1px solid #ddd;}
.leaflet-div-icon{background:#fff;border:1px solid #666;}
.leaflet-editing-icon{-webkit-border-radius:2px;border-radius:2px;}
.leaflet-label{background-clip:padding-box;color:#fff;display:block;font:12px/20px 'Lato', sans-serif;font-weight:bold;padding:1px 6px;position:absolute;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;white-space:nowrap;z-index:6;}
.leaflet-label:before{}
.marker-cluster-small{background-color:rgba(25, 81, 130, 1)}
.marker-cluster-small div{background-color:rgba(25, 81, 130, 1)}
.marker-cluster-medium{background-color:rgba(25, 81, 130, 1)}
.marker-cluster-medium div{background-color:rgba(25, 81, 130, 1)}
.marker-cluster-large{background-color:rgba(25, 81, 130, 1)}
.marker-cluster-large div{background-color:rgba(25, 81, 130, 1)}

.marker-cluster{background-clip:padding-box;border-radius:20px;}
.marker-cluster div{width:30px;height:30px;margin-left:5px;margin-top:5px;text-align:center;border-radius:15px;font:12px 'Lato', sans-serif;color:#fff;}
.marker-cluster span{line-height:30px;}	
.leaflet-cluster-anim .leaflet-marker-icon,.leaflet-cluster-anim .leaflet-marker-shadow{-webkit-transition:-webkit-transform 0.25s ease-out,opacity 0.25s ease-in;-moz-transition:-moz-transform 0.25s ease-out,opacity 0.25s ease-in;-o-transition:-o-transform 0.25s ease-out,opacity 0.25s ease-in;transition:transform 0.25s ease-out,opacity 0.25s ease-in;}

.searchwidget { padding: 6px 8px; font: 14px/16px 'Lato', sans-serif; background: white; background: #34485E; box-shadow: 0 0 15px rgba(0,0,0,0.2); border-radius: 5px; float:left; }
.searchwidget h4 { margin: 0 0 5px; color: #314459; }
.searchwidget input { background:none; border:none; color: #fff;}
.searchwidget ::-webkit-input-placeholder { color: #fff; } 
.searchwidget :-moz-placeholder { color: #fff; } 
.searchwidget ::-moz-placeholder { color: #fff; } 
.searchwidget :-ms-input-placeholder { color: #fff; }
.searchwidget fieldset { border:none; padding:0; padding-left:24px; background:url("images/search.png") center left no-repeat; }

.fullscreenwidget div {background-position:50% 50%;background-repeat:no-repeat;display:block;}
.fullscreenwidget { cursor:pointer; box-shadow:0 1px 7px rgba(0,0,0,0.4);background:#34485E center center;-webkit-border-radius:8px;border-radius:8px;}
.fullscreenwidget div { background-image:url("images/fullscreen.png"); background-size: 26px 26px; width:36px;height:36px; }
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
     .fullscreenwidget div { background-image: url("images/fullscreen@2x.png"); }
}