body { margin:0; padding:0; }
body * {
  -webkit-touch-callout:none;
  -webkit-user-select:none;
   -khtml-user-select:none;
     -moz-user-select:none;
      -ms-user-select:none;
          user-select:none;
  }
#map { position:absolute; top:0; bottom:0; width:100%; }

.punt-clicks { pointer-events:none; }

.full-height-container { overflow:hidden; height:100%; }
.full-height-container .scroll { overflow:auto; height:100%; }

.loading:before { background-color:rgba(0,0,0,0.20); }

label.button {
  text-align:left;
  }
.listing-container button {
  background:transparent;
  border:none;
  cursor:pointer;
  text-align:left;
  margin:0;
  font-size:12px;
  line-height:20px;
  width:100%;
  padding:0;
  height:auto;
  }
  .listing-container button:hover {
    background-color:rgba(0,0,0,0.05);
    }
  .listing-container button.listing h4 {
    font-family:'Open Sans Bold', sans-serif;
    font-weight:normal;
    }

input[type='checkbox'] + label {
  color:#fff;
  height:50px;
  line-height:30px;
  }
  input[type='checkbox'] + label:before,
  input[type='checkbox'] + label:after {
    margin-top:5px;
    }
input[type='checkbox']:checked + label,
input[type='checkbox']:checked + label:hover { color:#fff; }
input[type='checkbox']:checked + label:hover:before { opacity:0.75; }

.checkbox-pill input[type='checkbox'] + label[for='art'],
.checkbox-pill input[type='checkbox']:checked + label[for='art'],
.fill-art     { background-color:#d93a92; }
.checkbox-pill input[type='checkbox'] + label[for='music'],
.checkbox-pill input[type='checkbox']:checked + label[for='music'],
.fill-music   { background-color:#5a4ba2; }
.checkbox-pill input[type='checkbox'] + label[for='theatre'],
.checkbox-pill input[type='checkbox']:checked + label[for='theatre'],
.fill-theatre { background-color:#ffaf01; }
.checkbox-pill input[type='checkbox'] + label[for='museum'],
.checkbox-pill input[type='checkbox']:checked + label[for='museum'],
.fill-museum  { background-color:#01b788; }
.legend { box-shadow:0 1px 2px rgba(0,0,0,0.10); }
.legend, .mapboxgl-ctrl-attrib { width:280px; }

/* Tablet */
@media only screen and (max-width:770px) {
  .listing-container { width:33.3333%; }
  .mb-watermark { margin-left:33.3333%; }
}

/* Mobile */
@media only screen and (max-width:640px) {
  .listing-container {
    padding:0;
    margin:0;
    border-radius:0;
    top:auto;
    height:40%;
    z-index:10;
    position:fixed;
    width:100%;
    }
  .mb-watermark {
    bottom:40%;
    left:10px;
    margin-left:0;
    }
  input[type='checkbox'] + label {
    width:25%;
    border:none;
    }
}

/*circle{
  fill: rgba(255, 0, 0, 0);
  stroke: rgba(255, 0, 0, 0);
}*/
body {
          color:#404040;
          font:400 15px/22px 'Source Sans Pro', 'Helvetica Neue', Sans-serif;
          margin:0;
          padding:0;
          -webkit-font-smoothing:antialiased;
        }
        
        * {
          -webkit-box-sizing:border-box;
          -moz-box-sizing:border-box;
          box-sizing:border-box;
        }

        .sidebar {
          position:absolute;
          width:20%;
          height:100%;
          top:0;left:0;
          overflow:hidden;
          border-right:1px solid rgba(0,0,0,0.25);
        }
        .pad2 {
          padding:20px;
        }

        .map {
          position:absolute;
          left:20%;
          width:80%;
          top:0;bottom:0;
        }

        h1 {
          font-size:22px;
          margin:0;
          font-weight:400;
          line-height: 20px;
          padding: 20px 2px;
        }
        
        a {
          color:#404040;
          text-decoration:none;
        }
        
        a:hover { 
          color:#101010; 
        }

        .heading {
          background:#fff;
          border-bottom:1px solid #eee;
          min-height:60px;
          line-height:60px;
          padding:0 10px;
        }

        .listings {
          height:100%;
          overflow:auto;
          padding-bottom:60px;
        }

        .listings .item {
          display:block;
          border-bottom:1px solid #eee;
          padding:10px;
          text-decoration:none;
        }

        .listings .item:last-child { border-bottom:none; }
        .listings .item .title {
          display:block;
          color:#051c63;
          font-weight:700;
        }

        .listings .item .title small { font-weight:400; }
        .listings .item.active .title,
        .listings .item .title:hover { color:#aab8e2; }
        .listings .item.active {
          background-color:#f8f8f8;
        }
        ::-webkit-scrollbar {
          width:3px;
          height:3px;
          border-left:0;
          background:rgba(0,0,0,0.1);
        }
        ::-webkit-scrollbar-track {
          background:none;
        }
        ::-webkit-scrollbar-thumb {
          background:#00853e;
          border-radius:0;
        }

        .marker {
          border: none;
          cursor: pointer;
          height: 19px;
          width: 17px;
          background-image: url(pozo.png);
          background-color: rgba(0, 0, 0, 0);
          transform: translate(28px, 56px, 0);
        }

        .clearfix { display:block; }
        .clearfix:after {
          content:'.';
          display:block;
          height:0;
          clear:both;
          visibility:hidden;
        }

        

        .mapboxgl-popup-close-button {
          /*display:none;*/
          color: white;
          font-size: 16px;
          background: gray;
        }
        .mapboxgl-popup-close-button:hover {
          color: black;
          font-size: 16px;
          background: white;
        }
        .mapboxgl-popup-content {
          font:400 13px/16px 'Source Sans Pro', 'Helvetica Neue', Sans-serif;
          width:361px;
        }
        .mapboxgl-popup-content-wrapper {
          padding:1%;
        }
        .mapboxgl-popup-content h3 {
          background:#051c63;
          color:#fff;
          margin:0;
          display:block;
          padding:10px;
          border-radius:3px 3px 0 0;
          font-weight:700;
          margin-top:-15px;
          top:  10%;
        }

        .mapboxgl-popup-content h4 {
          margin:0;
          display:block;
          padding: 10px 10px 10px 10px;
          font-weight:400;
          margin: 0;
        }

        .mapboxgl-popup-content div {
          padding:10px;
        }
        
        .mapboxgl-container .leaflet-marker-icon { 
          cursor:pointer; 
        }

        .mapboxgl-popup-anchor-top > .mapboxgl-popup-content {
          margin-top: 15px;

        }

        .mapboxgl-popup-anchor-top > .mapboxgl-popup-tip {
          border-bottom-color: #91c949;
        }

        .mapboxgl-popup {
        max-width: 400px;
        font: 12px/20px 'Helvetica Neue', Arial, Helvetica, sans-serif;
        top: -6%;
        left: -.5%;
    }

        #menu {
        position: absolute;
        background: #fff;
        padding: 10px;
        font-family: 'Open Sans', sans-serif;
    }