#main-content > div > div > div > div:first-child {
    max-width: 100%;
    flex-basis: 100%;
}


div.bannercontrols section#all button {
    font-size: 1.75rem;
    width: 25%;
    text-align: center;
    padding: 10px;
}

div.bannercontrols section#all button:first-child {
    margin-left: 25%;
}

div.bannercontrols button {
    background: none;
    color: rgba(66,139,202,.9);
    border: none;
}

div#map {
    width: 70%;
    float: left;
    height: 75vh;
    margin-bottom: 1rem;
}

div.controls {
    float: left;
    width: 30%;
    display: flex;
    flex-direction: column;
    height: 75vh;
    overflow: hidden;
    margin-bottom: 1rem;
}

div.controls nav ul {
    display: flex;
    flex-wrap: wrap;        
    padding: 0;
}

div.controls nav ul li {
    list-style-image: none;
    list-style-type: none;
    margin: 0 2px 2px 2px;
    flex-grow: 1;
    display: block;
    padding: 0;
    background: none;
    font-size: 1.3rem;
}

div.controls nav ul li button {
    border: #428bca solid 2px;
    color: #515151;
    font-weight: bold;
    font-size: 1.1rem;
    cursor: pointer;
    padding: 10px;
    display: block;
    background: #fff;
    width: 100%;
    margin: 0;
}

div.controls nav ul li button.on {
    background: #428bca;
    color: #fff;
}

div.controls nav ul li button:hover,
div.controls nav ul li button:focus {
    border-width: 4px;
    padding: 8px;
}

div.controls section {
    display: none;
    padding: 0;
    flex: 1;
    overflow-y: auto;
    flex-direction: column;
}

div.controls section ul {
    overflow-y: auto;
    padding: 0;    
}

div.controls section ul li {
    list-style: none;
    margin: 0;
    background: none;
    padding: 0;
}

div.controls section h2 {
    margin: 0 0 8px 0;
    text-align: center;
    font-size: 1.3rem;
}

div.controls section ul li button {
    width: calc(100% - 10px);
    padding: 5px 2px 2px 5px;
    border: none;
    border-bottom: #428bca solid 2px;
    color: #515151;
    font-weight: bold;
    font-size: 1.1rem;
    cursor: pointer;
    padding: 10px;
    display: block;
    background: #fff;
    margin: 0 auto 0 auto;
    text-decoration: underline;
    min-height: 0;
    font-size: 1rem;
}

div.controls section ul li button:hover,
div.controls section ul li button:focus {
    background: #cde0ff;
    background-clip: border-box;
}

div.controls section:first-of-type {
    display: flex;
}

div.controls + p {
    clear: both
}

main > div {
    flex: 1 0 80%;
    max-width: 1200px;
}


@media(max-width: 1000px) {
    div .controls {
        clear: both;
        margin: 5px auto 0 auto;
        float: none;
        width: 95%;
    }

    div#map {
        width: 95%;
        float: none;
        margin: auto;
    }
}
