/* General styles for all menus */
.cbp-spmenu {
    background: #167297;
    position: fixed;
}

    .cbp-spmenu h3 {
        color: white;
        font-size: 1.5em;
        padding: 20px;
        margin: 0;
        font-weight: 300;
        background: #17485b;
    }

    .cbp-spmenu a {
        display: block;
        color: #fff;
        font-size: 1.1em;
        font-weight: 300;
    }

        .cbp-spmenu a:hover {
            background: #258ecd;
            text-decoration: none;
        }

        .cbp-spmenu a:active {
            background: #afdefa;
            color: #47a3da;
            text-decoration: none;
        }

        .cbp-spmenu a:visited {
            text-decoration: none;
        }
/* Orientation-dependent styles for the content of the menu */

.cbp-spmenu-vertical {
    overflow-y: scroll; /* To make it so you can vertically scroll when menu goes off screeen JH 02092016 */
    /*width: 240px;*/
    width: 100%;
    height: 100%;
    top: 0;
    z-index: 1000;
}

    /*.cbp-spmenu-vertical a {
        border-bottom: 1px solid #258ecd;
        padding: 1em;
    }*/

.cbp-spmenu-horizontal {
    width: 100%;
    height: 150px;
    left: 0;
    z-index: 1000;
    overflow: hidden;
}

    .cbp-spmenu-horizontal h3 {
        height: 100%;
        width: 20%;
        float: left;
    }

    .cbp-spmenu-horizontal a {
        float: left;
        width: 20%;
        padding: 0.8em;
        border-left: 1px solid #258ecd;
    }

/* Vertical menu that slides from the left or right */

.cbp-spmenu-left {
    left: -100%;
}

.cbp-spmenu-right {
    right: -100%;
}

.cbp-spmenu-left.cbp-spmenu-open {
    left: 0px;
}

.cbp-spmenu-right.cbp-spmenu-open {
    right: 0px;
}

/* Horizontal menu that slides from the top or bottom */

.cbp-spmenu-top {
    top: -150px;
}

.cbp-spmenu-bottom {
    bottom: -150px;
}

.cbp-spmenu-top.cbp-spmenu-open {
    top: 0px;
}

.cbp-spmenu-bottom.cbp-spmenu-open {
    bottom: 0px;
}

/* Push classes applied to the body */

.cbp-spmenu-push {
    overflow-x: hidden;
    position: relative;
    left: 0;
}

.cbp-spmenu-push-toright {
    left: 100%;
}

.cbp-spmenu-push-toleft {
    left: -100%;
}

/* Transitions */

.cbp-spmenu,
.cbp-spmenu-push {
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
}


.cbp-spmenu-vertical .sub-accord-item{
    border-bottom: 1px solid #CCC !important;
}

/* Example media queries */

@media screen and (max-width: 55.1875em) {

    .cbp-spmenu-horizontal {
        font-size: 75%;
        height: 110px;
    }

    .cbp-spmenu-top {
        top: -110px;
    }

    .cbp-spmenu-bottom {
        bottom: -110px;
    }
}

@media screen and (max-height: 26.375em) {

    .cbp-spmenu-vertical {
        font-size: 90%;
        width: 100%;
    }

    .cbp-spmenu-left,
    .cbp-spmenu-push-toleft {
        left: -100%;
    }

    .cbp-spmenu-right {
        right: -100%;
    }

    .cbp-spmenu-push-toright {
        left: 100%;
    }
}

/* CUSTOM */
.cbp-spmenu .panel {
    border-radius: 0;
    border: 0;
}

.cbp-spmenu .accord {
    background: #167297;
    border-bottom: #258ecd;
}

.cbp-spmenu .sub-accord {
    background: #17485b;
}

    .cbp-spmenu .sub-accord:hover {
        background: #17485b;
        cursor: default;
    }

    .cbp-spmenu .sub-accord-item {background: #F5F5F5 none repeat scroll 0% 0%; color: #17485b; font-weight: 400}
    .cbp-spmenu .sub-accord-item:hover { background: #17485B none repeat scroll 0% 0% !important;color: #ffffff;}
    .cbp-spmenu-vertical a {
        border-bottom: 1px solid #258ecd !important; 
        padding: 1em;
    }

    .cbp-spmenu .panel{
        margin-top: 0 !important;
    }

/*.cbp-spmenu .sub-accord-item {
    background: #258ecd;
}*/

    /*.cbp-spmenu .sub-accord-item:hover {
        background: #17485b !important;
    }*/

.cbp-spmenu .nav-cat {
    text-indent: 5px;
}

.cbp-spmenu .glyphicons:before {
    color: #17485b;
    font: 20px "Glyphicons Regular";
    top: -1px;
}

.accord-active {
    background: #167297 !important;
}

.accord-arrow-open .glyphicons {
    color: white !important;
    font: 20px "Glyphicons Regular";
    top: -1px;
}

    .accord-arrow-open .glyphicons:before {
        color: white !important;
        font: 20px "Glyphicons Regular";
        top: -1px;
    }
