#heatmap{margin:0 auto; width:100%; max-width:1000px;}
#heatmap .filter{float:left; background:#b9b6b1; padding:5px 0; display:inline-block; width:100%;}
.filter-field{float:left; width:25%; position:relative;}
.filter-field .label{border-right:2px solid #000;}
.filter-field.last .label{border:none;}

.filter-btn{display:flex; align-items:center; height:40px; padding:0 10px;}

.filter-check input[type="checkbox"]{display: none;}
.filter-check label{cursor:pointer; margin:0 auto;}
.filter-check label .checked{display:none;}
.filter-check label .unchecked{display:block;}
.filter-check :checked + label .checked{display:block;}
.filter-check :checked + label .unchecked{display:none;}
 
.filter-field.with-sub-items{cursor:pointer; text-align:center; line-height:40px;}
.filter-field.with-sub-items .dropdown{position:absolute; top:40px; left:-9999px; z-index:999; opacity:0; transition:opacity 0.5s ease; width:100%; text-align:left;}
.filter-field.with-sub-items .dropdown .dropdown-container{background:#fff; margin-top:5px; padding:5px 20px; float:left; width:100%;}
.filter-field.with-sub-items:hover .dropdown{left:0; opacity:1;}
.filter-field.with-sub-items:hover .dropdown.double{left:-100%; width:200%;}
.filter-field.with-sub-items .dropdown.double .col{float:left; width:50%;}
.filter-field.with-sub-items:after{content: '\f078'; font-family: FontAwesome; position: absolute; bottom: 0; line-height: 10px;}
.filter-field.with-sub-items:hover:after{content: '\f077';}

.filter-field .dropdown label{display:block; margin:5px 0; cursor:pointer; line-height:22px; font-size:14px;}
.filter-field .dropdown label input{float:left; margin:4px 6px 0 0;}

#product-all label{margin-bottom:0;}
.filter-field.with-sub-items .dropdown.double .col-roof{margin-top:-27px;}

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

#location-content{margin:20px 0;}
#location-content .title{margin:20px 0 0; background:#767676; padding:5px 10px 5px 20px; font-size:22px; font-weight:bold; line-height:30px; color:#fff; text-transform:uppercase; position:relative; display:inline-block; height:40px;}
#location-content .title:after{content:''; position:absolute; top:0; right:-40px; width: 0; height: 0; border-style: solid; border-width: 40px 0 0 40px; border-color: transparent transparent transparent #767676;}

.owl-theme .owl-nav{position:absolute; top:50%; margin:-25px 0 0; width:100%;}
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev{position:absolute; font-size:50px; line-height:50px; color:#767676; width:50px; margin:0;}
.owl-carousel .owl-nav button.owl-prev{left:0px;}
.owl-carousel .owl-nav button.owl-next{right:0px;}
.owl-theme .owl-nav [class*=owl-]:hover{background:none;}
.owl-dots{position:absolute; bottom:0; left:50%; transform:translateX(-50%);}
.owl-theme .owl-dots .owl-dot{width:auto;}
.owl-theme .owl-dots .owl-dot span{background:#fff;}
.owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span{background:#b6192d;}

#location-content .info-fields{float:left; width:100%; margin:20px 0;}
#location-content .info-field{float:left; margin:0 10px; padding:8px 0; border-bottom:1px solid #767676; font-size:16px; text-transform:uppercase;}
#location-content .info-field .label{float:left;}
#location-content .info-field .value{float:left; color:#000;}
#location-content .info-field.col-1-1{width:calc(100% - 20px);}
#location-content .info-field.col-1-2{width:calc(50% - 20px);}
#location-content .info-field.col-1-4{width:calc(25% - 20px);}

#location-content .label{color:#b8b6b2; margin-right:5px; font-size:16px; text-transform:uppercase;}
#location-content .label span{text-transform:lowercase; font-style:italic;}

#location-content .products{margin:0 10px; border-bottom:1px solid #767676; display:inline-block; width:calc(100% - 20px);}
#location-content .products a{float:left; padding:20px 20px 20px 0;}
#location-content .products a img{max-height:35px;}

#location-content .description{float:left; width:100%; padding:10px;}

#location-content .actions{margin:10px 10px;}
#location-content .actions .btn{text-decoration:none; text-align:center; text-transform:uppercase; margin-bottom:10px; font-size:14px; padding:5px 0;}
#location-content .actions .btn.full{float:left; width:100%;}
#location-content .actions .btn.red{background:#b6192d; color:#fff;}
#location-content .actions .btn.blank{border:2px solid #000; color:#000;}

.modal.center{text-align:center;}
.modal.center .btn{float:none; margin:0 auto; display:inline-block;}

/* Infowindow */
.gm-style-iw{height:100px; min-width:280px; padding:0 !important; border-radius:0 !important;}
.iw-content{}
a.iw-link{display:flex; align-items:center; height:100px; padding:0;}
a.iw-link img{float:left; width:100px;}
a.iw-link h3{float:left; width:calc(100% - 120px); max-width:200px; margin:0 0 0 20px; clear:none; font-size:14px; font-weight:bold; line-height:16px;}

/*.gm-style .gm-style-iw-t::after{display:none;}*/

/* Responsive */
form#mobile-filter{display:none;}
/*.mobile-filter-open{display:none;}*/
.mobile-filter-screens{display:none;}

.mobile-location-top{display:none;}

@media (max-width: 1023px) {

	form#filter{display:none;}
	form#mobile-filter{display:block;}
	
	.filter-field{width:calc(50% - 40px);}
	.building-filter-field, .product-filter-field{display:none;}
	.mobile-filter-open{display:inline-block; width:80px; text-align:center; line-height:40px; cursor:pointer;}	
	
	body.heatmap-mobile-filter{overflow:hidden;}
	#heatmap.mobile-filter .mobile-filter-screens{display:block; overflow-x:hidden; overflow-y:scroll;}
	
	.mobile-filter-screens{position: fixed; top: 0; left: 0; right: 0; bottom: 0; background: #fff; z-index: 9999;}
	
	.mobile-top{border-bottom:2px solid #767676; line-height:20px; padding:5px 0;}
	.mobile-top a{color:#b61a2e; text-decoration:none;}
	.mobile-top .left{float:left; width:30%; margin-left:5%; padding-left:0;}
	.mobile-top .right{float:right; width:30%; margin-right:5%; text-align:right;}
	.mobile-top .top-title{display:inline-block; width:30%; text-align:center; font-weight:bold;}
	
	.mobile-filter-category{float:left; width:100%; margin:20px 0;}
	.mobile-filter-category .filter-field{width:50%;}
	.mobile-filter-category .filter-field .label{border-color:#b7b7b5;}
	
	#options-filter .filter-btn{float:left; width:100%; margin-bottom:10px; background:#e3e3e3; padding:10px 20px; color:#b7b7b5; text-decoration:none;}
		
	.mobile-filter-option{padding:0 5%;}
	.mobile-filter-option.building-filter, .mobile-filter-option.product-filter{display:none; padding:0 5%;}
	.mobile-filter-option.building-filter label, .mobile-filter-option.product-filter label{display:block; color:#7e7d7e; margin-bottom:10px !important;}
	.mobile-filter-option.building-filter input, .mobile-filter-option.product-filter input{margin-right:5px;}
	
	#mobile-filter .filter-btn.red{text-transform:uppercase; text-align:center; text-decoration:none; color:#fff; background:#b6192c; padding:10px 20px; border-radius:10px; display:block; line-height:20px;}
	
	#location-result{display:none; background:#fff;}
	#location-result.display{display:block; position:fixed; top:0; right:0; bottom:0; left:0;  overflow-x:hidden; overflow-y:scroll; z-index:9999;}
	body.display-location{overflow:hidden;}
	
	#location-content{margin:0;}
	.mobile-location-top{display:block; border:none; margin:0;}
	#location-content .title{width:100%; margin:0; padding:5px 5%;}
	#location-content .title:after{display:none;}
	#location-content .info-field{width: 100% !important; margin: 0; padding: 5px 5%;}
	#location-content .info-field:nth-child(even){background:#ddd;}
	#location-content .info-field .value{float:right;}
	#location-content .label span{display:block;}
	#location-content .products{margin:0 5%; width:90%;}
	#location-content .description{padding:10px 5%;}
	#location-content .actions{margin:10px 5%;}
	#location-content .actions .btn{border-radius:10px;}
}

@media (max-width: 767px) {
	#heatmap{width: 100vw; margin:0 -35px; /*left: 50%; position: relative; transform: translateX(-50%);*/}
	#map{height:400px;}
}