/* MOBILE */
.nav-collapse,
.nav-collapse * {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.nav-collapse {
    background: #f6f8f8;
}

.nav-collapse,
.nav-collapse ul {
  list-style: none;
  width: 100%;
  float: left;
}

.nav-collapse ul {
    margin: 0;
    padding: 0;
    width: 100%;
    display: block;
    list-style: none;
}

.nav-collapse li {
    float: left;
    width: 100%;
    display: block;
    border-bottom: 1px solid #fff;
    margin-bottom: 0;
}

.nav-collapse li a {
    font-size: 1.4rem;
    text-transform: uppercase;
    color: #7f8c8d;
    padding: 25px 20px;
    display: block;
}

.js .nav-collapse {
    max-height: 0;
    position: absolute;
    display: block;
    overflow: hidden;
    zoom: 1;
}

.nav-collapse.opened {
    max-height: 9999px;
}

.nav-toggle {
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.nav-toggle {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    width: 55px;
    height: 55px;
    margin-top: 10px;
    float: right;
    text-indent: -9999px;
    overflow: hidden;
    background: #fff url(../img/hamburger.png) top 15px right 15px no-repeat;
    -webkit-transition: -webkit-transform 250ms ease-out 0s;
    -moz-transition: -moz-transform 250ms ease-out 0s;
    -o-transition: -o-transform 250ms ease-out 0s;
    transition: transform 250ms ease-out 0s;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -ms-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
}

.nav-collapse.opened + .nav-toggle {
    background-position: 15px -20px;
    -webkit-transition: -webkit-transform 250ms ease-out 0s;
    -moz-transition: -moz-transform 250ms ease-out 0s;
    -o-transition: -o-transform 250ms ease-out 0s;
    transition: transform 250ms ease-out 0s;
    -webkit-transform: rotate(-180deg);
    -moz-transform: rotate(-180deg);
    -ms-transform: rotate(-180deg);
    -o-transform: rotate(-180deg);
    transform: rotate(-180deg);
}

/* submenu */
.nav-collapse ul ul.sub-menu {
    position: relative;
    display: none;
} 

.nav-collapse li.tap ul.sub-menu {
    display: block;
}

.nav-collapse li.tap ul.sub-menu li {
    padding-left: 20px;
}

.nav-collapse li.tap ul.sub-menu li:first-child {
    border-top: 1px solid #fff;
} 

.nav-collapse li.tap ul.sub-menu li:last-child {
    border-bottom: 0;
}

/* DESKTOP */
@media screen and (min-width: 769px) {
    .js .nav-collapse {
        position: relative;
        overflow: inherit;
    }
    .js .nav-collapse.closed {
        max-height: none;
    }
    .nav-toggle {
        display: none;
    }

    .nav-collapse {
        width: auto;
        height: 110px;
        float: right;
        background: #fff;
    }
    
    .nav-collapse > ul {
        line-height: 110px;
        margin-bottom: 0;
    }
    
    .nav-collapse ul li {
        display: inline;
        margin-right: 25px;
        width: auto;
        border: 0;
        list-style: none;
    }
    
    .nav-collapse ul > li {
        position: relative;
    }
    
    /* Sub menu */
    .nav-collapse ul ul.sub-menu {
        display: none; 
        width: 160px;
        left: 50%;
        position: absolute;   
        top: 90%;
        margin-left: -80px;
        background-color: #444; 
        text-align: center;
        padding: 15px 0;
        border-radius: 4px;
        -webkit-border-radius: 4px;
        -moz-border-radius: 4px;
        z-index: 999;
    }
    
    .nav-collapse ul ul.sub-menu:before {
        content:'';
        position: absolute;
        top: -15px;
        left: 50%;
        margin-left: -15px;
        width: 0px;
        height: 0px;
        border-style: solid;
        border-width: 0 15px 15px 15px;
        border-color: transparent transparent #444 transparent;   
    }
    
    .nav-collapse ul ul.sub-menu li {
        width: 100%;
        border: 0;
        margin: 0;
    }
    
    .nav-collapse ul ul.sub-menu li a {
        line-height: 1.4rem;
        color: #fff;
        padding: 15px 0;
    }
    
    .nav-collapse ul a { 
        cursor: pointer; 
        display: block; 
        color: white; 
        line-height: 30px; 
        padding: 0 10px; 
    }
    
    .nav-collapse ul li:hover ul.sub-menu { display: block;  }
    
    .nav-collapse li.tap ul.sub-menu li { padding-left: 0; }
    .nav-collapse li.tap ul.sub-menu li:first-child { border-top: 0; } 
    
    .nav-collapse li:last-child {
        margin-right: 0;
    }
    
    .nav-collapse li a {
        font-size: 1.4rem;
        text-transform: uppercase;
        color: #7f8c8d;
        padding: 0;
        letter-spacing: 0.05em;
        padding-left: -0.05em;
        line-height: 110px;
    }

}

@media screen and (-webkit-min-device-pixel-ratio: 1.3), 
       screen and (min--moz-device-pixel-ratio: 1.3), 
       screen and (-o-min-device-pixel-ratio: 2 / 1), 
       screen and (min-device-pixel-ratio: 1.3), 
       screen and (min-resolution: 192dpi), 
       screen and (min-resolution: 2dppx) {
       
  .nav-toggle {
    background-image: url(../img/hamburger@2x.png);
    -webkit-background-size: 25px;
    -moz-background-size: 25px;
    -o-background-size: 25px;
    background-size: 25px;
  }
  
}
