.button-close {
    padding: 30px;
}

.flexmenu:before,.flexmenu:after {
    display:table;
    content:" "
}

.flexmenu:after {
    clear:both
}

.flexmenu a {
    text-decoration:none
}

.flexmenu.fm-toggle.fm-sm {
    display:none
}

.fm-outer {
    position:relative;
    overflow:hidden;
    height:100%;
    width:100%
}

.fm-inner {
    position:relative;
    height:100%;
    width:100%;
    left:0
}

.fm-inner.open {
    left:240px;
}

.fm-inner.open .flexmenu.fm-sm {
    left:0
}

.flexmenu.fm-offcanvas.fm-sm {
    z-index:30000;
    overflow-y:auto;
    overflow-x:hidden;
    position:fixed;
    top:0;
    left:-240px;
    width:240px;
    height:100%;
    -webkit-box-shadow:inset -10px 0 10px -10px rgba(0,0,0,0.3);
    -moz-box-shadow:inset -10px 0 10px -10px rgba(0,0,0,0.3);
    box-shadow:inset -10px 0 10px -10px rgba(0,0,0,0.3);
    background:#181818
}

.flexmenu.fm-lg {
    max-width:1170px;
    margin:auto
}

.flexmenu.fm-lg .navicon:after {
    border:4px solid transparent;
    border-top-color:#333;
    content:"";
    position:absolute;
    right:3px;
    top:22px
}

.flexmenu.fm-lg>ul>li {
    float:left
}

.flexmenu.fm-lg ul {
    margin:0;
    padding:0;
    list-style:none
}

.flexmenu.fm-lg li {
    position:relative;
    white-space:nowrap
}

.flexmenu.fm-lg li ul {
    position:absolute;
    left:0;
    top:100%;
    z-index:99
}

.flexmenu.fm-lg li ul .navicon:after {
    border:4px solid transparent;
    border-left-color:#666;
    right:10px;
    top:14px
}

.flexmenu.fm-lg li ul ul {
    top:0;
    left:100%
}

.flexmenu.fm-lg>ul>li {
    padding:7px 0
}

.flexmenu.fm-lg a {
    display:block;
    padding:7px 25px;
    color:#999
}

.flexmenu.fm-lg a:hover {
    color:#eae6df;
    text-decoration:none
}

.flexmenu.fm-lg li ul {
    border:1px solid #111;
    border-top:3px solid #820068;
    border-radius:5px;
    background-color:#121212;
    background-color:rgba(0,0,0,0.8)
}

.flexmenu.fm-lg li ul li {
    padding:0 10px;
    min-width:145px
}

.flexmenu.fm-lg li ul a {
    border-top:1px solid #000
}

.flexmenu.fm-sm ul {
    margin:0;
    padding:0;
    list-style:none
}

.flexmenu.fm-sm ul li {
    position:relative
}

.flexmenu.fm-sm ul li a {
    color:#fff;
    display:block;
    font-family: "Montserrat", Arial;
    font-weight: bold;
    padding:10px 30px;
    text-transform: uppercase;
}

.flexmenu.fm-sm ul li ul li a {
    color: #888;
    font-size: 80%;
    padding:10px 30px 10px 45px;
}

.flexmenu.fm-sm ul li a:hover {
    color:#fff;
    text-decoration:none
}

.flexmenu.fm-sm ul li.active a,
.flexmenu.fm-sm ul li a:focus {
    border: 0;
    color: #14b1bb;
}

.flexmenu.fm-sm ul li a i {
    margin-right: 15px;
}

.flexmenu.fm-sm ul li a:hover,.flexmenu.fm-sm ul li a.active {
    background-color:#2a2a2a
}

.flexmenu.fm-sm ul ul li a {
    background-color:#2a2a2a;
}

.flexmenu.fm-sm ul ul li a:hover,.flexmenu.fm-sm ul ul li a.active {
    background-color:#333
}

.flexmenu.fm-sm ul ul li ul li {
    border-top:1px solid #333;
    border-bottom:1px solid #222
}

.flexmenu.fm-sm ul ul li ul li a {
    background-color:#777
}

.flexmenu.fm-sm ul ul li ul li a:hover,.flexmenu.fm-sm ul ul li ul li a.active {
    background-color:#6a6a6a
}

.flexmenu.fm-sm .navicon {
    position:absolute;
    top:0;
    right:0;
    height:100%;
    width:50px;
}

.flexmenu.fm-sm .navicon:hover {
    cursor:pointer
}

.flexmenu.fm-sm .navicon:after {
    border:5px solid transparent;
    border-top-color:#14b1bb;
    content:"";
    position:absolute;
    right:20px;
    top:21px
}