.side{
    position:fixed;
    top: 0;
    left: 0;
    z-index: 98;
    background: #333;
    height: 100%;
}
.side ul{
    margin: 2.8125rem 0 0 0;
    padding: 0;
    width: 100%;
    list-style: none;
}
.side ul li{
    padding: 0;
    margin: 0;
}
.side ul li a{
    display:inline-block;
    width: 100%;
    line-height: 2rem;
    font-weight: normal;
    color: #FFFFFF;
}
.side ul li a span{
    padding-left: 0.25rem;
}
.side ul li a:hover{
    background: #111111;
    color: #008CBA;
}
.side ul li.active a{
    background: #008CBA;
    color: #FFFFFF;
    font-weight: normal;
}

@media only screen {
    .side{
        width: 2.5rem;
        max-width: 2.5rem;
    }
    .side ul li a{        
        padding: 0;
        text-align:center;
    }
    .main, .footer{
        left: 2.5rem;
        width: -moz-calc(100% - 2.5rem);
        width: -webkit-calc(100% - 2.5rem);
        width: calc(100% - 2.5rem);
    }
}

@media only screen and (min-width: 40.063em) {
    .side{
        width: 10rem;
        max-width: 10rem;
    }
    .side ul li a{        
        padding: 0 0.9375rem;
        text-align: left;
    }
    .main, .footer{
        left: 10rem;
        width: -moz-calc(100% - 10rem);
        width: -webkit-calc(100% - 10rem);
        width: calc(100% - 10rem);
    }
}

.top-bar{
    position: fixed !important;
    width: 100%;
    z-index: 99;
}

.main{
    z-index: 98;
    height: 100%;
    padding: 0.9375rem;
    padding-top: 3.5rem !important;
    -webkit-box-shadow: inset 0px 5px 10px -5px rgba(0,0,0,0.75);
    -moz-box-shadow: inset 0px 5px 10px -5px rgba(0,0,0,0.75);
    box-shadow: inset 0px 5px 10px -5px rgba(0,0,0,0.75);
}

.main:not(.login){
    margin-left: 10rem;
}

.footer-enabled .main{
    height: -moz-calc(100% - 5.625rem);
    height: -webkit-calc(100% - 5.625rem);
    height: calc(100% - 5.625rem);
}

.main h1, .reveal-modal h1{
    display: inline-block;
    font-size: 2.25rem;
    line-height: 2.8125rem;
    width: auto;
    font-weight: 700;
    margin: 0 0 0.5rem 0;
}
.main h2, .reveal-modal h2{
    font-size: 1.75rem;
    line-height: 1.75rem;
    font-weight: 500;
    margin: 0 0 0.5rem 0;
}
.main h3, .reveal-modal h3{
    font-size: 1.25rem;
    line-height: 1.25rem;
    font-weight: 400;
    margin: 0 0 0.5rem 0;
}

.main .additional, .reveal-modal .additional{
    display:inline-block;
    vertical-align: top;
    padding-left: 1rem;
    letter-spacing: 0;
}

.footer{
    position: fixed;
    bottom: 0;
    z-index: 98;
    background: #333;
}
.row .row.collapse:before, .row .row.collapse:after{
    display: none;
}