/*
 *  generic primary stylesheet
 *  CS:JD  2007-04-12
 */

/* normalize basic styles */
* { margin: 0; padding: 0; }
h1 { margin: 0.8em 0 2.4em 0; }
h2,h3 { margin: 1em 0 0.6em 0; }
h4,h5,h6,ul,ol,dl,li,dt,dd,pre,p,form { margin: 0.8em 0; }
ul, ol { padding-left: 2em; }
pre { font: 100% "Courier New", Courier, monospace; }

h3, h4, h5, h6 { font-size: 100%; }

h1, h2 {
  clear: both;
  height: 1.25em;
  line-height: 1.25;
  color: #010101;
  font-size: 100%;
  font-weight: bold;
  background: #e6e7eb;
}
h1, #sidebar h2 {
  text-align: center;
  margin-top: 0.8em;
}
h1 .wrap, h2 .wrap {
  padding: 1px 8px 1px 0;
  vertical-align: 0px;
  background: #fff;
}
h1 .wrap, #sidebar h2 .wrap {
  padding-left: 8px;
}
h1 .wrap {
  font-size: 133.4%;
  vertical-align: middle;
}

body { font: 100%/1.334 Arial, Helvetica, sans-serif; color: #464646; }
a { color: #735da3; }
a img { border: none; }
.menu { padding-left: 0; list-style: none; }

fieldset { border: none; padding: 0.5em 0; }
.formfield { margin: 1em 0; }
select, textarea, input.text { 
  color: #333;
  font: 100% Verdana, Arial, Helvetica, sans-serif;
  background: #fff; 
  border: 1px solid #cacaca; 
}

option {
}

textarea:focus, input.text:focus, select:focus {
}

input.text[disabled] {
}

.jump a, a.jump {
  color: #004467;
  text-decoration: none;
}
.jump a:hover, a.jump:hover {
  text-decoration: underline;
}
a.more { white-space: nowrap; }

.error { color: #a44; }
p.error { margin-bottom: 0; }
ul.error { margin-top: 0; }
.error li { margin: 3px 0; }
.error label { font-weight: bold; }


/* page layout */
#page {
  border-top: 7px solid #735da3;
  min-width: 852px;
}
#banner {
}
#site-nav {
  width: 812px;
  margin: -7px auto 0;
  border-top: 7px solid #735da3;
  padding: 1px 8px 1px 5px;
}
#logo {
  float: left;
  padding: 2px;
  margin: 4px 0 0px 0;
}
#logo a, #logo img {
  vertical-align: bottom;
}
#site-nav .menu {
  float: right;
  width: 608px;
  color: #653291;
  font-size: 87.5%;
  font-weight: bold;
  text-align: left;
  margin: 74px 0 0;
}
#site-nav .menu li {
  position: relative;
  display: inline;
  float: left;
  margin: 0 3px 0 0px;
  padding: 0 0 0 3px;
}
#site-nav .menu li a {
  text-decoration: none;
  color: #653291;
}
#site-nav .menu li a:hover {
  background: none;
}
#site-nav .menu li .submenu {
  display: none;
  position: absolute;
  top: 1.25em;
  left: 0;
  width: 100%;
  color: #fff;
  font: 85.72%/1 Arial, Helvetica, sans-serif;
  font-weight: normal;
  padding-top: 6px;
  padding-bottom: 3px;
}
#site-nav .menu li:hover .submenu {
  display: block;
}
#site-nav .menu .submenu ul {
  list-style: none;
  width: 100%;
  margin: 0;
  background: url(../images/bkg-menu.png);
/*  background: #e5e0ed; */
  border: 1px solid #653291;
  padding: 3px 0 2px 0;
}
#site-nav .menu li li {
  position: static;
  float: none;
  display: block;
  text-align: left;
  margin: 0;
  padding-left: 0;
}
#site-nav .menu li li a {
  display: block;
  color: #653291;
  background: none;
  height: auto;
  padding: 4px 5px 4px 2px;
  margin: 0 2px;
}
#site-nav .menu li li a:hover {
  color: #653291;
  background: #b298c8;
  border: 1px solid #653291;
  padding: 3px 4px 3px 1px;
}
#menu-home { width: 74px; }
#menu-solutions { width: 105px; }
#menu-expertise { width: 148px; }
#menu-news { width: 143px; }
#menu-company { width: 108px; }

#masthead {
  background: #e5e0ed;
  clear: both;
}
#masthead h1,
#masthead p {
  width: 812px;
  height: 108px;
  margin: 0 auto;
  padding: 1px 0px 1px 0px;
  background-color: #66338f;
  background-repeat: no-repeat;
  background-position:  0px 0;
  text-indent: -2000px;
}

#main {
  width: 812px;
  margin: 0 auto;
  padding: 21px 20px 20px 20px;
  overflow: hidden;
  position: relative;
}
#content {
  width: 550px;
  float: right;
  font-size: 75%;
  padding: 0 0 20px 20px;
}
#content p {
  margin-top: 0;
}
#content p.highlight {
  width: 440px;
  margin: 1em auto 2em;
  font-size: 133.4%;
  line-height: 1.2;
}

#content h2 {
  margin-top: 1.5em;
  margin-bottom: 1em;
}
#content p.image {
  text-align: center;
}
#sidebar {
  float: left;
  width: 200px;
  color: #6c5d5a;
  font-size: 75%;
  line-height: 1.5;
}
#sidebar .wrap {
  color: #6c5d5a;
}
#sidebar .header {
  margin: 0 0 0 0;
  overflow: hidden;
}
/*
#sidebar h2 {
  width: 150px;
  color: #fff;
  font: 14px/1 Arial, Helvetica, sans-serif;
  font-weight: normal;
  background: url(../images/bkg-sidebar-heading.gif) left top no-repeat;
  margin: 0;
  padding: 8px 30px;
}
*/
#sidebar .content {
  padding: 1px 15px 15px 3px;
  background: #e5e0ed;
}
#sidebar .latest,
#sidebar .stories,
#sidebar .at-a-glance {
  list-style: none;
  padding-left: 0;
}
#sidebar .latest li,
#sidebar .stories li,
#sidebar .at-a-glance li {
  padding-left: 20px;
  text-indent: 0px;
  background: url(../images/bullet-noleaves.png) 0 0.05em no-repeat;
}
#sidebar .at-a-glance {
  font-size: 125%;
  line-height: 1.2;
}
#sidebar li cite {
  display: block;
  margin-top: 0.8em;
  font-style: normal;
}
#sidebar a {
  text-decoration: none;
}
#sidebar .img {
  text-align: center;
  margin: 2em -20px 4em;
}
#sidebar .img .caption {
  display: block;
}

#footer {
  margin: 0 0 0.2em;
  padding: 1px 0;
}
#slogans {
  color: #653291;
  font: 87.5%/1 Arial, Helvetica, sans-serif;
  background: #e5e0ed;
}
#slogans p {
  width: 812px;
  margin: 0 auto;
  text-align: center;
  padding: 7px 0;
}
#slogans p strong {
  font-weight: bold;
  padding: 0 1.0em;
}
#footer .smallprint {
  width: 812px;
  color: #646463;
  font: 62.5%/1 Arial, Helvetica, sans-serif;
  text-transform: uppercase;
  text-align: right;
  margin: 6px auto;
}

dl.news-headlines {
  overflow: hidden;
  width: 100%;
}
dl.news-headlines dt {
  clear: both;
  font-weight: bold;
  margin: 0;
  padding-top: 1px;
}
dl.news-headlines dt .date {
  width: 90px;
  float: left;
  clear: both;
  font-weight: bold;
  margin: 0;
}
dl.news-headlines dd {
  width: 455px;
  float: right;
  font-weight: bold;
  margin: 0;
  padding-bottom: 0.8em;
}
dl.news-headlines cite {
}

#content ul.careers {
  list-style: none;
  margin-top: 3px;
  padding-left: 0;
}
#content ul.careers li {
  margin: 0;
}
#content ul.team {
  overflow: hidden;
  list-style: none;
  margin-top: 3px;
  padding-left: 0;
}
#content ul.team li {
  float: left;
  width: 120px;
  padding-right: 2em;
}
#content ul.team img {
  display: block;
  margin-bottom: 0.5em;
}
#content p.apply {
  clear: both;
  margin-top: 3em;
}
#content ul.jobs {
  list-style: none;
  padding-left: 0;
}
#content .jobs h4, #content .jobs p {
  display: inline;
}
#content .jobs h4 a {
  color: #050505;
  text-decoration: none;
}
#content dl.contact-emails {
}
#content dl.contact-emails dt {
  clear: left;
  margin: 0;
}
#content dl.contact-emails dt .wrap {
  float: left;
  width: 6em;
}
#content dl.contact-emails dd {
  float: left;
  width: 18em;
  margin: 0;
}
#content .methodology h3 {
  background: none;
  margin: 1.5em 0 0.3em;
}
#content .methodology li {
  margin-top: 0;
  margin-bottom: 0;
}

#watermark {
  position: absolute;
  right: 0px;
  bottom: 0;
  width: 200px;
  height: 152px;
  z-index: -1;
  background: url(../images/watermark.gif);
}
#sidebar #watermark {
  position: static;
  margin: 2em auto 4em;
}

.contact-address strong {
  color: #000;
}

/* html diagrams */

#content .methodology,
#content .service_offerings {
  clear: both;
  margin: 3em 0;
}

#content .triangle {
  clear: both;
  margin: 3em -20px;
  background: url(../images/shape-plus.gif) 172px 52px no-repeat;
}
#content .triangle:after {
  clear: both;
  content: '.';
  visibility: hidden;
  display:  block;
  height: 0;
}

#content .methodology h2 {
  color: #fff;
  font: bold 133.4% Arial, Helvetica, sans-serif;
  float: left;
  background: url(../images/shape-service_offerings.png) top left no-repeat;
  width: 94px;
  height: 57px;
  text-align: center;
  margin-right: -94px;
  padding-top: 37px;
}
#content .methodology h2 span.wrap {
  background: none;
  padding: 0;
}

#content .plan h2 { background-color: #6c3; }
#content .manage h2 { background-color: #639; }
#content .deliver h2 { background-color: #f00; }
#content .advise h2 { background-color: #0070bb; }

.methodology ul {
  list-style: none;
  padding-left: 108px;
  font-weight: bold;
  line-height: 1.34;
  margin: 2em 0;
  padding-top: 35px;
}
.plan ul { color: #6c3; }
.manage ul { color: #639; }
.deliver ul { color: #f00; }
.advise ul { color: #0070bb; }

#content .methodology li {
  margin: 0.7em 0;
}

.triangle .deep,
.triangle .solution, 
.triangle .proven {
  float: left;
  width: 195px;
}

#content .triangle h2 {
  color: #fff;
  font: bold 116.7%/1.1 Arial, Helvetica, sans-serif;
  background: url(../images/shape-triangle.png) top left no-repeat;
  width: 144px;
  height: 74px;
  margin: 0 auto;
  padding: 70px 0 0;
  text-align: center;
}
#content .triangle h2 span.wrap {
  background: none;
  padding: 0;
}
.triangle ul {
  list-style: none;
  font-size: 100%;
  font-weight: bold;
  line-height: 1.25;
  margin: 0.6em 0;
  padding: 1em 0;
}
#content .triangle li {
  margin: 0;
  padding: 0 0.7em;
}
#content .deep h2 { background-color: #639; }
#content .solution h2 { background-color: #6c3; }
#content .proven h2 { background-color: #0070bb; height: 64px; padding-top: 80px; }

.deep ul { color: #639; }
.solution ul { color: #6c3; border: solid #d0d0d0; border-width: 0 2px; }
.proven ul { color: #0070bb; }

.service_offerings  {
}
.service_offerings ul {
  position: relative;
  width: 436px;
  height: 436px;
  margin: 0 auto;
  list-style: none;
  padding-left: 0;
  color: #f4f4f4;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 91.7%;
  font-weight: bold;
  text-align: center;
  background: url(../images/shape-core_arrows.gif) 50% 52% no-repeat;
}
.service_offerings li {
  position: absolute;
  width: 110px;
  height: 64px;
  padding: 40px 7px 20px;
  background: url(../images/shape-diagram.png) top left no-repeat;
}
.service_offerings li.core { background-color: #6c3; padding-top: 20px; padding-bottom: 40px; top: 156px; left: 156px; }
.service_offerings li.data_mgt { background-color: #639; top: 0; left: 156px; padding-top: 46px; padding-bottom: 14px; }
.service_offerings li.asset_mgt { background-color: #f60; top: 156px; left: 312px; }
.service_offerings li.exchange { background-color: #039; top: 312px; left: 156px; padding-top: 47px; padding-bottom: 13px;}
.service_offerings li.trading { background-color: #f00; top: 156px; left: 0px; }

