/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu li.regular-menu {position: relative;}

.sf-menu li.regular-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 99;
}
.sf-menu > li {
	float: left;
}
.sf-menu li:hover > ul,
.sf-menu li.sfHover > ul {
	display: block;
}

.sf-menu a {
	display: block;
	position: relative;
}
.sf-menu ul ul {
	top: 0;
	left: 100%;
}

.sf-menu .cbp-hrsub {display: none; position: absolute; z-index: 99; background: #2a5d2f; width: 75%; left: 0;}
.sf-menu .cbp-hrsub .cbp-hrsub-inner {padding: 30px 0px;}
.sf-menu .mega-menu:hover .cbp-hrsub {display: block;}
.sf-menu .mega-menu .menu-column img {max-width: 100%; height: auto; display: block; border: 3px solid #5ccb66; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
.sf-menu .mega-menu .menu-column h3 {font-size: 15px; font-weight: 700; color: #62d96d; padding: 15px 0px; text-transform: uppercase; font-family: 'AvenirLTStd';}
.sf-menu .mega-menu .menu-column ul {font-size: 14px; line-height: 20px; font-weight: 400; font-family: 'AvenirLTStd';}
.sf-menu .mega-menu .menu-column ul img {display: none;}
.sf-menu .mega-menu .menu-column ul li {position: relative;}
.sf-menu .mega-menu .menu-column ul li a {padding: 4px 0px;}
.sf-menu .mega-menu .menu-column ul li a:hover {color: #62d96d;}
.sf-menu .mega-menu .menu-column ul li.has-thumb:hover img {display: block; position: absolute; left: 0px; top: -125px; z-index: 9;}
.sf-menu .mega-menu .menu-column ul li.has-thumb:hover:before {content: ""; position: absolute; left: 10px; height: 0; width: 0; border: 10px solid transparent; border-top-color: #62d96d; display: block;}

.sf-menu li.regular-menu ul.thumb-menu li.has-thumb img {display: none; max-width: 100%; height: auto; border: 3px solid #5ccb66; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
.sf-menu li.regular-menu ul.thumb-menu li.has-thumb:hover img {display: block; position: absolute; left: 0px; top: -125px; z-index: 9;}
.sf-menu li.regular-menu ul.thumb-menu li.has-thumb:hover:before {content: ""; position: absolute; left: 10px; height: 0; width: 0; border: 10px solid transparent; border-top-color: #62d96d; display: block;}
.sf-menu li.regular-menu ul.thumb-menu .info-container {padding: .75em 0.5em 0em 0.5em;}
.sf-menu li.regular-menu ul.thumb-menu .info-container img {max-width: 100%; height: auto; display: inline-block; border: 3px solid #5ccb66; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}
.sf-menu li.regular-menu ul.thumb-menu .info-container h3 {font-size: 15px; padding-top: 15px; font-weight: 700; color: #62d96d; text-transform: uppercase; font-family: 'AvenirLTStd';}


.sf-menu .mega-menu .menu-column-container {padding: 0px 70px;}
.sf-menu .mega-menu .menu-column-container.border {border-left: 1px solid #398040;}

.sf-menu > li.sfHover .sf-with-ul:before {content: "";
	position: absolute; left: 20%;
	bottom: 0px; 
	height: 0;
	width: 0; 
	border: 10px solid transparent;
	border-bottom-color: #2a5d2f;
	display: block;
}

.menu-area {position: absolute; top: -20px; padding-left: 160px; width: 100%; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;}

/*** DEMO SKIN ***/
.sf-menu {
    float: left;
    width: 100%;
}
.sf-menu li.regular-menu ul {
	box-shadow: 2px 2px 6px rgba(0,0,0,.2);
	min-width: 12em; /* allow long menu items to determine submenu width */
	*width: 12em; /* no auto sub width for IE7, see white-space comment below */
	background: #2a5d2f;
}
.sf-menu > li > a {
	padding: 2.8em 0.7em;
	text-decoration: none;
	zoom: 1; /* IE7 */
	font-size: 13px;
	font-weight: 700;
	text-transform: uppercase;
}

.sf-menu > li > a:hover, .sf-menu > li.sfHover > a {color: #fbd77b;}

.sf-menu > li.regular-menu ul li > a {
	padding: .75em 0.7em;
	text-decoration: none;
	zoom: 1; /* IE7 */
	font-size: 13px;
	font-weight: 700;
}

.sf-menu > li.regular-menu ul li {background: #2a5d2f;}
.sf-menu > li.regular-menu ul li a {border-bottom: 1px solid #398040;}
.sf-menu > li.regular-menu ul li a:hover {color: #62d96d;}

.sf-menu a {
	color: #ffffff;
}
.sf-menu li {
	white-space: nowrap; /* no need for Supersubs plugin */
	*white-space: normal; /* ...unless you support IE7 (let it wrap) */
	-webkit-transition: background .2s;
	transition: background .2s;
}

.sf-menu li:hover,
.sf-menu li.sfHover {
	/* only transition out, not in */
	-webkit-transition: none;
	transition: none;
}

/*** arrows (for all except IE7) **/
.sf-arrows .sf-with-ul {
	padding-right: 2.5em;
	*padding-right: 1em; /* no CSS arrows for IE7 (lack pseudo-elements) */
}
/* styling for both css and generated arrows */
.sf-arrows .sf-with-ul:after {
	content: '';
	position: absolute;
	top: 50%;
	right: 1em;
	margin-top: -3px;
	height: 0;
	width: 0;
	/* order of following 3 rules important for fallbacks to work */
	border: 5px solid transparent;
	border-top-color: #ffffff; /* edit this to suit design (no rgba in IE8) */
}
.sf-arrows > li > .sf-with-ul:focus:after,
.sf-arrows > li:hover > .sf-with-ul:after,
.sf-arrows > .sfHover > .sf-with-ul:after {
	border-top-color: #fbd77b; /* IE8 fallback colour */
}
/* styling for right-facing arrows */
.sf-arrows ul .sf-with-ul:after {
	margin-top: -5px;
	margin-right: -3px;
	border-color: transparent;
	border-left-color: #ffffff; /* edit this to suit design (no rgba in IE8) */
}
.sf-arrows ul li > .sf-with-ul:focus:after,
.sf-arrows ul li:hover > .sf-with-ul:after,
.sf-arrows ul .sfHover > .sf-with-ul:after {
	border-left-color: #ffffff;
}
