/*! normalize.css 2011-09-14T10:27 UTC - http://github.com/necolas/normalize.css */
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
  display: block;
}

audio, canvas, video {
  display: inline-block;
  *display: inline;
  *zoom: 1;
}

audio:not([controls]) {
  display: none;
}

[hidden] {
  display: none;
}

html {
  font-size: 100%;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
}

body {
  margin: 0;
}

body, button, input, select, textarea {
  font-family: sans-serif;
}

a {
  color: #00e;
}

a:visited {
  color: #551a8b;
}

a:focus {
  outline: thin dotted;
}

a:hover, a:active {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: bold;
}

blockquote {
  margin: 1em 40px;
}

dfn {
  font-style: italic;
}

mark {
  background: #ff0;
  color: #000;
}

pre, code, kbd, samp {
  font-family: monospace, serif;
  _font-family: "courier new", monospace;
  font-size: 1em;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
}

q {
  quotes: none;
}

q:before, q:after {
  content: "";
  content: none;
}

small {
  font-size: 75%;
}

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

ul, ol {
  margin: 1em 0;
  padding: 0 0 0 40px;
}

dd {
  margin: 0 0 0 40px;
}

nav ul, nav ol {
  list-style: none;
  list-style-image: none;
}

img {
  border: 0;
  -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
  overflow: hidden;
}

figure {
  margin: 0;
}

form {
  margin: 0;
}

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  *margin-left: -7px;
}

button, input, select, textarea {
  font-size: 100%;
  margin: 0;
  vertical-align: baseline;
  *vertical-align: middle;
}

button, input {
  line-height: normal;
  *overflow: visible;
}

table button, table input {
  *overflow: auto;
}

button, input[type=button], input[type=reset], input[type=submit] {
  cursor: pointer;
  -webkit-appearance: button;
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

input[type=search] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
  vertical-align: top;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

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

.sf-menu {
  line-height: 1;
}

.sf-menu ul {
  position: absolute;
  top: -999em;
  width: 10em; /* left offset of submenus need to match (see below) */
}

.sf-menu ul li {
  width: 100%;
}

.sf-menu li:hover {
  visibility: inherit; /* fixes IE7 'sticky bug' */
}

.sf-menu li {
  float: left;
  position: relative;
}

.sf-menu a {
  display: block;
  position: relative;
}

.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
  left: 0;
  top: 2.5em; /* 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: 10em; /* 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: 10em; /* match ul width */
  top: 0;
}

/*** DEMO SKIN ***/
.sf-menu {
  float: left;
  margin-bottom: 1em;
}

.sf-menu a {
  border-left: 1px solid #fff;
  border-top: 1px solid #CFDEFF;
  padding: 0.75em 1em;
  text-decoration: none;
}

.sf-menu a, .sf-menu a:visited { /* visited pseudo selector so IE6 applies text colour*/
  color: #13a;
}

.sf-menu li {
  background: #BDD2FF;
}

.sf-menu li li {
  background: #AABDE6;
}

.sf-menu li li li {
  background: #9AAEDB;
}

.sf-menu li:hover, .sf-menu li.sfHover,
.sf-menu a:focus, .sf-menu a:hover, .sf-menu a:active {
  background: #CFDEFF;
  outline: 0;
}

/*** 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: 0.75em;
  top: 1.05em; /* IE6 only */
  width: 10px;
  height: 10px;
  text-indent: -999em;
  overflow: hidden;
  background: url("../images/arrows-ffffff.png") no-repeat -10px -100px; /* 8-bit indexed alpha png. IE6 gets solid image only */
}

a > .sf-sub-indicator { /* give all except IE6 the correct values */
  top: 0.8em;
  background-position: 0 -100px; /* use translucent arrow for modern browsers*/
}

/* apply hovers to modern browsers */
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; /* arrow hovers for modern browsers*/
}

/* 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*/
}

/*** shadows for all but IE6 ***/
.sf-shadow ul {
  background: url("../images/shadow.png") no-repeat bottom right;
  padding: 0 8px 9px 0;
  -moz-border-radius-bottomleft: 17px;
  -moz-border-radius-topright: 17px;
  -webkit-border-top-right-radius: 17px;
  -webkit-border-bottom-left-radius: 17px;
}

.sf-shadow ul.sf-shadow-off {
  background: transparent;
}

body {
  min-width: 960px;
}

.container_12, .container_16 {
  margin-left: auto;
  margin-right: auto;
  width: 960px;
}

.grid_1, .grid_2, .grid_3, .grid_4, .grid_5, .grid_6, .grid_7, .grid_8, .grid_9, .grid_10, .grid_11, .grid_12, .grid_13, .grid_14, .grid_15, .grid_16 {
  display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
}

.push_1, .pull_1, .push_2, .pull_2, .push_3, .pull_3, .push_4, .pull_4, .push_5, .pull_5, .push_6, .pull_6, .push_7, .pull_7, .push_8, .pull_8, .push_9, .pull_9, .push_10, .pull_10, .push_11, .pull_11, .push_12, .pull_12, .push_13, .pull_13, .push_14, .pull_14, .push_15, .pull_15 {
  position: relative;
}

.container_12 .grid_3, .container_16 .grid_4 {
  width: 220px;
}

.container_12 .grid_6, .container_16 .grid_8 {
  width: 460px;
}

.container_12 .grid_9, .container_16 .grid_12 {
  width: 700px;
}

.container_12 .grid_12, .container_16 .grid_16 {
  width: 940px;
}

.alpha {
  margin-left: 0;
}

.omega {
  margin-right: 0;
}

.container_12 .grid_1 {
  width: 60px;
}

.container_12 .grid_2 {
  width: 140px;
}

.container_12 .grid_4 {
  width: 300px;
}

.container_12 .grid_5 {
  width: 380px;
}

.container_12 .grid_7 {
  width: 540px;
}

.container_12 .grid_8 {
  width: 620px;
}

.container_12 .grid_10 {
  width: 780px;
}

.container_12 .grid_11 {
  width: 860px;
}

.container_16 .grid_1 {
  width: 40px;
}

.container_16 .grid_2 {
  width: 100px;
}

.container_16 .grid_3 {
  width: 160px;
}

.container_16 .grid_5 {
  width: 280px;
}

.container_16 .grid_6 {
  width: 340px;
}

.container_16 .grid_7 {
  width: 400px;
}

.container_16 .grid_9 {
  width: 520px;
}

.container_16 .grid_10 {
  width: 580px;
}

.container_16 .grid_11 {
  width: 640px;
}

.container_16 .grid_13 {
  width: 760px;
}

.container_16 .grid_14 {
  width: 820px;
}

.container_16 .grid_15 {
  width: 880px;
}

.container_12 .prefix_3, .container_16 .prefix_4 {
  padding-left: 240px;
}

.container_12 .prefix_6, .container_16 .prefix_8 {
  padding-left: 480px;
}

.container_12 .prefix_9, .container_16 .prefix_12 {
  padding-left: 720px;
}

.container_12 .prefix_1 {
  padding-left: 80px;
}

.container_12 .prefix_2 {
  padding-left: 160px;
}

.container_12 .prefix_4 {
  padding-left: 320px;
}

.container_12 .prefix_5 {
  padding-left: 400px;
}

.container_12 .prefix_7 {
  padding-left: 560px;
}

.container_12 .prefix_8 {
  padding-left: 640px;
}

.container_12 .prefix_10 {
  padding-left: 800px;
}

.container_12 .prefix_11 {
  padding-left: 880px;
}

.container_16 .prefix_1 {
  padding-left: 60px;
}

.container_16 .prefix_2 {
  padding-left: 120px;
}

.container_16 .prefix_3 {
  padding-left: 180px;
}

.container_16 .prefix_5 {
  padding-left: 300px;
}

.container_16 .prefix_6 {
  padding-left: 360px;
}

.container_16 .prefix_7 {
  padding-left: 420px;
}

.container_16 .prefix_9 {
  padding-left: 540px;
}

.container_16 .prefix_10 {
  padding-left: 600px;
}

.container_16 .prefix_11 {
  padding-left: 660px;
}

.container_16 .prefix_13 {
  padding-left: 780px;
}

.container_16 .prefix_14 {
  padding-left: 840px;
}

.container_16 .prefix_15 {
  padding-left: 900px;
}

.container_12 .suffix_3, .container_16 .suffix_4 {
  padding-right: 240px;
}

.container_12 .suffix_6, .container_16 .suffix_8 {
  padding-right: 480px;
}

.container_12 .suffix_9, .container_16 .suffix_12 {
  padding-right: 720px;
}

.container_12 .suffix_1 {
  padding-right: 80px;
}

.container_12 .suffix_2 {
  padding-right: 160px;
}

.container_12 .suffix_4 {
  padding-right: 320px;
}

.container_12 .suffix_5 {
  padding-right: 400px;
}

.container_12 .suffix_7 {
  padding-right: 560px;
}

.container_12 .suffix_8 {
  padding-right: 640px;
}

.container_12 .suffix_10 {
  padding-right: 800px;
}

.container_12 .suffix_11 {
  padding-right: 880px;
}

.container_16 .suffix_1 {
  padding-right: 60px;
}

.container_16 .suffix_2 {
  padding-right: 120px;
}

.container_16 .suffix_3 {
  padding-right: 180px;
}

.container_16 .suffix_5 {
  padding-right: 300px;
}

.container_16 .suffix_6 {
  padding-right: 360px;
}

.container_16 .suffix_7 {
  padding-right: 420px;
}

.container_16 .suffix_9 {
  padding-right: 540px;
}

.container_16 .suffix_10 {
  padding-right: 600px;
}

.container_16 .suffix_11 {
  padding-right: 660px;
}

.container_16 .suffix_13 {
  padding-right: 780px;
}

.container_16 .suffix_14 {
  padding-right: 840px;
}

.container_16 .suffix_15 {
  padding-right: 900px;
}

.container_12 .push_3, .container_16 .push_4 {
  left: 240px;
}

.container_12 .push_6, .container_16 .push_8 {
  left: 480px;
}

.container_12 .push_9, .container_16 .push_12 {
  left: 720px;
}

.container_12 .push_1 {
  left: 80px;
}

.container_12 .push_2 {
  left: 160px;
}

.container_12 .push_4 {
  left: 320px;
}

.container_12 .push_5 {
  left: 400px;
}

.container_12 .push_7 {
  left: 560px;
}

.container_12 .push_8 {
  left: 640px;
}

.container_12 .push_10 {
  left: 800px;
}

.container_12 .push_11 {
  left: 880px;
}

.container_16 .push_1 {
  left: 60px;
}

.container_16 .push_2 {
  left: 120px;
}

.container_16 .push_3 {
  left: 180px;
}

.container_16 .push_5 {
  left: 300px;
}

.container_16 .push_6 {
  left: 360px;
}

.container_16 .push_7 {
  left: 420px;
}

.container_16 .push_9 {
  left: 540px;
}

.container_16 .push_10 {
  left: 600px;
}

.container_16 .push_11 {
  left: 660px;
}

.container_16 .push_13 {
  left: 780px;
}

.container_16 .push_14 {
  left: 840px;
}

.container_16 .push_15 {
  left: 900px;
}

.container_12 .pull_3, .container_16 .pull_4 {
  left: -240px;
}

.container_12 .pull_6, .container_16 .pull_8 {
  left: -480px;
}

.container_12 .pull_9, .container_16 .pull_12 {
  left: -720px;
}

.container_12 .pull_1 {
  left: -80px;
}

.container_12 .pull_2 {
  left: -160px;
}

.container_12 .pull_4 {
  left: -320px;
}

.container_12 .pull_5 {
  left: -400px;
}

.container_12 .pull_7 {
  left: -560px;
}

.container_12 .pull_8 {
  left: -640px;
}

.container_12 .pull_10 {
  left: -800px;
}

.container_12 .pull_11 {
  left: -880px;
}

.container_16 .pull_1 {
  left: -60px;
}

.container_16 .pull_2 {
  left: -120px;
}

.container_16 .pull_3 {
  left: -180px;
}

.container_16 .pull_5 {
  left: -300px;
}

.container_16 .pull_6 {
  left: -360px;
}

.container_16 .pull_7 {
  left: -420px;
}

.container_16 .pull_9 {
  left: -540px;
}

.container_16 .pull_10 {
  left: -600px;
}

.container_16 .pull_11 {
  left: -660px;
}

.container_16 .pull_13 {
  left: -780px;
}

.container_16 .pull_14 {
  left: -840px;
}

.container_16 .pull_15 {
  left: -900px;
}

.clear {
  clear: both;
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: block;
  overflow: hidden;
  visibility: hidden;
  width: 0;
  height: 0;
}

.clearfix:after {
  clear: both;
}

.clearfix {
  zoom: 1;
}

/*** Main CSS ***/
/*** 
This file can contain your custom theme css.  

Because CSS @imports get loaded last, you should use the style.css file to load any essential css modules,
and then to load this file last to ensure it doesn't get overwritten.
***/
/* ESSENTIAL STYLES 
 * Minimal CSS for WordPress 
-------------------------------------------------------------- */
/* Layout
-------------------------------------------------------------- */
#sidebar ul li {
  list-style: none;
}

/* Fonts
-------------------------------------------------------------- */
body, input, textarea {
  /*font-size:15px;/**/ /*This makes things SMALLER than chrome defaults.../**/
  /*line-height:22px;/**/
  /*line-height:1.2em;/**/ /* Standard? */
}

/* Entries
-------------------------------------------------------------- */
.entry-title {
  margin-bottom: 0;
}

.entry-summary {
  margin-bottom: 1em;
}

.entry-summary p {
  margin-bottom: 0;
}

.entry-meta {
  color: #888888;
  margin-bottom: 1em;
}

.nav-previous {
  float: left;
}

.nav-next {
  float: right;
}

/* Forms
-------------------------------------------------------------- */
input[type=text]:hover,
input[type=password]:hover,
textarea:hover,
select:hover {
  background: #CEDDDF;
}

input[type=text],
input[type=password],
textarea,
select {
  padding: 3px;
  background: #F9F9F9;
  border: 1px solid #888;
  vertical-align: top;
}

input[type=submit] {
  padding: 3px 16px;
  background: #DDE9F2;
  border: 1px solid #586D7F;
  vertical-align: top;
}

input[type=submit]:hover {
  background: #7FBBEF;
}

/* Conveniences
-------------------------------------------------------------- */
.clear-right {
  clear: right;
}

.clear-left {
  clear: left;
}

.clear-both {
  clear: both;
}

.align-right {
  text-align: right;
}

.align-center {
  text-align: center;
}

.float-right {
  float: right;
}

.float-left {
  float: left;
}

/* Useful for page/post headers that should flush with top of page */
.top-element {
  margin-top: 0;
}

.clickable {
  cursor: pointer;
}

.vitem {
  margin-top: 20px;
  margin-bottom: 20px;
}

.vitem:first-child {
  margin-top: 0;
  margin-bottom: 20px;
}

/* Other CSS
-------------------------------------------------------------- */
html {
  font-size: 15px;
  font-size: 14px;
}

body {
  /*background:#FFFF00; /**/
}

body, td, th {
  /*
  font-family: Arial, Helvetica, sans-serif;
  font-size: 12px;
  color: #4B4B4D;
  */
}

/*
.grid_6,.grid_12 {background:#DDD;}
/**/
/* Other CSS
-------------------------------------------------------------- */
html {
  background: #666;
  background: #DDD;
}

body {
  /*background:#FFFF00; /**/
  background: #DDD;
  color: #666;
}

a {
  text-decoration: none;
  color: #551A8B;
  color: #333298;
}

a:visited {
  color: #551a8b;
  color: #333298;
}

a:hover {
  text-decoration: underline;
  color: #551A8B;
  color: #333298;
}

#wrapper {
  /*
  margin-left: auto;
  margin-right: auto;
  width: 1020px;
  /**/
}

.vmargin {
  margin-top: 20px;
  margin-bottom: 20px;
}

*.vmargin:first-child {
  margin-top: 0px;
  margin-bottom: 20px;
}

iframe {
  margin: 20px 0 20px 0;
}

/**/
/* Site CSS
-------------------------------------------------------------- */
.container_12,
.container_16 {
  padding-top: 20px;
  padding-bottom: 20px;
  /**/
}

/* Not exactly semantic, but... */
.vpad {
  padding-top: 20px;
  padding-bottom: 20px;
}

/* Header
-------------------------------------------------------------- */
#header h1#site-title {
  margin: 20px 0 20px 0;
}

#header #site-description {
  display: none;
}

#header h1 a.logo {
  display: block;
  background: url(../images/logo_full_3.png) center left no-repeat;
  background: url(../images/logo_full_4.png) center left no-repeat;
  width: 921px;
  height: 97px;
  text-indent: -9999px;
  float: left;
}

#header-container {
  /* v-padding */
  padding-top: 0px;
  padding-bottom: 20px;
}

#nav {
  /* v-padding */
  padding-top: 0px;
  padding-bottom: 0px; /**/
  background: #666;
  color: white;
}

#nav-container {
  /* v-padding */
  padding-top: 0px;
  padding-bottom: 0px; /**/
  background: none;
  color: white;
}

#nav-wrapper {
  background: #85979A;
  background: #F98B12;
  color: white;
  font-weight: 400;
  margin-left: -10px;
  margin-right: -10px;
}

#nav-tools {
  display: none;
}

/* Footer
-------------------------------------------------------------- */
#footer-container {
  background: #666;
  color: white;
  margin-top: 20px;
  margin-bottom: 20px;
}

/* Other
-------------------------------------------------------------- */
.left-image {
  float: left;
  margin: 0 20px 20px 0;
  /* Offset shadow left*/
  /*
  -moz-box-shadow: -2px 2px 6px 0px #777;
  -webkit-box-shadow: -2px 2px 6px 0px #777;
  box-shadow: -2px 2px 6px 0px #777;
  /**/
}

.right-image {
  float: right;
  margin: 0 0 20px 20px;
}

.shadow {
  /* Offset shadow left*/
  -moz-box-shadow: -2px 2px 6px 0px #777;
  -webkit-box-shadow: -2px 2px 6px 0px #777;
  box-shadow: -2px 2px 6px 0px #777;
}

img {
  /*
  border:solid 2px white;
  border:solid 2px #777;
  border:solid 2px #EEE;
  border:solid 2px #FFF;
  /**/
  margin-top: 20px;
  margin-right: 0px;
  /*vertical-align:top;/**/
  float: left; /**/
  /*
  -moz-box-shadow: -2px 2px 6px 0px #777;
  -webkit-box-shadow: -2px 2px 6px 0px #777;
  box-shadow: -2px 2px 6px 0px #777;
  /**/
}

img.rightspace {
  margin-right: 20px;
}

img.clearboth {
  clear: both;
}

.citations div {
  padding-left: 20px;
  margin-bottom: 10px;
}

pre {
  font-family: sans-serif;
}

.toc img {
  min-width: 60px;
  min-height: 60px;
  background: #444;
  background: #FFF;
  margin: 0 20px 20px 0;
}

.toc a img {
  border: solid #666 1px;
}

.toc a img:hover {
  border: solid #333298 1px;
}

.toc h3 {
  margin: 0;
}

.toc p {
  margin: 5px 0;
}

.toc td {
  vertical-align: top;
}

table.subpages {
  margin-top: 40px;
  width: 780px;
}

table.specs {
  width: 360px;
  margin-top: 0;
  margin-bottom: 30px;
}

/* Patents
-------------------------------------------------------------- */
.patents a.patent-number,
.patents span.patent-number {
  /*
  margin-right:20px;
  /**/
  width: 220px;
  display: inline-block;
  vertical-align: top;
}

.patents span.patent-title {
  /*
  margin-right:20px;
  /**/
  width: 700px;
  display: inline-block;
  vertical-align: top;
}

/* Clients
-------------------------------------------------------------- */
#clients {
  background: #FFF;
  border: #777 solid 2px;
  padding: 20px 0;
}

#clients img {
  margin: 20px;
  float: none;
  float: left;
  display: block;
}

#clients span {
  display: block;
  margin: 20px;
  float: none;
  float: left;
  display: block;
  width: 300px;
  height: 60px;
}

/*
#clients div {
	width:200px;
	height:50px;
	display:block;
	margin:20px;
	float:none;
	float:left;
	display:block;
}/**/
/*** ESSENTIAL STYLES (OVERRIDES) ***
-------------------------------------------------------------- */
.sf-menu {
  margin-bottom: 0;
}

.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
  left: 0;
  top: 29px; /* Match top ul list item height */
  z-index: 99;
}

.sf-menu li,
.sf-menu li li,
.sf-menu li li li,
.sf-menu li:hover,
.sf-menu li.sfHover {
  background: none;
}

/*** CUSTOM MENU SKIN ***
-------------------------------------------------------------- */
.sf-menu {
  float: left;
  margin-bottom: 0;
  font-size: 15px;
  font-family: Arial, sans-serif;
  font-weight: normal;
}

/* Menu items: */
.sf-menu a {
  border: none;
  padding: 0.75em 1em;
  text-decoration: none;
}

.sf-menu a,
.sf-menu a:link,
.sf-menu a:visited {
  color: #FFFFFF;
}

/* Current page item at any level: */
.sf-menu li.current_page_item > a {
  background-color: #999;
  color: #FFFFFF;
}

/* Hovering items: */
.sf-menu a:focus,
.sf-menu a:hover,
.sf-menu a:active {
  background-color: #999;
  color: #FFFFFF;
  outline: 0;
}

/* Hovering of current page item: */
.sf-menu li.current_page_item > a:focus,
.sf-menu li.current_page_item > a:hover,
.sf-menu li.current_page_item > a:active {
  background-color: #999; /* Use hover color on active items too, or keep #999 if you want active to stay the same on hover */
  color: #FFFFFF;
}

/*** SUB-MENU ITEMS ***/
.sf-menu .children,
.sf-menu .sub-menu {
  margin-top: 8px;
}

/* Default submenu items: */
.sf-menu .children a,
.sf-menu .sub-menu a {
  padding: 0.46em 1em;
  background-color: #555; /* Darker default for contrast */
  color: #FFFFFF;
}

/* Hovering sub-menu items: */
.sf-menu .children a:focus,
.sf-menu .children a:hover,
.sf-menu .children a:active,
.sf-menu .sub-menu a:focus,
.sf-menu .sub-menu a:hover,
.sf-menu .sub-menu a:active {
  background-color: #999;
  color: #FFFFFF;
  outline: 0;
}

/*** BUTTON IMAGE DIVIDER ***/
.sf-menu a,
.sf-menu a:focus,
.sf-menu a:hover,
.sf-menu a:active {
  background-image: url(../images/menu_button_separator_trans22.png);
  background-repeat: repeat-y;
}

.sf-menu li:first-child a,
.sf-menu .children a,
.sf-menu .sub-menu a,
.sf-menu .children a:focus,
.sf-menu .children a:hover,
.sf-menu .children a:active,
.sf-menu .sub-menu a:focus,
.sf-menu .sub-menu a:hover,
.sf-menu .sub-menu a:active {
  background-image: none;
}

/*** SHADOWS ***/
.sf-menu .children,
.sf-menu .sub-menu {
  -moz-box-shadow: -2px 2px 6px 0px #777;
  -webkit-box-shadow: -2px 2px 6px 0px #777;
  box-shadow: -2px 2px 6px 0px #777;
}

/*** BORDERS ***/
.sf-menu .children,
.sf-menu .sub-menu {
  border: 1px solid #FFFFFF;
}

.sf-menu .children li,
.sf-menu .sub-menu li {
  border-top: 1px solid #FFFFFF;
}

.sf-menu .children li:first-child,
.sf-menu .sub-menu li:first-child {
  border-top: none;
}

/*** STRAIGHT FROM superfish.css **/
.sf-menu ul {
  width: 20em;
}

.sf-menu li:hover ul,
.sf-menu li.sfHover ul {
  top: 29px;
}

ul.sf-menu li li:hover ul,
ul.sf-menu li li.sfHover ul {
  left: 20em;
  top: -9px;
}

ul.sf-menu li li li:hover ul,
ul.sf-menu li li li.sfHover ul {
  left: 20em;
  top: -9px;
}

a > .sf-sub-indicator {
  top: 14px;
}

ul.sf-menu li ul a > .sf-sub-indicator,
ul.sf-menu li li ul a > .sf-sub-indicator,
ul.sf-menu li li li ul a > .sf-sub-indicator {
  top: 8px;
}

/*# sourceMappingURL=main.css.map */