.gm-style-iw {
   width: 300px !important;
   top: 20px !important; // move the infowindow 15px down
   left: 0 !important;
   border-radius: 2px 2px 0 0;
   height: 30px;
}

#map_canvas { border-bottom: none; margin-bottom:  } 
 
.opt { position: relative; margin-top: 30px; }
.opt header { margin-bottom: 15px; }
.opt h3 { float: left; width: 100%; font-size: 1.8rem; font-weight: 400; color: #333; letter-spacing: 0.05rem; }
.opt .disclaimer { float: left; width: 100%; font-size: 1.6rem; font-weight: 300; color: #333; letter-spacing: 0.05rem; margin-top: 10px; }


.opt label { float: left; width: 100%; border-bottom: 1px solid #ddd; height: 100%; background: none; }
.opt label:last-child { border-bottom: none; }
.opt label span { float: left; font-size: 1.5rem; padding: 18px 10px; font-weight: 300; color: #333; text-align: left; text-transform: capitalize; letter-spacing: 0.05rem; width: 100%; }
.opt label span i { color: #888888; padding-right: 10px; float: left; width: 30px; text-align: center;}

.opt label input { display: none; }
.opt label.hovered span { cursor: pointer; background: #f6f6f6; }
.opt label.hovered span i { color: #ffc600; }
.opt label input[type=checkbox]:checked + span { background: #f6f6f6; }
.opt label input[type=checkbox]:checked + span i { color: #ffc600; }

@media (max-width: 980px) {

.opt label span { font-size: 1.2rem; }
 
}

@media (max-width: 800px) {

.opt { height: auto; }
.opt header { margin-bottom: 25px; }
.opt label {float: left;width: 50%; border-right: 1px solid #ddd;}
.opt label span { font-size: 1.4rem; } 
.opt label:nth-child(odd) { border-right: none; }
.opt label:last-child { border-bottom: none; border-right: 1px solid #ddd; }

}

@media (max-width: 480px) { 
.opt label span { font-size: 1.2rem; } 
#map_canvas { height: 300px; }
}

@media (max-width: 400px) {  
.opt label {float: left;width: 100%; border-right: none;}
.opt label:last-child { border-right: none; }
}