/*================================================================
                 SUPERFISH MENU ESSENTIAL STYLES
================================================================*/

/* Make sure to use specificity below rather than changing these styles*/

.sf-menu, .sf-menu * {margin:0; padding:0; list-style:none;}
.sf-menu {line-height:1.0;}
.sf-menu ul { position:absolute; top:-999em; width:14em; /* left offset of submenus need to match (see below) */ }
.sf-menu ul li {width:100%;}
.sf-menu li {float:left; position:relative;}
.sf-menu li:hover { visibility:inherit; /* fixes IE7 'sticky bug' */ }

.sf-menu a { display:block; position:relative; }

.sf-menu li:hover ul,
.sf-menu li.sfHover ul { left:0; top:33px; /* match top ul list item height */ z-index:99; }

ul.sf-menu li:hover li ul,
ul.sf-menu li.sfHover li ul { top:-999em; }

ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul { left:14em; /* match ul width */ top:0; }

ul.sf-menu li li:hover li ul,
ul.sf-menu li li.sfHover li ul { top:-999em; }

ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul { left:14em; /* match ul width */ top:0; }

/*** shadows for all but IE6 ***/
.sf-shadow ul { background: url(/cms/images/layout/menu/shadow.png) no-repeat bottom right; padding:0 9px 9px 0; }
.sf-shadow ul.sf-shadow-off { background: transparent; }

/*** arrows **/
.sf-menu a.sf-with-ul { padding-right:2.25em; min-width:1px; /* trigger IE7 hasLayout so spans position accurately */ }

.sf-sub-indicator {
	position:absolute;
	display:block;
	right:.75em;
	top:.8em;
	width:10px;
	height:10px;
	text-indent:-999em;
	overflow:hidden;
	background: url(/cms/images/arrows-ffffff.png) no-repeat 0px -100px;
}

a:focus > .sf-sub-indicator,
a:hover > .sf-sub-indicator,
a:active > .sf-sub-indicator,
li:hover > a > .sf-sub-indicator,
li.sfHover > a > .sf-sub-indicator { background-position:-10px -100px; }

/* point right for anchors in subs */
.sf-menu ul .sf-sub-indicator {background-position: -10px 0;}
.sf-menu ul a > .sf-sub-indicator {background-position: 0 0;}

/* apply hovers to modern browsers */
.sf-menu ul a:focus > .sf-sub-indicator,
.sf-menu ul a:hover > .sf-sub-indicator,
.sf-menu ul a:active > .sf-sub-indicator,
.sf-menu ul li:hover > a > .sf-sub-indicator,
.sf-menu ul li.sfHover > a > .sf-sub-indicator {
	background-position: -10px 0; /* arrow hovers for modern browsers*/
}


/*================================================================
                      MAIN MENU SKIN
================================================================*/

.mainNav {
	-webkit-box-shadow:0 4px 5px 0px rgba(0, 0, 0, 0.2);
	-moz-box-shadow:0 4px 5px 0px rgba(0, 0, 0, 0.2);
	box-shadow:0 4px 5px 0px rgba(0, 0, 0, 0.2);
	margin-bottom:-20px;
	background:#fff;
	position:relative;
	z-index:1001;}

.mainNav ul { margin:0; padding:0; }

/* Temporary clearfix since we don't actually have a clearfix on sf-menu */
.mainNav .sf-menu:before, .mainNav .sf-menu:after { content: ""; display: table; }
.mainNav .sf-menu:after { clear: both; }
.mainNav .sf-menu { zoom: 1; }

/* Main Tier */
.mainNav .sf-menu { display:table; width:100%; }
.mainNav .sf-menu li { float:none; }
.mainNav .sf-menu > li { display:table-cell; vertical-align:middle; text-align:center; }
.mainNav .sf-menu > li .subMenu > a { display:table; width:100%; font-size:1.125em; text-decoration:none; color:#5c5c5c; text-transform: uppercase;}
.mainNav .sf-menu > li .subMenu > a .menuText { display:table-cell; padding:10px; height:40px; vertical-align:middle; text-align:center; font-weight:bold; }

.mainNav .sf-menu li.sfHover .subMenu > a,
.mainNav .sf-menu a.on,
.mainNav .sf-menu a:hover,
.mainNav .sf-menu a:focus,
.mainNav .sf-menu a:active {
	background: #004d8f; color:#fff !important;}

/* Sub Tier */
.mainNav .sf-menu li .subMenu { position:relative; }
.mainNav .sf-menu li:hover .subMenu > ul,
.mainNav .sf-menu li.sfHover .subMenu > ul { top:60px; }
.mainNav .sf-menu li ul { min-width:100%; background-color:#004d8f; padding:10px;}
.mainNav .sf-menu li ul li { min-width:100%; background-color:#004d8f; }

.mainNav .sf-menu li li {}
.mainNav .sf-menu li li:first-child {}
.mainNav .sf-menu li li a {color:#fff; text-align:left; font-size:0.813em; height:auto; padding:10px; text-decoration:none; font-weight:bold; text-transform: uppercase;}

/* Sub Sub Tier */
.js .mainNav .sf-menu li li ul { display:none; visibility:hidden; }
.mainNav .sf-menu li li:hover > ul,
.mainNav .sf-menu li li.sfHover > ul { top:0; left:100%; }

.mainNav .sf-menu li li.sfHover > a,
.mainNav .sf-menu li li a:hover,
.mainNav .sf-menu li li a:focus,
.mainNav .sf-menu li li a:active { background:#da0404;}


/* last Nav Item Adjustments */
.mainNav .sf-menu .lastnavitemli .subMenu > ul { left:auto; right:0; }
.mainNav .sf-menu .lastnavitemli li:hover > ul,
.mainNav .sf-menu .lastnavitemli li.sfHover > ul { left:auto; right:100%; }

.menuLink {display:none; font-size:2em; color:#29367f; padding:5px 10px; text-align:right; position:relative; }
.menuLink:hover, .menuLink:focus {text-decoration:none; }

/* Showing expand buttons - didn't want to include in base */

.mainNav .sf-menu li .expandMenu,
.mainNav .sf-menu li .subMenu .expandMenu { display:none; position:absolute; top:0; right:0; z-index:99; border-left:1px solid #fff; padding:1em; width:auto; }
.mainNav .sf-menu li li .expandMenu,
.mainNav .sf-menu li .subMenu li .expandMenu { border-left:1px solid #fff; padding:10px 14px; }

.no-js .mainNav {display:block;}

@media only screen and (max-width: 767px) {
	.mainNav .sf-menu > li > a .menuText,
	.mainNav .sf-menu > li .subMenu > a .menuText { height:60px; }
	.mainNav .sf-menu li:hover .subMenu > ul,
	.mainNav .sf-menu li.sfHover .subMenu > ul,
	.mainNav .sf-menu li:hover .subNav,
	.mainNav .sf-menu li.sfHover .subNav { top:80px; }

	.mainNav .sf-menu li.sfHover .subMenu > a,
	.mainNav .sf-menu a.on,
	.mainNav .sf-menu a:hover,
	.mainNav .sf-menu a:focus,
	.mainNav .sf-menu a:active {background: #fff; color:#5c5c5c !important;}


	.mainNav .sf-menu li li.sfHover > a,
	.mainNav .sf-menu li li a:hover,
	.mainNav .sf-menu li li a:focus,
	.mainNav .sf-menu li li a:active { color:#fff !important;}

	.mainNav .sf-menu,
	.mainNav .sf-menu li,
	.mainNav .sf-menu li a,
	.mainNav .sf-menu li a .menuText,
	.mainNav .sf-menu li ul { width:100%; display:block; }

	.mainNav .sf-menu li li a { width:96%; padding:10px 2%; }

	.mainNav .sf-menu li { border-top:1px solid #fff; }

	.mainNav .sf-menu li a .menuText,
	.mainNav .sf-menu > li .subMenu > a .menuText { height:auto; padding:1em 0; }

	.mainNav .sf-menu li .expandMenu,
	.mainNav .sf-menu li .subMenu .expandMenu { display:block; }

	.mainNav .sf-menu li .subNav,
	.mainNav .sf-menu li ul,
	.mainNav .sf-menu li ul ul {
		position: static!important;
		top: auto!important;
		left: auto!important;
		width: auto!important;
		height: auto!important;
		display: none!important;}

	.mainNav .sf-menu li .subNav.open,
	.mainNav .sf-menu li .open	{
		display:block!important;
		padding:0;
		visibility:visible!important;}

	.mainNav .sf-menu li .subNav > ul { display: block!important; }

	.mainNav .sf-menu li li { border:0; background:#eddfb3; }
	.mainNav .sf-menu li li:first-child a { border-top:1px solid #fff; }
	.mainNav .sf-menu li li li a {padding: 10px 5%; width: 90%;}
}


@media only screen and (min-width: 768px) and (max-width: 959px) {

}

@media only screen and (min-width: 480px) and (max-width: 767px) {
	.menuLink {display:block;}
	.mainNav ul {display: none !important;}
	.active ul  {display: block !important;}
}

@media only screen and (min-width: 180px) and (max-width: 479px) {
	.menuLink {display:block;}
	.mainNav ul {display: none !important;}
	.active ul  {display: block !important;}
}

@media only screen and (min-width:600px) and (max-width: 630px) {
	.mainNav .sf-menu li a .menuText,
	.mainNav .sf-menu > li .subMenu > a .menuText {font-size:.85em; line-height:1.2em; padding:10px 7px;}
}