/** STAGE AND SCROLL CLASSES **/
body {
	position: absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
}
html.no-scroll {
	position: fixed;
	height:100%;
	position: relative;
}
body.no-scroll {
	position: absolute;
	height:100%;
	overflow:hidden !important;
}
.no-scroll {
	overflow:hidden !important;
	max-height:100% !important;
}
button.btn.btn-empty.menu-close {
	background-color: transparent !important;
}
.fixed-pos {
	position: fixed;
}
.scroll-vert {
	overflow:scroll;
}
.scroll-vert::-webkit-scrollbar{
  width: 0px;
  height: 0px;
}
.slideTitle {
	border-bottom:solid 5px #363636;
}
#overlay {
	position: fixed;
	top:0;
	left:0;
	background-color: #000;
	width:100%;
	z-index:1999;
	/*pointer-events: none;*/
}
#overlay {
	opacity:0;
	height:0;
	-webkit-transition: opacity 0.3s, height 0s;
	transition: opacity 0.3s, height 0s;

	-webkit-transition-delay: 0s, 0.3s;
	transition-delay: 0s, 0.3s;

}
#overlay.active {
	height:100%;
	opacity:0.3;

	-webkit-transition: height 0s, opacity 0.3s;
	transition: height 0s, opacity 0.3s;

	-webkit-transition-delay: 0s, 0s;
	transition-delay: 0s, 0s;
}

/* General styles for all menus */
.cbp-spmenu {
	/* background: #47a3da; */
	position: fixed;
}

.cbp-spmenu h3 {
	/* color: #afdefa; */
	font-size: 1.9em;
	padding: 20px;
	margin: 0;
	font-weight: 300;
	/* background: #0d77b6; */
}

.cbp-spmenu a {
	display: block;
	font-weight: 400;
}

.cbp-spmenu a:hover {
	/* background: #258ecd; */
}

.cbp-spmenu a:active {
	/* background: #afdefa; */
	/* color: #47a3da; */
}

/* Orientation-dependent styles for the content of the menu */

.cbp-spmenu-vertical {
	width: 240px;
	height: 100%;
	top: 0;
	z-index: 2000;
}

.cbp-spmenu-vertical a {
	/* border-bottom: 1px solid #258ecd; */
	padding: 1em;
}

.cbp-spmenu-horizontal {
	width: 100%;
	height: 150px;
	left: 0;
	z-index: 2000;
	overflow: hidden;
}

.cbp-spmenu-horizontal h3 {
	height: 100%;
	width: 20%;
	float: left;
}

.cbp-spmenu-horizontal a {
	float: left;
	width: 20%;
	padding: 0.8em;
	/* border-left: 1px solid #258ecd; */
}

/* Vertical menu that slides from the left or right */

.cbp-spmenu-left {
	left: -240px;
}

.cbp-spmenu-right {
	right: -240px;
}

.cbp-spmenu-left.cbp-spmenu-open {
	left: 0px;
}

.cbp-spmenu-right.cbp-spmenu-open {
	right: 0px;
}

/* Horizontal menu that slides from the top or bottom */

.cbp-spmenu-top {
	top: -150px;
}

.cbp-spmenu-bottom {
	bottom: -150px;
}

.cbp-spmenu-top.cbp-spmenu-open {
	top: 0px;
}

.cbp-spmenu-bottom.cbp-spmenu-open {
	bottom: 0px;
}

/* Push classes applied to the body */

.cbp-spmenu-push {
	overflow-x: hidden;
	position: relative;
	left: 0;
}

.cbp-spmenu-push-toright {
	left: 240px;
}

.cbp-spmenu-push-toleft {
	left: -240px;
}

/* Transitions */

.cbp-spmenu,
.cbp-spmenu-push {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	transition: all 0.3s ease;
}

/* Example media queries */

@media screen and (max-width: 55.1875em){

	.cbp-spmenu-horizontal {
		font-size: 75%;
		height: 110px;
	}

	.cbp-spmenu-top {
		top: -110px;
	}

	.cbp-spmenu-bottom {
		bottom: -110px;
	}

}

@media screen and (max-height: 26.375em){

	.cbp-spmenu-vertical {
		font-size: 90%;
		width: 190px;
	}

	.cbp-spmenu-left,
	.cbp-spmenu-push-toleft {
		left: -190px;
	}

	.cbp-spmenu-right {
		right: -190px;
	}

	.cbp-spmenu-push-toright {
		left: 190px;
	}
}


/** side menu styles **/
nav.cbp-spmenu {
	background-color: #474747;
}
nav.cbp-spmenu a {
	font-family: "brandon-grotesque", Helvetica, Arial, sans-serif;
    text-transform: uppercase;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    font-size: 14px;
    height: 40px;
    padding: 10px 15px;
    letter-spacing: 1px;
    display: block;
    color: #000;

}

nav.cbp-spmenu li:hover > a {
	color:#333;
	background-color: transparent;
}

/** slide title **/
nav.cbp-spmenu .slideTitle {
	position: relative;
	background-color: #474747;
}
nav.cbp-spmenu-left .slideTitle {
	padding-right:48px;
}
nav.cbp-spmenu-left .slideTitle .menu-close {
	
}
nav.cbp-spmenu .slideTitle .menu-close {
	position: absolute;
	right: 5px;
	top: 0px;
	padding: 10px;
	font-size: 25px;
	height: 100%;
}
nav.cbp-spmenu-left .slideTitle .menu-close .tx-icon {
	border: 0px !important;
	/* background: transparent !important; */
	position: absolute;
	right: 10px;
	top:20px;
	overflow: visible;
	width: 1em;
	height: 1em;
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}

nav.cbp-spmenu .slideTitle .menu-close .tx-plus {
	/* background-image: url(../images/GP-icon-plus-fat.svg); */
	background-size: contain;
	background-repeat: no-repeat;
	-webkit-transform: rotate(45deg);
	    -ms-transform: rotate(45deg);
	        transform: rotate(45deg);
}
nav.cbp-spmenu .slideTitle .menu-close .tx-plus {
	-webkit-mask-image: url(../images/GP-icon-plus-fat.svg);
	mask-image: url(../images/GP-icon-plus-fat.svg);
	-webkit-mask-size: contain;
	        mask-size: contain;
	background-color: #fff;
}
nav.cbp-spmenu .slideTitle .menu-close:hover .tx-plus {
	background-color: #888;
}
nav.cbp-spmenu .slideTitle .menu-close:focus {
	outline:none !important;
}

/* nav.cbp-spmenu .slideTitle img {
	max-width:100%;
	height:auto;
} */



/****************** NEW STYLES **************/
/*** SLIDE PUSH **/
nav.cbp-spmenu {
	background-color: #fff !important;
}
nav.cbp-spmenu .slideTitle {
	background-color: #231f20 !important;
	border:0px !important;
	color: #fff !important;
    font-family: 'Playfair Display', serif;
}
nav.cbp-spmenu ul {
	list-style-type: none !important;
	padding:0px !important;
	margin:0px !important;
}

/*** SLIDE PUSH COLLAPSE STYLES / Rules **/
nav.cbp-spmenu .side-nav-collapse ul {
	display: none;
}
nav.cbp-spmenu .side-nav-collapse li {
	position: relative;
}
nav.cbp-spmenu .side-nav-collapse .btn-collapse {
    position: absolute;
    right: 0;
    top: 0;
    height: 40px;
    width: 40px;
}
nav.cbp-spmenu .side-nav-collapse .btn-collapse:focus {
	outline:none !important;
	box-shadow:none !important;
}

/** collapse animation for button **/
nav.cbp-spmenu .side-nav-collapse .btn-collapse .fa-minus,
nav.cbp-spmenu .side-nav-collapse .btn-collapse .fa-plus {
	position: absolute;
}
nav.cbp-spmenu .side-nav-collapse .btn-collapse .fa-minus {
	-webkit-transform:rotate(90deg);
	   -moz-transform:rotate(90deg);
	    -ms-transform:rotate(90deg);
	     -o-transform:rotate(90deg);
	        transform:rotate(90deg);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
nav.cbp-spmenu .side-nav-collapse .btn-collapse.cpOut .fa-minus {
	-webkit-transform:rotate(180deg);
	   -moz-transform:rotate(180deg);
	    -ms-transform:rotate(180deg);
	     -o-transform:rotate(180deg);
	        transform:rotate(180deg);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
nav.cbp-spmenu .side-nav-collapse .btn-collapse .fa-plus {
	-webkit-transform:rotate(90deg);
	   -moz-transform:rotate(90deg);
	    -ms-transform:rotate(90deg);
	     -o-transform:rotate(90deg);
	        transform:rotate(90deg);
	-webkit-transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	transition: all 0.3s;
}
nav.cbp-spmenu .side-nav-collapse .btn-collapse.cpOut .fa-plus {
	-webkit-transform:rotate(180deg);
	   -moz-transform:rotate(180deg);
	    -ms-transform:rotate(180deg);
	     -o-transform:rotate(180deg);
	        transform:rotate(180deg);
	-webkit-transition: all 0s;
	-moz-transition: all 0s;
	-o-transition: all 0s;
	transition: all 0s;
	visibility: hidden;
}

/********* TX COLLLAPSE PLUS MINUS: use in product sidebar, product accordion, sidebar */
.side-nav-collapse .btn-collapse {
	background-color: transparent !important;
}
.side-nav-collapse .btn-collapse .tx-icon {
  border: 0px !important;
  /* background: transparent !important; */
  position: absolute;
  right: 10px;
  top:10px;
  overflow: visible;
  width: 1em;
  height: 1em;
}
.side-nav-collapse .btn-collapse .tx-minus {
  background-image: url(../images/GP-icon-minus-fat.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
.side-nav-collapse .btn-collapse .tx-plus {
  background-image: url(../images/GP-icon-plus-fat.svg);
  background-size: contain;
  background-repeat: no-repeat;
}
/** animate everything */
.side-nav-collapse .btn-collapse .tx-icon {
  -webkit-transition: alls 0.3s linear;
  transition: alls 0.3s linear;
}

/** plus icon display rule */
.side-nav-collapse .btn-collapse.cpOut .tx-plus {
  opacity: 0;
}
.side-nav-collapse .btn-collapse .tx-plus {
  opacity: 1;
}

/* pre rotate */
.side-nav-collapse .btn-collapse .tx-icon {
  -webkit-transform: rotate(-90deg);
  -ms-transform:rotate(-90deg);
      transform:rotate(-90deg);
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
/* post rotate */
.side-nav-collapse .btn-collapse.cpOut .tx-icon { 
  -webkit-transform: rotate(0deg);
  -ms-transform:rotate(0deg);
      transform:rotate(0deg);
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}



/****** LIST STYLING ******/
nav.cbp-spmenu .side-nav-collapse li a {
	font-family: "brandon-grotesque", Helvetica, Arial, sans-serif;
    color: #000;
    text-transform: uppercase;
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
    font-size: 12px;
    height: 40px;
    padding: 10px 15px;
    letter-spacing: 1px;
    font-weight: 400;
    background-color: transparent !important;
}

/*** first level **/
nav.cbp-spmenu .side-nav-collapse > li > a {
	border-bottom:1px solid #e5e5e5 !important;
}

/** Second level **/
nav.cbp-spmenu .side-nav-collapse > li > ul > li > a {
    height: 30px;
    padding: 7px 15px;
    font-weight: 500;
}
nav.cbp-spmenu .side-nav-collapse > li > ul >li:first-child {
	/* margin-top: 10px; */
}
nav.cbp-spmenu .side-nav-collapse > li > ul >li:last-child {
	padding-bottom: 8px;
	border-bottom: 1px solid #e5e5e5;
}
nav.cbp-spmenu .side-nav-collapse > li > ul.cpOut {
	border-top: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
}

/** third level **/
nav.cbp-spmenu .side-nav-collapse > li > ul > li > ul > li > a {
	text-transform: lowercase;
	height: 30px;
	padding: 3px 15px;
	font-weight: 400;
	font-size: 14px;
}
nav.cbp-spmenu .side-nav-collapse > li > ul > li > ul > li:first-child {
	margin-top: 10px;
}
nav.cbp-spmenu .side-nav-collapse > li > ul > li > ul > li:last-child {
	padding-bottom: 12px;
	border-bottom: 1px solid #e5e5e5;
}
nav.cbp-spmenu .side-nav-collapse > li > ul > li > ul.cpOut {
	border-top: 1px solid #e5e5e5;
	border-bottom: 1px solid #e5e5e5;
}

/**/


































/**/