.menu-collapser {
    position: relative;
    width: 100%;
    height: 48px;
    padding: 0 8px;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box
}
.collapse-button {
    position: absolute;
    right: 0;
    top: 47%;
    width: 45px;
    padding: 6px 10px;
    cursor: pointer;
    font-size: 1.6em;
    text-align: center;
    transform: translate(0px, -50%);
    box-sizing: border-box;
    line-height: 1em;
    border-radius: 6px;

    transform: translate(0, -50%);
    -o-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    -moz-transform: translate(0, -50%);
    -webkit-transform: translate(0, -50%);

    -webkit-transition: all 200ms ease;
    -moz-transition: all 200ms ease;
    -ms-transition: all 200ms ease;
    -o-transition: all 200ms ease;
    transition: all 200ms ease;

    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box
}
.collapse-button:hover, .collapse-button:focus {
    background-image: none;
    background-color: #040404;
    color: #FFF;
}
.collapse-button:before {
    font-family: 'FontAwesome';
    content: '\f0c9';    
}
.collapse-button .icon-bar {
    display: none;
}
.whimsy-nav {
    list-style-type: none;
    margin: 0;
    padding: 0;
    width: 100%;
}
.whimsy-nav li {
    position: relative;
    text-align: center;
    display: inline-block;
}
.whimsy-nav > li { margin-right: -5px; }
.whimsy-nav > li:first-child { border-left: 0 }
.whimsy-nav > li:last-child { margin-right: 0 }
.whimsy-nav li a {
    display: block;
    padding: 10px 26px 10px 10px;
    transition: background-color 0.5s ease-out;
    -o-transition: background-color 0.5s ease-out;
    -moz-transition: background-color 0.5s ease-out;
    -webkit-transition: background-color 0.5s ease-out;
}
.whimsy-nav li a:hover {
    text-decoration: none;
}
.whimsy-nav li .sub-collapser {
    position: absolute;
    right: 0;
    top: 0;
    width: 20px;
    height: 100%;
    text-align: center;
    z-index: 999;
    cursor: pointer;
}
.whimsy-nav li .sub-collapser :hover, .whimsy-nav li .sub-collapser :focus { color:rgba(0,0,0,0.6); }
.whimsy-nav li .sub-collapser:before {
    font-family: 'FontAwesome';
    content: '\f107';
    display: block;
    height: 100%;
    vertical-align: middle;
    padding-top: 45%;
}
.whimsy-nav li .sub-collapser > i {
    display: none;
}
.whimsy-nav li ul {
    margin: 0;
    list-style-type: none;
}
.whimsy-nav li ul li  { width: 100%; }
.whimsy-nav li > ul {
    display: none;
    position: absolute;
    left: 0;
    z-index: 1100;
    width: 100%;
    min-width: 170px;
    text-align: left;
    -webkit-box-shadow: 0px 3px 3px 0px rgba(16, 21, 22, 0.15);
    box-shadow: 0px 3px 3px 0px rgba(16, 21, 22, 0.15);
}
.whimsy-nav li > ul > li ul {
    display: none;
    position: absolute;
    left: 100%;
    top: 0;
    z-index: 1100;
    width: 100%;
    text-align: left;
}
.whimsy-nav.collapsed li {
    display: block;
    width: 100%;

    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box
}
.whimsy-nav.collapsed li a {
    display: block;
    text-align: left;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box
}
.whimsy-nav.collapsed li .sub-collapser {
    height: 40px;
}
.whimsy-nav.collapsed li > ul {
    display: none;
    position: static;
}
.whimsy-nav li .sub-collapser .expanded:before {
    font-family: 'FontAwesome';
    content: '\f106';
}