/*** ESSENTIAL STYLES ***/
.sf-menu, .sf-menu * {
	margin: 0;
	padding: 0;
	list-style: none;
}
.sf-menu li {
	position: relative;
	font-size: 16px;
}
.sf-menu li li {
	font-size: 14px;
}
.sf-menu ul {
	position: absolute;
	display: none;
	top: 100%;
	left: 0;
	z-index: 99;
	width: 200px;
}
.sf-menu > li {
	float: left;
}
.sf-menu li li.sfHover, .sf-menu li li, .sf-menu li li:hover {
  border-right: medium none;
  float: none;
  position: relative;
}
.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%;
}


/*** DEMO SKIN ***/
.sf-menu {
	float: left;
}
.sf-menu ul {
	box-shadow: 2px 2px 6px rgba(0,0,0,.2);
	min-width: 16em; /* allow long menu items to determine submenu width */
	*width: 12em; /* no auto sub width for IE7, see white-space comment below */
}
.sf-menu a {
	border-left: 1px solid #fff;
	border-top: 1px solid rgba(255,255,255,.5);
	padding: 14px 10px 22px;
	text-decoration: none;
	zoom: 1; /* IE7 */
}
.sf-menu a {
	color: #eee;
}
.sf-menu li:hover a, .sf-menu li.sfHover a {
	color: #fff;
}
.sf-menu li {
/*	background: #BDD2FF; */
	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 ul li {
	background: #AABDE6;
}
.sf-menu ul ul li {
	background: #9AAEDB;
}
.sf-menu li:hover,
.sf-menu li.sfHover {
	background: #3D3D3D;
	/* 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: #dFeEFF; /* edit this to suit design (no rgba in IE8) */
	border-top-color: rgba(255,255,255,.5);
}
.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: white; /* 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: #dFeEFF; /* edit this to suit design (no rgba in IE8) */
	border-left-color: rgba(255,255,255,.5);
}
.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: white;
}


/* JKP Styling ================================================================================= */

.nav-container {
  background:#09347A;
		position: relative;
  z-index: 2;
		margin:0 -20px;
		max-width:1270px;
}
.nav-container:before { position:absolute; left:0; bottom:0; margin-bottom:-19px; display:block; width:20px; height:19px; background:url(../images/nav_corner_left.png) no-repeat; content:" "; }
.nav-container:after { position:absolute; right:0; bottom:0; margin-bottom:-19px; display:block; width:20px; height:19px; background:url(../images/nav_corner_right.png) no-repeat; content:" "; }

/* Categories on homepage */
/* #right-cats .sf-menu li a {
    color: #09347A;
}
#right-cats .sf-menu li:hover,
#right-cats .sf-menu li.sfHover {
	background: #eee;
}
#right-cats .sf-menu li {
    display: block;
    float: none;
    font-size: 18px;
}
#right-cats .sf-menu > li > a > span {
  white-space: normal;
} */
.sf-menu ul li {
	background: #09347A;
	background: none repeat scroll 0 0 rgba(9, 52, 122, 0.8);
}
.sf-menu a {
	padding: 5px;
}
.sf-menu li li a {
	padding: 3px;
}
#right-cats .sf-menu > li > a {
  color: #09347A;
}
#right-cats .sf-menu li > a:hover, #right-cats .sf-menu li.sfHover > a {
  color: #fff;
}

.sf-menu li {
  white-space: normal;
}

/* JKP Styling - Responsive  ================================================================================= */

.sf-menu ul {
	width: auto;
}

@media only screen and (min-width: 980px) {
	#top-subjects-menu,
    .menu-icon,
    .sf-menu-phone {  display: none !important;}
}
@media only screen and (max-width: 979px) {
  #right-cats {
  	display: none;
  }
  .sf-menu,
  .sf-menu-phone {display: none;}
  /* menu icon */
  .menu-icon {
    display: block;
    background: url(../images/menu-icon-bg.png) 95% 11px no-repeat #303030;
    border-bottom: 5px solid #6e6e6e;
    font-size: 17px;
    line-height: 21px;
    color: #fff;
    cursor: pointer;
    text-transform: uppercase;
    padding: 13px 0 0 20px;
    height: 33px;
    margin: 0 0;
  }

  .menu-icon.active { background-position: 95% -47px;  }

  .sf-menu-phone {
    background: #303030;
    position: relative;
    padding: 13px 20px 20px;
    z-index: 2;
    margin: 0 0;
  }
  .sf-menu-phone li { padding: 8px 0;  position: relative; font-size: 18px;  }
  .sf-menu-phone > li {  border-bottom: 1px solid #515050; }
  .sf-menu-phone li a { display: inline-block;  color: #fff;  }
  .sf-menu-phone li a:hover { color: #B90100; }
  .sf-menu-phone li li {font-size: 14px; padding: 3px 0; }
  .sf-menu-phone li li.last { padding-bottom: 0;  }
  .sf-menu-phone li strong {
    position: absolute;
    display: block;
    background: url(../images/toogle-button2.png) center -54px no-repeat;
    top: 4px;
    right: 0;
    height: 24px;
    width: 24px;
  }
  .sf-menu-phone li strong:hover { cursor: pointer; }
  .sf-menu-phone li strong.opened { background-position: center 7px; }

  /* dropdown */
  .sf-menu-phone ul {  width: auto;  padding: 8px 0 0 20px;  display: none;  }
  .sf-menu-phone > li.active > a > span {color: inherit;}
  .sf-menu-phone > li.active > a,
  .sf-menu-phone > li > a:hover { color: #999;  }

  .sf-menu-phone li li.active > a,
  .sf-menu-phone li li a:hover {color: #999;}
}
@media only screen and (min-width: 768px) and (max-width: 979px) {
   .menu-icon,
   .sf-menu-phone {margin: 0;}
}
