/**
 * layout
 */

body {
  margin: 0 0 20px 0;
  background: #5d646e url(/image/bg-body.png) repeat-x;
  background-attachment: fixed;
  }
  
#header {
  width: 100%;
  width: 800px;
  height: 91px;
  margin: 0 auto;
  background: transparent url(/image/bg-header.png) no-repeat;
  }
  
#wrapper {
  position: relative;
  width: 800px;
  margin: 0 auto;
  background: transparent url(/image/bg-wrapper.png) repeat-y 0 50%;
  }
  
#wrapper-corner {
  position: absolute;
  top: 0;
  right: 0;
  width: 37px;
  height: 29px;
  margin: 0;
  background: transparent url(/image/bg-body.png) repeat-x;
  background-attachment: fixed;
  z-index: 50;
  }
  
#subwrapper {
  position: relative;
  width: 782px;
  margin: 0 auto;
  background: #fff url(/image/bg-subwrapper.png) repeat-x;
  }
  
body#home #subwrapper {
  background: #f4f4ed;
  }

#subwrapper-edge {
  position: absolute;
  top: 0;
  left: 0;
  width: 754px;
  height: 1px;
  margin: 0;
  background: transparent url(/image/bg-subwrapper-edge.png) repeat-x;
  z-index: 40;
  }

#subnav {
  float: left;
  width: 220px;
  }

#body {
  float: right;
  width: 551px;
  padding: 0 0 20px 0;
  }
  
body#home #body {
  float: left;
  width: 782px;
  }

body#home #body-news {
  float: left;
  width: 370px;
  padding: 22px 0 0 20px;
  }
  
body#home #body-links {
  float: right;
  width: 250px;
  padding: 22px 40px 0 0;
  }

#divider {
  width: 782px;
  height: 15px;
  margin: 0 auto;
  background: transparent url(/image/bg-divider.png) repeat-x 50% 0;
  }

#wrapper-footer {
  width: 782px;
  margin: 0 auto;
  background: transparent url(/image/bg-footer-corner.png) no-repeat;
  }

#footer {
  width: 765px;
  margin: 0 0 0 17px;
  padding: 27px 0 30px 0;
  background: transparent url(/image/bg-footer.png);
  }

.clear {
  clear: both;
  height: 0;
  margin: 0;
  line-height: 0;
  }




/**
 * header
 */
 
#header p.skipnav {
  position: absolute;
  width: 1em;
  text-indent: -5000px;
  }

#header-logo {
  float: left;
  width: 176px;
  height: 23px;
  padding: 25px 0 0 22px;
  }

#header-logo a {
  display: block;
  float: left;
  }

#header-logo img {
  display: block;
  float: left;
  border: none;
  }

#header-navigation {
  float: right;
  width: 551px;
  height: 71px;
  padding: 0 9px 0 0;
  }

#header-navigation ul {
  list-style: none;
  width: 100%;
  height: 71px;
  margin: 0;
  padding: 0;
  }

#header-navigation ul li {
  display: block;
  float: left;
  height: 71px;
  margin: 0;
  padding: 0;
  }
  
li#nav-home      { width: 62px; }
li#nav-services  { width: 80px; }
li#nav-about-us  { width: 87px; }
li#nav-clients   { width: 69px; }
li#nav-training  { width: 79px; }
li#nav-resources { width: 94px; }
li#nav-careers   { width: 75px; }
  
#header-navigation ul li a {
  display: block;
  float: left;
  width: 100%;
  height: 0;
  padding: 71px 0 0 0;
  overflow: hidden;
  background-color: transparent;
  background-image: url(/image/bg-topnav.png);
  background-repeat: no-repeat;
  }

li#nav-home a:link,      li#nav-home a:visited      { background-position:      0 0; }
li#nav-services a:link,  li#nav-services a:visited  { background-position:  -62px 0; }
li#nav-about-us a:link,  li#nav-about-us a:visited  { background-position: -142px 0; }
li#nav-clients a:link,   li#nav-clients a:visited   { background-position: -229px 0; }
li#nav-training a:link,  li#nav-training a:visited  { background-position: -298px 0; }
li#nav-resources a:link, li#nav-resources a:visited { background-position: -377px 0; }
li#nav-careers a:link,   li#nav-careers a:visited   { background-position: -471px 0; }

li#nav-home a:hover,      body#home      li#nav-home a      { background-position:      0 -71px; }
li#nav-services a:hover,  body#services  li#nav-services a  { background-position:  -62px -71px; }
li#nav-about-us a:hover,  body#about-us  li#nav-about-us a  { background-position: -142px -71px; }
                          body#bio       li#nav-about-us a  { background-position: -142px -71px; }
li#nav-clients a:hover,   body#clients   li#nav-clients a   { background-position: -229px -71px; }
li#nav-training a:hover,  body#training  li#nav-training a  { background-position: -298px -71px; }
li#nav-resources a:hover, body#resources li#nav-resources a { background-position: -377px -71px; }
li#nav-careers a:hover,   body#careers   li#nav-careers a   { background-position: -471px -71px; }



#header-navigation ul li a.here {
  cursor: default;
  }



/**
 * navigation
 */

#subnav {
  font: normal 13px/16px "lucida grande", tahoma, sans-serif;
  }
  
#subnav ul {
  display: block;
  float: left;
  margin: 0;
  padding: 2px 0 0 11px;
  list-style: none;
  }

#subnav ul li {
  display: block; 
  float: left;
  width: 209px;
  margin: 0;
  padding: 0;
  border-bottom: 1px solid #e8e8e5;
  }

#subnav ul li a {
  display: block; 
  float: left;
  width: 213px;
  margin: 0;
  padding: 7px 0 8px 0;
  text-decoration: none;
  }

#subnav ul li a.here {
  font-weight: bold;
  cursor: default;
  }

#subnav ul li a:link,
#subnav ul li a:visited {
  color: #424750;
  }

#subnav ul li a:hover,
#subnav ul li a.here {
  margin-left: -11px;
  padding-left: 11px;
  color: #a0420c;
  background: transparent url(/image/bg-subnav-1.png) no-repeat;
  }

#subnav ul li ul {
  margin: 0;
  padding: 0 0 0 8px;
  background: #fdfdfd;
  background: #fff url(/image/bg-subwrapper.png) repeat-x 0 -250px;
  border-top: 1px solid #e8e8e5;
  font: normal 12px/16px "lucida grande", tahoma, sans-serif;
  }

#subnav ul li ul li {
  width: 196px;
  border-bottom: 1px dotted #e8e8e5;
  }

#subnav ul li ul li.last {
  border-bottom: none;
  }

#subnav ul li ul li a:link,
#subnav ul li ul li a:visited {
  font-weight: normal; 
  color: #424750;
  }

#subnav ul li ul li a:hover,
#subnav ul li ul li a.here {
  margin-left: -8px;
  padding-left: 8px;
  color: #a0420c;
  background: transparent url(/image/bg-subnav-2.png) no-repeat;
  }

#subnav ul li ul li a.here {
  font-weight: bold;
  cursor: default;
  }





/**
 * body heading
 */

#body-heading {
  width: 551px;
  position: relative;
  }

body#bio #body-heading {
  height: 200px;
}

#h1.img {
  position: absolute;
  }
  
#h1.noimg {
  float: left;
  clear: left;
  width: 100%;
  margin: 20px 0;
  }

body#careers #h1 {
  margin-left: -100px;
  }

body#careers #body-heading img {
 	margin-left: -231px;
	width: 782px;
	height: 225px;
}
  
#h1 h1 {
  float: left;
  clear: left;
  margin: 0 20px 0 0;
  padding: 0;
  }

#h1 h1.section {
  padding: 4px 10px;
  font: 12px/13px arial, helvetica, sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: white;
  background: #383d44;
  /*opacity: .95;*/
  }

#h1 h1.heading {
  padding: 4px 10px;
  font: 25px/33px arial, helvetica, sans-serif;
  color: #383d44;
  background: transparent url(/image/bg-h1-heading.png);
  }


/**
 * body text
 */

#body-text {
  clear: both;
  font: normal 14px/22px "lucida grande", tahoma, sans-serif;
  color: #383d44;
  padding: 5px 25px 25px 10px;
  }

body#careers #body-text {
  width: 526px;
  margin-left: -100px;
  }

#body-text a {
  text-decoration: none;
  border-bottom: 1px dotted #83a9ba;
  }
#body-text a:link    { color: #0076a3; }
#body-text a:visited { color: #666; }
#body-text a:hover   { color: #000; }

#body-text p {
  margin: .5em 0 1em 0;
  }

#body-text h1,
#body-text h1.name {
  margin: 10px 0 0 0;
  font: 27px/32px arial, helvetica, sans-serif;
  letter-spacing: 2px;
  }

#body-text h1.title {
  margin: 0 0 1em 0;
  font: 13px/17px arial, helvetica, sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  }
  
#body-text h2 {
  margin: 1em 0 0 0;
  font: 20px/24px arial, helvetica, sans-serif;
  }

#body-text h3 {
  margin: 1em 0 0 0;
  }
  
#body-text ul {
  margin-left: 0;
  padding-left: 1.5em;
  }

#body-text li {
  font: normal 14px/18px "lucida grande", tahoma, sans-serif;
  margin: 6px 0;
  }

#vcard {
  float: right;
  height: 45px;
  width: 200px;
  margin: -55px 0 0 0;
  text-align: right;
  }

#vcard a {
  display: block;
  float: right;
  border-bottom: none;
  }

#vcard a:link,
#vcard a:visited {
  color: #a0420c;
  }

a#vcard-link {
  height: 12px;
  width: 145px;
  margin: 16px 0 0 0;
  font: normal 10px/12px "lucida grande", tahoma, sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  }

a#vcard-icon {
  height: 37px;
  width: 49px;
  margin: 0 0 0 6px;
  font: normal 10px/12px "lucida grande", tahoma, sans-serif;
  text-transform: uppercase;
  letter-spacing: 2px;
  }
  
#vcard a img {
  border: none;
  }



/**
 * home
 */

body#home #h1 h1.section {
  white-space: nowrap;
  }
  
body#home #h1 h1.heading {
  padding: 10px;
  width: 402px;
  font: 16px/20px arial, helvetica, sans-serif;
  color: #424750;
  background: transparent url(/image/bg-h1-heading-home.png);
  }

body#home h2 {
  float: left;
  padding: 4px 5px;
  margin: 0 0 12px 0;
  font: 10px/11px arial, helvetica, sans-serif;
  text-transform: uppercase;
  letter-spacing: 1px;
  }

body#home #body-links h2 {
  color: #fff;
  background: #7da65b;
  }

body#home #body-links ul {
  float: left;
  clear: left;
  width: 250px;
  margin: 0;
  padding: 0;
  list-style: none;
  }
  
body#home #body-links li {
  font: normal 13px/16px "lucida grande", tahoma, sans-serif;
  margin: 0 0 10px 0;
  }

body#home #body-links li a {
  text-decoration: none;
  }
body#home #body-links a:link    { color: #0076a3; }
body#home #body-links a:visited { color: #666; }
body#home #body-links a:hover   { color: #000; }

body#home #body-links li a img {
  border: none;
  }

body#home #body-news h2 {
  width: 15em;
  color: #383d44;
  background: #e8e8dc;
  }
  
body#home #body-news .news-item {
  float: left;
  clear: left;
  width: 100%;
  margin: 0 0 20px 0;
  }

body#home #body-news .news-item img {
  display: block;
  float: left;
  border: 3px solid #fff;
  }

body#home #body-news .news-item h3 {
  float: right;
  clear: right;
  width: 260px;
  margin: 0;
  font: normal 14px/18px "lucida grande", tahoma, sans-serif;
  color: #474a51;
  }
  
body#home #body-news .news-item p {
  float: right;
  clear: right;
  width: 260px;
  margin: .5em 0 0 0;
  font: normal 11px/15px "lucida grande", tahoma, sans-serif;
  color: #474a51;
  }

body#home #body-news .news-item a {
  color: #317b9e;
  text-decoration: none;
  border-bottom: 1px dotted #006398;
  }

body#home #body-news .news-item a:link { color: #317b9e; }
body#home #body-news .news-item a:visited { color: #006398; }
body#home #body-news .news-item a:hover { color: #000; }




/**
 * footer
 */

#footer img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -20;
  }

#footer p {
  margin: 0;
  font: 15px/19px "lucida grande", tahoma, sans-serif;
  color: #fff;
  }

#footer p a {
  font-weight: bold;
  color: #fff;
  }

#footer p a:link,
#footer p a:visited {
  text-decoration: none;
  }

#footer p a:hover {
  text-decoration: underline;
  }


#footer-fineprint ul {
  height: 13px;
  margin: 4px 0 0 0;
  padding: 0;
  list-style: none;
  }

#footer-fineprint li {
  float: left;
  padding: 0 10px;
  font: 11px/14px "lucida grande", tahoma, sans-serif;
  color: #c6eeff;
  background: transparent url(/image/bg-fineprint-divider.png) no-repeat 0 50%;
  }

#footer-fineprint li#copyright {
  padding: 0 10px 0 0;
  background: none;
  }

#footer-fineprint li a {
  text-decoration: none;
  border-bottom: 1px dotted #fff;
  }

#footer-fineprint li a:link,
#footer-fineprint li a:visited {
  color: #c6eeff;
  }

#footer-fineprint li a:hover {
  color: #fff;
  }

#footer-buttons {
  float: right;
  margin: -16px 20px 0 0;
  width: 195px;
  height: 40px;
  background: transparent url(/image/bg-footer-buttons.png) no-repeat;
  }

#footer-buttons ul {
  position: relative;
  margin: 0;
  padding: 0;
  list-style: none;
  }

#footer-buttons li {
  width: 97px;
  height: 30px;
  margin: 0;
  padding: 0;
  }

#footer-buttons li#contact {
  position: absolute;
  top: 0;
  left: 0;
  }

#footer-buttons li#login {
  position: absolute;
  top: 0;
  right: 0;
  }

#footer-buttons li a {
  display: block;
  float: left;
  width: 97px;
  height: 30px;
  overflow: hidden;
  }

#footer-buttons li a span {
  display: block;
  float: left;
  width: 97px;
  height: 30px;
  padding: 30px 0 0 0;
  }

#footer-buttons li#contact a:link,
#footer-buttons li#contact a:visited {
  background: transparent url(/image/bg-footer-buttons-text.png) no-repeat 0 0;
  }

#footer-buttons li#contact a:hover {
  background: transparent url(/image/bg-footer-buttons-text.png) no-repeat 0 -30px;
  cursor: pointer;
  }

#footer-buttons li#login a:link,
#footer-buttons li#login a:visited {
  background: transparent url(/image/bg-footer-buttons-text.png) no-repeat -98px 0;
  }

#footer-buttons li#login a:hover {
  background: transparent url(/image/bg-footer-buttons-text.png) no-repeat -98px -30px;
  cursor: pointer;
  }

