/* Released: 1st April 2014 - Beverley Hooton @ Focus on Function Web Design */
/* Updated: 15th July 2014 - css to correct 'position:fixed' bug in Safari */
/* Updated: 21st August 2014 - css tap-activated sub-menu improvement for touchscreen */
/* Updated: 19th March 2015 - css sub-menu activation simplified [id$="-sub"] - thanks SeanW */
/* Updated: 26th June 2015 - &#9668; arrows changed to &#9658; and rotated, for Android */
/* Updated: 17th August 2015 - background added to '#expmobmenu li a' to fix intermittent text overlap */
/* Updated: 15th September 2015 - 'go-up' option added for sub-menus on desktop */


body {
    overflow-x: hidden;
    -webkit-animation: androidbugfix infinite 1s;
}

@-webkit-keyframes androidbugfix {
    from {
        padding: 0;
    }
    to {
        padding: 0;
    }
}
.expmenupull-right {
    float: right !important;
    margin: 10px 0 0 5px;
}
.expmenupull-left {
    float: right !important;
    margin: 10px 5px 0 0;
}

.expmenutop{
    margin: 0;
    padding: 0;
}

#expmobmenu{
    /*font-size: 16px;*/
}
#expmobmenu label {
    padding: 0 0.25em;
    font: 2em/2em Arial;
}
#expmobmenu label:hover {
    
}

label.navbar-toggle{
    cursor: pointer;
}
#expmobmenu .sub-nav .menutoggle {
    padding: 0 0.3125em;
    font: 2em/2em Arial;
    top: 0;
}
#main-nav-check,
#expmobmenu .sub-nav-check {
    position: absolute;
    top: -9999px;
    left: -9999px;
}
#expmobmenu .menutoggle {
    position: absolute;
    right: 0.15em;
    cursor: pointer;
    /*color: #fff;*/
}
#expmobmenu,
#expmobmenu .sub-nav {
    position: fixed;
    top: 0;
    bottom: 0;
    width: 22.75em;
    /*background: #222;*/
    z-index: 9999;
    left: -22.75em;
    overflow: hidden;
}
.menucontainer,
#expmobmenu,
#expmobmenu .sub-nav {
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    -webkit-transition: -webkit-transform .25s ease;
    transition: transform .25s ease;
}
#expmobmenu ul {
    /*background: #222;*/
    line-height: 2.75em;
    text-decoration: none;
    padding: 0;
    list-style: none;
    margin-top: 4.0625em;
    /*min-height: 900px;*/
    /*border-top: 1px solid #444;*/
}
#expmobmenu li.jammenu-phone ul {
    background: transparent;
    line-height: 0;
    text-decoration: none;
    padding: 0;
    list-style: none;
    margin-top: 0;
    min-height: 0;
}

#expmobmenu li.jammenu-phone div.mod-languages ul.lang-inline li {
    display: inline-block;
    margin: 10px 0;
    border: 0 none;
}
#expmobmenu li.jammenu-phone div.mod-languages ul.lang-inline li a{
    padding: 5px 8px;
    margin: 0 10px;
}

#expmobmenu li.jam_mobilesearch{
    padding: 5px 3px;
}
#expmobmenu li.jam_mobilesearch .input-group-btn .btn-default {
    background-color: rgba(52, 63, 71, 1);
    border-color: rgba(41, 47, 56, 0.7);
    color: #fff;
}

#expmobmenu li.jam_mobilesearch .form-control {
    background-color: rgba(52, 63, 71, 0.7);
    border: 1px solid rgba(41, 47, 56, 0.7);
    color: #fff;
}


.menugeneral{
}
#expmobmenu ul li {
    /*border-top: 1px solid #444;
    border-bottom: 1px solid #444;*/
}
#expmobmenu ul li:last-child { 
    /*border-bottom: 1px solid #444;*/
}
#expmobmenu ul li a {
    /*background: #222;*/
    display: block;
    font-size: 1em;
    padding-left: 1.5em;
    /*color: #fff;*/
    text-decoration: none;
    font-weight: normal;
}
#expmobmenu ul li a:hover,
#expmobmenu .toggle-sub:hover,
#expmobmenu ul li.active > a{
    /*background: #000;*/
}
#expmobmenu .sub-nav {
    margin-top: -1px;
    padding-right: 18px;

}
#expmobmenu .sub-heading {
    margin-top: 4.0625em;
    /*padding-left: 1.3125em;*/
    /*color: #999;*/
    font-weight: bold;
    text-align: center;
    /*border-bottom: 1px solid #444;*/
}
#expmobmenu .sub-heading:before {
    content: "";
    display: block;
    height: 1px;
    width: 22.75em;
    margin-left: -1.3125em;
    /*background: #444;*/
}
#expmobmenu .toggle-sub {
    font: bold 1em/2.75em Arial;
    /*color: #fff;*/
    /*background: #222;*/
    float: right;
    margin-top: -2.75em;
    width: 2.25em;
    /*border-left: 1px solid #444;*/
    cursor: pointer;
    text-align: center;
    /*
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
    */
}


ul.menugeneral > li > .toggle-sub span {
    -webkit-transform: rotate(-90deg);
    -ms-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

.menucontainer,
#expmobmenu,
#expmobmenu .sub-nav,
.close-all {
    -webkit-transform: translate3d(0, 0, 0);
}
/* http://davidwalsh.name/translate3d */
/* #### - corrects 'unfixing' bug in Safari - uncomment if you have position:fixed elements inside .menucontainer - #### */
/* @media screen and (-webkit-min-device-pixel-ratio:0;) { .menucontainer { -webkit-transform:none !important; } } */
/* #### - extra css for js enhancement - #### */

#expmobmenu .close-all {
    display: none;
}
.js #expmobmenu .close-all {
    display: inline;
}
.js #expmobmenu .menutoggle {
    top: 0;
    z-index: 9999;
}
.js #expmobmenu .sub-nav .menutoggle {
    left: 0.15em;
    width: 1em;
}
/* #### - define ids of animated menucontainer, menu and sub-menus here - #### */

#main-nav-check:checked ~ .menucontainer,
#main-nav-check:checked ~ #expmobmenu,
#expmobmenu .sub-nav-check:checked ~ [id$="-sub"]
/* matches all elements with id ending "-sub" */
{
    /*min-height: 1000px;*/
    overflow-y: auto;
    -webkit-transform: translate(22.75em, 0);
    -ms-transform: translate(22.75em, 0);
    transform: translate(22.75em, 0);
}



/*
#expmobmenu ul li.active > a{
    color:#49afcd;
}
*/

.expmenu-line{
    display: none;
}

.jammenu-phone{
    display: block;
    line-height: 0;
}


@media ( min-width: 60em) {
    /* #### - switch to desktop menu at 960px (960/16=60 - 16px being default browser font-size) - #### */
    /* #### - extra css for js enhancement - #### */


    .jammenu-phone{
        display: none;
    }

    #expmobmenu ul li {
        /*border-top: none;
        border-bottom: 1px solid #444;*/
    }
    #expmobmenu ul li:last-child { 
        /*border-bottom: none;*/
    }

    .js #expmobmenu .close-all {
        display: none;
    }
    #main-nav-check:checked ~ .menucontainer, 
    #main-nav-check:checked ~ #expmobmenu, 
    #expmobmenu .sub-nav-check:checked ~ [id$="-sub"] {
        overflow-y: visible;
    }

    .expmenu-line{
        display: block;
    }
    #expmobmenu li a {
        /*font-weight: bold;*/
    }
    #expmobmenu ul li a:hover,
    #expmobmenu ul li.active > a{
        /*background: transparent;*/
    }

    ul.menugeneral > li > .toggle-sub span {
        font-size: 12px;
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    #expmobmenu ul {
        background: none;
        min-height: 0;
    }
    #expmobmenu,
    #expmobmenu .sub-nav {
        overflow: visible;
        position: absolute;
        padding-right: 0;
    }

    #expmobmenu .sub-nav {
        /*
        border-left: 1px solid rgba(41, 47, 56, 0.3);
        border-right: 1px solid rgba(41, 47, 56, 0.3);
        border-bottom: 1px solid rgba(41, 47, 56, 0.3);
        background: rgba(41, 47, 56, 0.7);
        */
    }

    .menucontainer,
    #expmobmenu,
    #expmobmenu .sub-nav {
        -webkit-transform: translate(0, 0) !important;
        -ms-transform: translate(0, 0) !important;
        transform: translate(0, 0) !important;
    }
    #expmobmenu label,
    #expmobmenu .sub-nav,
    #expmobmenu .sub-heading,
    #header label {
        display: none;
    }
    #expmobmenu {
        left: auto;
        bottom: auto;
        height: 0;
        width: 100%;
        position: relative;
    }
    #expmobmenu .toggle-sub {
        display: inline-block;
        margin-top: -3.2em;
        margin-right: 0.25em;
        border-left: 0;
        border-top: 0;
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
        /*
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        */
    }
    #expmobmenu .toggle-sub,
    #expmobmenu .toggle-sub:hover {
        /*background: transparent;*/
    }
    #expmobmenu ul ul .toggle-sub {
        margin-top: -2.75em;
        margin-right: 0;
        border-left: 0;
        -webkit-transform: rotate(0deg);
        -ms-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    #expmobmenu ul li:hover > label {
        /*color: #ccc;*/
    }
    #expmobmenu > ul {
        float: right;
        position: relative;
        z-index: 1;
        top: 0.4285em;
        right: 0;
        margin-top: 0;
        margin-bottom: 6px;
        display: inline-table;
        /*border-left: 1px solid #444;*/
        border-right: 0;
        font-size: 14px;
    }
    #expmobmenu ul:after {
        content: "";
        clear: both;
        display: block;
    }
    #expmobmenu ul li {
        float: left;
        position: relative;
        text-align: left;
        /*border-right: 1px solid #444;*/
    }
    #expmobmenu ul li a {
        padding: 0.3em 2.4em 0.3em 10px;
        /*color:#fff;*/
    }
    #expmobmenu ul li a:only-child {
        padding-right: 10px;
    }
    #expmobmenu ul li:last-child a:only-child{ 
        padding-right: 0;
    }
    #expmobmenu ul.sub-nav li:hover > a {
        /*background: #333;*/
        -webkit-transition: background-color .25s ease;
        transition: background-color .25s ease;
    }
    #expmobmenu ul li:hover > a{
        /*color:#49afcd;*/
    }
    #expmobmenu ul.sub-nav li.active > a{
        /*color:#49afcd;
        background: #333;*/
        -webkit-transition: background-color .25s ease;
        transition: background-color .25s ease;
    }
    #expmobmenu ul li:hover > ul {
        display: block;
    }
    #expmobmenu ul ul {
        position: absolute;
        left: 0;
        margin-left: -1px;
    }
    #expmobmenu ul ul li {
        min-width: 14.75em;
        white-space: nowrap; /* Chrome */
        word-wrap: break-word; /* IE */
        /*padding: 2px 0;*/
        /*border-left: 1px solid #444;*/
    }
    #expmobmenu ul ul li a {
        padding: 0 1.5em;
    }
    #expmobmenu ul ul li a:after {
        right: 0.375em;
        margin-top: -1.6875em;
        -webkit-transform: none;
        -ms-transform: none;
        transform: none;
    }
    #expmobmenu ul .sub-nav {
        top: auto;
        bottom: auto;
        left: auto;
        width: auto;
        margin-top: 0;
        -webkit-transform: none !important;
        -ms-transform: none !important;
        transform: none !important;
    }
    #expmobmenu ul ul .sub-nav {
        float: left;
        top: 0;
        left: 14.75em;
        margin-left: 0;
        margin-top: -1px;
    }
    #expmobmenu ul .fly-left ul {
        left: -14.75em;
        margin-left: -2px;
    }
    #expmobmenu ul .fly-left ul li {
        float: none;
    }
    #expmobmenu ul .fly-left .toggle-sub {
        right: auto;
        left: 0.5em;
        left: 0.375em;
        padding-bottom: 1px;
        border-right: 1px solid #444;
        -webkit-transform: rotate(-180deg);
        -ms-transform: rotate(-180deg);
        transform: rotate(-180deg);
    }
    #expmobmenu ul .go-up > ul {
        top: auto;
        bottom: 0;
        margin-bottom: -1px;
    }
}