/* --------------------------------

Main components

-------------------------------- */

.cd-main-content,
.cd-main-header {
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	will-change: transform;
	}
.cd-main-content,
.cd-main-header {
	position: relative;
	-webkit-transition: -webkit-transform 0.3s;
	-moz-transition: -moz-transform 0.3s;
	transition: transform 0.3s;
}

@media only screen and (max-width: 1169px) {
	.cd-main-content.nav-is-visible,
	.cd-main-header.nav-is-visible {
		-webkit-transform: translateX(-260px);
		-moz-transform: translateX(-260px);
		-ms-transform: translateX(-260px);
		-o-transform: translateX(-260px);
		transform: translateX(-260px);
	}
	.nav-on-left .cd-main-content.nav-is-visible,
	.nav-on-left .cd-main-header.nav-is-visible {
		-webkit-transform: translateX(260px);
		-moz-transform: translateX(260px);
		-ms-transform: translateX(260px);
		-o-transform: translateX(260px);
		transform: translateX(260px);
	}
}



.cd-main-header {
	height: 60px;
	z-index: 3;
}
.nav-is-fixed .cd-main-header {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
}

@media only screen and (min-width: 1170px) {
	.cd-main-header {
		width: 100%;
		height: 80px;
		top: 0;
		position: fixed;
		z-index: 10;
	}
	.cd-main-header::after {
		clear: both;
		content: "";
		display: table;
	}
}

header .logo {
	position: absolute;
	top: 30px;
	left: 30px;
	width: 240px;
	height: auto;
	display: block;
}
@media only screen and (max-width: 1169px) {
	header .logo {
		top: 20px;
		left: 20px;
		width: 180px;
	}
}

.cd-header-buttons {
	position: absolute;
	display: inline-block;
	top: 0px;
	right: 0px;
}
.cd-header-buttons li {
	display: inline-block;
}
@media only screen and (max-width:1169px) {
	.nav-on-left .cd-header-buttons {
		right: auto;
		left: 5%;
	}
	.nav-on-left .cd-header-buttons li {
		float: right;
	}
}
@media only screen and (min-width: 1170px) {
	.cd-header-buttons {
		top: 0px;
		right: 4em;
	}
}

.cd-search-trigger, .cd-nav-trigger {
	position: relative;
	display: block;
	background: #000;
	width: 60px;
	height: 60px;
	overflow: hidden;
	white-space: nowrap;
	color: transparent;
	z-index: 3;
}

.cd-nav-trigger span,
.cd-nav-trigger span::before,
.cd-nav-trigger span::after {
	position: absolute;
	display: inline-block;
	height: 1px;
	width: 24px;
	background: #666;
}
.cd-nav-trigger span {
	position: absolute;
	background: #fff;
	top: 50%;
	right: 18px;
	margin-top: -1px;
	-webkit-transition: background 0.3s 0.3s;
	-moz-transition: background 0.3s 0.3s;
	transition: background 0.3s 0.3s;
}
.cd-nav-trigger span::before,
.cd-nav-trigger span::after {
	content: '';
	right: 0;
	background: #fff;
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform-origin: 0% 50%;
	-moz-transform-origin: 0% 50%;
	-ms-transform-origin: 0% 50%;
	-o-transform-origin: 0% 50%;
	transform-origin: 0% 50%;
	-webkit-transition: -webkit-transform 0.3s 0.3s;
	-moz-transition: -moz-transform 0.3s 0.3s;
	transition: transform 0.3s 0.3s;
}
.cd-nav-trigger span::before {
	top: -6px;
}
.cd-nav-trigger span::after {
	top: 6px;
}
.cd-nav-trigger.nav-is-visible span {
	background: rgba(46, 50, 51, 0);
}
.cd-nav-trigger.nav-is-visible span::before,
.cd-nav-trigger.nav-is-visible span::after {
	background: #fff;
}
.cd-nav-trigger.nav-is-visible span::before {
	-webkit-transform: translateX(4px) translateY(-3px) rotate(45deg);
	-moz-transform: translateX(4px) translateY(-3px) rotate(45deg);
	-ms-transform: translateX(4px) translateY(-3px) rotate(45deg);
	-o-transform: translateX(4px) translateY(-3px) rotate(45deg);
	transform: translateX(4px) translateY(-3px) rotate(45deg);
}
.cd-nav-trigger.nav-is-visible span::after {
	-webkit-transform: translateX(4px) translateY(2px) rotate(-45deg);
	-moz-transform: translateX(4px) translateY(2px) rotate(-45deg);
	-ms-transform: translateX(4px) translateY(2px) rotate(-45deg);
	-o-transform: translateX(4px) translateY(2px) rotate(-45deg);
	transform: translateX(4px) translateY(2px) rotate(-45deg);
}
@media only screen and (min-width: 1170px) {
	.cd-nav-trigger {
		display: none;
	}
}

.cd-primary-nav,
.cd-primary-nav ul {
	position: fixed;
	top: 0;
	right: 0;
	height: 100%;
	width: 260px;
	background: #1b1b1b;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	z-index: 1;
	/* Force Hardware Acceleration in WebKit */
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-ms-transform: translateX(0);
	-o-transform: translateX(0);
	transform: translateX(0);
	-webkit-transition: -webkit-transform 0.3s;
	-moz-transition: -moz-transform 0.3s;
	transition: transform 0.3s;
}
.cd-primary-nav a,
.cd-primary-nav ul a {
	display: block;
	height: 50px;
	line-height: 50px;
	padding: 0 20px;
	color: #fff;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	border-bottom: 1px solid #3a3f40;
	-webkit-transform: translateZ(0);
	-moz-transform: translateZ(0);
	-ms-transform: translateZ(0);
	-o-transform: translateZ(0);
	transform: translateZ(0);
	will-change: transform, opacity;
	-webkit-transition: -webkit-transform 0.3s, opacity 0.3s;
	-moz-transition: -moz-transform 0.3s, opacity 0.3s;
	transition: transform 0.3s, opacity 0.3s;
}
.cd-primary-nav a:hover,
.cd-primary-nav ul a:hover {
  /* background:#111; */
  color: #7e3fa3;
}
.cd-primary-nav.is-hidden,
.cd-primary-nav ul.is-hidden {
  /* secondary navigations hidden by default */
  -webkit-transform: translateX(100%);
  -moz-transform: translateX(100%);
  -ms-transform: translateX(100%);
  -o-transform: translateX(100%);
  transform: translateX(100%);
}
.cd-primary-nav.moves-out>li>a, .cd-primary-nav ul.moves-out>li>a {
	/* push the navigation items to the left - and lower down opacity - when secondary nav slides in */
	-webkit-transform: translateX(-100%);
	-moz-transform: translateX(-100%);
	-ms-transform: translateX(-100%);
	-o-transform: translateX(-100%);
	transform: translateX(-100%);
	opacity: 0;
}
@media only screen and (max-width: 1169px) {
	.nav-on-left .cd-primary-nav, .nav-on-left .cd-primary-nav ul {
		right: auto;
		left: 0;
	}
	.cd-primary-nav a:hover, .cd-primary-nav ul a:hover {
		/* background: #4b1e9a; */
			background: #2e3233;
		color: #fff;
	}
}

.cd-primary-nav .see-all a {
	color: #fff100;
}
.cd-primary-nav .cd-nav-block .cd-nav-item {
	height: 60px;
	line-height: 60px;
}

.cd-primary-nav .cd-nav-block span {
	font-size: 1.0rem;
	display: block;
	padding-left: 1.2em
}
@media only screen and (max-width: 1169px) {
	.cd-primary-nav {
		visibility: hidden;
		-webkit-transition: visibility 0s 0.3s;
		-moz-transition: visibility 0s 0.3s;
		transition: visibility 0s 0.3s;
	}
	.cd-primary-nav.nav-is-visible {
		visibility: visible;
		-webkit-transition: visibility 0s 0s;
		-moz-transition: visibility 0s 0s;
		transition: visibility 0s 0s;
	}
}
@media only screen and (min-width: 1170px) {
	.cd-primary-nav {
		position: static;
		padding: 0px 30px 0 0;
		height: auto;
		width: auto;
		float: right;
		overflow: visible;
		background: #000;
		/* border-radius: 0 0 0 3rem; */
	}
	.cd-primary-nav::after {
		clear: both;
		content: "";
		display: table;
	}
	.cd-primary-nav.moves-out>li>a {
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
	.cd-primary-nav ul {
		position: static;
		height: auto;
		width: auto;
		background: transparent;
		overflow: visible;
		z-index: 3;
	}
	.cd-primary-nav ul.is-hidden {
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
	}
	.cd-primary-nav ul.moves-out>li>a {
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		-ms-transform: translateX(0);
		-o-transform: translateX(0);
		transform: translateX(0);
		opacity: 1;
	}
	.cd-primary-nav>li {
		float: left;
		margin-left: 2.4em;
		font-size:1.4rem;
	}
	.cd-primary-nav>li>a {
		position: relative;
		display: inline-block;
		height: 100px;
		line-height: 100px;
		padding: 0 10px;
		color: #fff;
		overflow: visible;
		border-bottom: none;
		-webkit-transition: color 0.3s, box-shadow 0.3s;
		-moz-transition: color 0.3s, box-shadow 0.3s;
		transition: color 0.3s, box-shadow 0.3s;
	}
	.cd-primary-nav>li>a:hover {
		color: #fff;
		box-shadow: inset 0 -4px 0 #ddd;
	}
	.cd-primary-nav>li>a.selected {
		color: #fff;
		box-shadow: inset 0 -4px 0 #ddd;
	}
	.cd-primary-nav .go-back,
	.cd-primary-nav .see-all {
		display: none;
	}
	.cd-primary-nav .cd-secondary-nav,
	.cd-primary-nav .cd-nav-block {
		position: absolute;
		top: 100px;
		font-size: 1.4rem;
		width: 100vw;
		padding: 40px 30px;
		background: #1b1b1b;
		-webkit-transform: translateX(0);
		-moz-transform: translateX(0);
		transform: translateX(0);
		-webkit-transition: opacity .3s 0s, visibility 0s 0s;
		-moz-transition: opacity .3s 0s, visibility 0s 0s;
		transition: opacity .3s 0s, visibility 0s 0s;
		display: flex;
    flex-wrap: wrap;
	}
	.cd-primary-nav .cd-secondary-nav::after,
	.cd-primary-nav .cd-nav-block::after {
		clear: both;
		content: "";
		display: table;
	}
	.cd-primary-nav .cd-secondary-nav.is-hidden,
	.cd-primary-nav .cd-nav-block.is-hidden {
		opacity: 0;
		visibility: hidden;
		-webkit-transition: opacity .3s 0s, visibility 0s .3s;
		-moz-transition: opacity .3s 0s, visibility 0s .3s;
		transition: opacity .3s 0s, visibility 0s .3s;
	}
}

/* --------------------------------

cd-nav-block

-------------------------------- */
@media only screen and (min-width: 1170px) {
  .cd-primary-nav .cd-nav-block li {
    width: 20%;
    /* float: left; */
    margin: 0 0 0 0;
  }
  .cd-primary-nav .cd-nav-block .cd-nav-item {
    border-bottom: none;
		line-height: 1;
    padding: 2.2rem 2rem;
    position: relative;
    -webkit-transition: .3s ease;
    -moz-transition: .3s ease;
    transition: .3s ease;
    /* border-right:1px solid #444;
    border-bottom:1px solid #444; */
  }
  .cd-primary-nav .cd-nav-block .cd-nav-item:hover {
    background:#2e3233;
    /* background: #4b1e9a;
    background: -webkit-linear-gradient(left,#7e00d7 0,#4b1e9a 100%);
    background: linear-gradient(to right,#7e00d7 0,#4b1e9a 100%); */
    color: #fff;
  }
  .cd-primary-nav .cd-navv .cd-nav-item {
    letter-spacing: .2em;
    color: #fff;
  }
  .cd-primary-nav .cd-nav-block .cd-nav-item::before {
    left: 25px;
  }
}

.has-children>a, .go-back a {
	position: relative;
}
.has-children>a::before,
.has-children>a::after,
.go-back a::before,
.go-back a::after {
	content: '';
	position: absolute;
	top: 50%;
	margin-top: -1px;
	display: inline-block;
	height: 2px;
	width: 10px;
	background: #fff;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
.has-children>a::before, .go-back a::before {
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	transform: rotate(45deg);
}
.has-children>a::after, .go-back a::after {
	-webkit-transform: rotate(-45deg);
	-moz-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	-o-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
@media only screen and (min-width: 1170px) {
	.has-children>a::before,
	.has-children>a::after,
	.go-back a::before,
	.go-back a::after {
		background: #fff;
	}
	.has-children>a:hover::before,
	.has-children>a:hover::after,
	.go-back a:hover::before,
	.go-back a:hover::after {
		background: #222;
	}
}



.has-children>a {
  padding-right: 40px;
}
.has-children>a::before,
.has-children>a::after {
  right: 20px;
  -webkit-transform-origin: 9px 50%;
  -moz-transform-origin: 9px 50%;
  -ms-transform-origin: 9px 50%;
  -o-transform-origin: 9px 50%;
  transform-origin: 9px 50%;
}
.cd-primary-nav .go-back a {
  padding-left: 40px;
	 background: #4b1e9a;
}
.cd-primary-nav .go-back a::before,
.cd-primary-nav .go-back a::after {
  left: 20px;
  -webkit-transform-origin: 1px 50%;
  -moz-transform-origin: 1px 50%;
  -ms-transform-origin: 1px 50%;
  -o-transform-origin: 1px 50%;
  transform-origin: 1px 50%;
}
@media only screen and (min-width: 1170px) {
  .has-children>a::before, .has-children>a::after {
    right: 15%;
  }
  .cd-primary-nav>.has-children>a {
    padding-right: 30px !important;
  }
  .cd-primary-nav>.has-children>a::before,
	.cd-primary-nav>.has-children>a::after {
    width: 9px;
    -webkit-transform-origin: 50% 50%;
    -moz-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    -o-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    background: #ddd;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: width 0.3s, -webkit-transform 0.3s;
    -moz-transition: width 0.3s, -moz-transform 0.3s;
    transition: width 0.3s, transform 0.3s;
  }
  .cd-primary-nav>.has-children>a::before {
    right: 12px;
  }
  .cd-primary-nav>.has-children>a::after {
    right: 7px;
  }
  .cd-primary-nav>.has-children>a.selected::before,
	.cd-primary-nav>.has-children>a.selected::after {
    width: 14px;
  }
  .cd-primary-nav>.has-children>a.selected::before {
    -webkit-transform: translateX(5px) rotate(-45deg);
    -moz-transform: translateX(5px) rotate(-45deg);
    -ms-transform: translateX(5px) rotate(-45deg);
    -o-transform: translateX(5px) rotate(-45deg);
    transform: translateX(5px) rotate(-45deg);
  }
  .cd-primary-nav>.has-children>a.selected::after {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
  }
  .cd-secondary-nav>.has-children>a::before,
	.cd-secondary-nav>.has-children>a::after {
    display: none;
  }
  .cd-primary-nav .go-back a {
    padding-left: 20px;
  }
  .cd-primary-nav .go-back a::before,
	.cd-primary-nav .go-back a::after {
    left: 1px;
  }
}

.cd-overlay {
  position: fixed;
  z-index: 2;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-color: rgba(255, 255, 255, 0.9);
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0.3s, -webkit-transform 0.3s 0s;
  -moz-transition: opacity 0.3s 0s, visibility 0s 0.3s, -moz-transform 0.3s 0s;
  transition: opacity 0.3s 0s, visibility 0s 0.3s, transform 0.3s 0s;
}
.cd-overlay.is-visible {
  opacity: 1;
  visibility: visible;
  -webkit-transition: opacity 0.3s 0s, visibility 0s 0s, -webkit-transform 0.3s 0s;
  -moz-transition: opacity 0.3s 0s, visibility 0s 0s, -moz-transform 0.3s 0s;
  transition: opacity 0.3s 0s, visibility 0s 0s, transform 0.3s 0s;
}
@media only screen and (max-width: 1169px) {
  .cd-overlay.is-visible {
    -webkit-transform: translateX(-280px);
    -moz-transform: translateX(-280px);
    -ms-transform: translateX(-280px);
    -o-transform: translateX(-280px);
    transform: translateX(-280px);
  }
  .nav-on-left .cd-overlay.is-visible {
    -webkit-transform: translateX(280px);
    -moz-transform: translateX(280px);
    -ms-transform: translateX(280px);
    -o-transform: translateX(280px);
    transform: translateX(280px);
  }
  .cd-overlay.is-visible.search-is-visible,
	.nav-on-left .cd-overlay.is-visible.search-is-visible {
    -webkit-transform: translateX(0);
    -moz-transform: translateX(0);
    -ms-transform: translateX(0);
    -o-transform: translateX(0);
    transform: translateX(0);
  }
}
