/* Menu Button */
.cd-primary-nav-trigger {
    position: relative;
    height: 20px;
    width: 30px;
    float: right;
    margin-top: 28px;
    z-index: 10001;
    cursor: pointer;
    display: none;
}
@media screen and (max-width: 1024px) {
    .cd-primary-nav-trigger {
        display: block;
    }
}
.cd-primary-nav-trigger .cd-menu-icon {
    display: inline-block;
    position: absolute;
    left: 50%;
    top: 50%;
    bottom: auto;
    right: auto;
    -webkit-transform: translateX(-50%) translateY(-50%);
    -moz-transform: translateX(-50%) translateY(-50%);
    -ms-transform: translateX(-50%) translateY(-50%);
    -o-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
    width: 30px;
    height: 3px;
    background-color: #333333;
    -webkit-transition: background-color 0.3s;
    -moz-transition: background-color 0.3s;
    transition: background-color 0.3s;
}
.cd-primary-nav-trigger .cd-menu-icon::before, .cd-primary-nav-trigger .cd-menu-icon:after {
    content: '';
    width: 100%;
    height: 100%;
    position: absolute;
    background-color: #333333;
    right: 0;
    -webkit-transition: -webkit-transform .3s, top .3s, background-color 0s;
    -moz-transition: -moz-transform .3s, top .3s, background-color 0s;
    transition: transform .3s, top .3s, background-color 0s;
}
.cd-primary-nav-trigger .cd-menu-icon::before {
    top: -7px;
}
.cd-primary-nav-trigger .cd-menu-icon::after {
    top: 7px;
}
.cd-primary-nav-trigger .cd-menu-icon.is-clicked {
    background-color: rgba(255, 255, 255, 0);
}
.cd-primary-nav-trigger .cd-menu-icon.is-clicked::before {
    top: 0;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}
.cd-primary-nav-trigger .cd-menu-icon.is-clicked::after {
    top: 0;
    -webkit-transform: rotate(225deg);
    -moz-transform: rotate(225deg);
    -ms-transform: rotate(225deg);
    -o-transform: rotate(225deg);
    transform: rotate(225deg);
}

/* Close Button */
.close-button {
	width: 1em;
	height: 1em;
	position: absolute;
	right: 1em;
	top: 1em;
	overflow: hidden;
	text-indent: 1em;
	font-size: 0.75em;
	border: none;
	background: transparent;
	color: transparent;
}

.close-button::before,
.close-button::after {
	content: '';
	position: absolute;
	width: 3px;
	height: 100%;
	top: 0;
	left: 50%;
	background: #bdc3c7;
}

.close-button::before {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.close-button::after {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.menu-shadow {
    position: fixed;
    top: 0;
    left: 0;
	z-index: 10000;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.3);
    visibility: hidden;
    opacity: 0;
    -webkit-transform: translate3d(100%,0,0);
    transform: translate3d(100%,0,0);
    -webkit-transition: opacity 0.4s, -webkit-transform 0s 0.4s, visibility 0s 0.4s;
    transition: opacity 0.4s, transform 0s 0.4s, visibility 0s 0.4s;
    -webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
    transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.show-menu .menu-shadow {
    visibility: visible;
    opacity: 1;
    -webkit-transition: opacity 0.8s;
    transition: opacity 0.8s;
    -webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
    transition-timing-function: cubic-bezier(0.7,0,0.3,1);
    -webkit-transform: translate3d(0,0,0);
    transform: translate3d(0,0,0);
}

/* Menu */
.menu-wrap {
	position: fixed;
    top: 0;
    left: 0;
	z-index: 100000;
	width: 300px;
	height: 100%;
	background: #424242;
	padding: 2.5em 1.5em 0;
	font-size: 1.15em;
	-webkit-transform: translate3d(-320px,0,0);
	transform: translate3d(-320px,0,0);
	-webkit-transition: -webkit-transform 0.4s;
	transition: transform 0.4s;
	-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.menu-wrap ul {
    list-style: none;
    padding: 0;
    margin: 0;
	-webkit-transform: translate3d(0,100%,0);
	transform: translate3d(0,100%,0);
}

.menu-wrap ul ul {
    padding-left: 20px;
}

.menu-wrap ul li {
    padding: 5px 0;
	display: block;
	-webkit-transform: translate3d(0,500px,0);
	transform: translate3d(0,500px,0);
}

.menu-wrap ul .sub {
    display: none;
}

.menu-wrap ul,
.menu-wrap ul li {
	-webkit-transition: -webkit-transform 0s 0.4s;
	transition: transform 0s 0.4s;
	-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.icon-list a:nth-child(2) {
	-webkit-transform: translate3d(0,1000px,0);
	transform: translate3d(0,1000px,0);
}

.icon-list a:nth-child(3) {
	-webkit-transform: translate3d(0,1500px,0);
	transform: translate3d(0,1500px,0);
}

.icon-list a:nth-child(4) {
	-webkit-transform: translate3d(0,2000px,0);
	transform: translate3d(0,2000px,0);
}

.icon-list a:nth-child(5) {
	-webkit-transform: translate3d(0,2500px,0);
	transform: translate3d(0,2500px,0);
}

.icon-list a:nth-child(6) {
	-webkit-transform: translate3d(0,3000px,0);
	transform: translate3d(0,3000px,0);
}

/* Shown menu */
.show-menu .menu-wrap {
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
	-webkit-transition: -webkit-transform 0.8s;
	transition: transform 0.8s;
	-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.show-menu .menu-wrap ul,
.show-menu .menu-wrap ul li {
	-webkit-transform: translate3d(0,0,0) !important;
	transform: translate3d(0,0,0) !important;
	-webkit-transition: -webkit-transform 0.8s;
	transition: transform 0.8s;
	-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
}

.show-menu .menu-wrap ul li {
	-webkit-transition-duration: 0.9s;
	transition-duration: 0.9s;
}

.show-menu .content::before {
	opacity: 1;
	-webkit-transition: opacity 0.8s;
	transition: opacity 0.8s;
	-webkit-transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	transition-timing-function: cubic-bezier(0.7,0,0.3,1);
	-webkit-transform: translate3d(0,0,0);
	transform: translate3d(0,0,0);
}
