/*! Pushy - v0.9.2 - 2014-9-13
* Pushy is a responsive off-canvas navigation menu using CSS transforms & transitions.
* https://github.com/christophery/pushy/
* by Christopher Yee */

/* Menu Appearance */

.pushy{
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
	left: 0;
    z-index: 9999;
    background: rgba(0,0,0,0.9);
    font-size: 0.9em;
    font-weight: bold;
    overflow: auto;
    -webkit-overflow-scrolling: touch; /* enables momentum scrolling in iOS overflow elements */
    margin: 0 !important;
    display: table;
}

.pushy a{
    display: inline-block;
    vertical-align: top;
    color: #fff;
    padding: 0.5em;
    text-decoration: none;
    font-size: 1.2em;
    font-weight: 300;
    text-transform: uppercase;
}

.pushy-nav {
    position: absolute;
    display: block;
    float: none;
    width: 100%;
    top: 20%;
}

.pushy-nav li {
    width: 100%;
    text-align: center;
}

.pushy-close { position: absolute; top: 0px; right: 0; padding: 0.4em 0.75em !important; border: none !important; font-size: 2.5em !important; }

.menu-list { list-style: none !important; padding: 0; width: 100%; margin: 0 auto; vertical-align: middle;}
.menu-list li { width: 100%; text-align: center; font-size: 1.4em;}
/* Menu Movement */

.pushy-left{
    -webkit-transform: translate3d(-200px,0,0);
    -moz-transform: translate3d(-200px,0,0);
    -ms-transform: translate3d(-200px,0,0);
    -o-transform: translate3d(-200px,0,0);
    transform: translate3d(-200px,0,0);
}

.pushy-right{
    -webkit-transform: translate3d(0,-100%,0);
    -moz-transform: translate3d(0,-100%,0);
    -ms-transform: translate3d(0,-100%,0);
    -o-transform: translate3d(0,-100%,0);
    /*transform: translate3d(200px,0,0);*/
    transform: translate3d(0,-100%,0);
}

.pushy-open{
    -webkit-transform: translate3d(0,0,0);
    -moz-transform: translate3d(0,0,0);
    -ms-transform: translate3d(0,0,0);
    -o-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

.container-push, .push-push{
    -webkit-transform: translate3d(-200px,0,0);
    -moz-transform: translate3d(-200px,0,0);
    -ms-transform: translate3d(-200px,0,0);
    -o-transform: translate3d(-200px,0,0);
    transform: translate3d(-200px,0,0);
}

/* Menu Transitions */

.pushy, #container, .push{
    -webkit-transition: -webkit-transform .3s cubic-bezier(.16, .68, .43, .99);
    -moz-transition: -moz-transform .3s cubic-bezier(.16, .68, .43, .99);
    -o-transition: -o-transform .3s cubic-bezier(.16, .68, .43, .99);
    transition: transform .3s cubic-bezier(.16, .68, .43, .99);
}

/* Site Overlay */

.site-overlay{
    display: none;
}

.pushy-active .site-overlay{
    display: block;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 9998;
    background-color: rgba(0,0,0,0.5);
    -webkit-animation: fade 300ms; 
    -moz-animation: fade 300ms; 
    -o-animation: fade 300ms;
    animation: fade 300ms;
}

.mobi-language { width: 200px !important; margin: 1em auto 0 auto; border-top: 1px dashed #fff; padding-top: 1em; }
.mobi-language a { vertical-align: middle !important; }
.mobi-language span { color: rgba(255,255,255, 0.7); padding: 8px 10px; display: inline-block; vertical-align: middle;}

.pushy-active  {overflow: hidden;}

@keyframes fade{
    0%   { opacity: 0; }
    100% { opacity: 1; }
}

@-moz-keyframes fade{
    0%   { opacity: 0; }
    100% { opacity: 1; }
}

@-webkit-keyframes fade{
    0%   { opacity: 0; }
    100% { opacity: 1; }
}

@-o-keyframes fade{
    0%   { opacity: 0; }
    100% { opacity: 1; }
}

/* Example Media Query */

@media screen and (max-width: 1024px){
    .locations-list { width: 80%; margin: 0 auto; display: table-cell; vertical-align: middle;}
    .pushy-close { padding: 0.3em 0.75em !important;}
    .menu-list { margin: 35% auto; }
}

@media screen and (max-width: 720px){
    .pushy {display: block !important;}
    .locations-list { width: 100%; height: auto !important; padding: 5em 0 2em 2.5em; }
    .locations-list li { padding: 0.3em 0; }
    .locations-list li a { font-size: 1em; }
}

@media screen and (max-width: 400px){
    .locations-list { padding: 5em 0 2em 0; }
    .locations-list li { width: 100%; }
}
