@import url(http://fonts.googleapis.com/css?family=Montserrat:400,700);
:root{
	--menu-size: 50px;/* Declared on the root to be used by the page element for header padding offset when set as a fixed position */
}
#cssmenu-wrapper{

	position: relative;

	/* Import colors from main styles if they exist, else use the fallbacks */
	--menu-clr-primary: var(--header-clr-primary, #dddddd);
	--menu-clr-primary-rgb: var(--header-clr-primary-rgb, 221, 221, 221);
	--menu-clr-primary-active: var(--header-clr-highlight, #ffffff);
	--menu-clr-primary-active-rgb: var(--header-clr-highlight-rgb, 255, 255, 255);

	--menu-clr-bg: var(--header-clr-bg, #333333);
	--menu-clr-bg-rgb:  var(--header-clr-bg-rgb, 51, 51, 51);
	--menu-clr-bg-active:  var(--header-clr-bg-highlight, #222222);
	--menu-clr-bg-active-rgb: var(--header-clr-bg-highlight-rgb, 34, 34, 34);

	--menu-btn-color: var(--header-btn-color, var(--menu-clr-primary));
	--menu-btn-color-rgb: var(--header-btn-color-rgb, var(--menu-clr-primary-rgb));
	--menu-btn-color-active: var(--header-btn-color-active, var(--menu-clr-primary-active));
	--menu-btn-color-active-rgb: var(--header-btn-color-active-rgb, var(--menu-clr-primary-active-rgb));

	--menu-logo-size: var(--header-height);
	--menu-logo-width: calc(var(--menu-logo-size) * 4.5);/* Overwrite as needed. */
	--menu-logo-height: var(--menu-logo-size);
	--menu-logo-v-inset: 5px;/* Vertical inset */
	--menu-logo-h-inset: 0px;/* Horizontal inset */
	--menu-logo-v-offset: 0px;/* Vertical offset */
	--menu-logo-h-offset: var(--inner-h-padding, 15px);/* Horizontal offset */

	/* Used for mobile menu */
	--menu-item-indent: var(--inner-h-padding, 24px);
	--menu-item-indent-mult: 0.66;
	--menu-btn-inset: 12px;
	--menu-btn-v-offset: 0px;
	--menu-btn-h-offset: 0px;
	--menu-btn-size: calc(var(--menu-size) - (var(--menu-btn-inset) * 2));
	--menu-btn-line-thickness: 2px;

}
#cssmenu-logo{
	position: absolute;
/* 	top: calc(var(--menu-logo-v-inset) + var(--menu-logo-v-offset)); */
	top: 0;
	left: calc(var(--menu-logo-h-inset) + var(--menu-logo-h-offset));
	height: 100%;
	width: calc(var(--menu-logo-width) - (var(--menu-logo-h-inset) * 2));
	z-index: 1010;
}
/* 
#cssmenu-logo:hover,
#cssmenu-logo:focus-visible{
	transform: scale(1.05);
}
*/
#cssmenu-logo img{
	position: absolute;
	top: 0;
	left: 0;
/* 	transform: translate(0, -50%); */
	display: block;
	height: auto;
	width: 100%;
/* 	max-width: 100%; */
/* 	max-height: 100%; */
}
/* Placeholder if there is no image */
#cssmenu-logo img[src=''],
#cssmenu-logo img:not([src]){
	width: 100%;
	height: 100%;
}
#cssmenu,
#cssmenu ul,
#cssmenu li,
#cssmenu a,
#cssmenu-btn {
	margin: 0;
	padding: 0;
	border: 0;
	list-style: none;
	line-height: 1em;
	display: block;
	position: relative;
	box-sizing: border-box;
}
#cssmenu {
    font-family: "acumin-pro-condensed", arial, helvetica, sans-serif;
	font-weight: 500;
	background: var(--menu-clr-bg);
	color: var(--menu-clr-primary);
	height: var(--menu-size);
	width: 100%;
	margin: 0 auto;
	text-align: right;
	z-index: 1000;
	isolation: isolate;
}
#cssmenu-btn {
	display: none;
}
#cssmenu > ul{
	margin: 0 auto;
	width: auto;
	position: relative;
}
#cssmenu li:hover > ul,
#cssmenu li:focus-within > ul {
	left: auto;
	/* display: block; */
}
#cssmenu ul li{
	text-align: left;
}
#cssmenu > ul > li {
	display: inline-block;
	vertical-align: middle;
}
#cssmenu > ul > li > a {
	height: var(--menu-size);
	line-height: var(--menu-size);
	margin: 0px;
    padding: 0 0.5em;
	letter-spacing: 0.04em;
	text-decoration: none;
	color: var(--menu-clr-primary);
	font-weight: 400;
}
#cssmenu li:hover > a,
#cssmenu li:focus-within > a,
#cssmenu li a:focus-visible,
#cssmenu li.cssm-sub-opened > a{
	background: var(--menu-clr-bg-active);
	color: var(--menu-clr-primary-active);
}
#cssmenu li.cssm-has-sub > a{
	padding-right: 30px;
}
#cssmenu li.cssm-has-sub > a:after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 11px;
	width: 8px;
	height: 2px;
	display: block;
	background: var(--menu-clr-primary);
}
#cssmenu li.cssm-has-sub > a:before {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 14px;
	display: block;
	width: 2px;
	height: 8px;
	background: var(--menu-clr-primary);
	transition: all .25s ease;
}
#cssmenu li:hover > a:before,
#cssmenu li:hover > a:after,
#cssmenu li:focus-within > a:before,
#cssmenu li:focus-within > a:after {
	background-color: var(--menu-clr-primary-active);
}
#cssmenu li.cssm-has-sub:hover > a:before,
#cssmenu li.cssm-has-sub:focus-within > a:before,
#cssmenu li.cssm-has-sub > a:focus-visible:before,
#cssmenu li.cssm-sub-opened > a:before {
	height: 0;
}
#cssmenu > ul > li > a > img{
	vertical-align: middle;
	height: 1.75em;
	width: auto;
	max-width: 100%;
	margin: 0 0.33em 0.33em 0;
	user-select: none;
	pointer-events: none;
}
#cssmenu ul ul {
	box-shadow: 5px 5px 10px -5px var(--menu-clr-bg-active);
	position: absolute;
	z-index: 300;
	/* display: none; */
	left: -9999px;
}
#cssmenu ul ul ul {
	margin-left: 100%;
	top: 0;
}
#cssmenu ul li a{
	cursor: pointer;
    font-size: 1.25em;
}
#cssmenu ul li a[href=""],
#cssmenu ul li a:not([href]){
  cursor: default;
}
#cssmenu ul ul li a {
	font-size: 14px;
	padding: 1em;
	min-width: 9em;
	font-weight: 400;
	text-decoration: none;
	color: var(--menu-clr-primary);
	background: var(--menu-clr-bg);
	box-shadow: inset 0px 1px 0px 0px rgba(var(--menu-clr-primary-rgb), 0.2);
}



/* Desktop - Laptop */

@media all and (max-width: 1300px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1300px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1300px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1300px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1300px),
only screen and (min-resolution: 192dpi) and (max-width: 1300px),
only screen and (min-resolution: 2dppx) and (max-width: 1300px) {

#cssmenu ul li a {
	font-size: calc(0.24em + 1.2vw);
	padding: 0 0.33em;
}


}


/* Mobile - Tablet and Phone */

@media all and (max-width: 1024px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 1024px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 1024px),
only screen and (min-resolution: 192dpi) and (max-width: 1024px),
only screen and (min-resolution: 2dppx) and (max-width: 1024px) {

:root{
	--menu-size: 64px;
}
#cssmenu {
	width: 100%;
	text-align: center;
}
#cssmenu:after{
    content: 'Menu';
    font-size: 1.25em;
    position: absolute;
    right: calc(var(--menu-btn-size) + (var(--menu-btn-inset) * 2));
    top: 50%;
    transform: translate(0, -50%);
}
#cssmenu-logo{
    width: calc((var(--menu-logo-width) - (var(--menu-logo-h-inset) * 2)) * 0.75);
}
#cssmenu-logo img {
    top: 50%;
    transform: translate(0, -50%);
}
#cssmenu.cssmenu-opened #cssmenu-btn,
.cssm-sub-opened > .cssm-sub-btn {
	--menu-btn-color: var(--menu-btn-color-active);
	--menu-btn-color-rgb: var(--menu-btn-color-active-rgb);
}
#cssmenu ul{
	--menu-btn-inset: 14px;
	--menu-btn-v-offset: 0px;
	--menu-btn-h-offset: 0px;
	--menu-btn-size: calc(var(--menu-size) - (var(--menu-btn-inset) * 2));
	display: none !important;
	box-shadow: none;
	background: var(--menu-clr-bg);
	margin: 0;
	display: none;
	z-index: 100;
}
#cssmenu ul ul,
#cssmenu ul ul ul {
	position: relative;
	left: 0;
	width: 100%;
	margin: 0;
	text-align: left;
}
#cssmenu > ul{
	/* padding-top: var(--menu-size); */
	height: calc(100vh - var(--menu-size));
	border-top: 1px solid rgba(var(--menu-clr-primary-rgb), 0.3);
	overflow: auto;
}
#cssmenu > ul,
#cssmenu .cssm-has-sub > ul{
	opacity: 0;
	transition: opacity 1s ease;
}
#cssmenu.cssmenu-opened > ul,
#cssmenu .cssm-sub-opened > ul{
	display: block !important;
	position: absolute;
	left: 0;
	right: 0;
	top: 100%;
	opacity: 1;
}
#cssmenu .cssm-has-sub{
	isolation: isolate;/* To guarantee a complete overlay of menu items behind. Keeps the backdrop inside the active item, over others. */
}
#cssmenu .cssm-sub-opened{
	z-index: 2;
}
#cssmenu .cssm-sub-opened ~ .cssm-sub-opened{
	z-index: 1;
}
#cssmenu ul li{
	border: none;
	width: 100%;
	text-align: left;
}
#cssmenu ul li:after{
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border-bottom: 1px solid rgba(var(--menu-clr-primary-rgb), 0.3);
	pointer-events: none;
}
#cssmenu ul li a {
    font-size: 1.35em;
}
#cssmenu > ul > li > a > img {
	margin-right: var(--menu-item-indent);
	width: 3em;
	object-fit: contain;
	object-position: center center;
}
/* Color-out behind opened menus */
#cssmenu.cssmenu-opened:before,
#cssmenu .cssm-sub-opened:before{
	content: '';
	position: fixed;
	top: var(--menu-size);
	left: 0;
	right: 0;
	bottom: 0;
	background: var(--menu-clr-bg);
}
#cssmenu .cssm-sub-opened:before{
	position: absolute;
	bottom: auto;
	height: calc(100vh - 1px - (var(--menu-size) * 2));
	/* background: rgba(var(--menu-clr-bg-rgb), 0.8); */
}
#cssmenu .cssm-sub-opened .cssm-sub-opened:before{
	height: calc(100vh - 1px - (var(--menu-size) * 3));
}
#cssmenu .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened:before{
	height: calc(100vh - 1px - (var(--menu-size) * 4));
}
#cssmenu .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened:before{
	height: calc(100vh - 1px - (var(--menu-size) * 5));
}
#cssmenu .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened:before{
	height: calc(100vh - 1px - (var(--menu-size) * 6));
}
#cssmenu .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened .cssm-sub-opened:before{
	height: calc(100vh - 1px - (var(--menu-size) * 7));
}
#cssmenu ul ul li,
#cssmenu li:hover > ul > li {
	height: auto;
}
#cssmenu ul li a {
	width: 100%;
	height: var(--menu-size);
	line-height: var(--menu-size);
/* 	font-size: 1.25em !important; */
/* 	font-weight: 700 !important; */
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	/* border-bottom: 1px solid rgba(var(--menu-clr-primary-rgb), 0.3); */
	padding-right: var(--menu-item-indent);
	padding-left: var(--menu-item-indent);
	color: var(--menu-clr-primary);
	background: none;
	box-shadow: none !important;
}
/* Up to 7 layers deep - Expand further if needed, but turn down the indentation or multiplier. */
/* The last item's descendants will inherit its padding. It just stop indenting further. */
#cssmenu ul ul li a {
	padding-left: calc(var(--menu-item-indent) + (var(--menu-item-indent) * var(--menu-item-indent-mult)));
}
#cssmenu ul ul ul li a {
	padding-left: calc(var(--menu-item-indent) + (var(--menu-item-indent) * var(--menu-item-indent-mult) * 2));
}
#cssmenu ul ul ul ul li a {
	padding-left: calc(var(--menu-item-indent) + (var(--menu-item-indent) * var(--menu-item-indent-mult) * 3));
}
#cssmenu ul ul ul ul ul li a {
	padding-left: calc(var(--menu-item-indent) + (var(--menu-item-indent) * var(--menu-item-indent-mult) * 4));
}
#cssmenu ul ul ul ul ul ul li a {
	padding-left: calc(var(--menu-item-indent) + (var(--menu-item-indent) * var(--menu-item-indent-mult) * 5));
}
#cssmenu ul ul ul ul ul ul ul li a {
	padding-left: calc(var(--menu-item-indent) + (var(--menu-item-indent) * var(--menu-item-indent-mult) * 6));
}
#cssmenu li:hover > a,
#cssmenu li a:focus-visible{
	background: none;
	color: var(--menu-clr-primary);
}
#cssmenu ul li.cssm-has-sub > a {
	padding-right: var(--menu-size);
}
/* #cssmenu li.cssm-sub-opened a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.3);
}
#cssmenu li.cssm-sub-opened li.cssm-sub-opened a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.5);
}
#cssmenu li.cssm-sub-opened li.cssm-sub-opened li.cssm-sub-opened a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.6);
} */
#cssmenu li.cssm-sub-opened > a{
	background: rgba(var(--menu-clr-bg-active-rgb), 1) !important;
	color: var(--menu-clr-primary-active) !important;
}
#cssmenu li.cssm-has-sub li.cssm-sub-opened > a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.75);
}
#cssmenu li.cssm-has-sub li.cssm-has-sub li.cssm-sub-opened > a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.6);
}
#cssmenu li.cssm-has-sub li.cssm-has-sub li.cssm-has-sub li.cssm-sub-opened > a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.5);
}
#cssmenu li.cssm-has-sub li.cssm-has-sub li.cssm-has-sub li.cssm-has-sub li.cssm-sub-opened > a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.4);
}
#cssmenu li.cssm-has-sub li.cssm-has-sub li.cssm-has-sub li.cssm-has-sub li.cssm-has-sub li.cssm-sub-opened > a{
	background: rgba(var(--menu-clr-bg-active-rgb), 0.3);
}
#cssmenu > ul > li.cssm-has-sub > a:after,
#cssmenu > ul > li.cssm-has-sub > a:before,
#cssmenu ul ul > li.cssm-has-sub > a:after,
#cssmenu ul ul > li.cssm-has-sub > a:before {
	display: none;
}
#cssmenu-btn {
	position: absolute;
	z-index: 101;/* In front of the main dropdown */
	display: block;
	top: calc(var(--menu-btn-inset) + var(--menu-btn-v-offset));
	right: calc(var(--menu-btn-inset) + var(--menu-btn-h-offset));
	height: var(--menu-btn-size);
	width: var(--menu-btn-size);
	color: var(--menu-btn-color);
	cursor: pointer;
	box-sizing: border-box;
	border: var(--menu-btn-line-thickness) solid var(--menu-btn-color);
	border-radius: calc(var(--menu-btn-size) * 0.15);
}
#cssmenu-btn:before,
#cssmenu-btn:after{
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	width: calc(var(--menu-btn-size) * 0.625);
	transition: all 0.25s ease;
}
#cssmenu-btn:before {
	height: var(--menu-btn-line-thickness);
	background: var(--menu-btn-color);
}
#cssmenu-btn:after {
	height: calc(var(--menu-btn-size) * 0.275);
	border-top: var(--menu-btn-line-thickness) solid var(--menu-btn-color);
	border-bottom: var(--menu-btn-line-thickness) solid var(--menu-btn-color);
}
#cssmenu.cssmenu-opened #cssmenu-btn:before,
#cssmenu.cssmenu-opened #cssmenu-btn:after{
	background: rgba(var(--menu-clr-primary-active-rgb), 0.5);
	width: calc(var(--menu-btn-size) * 0.5);
	transition: transform 0.25s ease, width 0.25s ease;
}
#cssmenu.cssmenu-opened #cssmenu-btn:before {
	transform: translate(-50%,-50%) rotate(-45deg);
}
#cssmenu.cssmenu-opened #cssmenu-btn:after {
	height: var(--menu-btn-line-thickness);
	border: 0;
	transform: translate(-50%,-50%) rotate(45deg);
}
#cssmenu.cssmenu-opened #cssmenu-btn:before,
#cssmenu.cssmenu-opened #cssmenu-btn:after{
	background: var(--menu-btn-color);
}
#cssmenu.cssmenu-opened #cssmenu-btn:before {
	transform: translate(-50%, -50%) rotate(-45deg);
}
#cssmenu.cssmenu-opened #cssmenu-btn:after {
	transform: translate(-50%, -50%) rotate(45deg);
	border: 0;
}
.cssm-sub-btn {
	position: absolute;
	z-index: 99;
	display: block;
	top: 0;
	right: 0;
	cursor: pointer;
	top: calc(var(--menu-btn-inset) + var(--menu-btn-v-offset));
	right: calc(var(--menu-btn-inset) + var(--menu-btn-h-offset));
	height: var(--menu-btn-size);
	width: var(--menu-btn-size);
	color: var(--menu-btn-color);
	box-sizing: border-box;
	border: var(--menu-btn-line-thickness) solid rgba(var(--menu-btn-color-rgb), 0.3);
	border-radius: calc(var(--menu-btn-size) * 0.15);
}
li.cssm-sub-opened > .cssm-sub-btn{
	border-color: var(--menu-btn-color);
}
.cssm-sub-btn:before,
.cssm-sub-btn:after {
	content: '';
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/* Cevron Buttons */
#cssmenu.cssmenu-chevron-btns .cssm-sub-btn:after{
	content:'>';
	text-align: center;
	font-weight: bold;
	background: none;
	width: calc(var(--menu-btn-size) * 0.4);
	height: calc(var(--menu-btn-size) * 0.4);
	transition: transform 0.25s ease;
}
#cssmenu.cssmenu-chevron-btns .cssm-sub-btn:before{
	display: none;
}
#cssmenu.cssmenu-chevron-btns li.cssm-sub-opened >.cssm-sub-btn:after{
	transform: translate(-50%, -50%) rotate(90deg);
}

/* Plus Buttons */
#cssmenu.cssmenu-plus-btns .cssm-sub-btn:before,
#cssmenu.cssmenu-plus-btns .cssm-sub-btn:after{
	width: var(--menu-btn-line-thickness);
	height: calc(var(--menu-btn-size) * 0.4);
	background: var(--menu-btn-color);
	transition: transform 0.25s ease;
}
#cssmenu.cssmenu-plus-btns li.cssm-sub-opened > .cssm-sub-btn:after{
	transform: translate(-50%, -50%) rotate(180deg);
}
#cssmenu.cssmenu-plus-btns li.cssm-sub-opened > .cssm-sub-btn:before {
	transform: translate(-50%, -50%) rotate(90deg);
}
#cssmenu.cssmenu-plus-btns .cssm-sub-btn:after {
	width: calc(var(--menu-btn-size) * 0.4);
	height: var(--menu-btn-line-thickness);
}


}


/* Mobile - Phone */

@media all and (max-width: 700px),
only screen and (-webkit-min-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (min--moz-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (-o-min-device-pixel-ratio: 2/1) and (max-width: 700px),
only screen and (min-device-pixel-ratio: 2) and (max-width: 700px),
only screen and (min-resolution: 192dpi) and (max-width: 700px),
only screen and (min-resolution: 2dppx) and (max-width: 700px) {

#cssmenu-logo{
	width: calc((var(--menu-logo-width) - (var(--menu-logo-h-inset) * 2)) * 0.5);
}

}