@font-face {
	font-family: 'bpmenu';
	src:url('../webfont/bpmenu/bpmenu.eot');
	src:url('../webfont/bpmenu/bpmenu.eot?#iefix') format('embedded-opentype'),
		url('../webfont/bpmenu/bpmenu.woff') format('woff'),
		url('../webfont/bpmenu/bpmenu.ttf') format('truetype'),
		url('../webfont/bpmenu/bpmenu.svg#bpmenu') format('svg');
	font-weight: normal;
	font-style: normal;
}

/* Main menu wrapper */
.cbp-hsmenu-wrapper
{
    position: relative;
}

/* Common style for all lists */
.cbp-hsmenu-wrapper ul {
	list-style: none;
	padding: 0;
	margin: 0 auto;
}

/* 100% width bar for menu */
.cbp-hsinner
{
    background: #000000;
    position: relative;
    z-index: 100;
}

/* Main menu style */
.cbp-hsmenu-wrapper .cbp-hsmenu
{
    text-align: center;
    background: #000;
}

.cbp-hsmenu > li
{
    margin-left: 1.5em;
    display: inline-block;
}

.cbp-hsmenu > li:first-child {
	margin-left: 0;
}

/* Main menu link style */
.cbp-hsmenu > li > a {
	color: #fff;
	font-size: 1.0em;
	line-height: 3em;
	display: inline-block;
	position: relative;
	z-index: 10000;
	outline: none;
}

.no-touch .cbp-hsmenu > li > a:hover, .no-touch .cbp-hsmenu > li > a:focus, .cbp-hsmenu > li.cbp-hsitem-open > a
{
    color: #30cdd7;
}

/* Add an arrow to the main menu link if it has a submenu (not the only child) */
.cbp-hsmenu > li > a:not(:only-child):before {
	display: inline-block;
	font-family: 'bpmenu';
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	content: "\f107";
	font-size: 100%;
	margin-right: 0.5em;
	vertical-align: middle;
}

.cbp-hsmenu > li.cbp-hsitem-open > a:not(:only-child):before {
	content: "\f106";
}

/* Add a triangle to currently open menu item link */
.cbp-hsmenu > li.cbp-hsitem-open > a:after {

}

/* Submenu style */
.cbp-hssubmenu
{
    background-color: #eee;
    position: absolute;
    left: 0;
    top: 100%;
    width: 100%;
    z-index: 0;
    opacity: 1;
    text-align: center; /* for aligning the sub items */
    visibility: hidden;
    vertical-align: middle;    
}

.cbp-hssubmenu:before, 
.cbp-hssubmenu:after  {
    background-color: #eee;
	content: " "; 
	display: table; 
}
.cbp-hssubmenu:after { 
	clear: both; 
}

/* Let's allow 6 item in a row */
.cbp-hssubmenu > li
{
    display: inline-block;
    vertical-align: top;
    box-shadow: -28px 0 0 -27px #000, 0 -28px 0 -27px #000;
    opacity: 0;
    -webkit-transition: opacity 0.1s 0s;
    -moz-transition: opacity 0.1s 0s;
    transition: opacity 0.1s 0s;
    font-size: small;
    background-color: #EEEEEE;
}

/* First 6 items don't have upper box shadow */
.cbp-hssubmenu > li:nth-child(-n+7) {
	box-shadow: none;
	
} 

/* Every 7th item does not have a left box shadow */
.cbp-hssubmenu > li:nth-child(7n+1) {
	box-shadow: none;
}

/* The first one does not have any box shadow */
.cbp-hssubmenu > li:first-child {
	box-shadow: none;
}

.cbp-hssubmenu > li a
{
    display: block;
    text-align: center;
    color: #000;
    outline: none;
    padding: 1em 1em 0em 1em;

}

.no-touch .cbp-hssubmenu > li a:hover,
.no-touch .cbp-hssubmenu > li a:focus {
	color: #30cdd7;
}

.cbp-hssubmenu > li a img {
	border: none;
	outline: none;
	display: inline-block;
	margin: 0;
	max-width: 100%;
	-webkit-transition: opacity 0.2s;
	-moz-transition: opacity 0.2s;
	transition: opacity 0.2s;
}

.no-touch .cbp-hssubmenu > li a:hover img {
	opacity: 0.75;
}

.cbp-hssubmenu > li a span {
	display: block;
	min-height: 3em;
	margin-top: 0.4em;
}

.cbp-hsmenu > li.cbp-hsitem-open .cbp-hssubmenu {
	z-index: 1000;
	visibility: visible;
}

.cbp-hsmenu > li.cbp-hsitem-open .cbp-hssubmenu > li {
	opacity: 1;
	-webkit-transition: opacity 0.5s 0.1s;
	-moz-transition: opacity 0.5s 0.1s;
	transition: opacity 0.5s 0.1s;
}

/* Helper div for animating the background */
.cbp-hsmenubg {
	background: #f7f7f7;
	position: absolute;
	width: 100%;
	top: 100%;
	left: 0;
	z-index: 0;
	height: 0px;
}

.no-touch .cbp-hsmenubg {
	-webkit-transition: height 0.1s;
	-moz-transition: height 0.1s;
	transition: height 0.1s;
}

@media screen and (max-width: 65em){
	.cbp-hsmenu-wrapper {
		font-size: 80%;
	}

    }

@media screen and (max-width: 51.4375em){
	.cbp-hsmenu-wrapper {
		font-size: 100%;
	}

	.cbp-hsmenu-wrapper .cbp-hsmenu {
		padding: 0;
		max-width: none;
		width: 100%;
	}

	.cbp-hsmenu > li {
		border-top: 1px solid rgba(255,255,255,0.5);
		text-align: center;
		margin: 0 auto;
		display: block;
	}

	.cbp-hsmenu > li:first-child {
		border-top: none;
	}

	.cbp-hsmenu > li > a {
		display: block;
	}

	.cbp-hsmenu > li > a:not(:only-child):before {
		line-height: 1.8;
		right: 0;
		position: absolute;
		font-size: 100%;
	}

	.cbp-hsmenubg {
		display: none;
	}

	.cbp-hssubmenu
    {
        background: #eee;
        position: relative;
        overflow: hidden;
        height: 0;
    }

	.cbp-hsmenu > li.cbp-hsitem-open .cbp-hssubmenu {
		height: auto;
	}

	/* Let's only allow 3 item in a row now */
	.cbp-hssubmenu > li {
		width: 30%;
	}

	/* Reset box shadows for the 6 items in row case */
	.cbp-hssubmenu > li:nth-child(-n+8),
	.cbp-hssubmenu > li:nth-child(8n+1) {
		box-shadow: -28px 0 0 -27px #ff0000, 0 -28px 0 -27px #ff0000;
	}

	/* First 4 items don't have upper box shadow */
	.cbp-hssubmenu > li:nth-child(-n+1) {
		box-shadow: -28px 0 0 -27px #ff0000;
	} 

	/* Every 5th item does not have a left box shadow */
	.cbp-hssubmenu > li:nth-child(1n+1) {
		box-shadow:  0 0px 0 0px #ff0000;
	}

}

@media screen and (max-width: 25em){
	/* Let's only allow 1 item in a row now */
	.cbp-hssubmenu > li
    {
        width: 100%;
        display: block;
        font-size: 30%;
        vertical-align: bottom;
        text-align: left;
    }

	.cbp-hsmenu-wrapper .cbp-hssubmenu > li
    {
        box-shadow: 1 1px #800000;

    }

	.cbp-hssubmenu > li a
    {
        text-align: left;
        line-height: normal;
        padding: 0.4em 0.4em;
        vertical-align: middle;
    }

	.cbp-hssubmenu > li a img
    {
        float: left;
        max-height: 30px;
        padding-right: 1em;
    }

	.cbp-hssubmenu > li a span {
		min-height: 3;
		margin: 3;
	}
}
