body { overflow-x: hidden; }

nav {
    float: left;
    z-index: 9999;
}

/* LEVELS */
nav a {
    color: #305869;
    font-size: 14px;
    text-decoration: none;
}

.active > a {
    font-weight: bold;
    text-decoration:underline;
}

/* FIRST LEVEL */
nav > ul > li {
    float: left;
    position: relative;
    height: 90px;
    padding: 20px 10px;
    padding-top: 44px;
    z-index: 100;
}

    nav > ul > li > a {
        text-transform: unset;
    }

    /* SECOND LEVEL */
    nav > ul > li > ul {
        position: absolute;
        left: 0;
        top: 100%;
        /*height: 230px;
        height: 270px;*/
        /*padding: 0 1000em;
        padding-top: 20px;
        margin: 0 -1000em;*/
        z-index: 101;
        visibility: hidden;
        opacity: 0;
        background-color: #305869;
        /*border-bottom: 10px solid #233841;*/
        list-style: none;
        transition: all 0.2s;
    }

        nav > ul > li > ul a {
            color: #fff;
			text-align: left;
        }
		
		nav > ul > li > ul > li a {
            display: block;
            padding: 20px 16px;
        }

    nav > ul > li:hover > ul {
        visibility: visible;
        opacity: 0.95;
        
    }

    nav > ul > li > ul > li {
        width: 250px;
        /*padding: 20px 10px;*/
        color: #fff;
        list-style: none;
        list-style-type: none;
        list-style-position: inside;
        border: 1px dotted #305869;
        border-bottom-style: dotted;
    }

    nav > ul > li:hover > a {
        color: #305869;
    }

    nav > ul > li > ul > li:hover > a {
        color: #fff;
        background-color: #233841;
    }

@media only screen and (min-width: 1025px) {
    .collapse {
        display: block;
    }
}

@media only screen and (max-width: 1024px) {
    nav {
        float: none;
    }

    nav > ul > li {
        padding: 20px 25px;
        width: 100%;
        height: initial;
        /*background-color: #37424b;*/
        border-bottom: 1px solid #305869;
        background-color: #f5f5f5!important;
    }

        nav > ul > li > a {
            display: block;
            color: #305869;
        }

        nav > ul > li > ul {
            position: static;
            width: 100%;
            height: initial;
            margin: 0;
            padding: 0;
            margin-top: 20px;
            visibility: visible;
            border-bottom: none;
            opacity: 1;
            background-color: #f5f5f5!important;
        }

            nav > ul > li > ul > li {
                width: 100%;
                border: none;
            }

            nav > ul > li > ul > li a {
                color: #305869;
            }

            nav > ul > li > ul > li a:hover {
                background-color: transparent;
                color: #111;
            }
}
