/* styles for MIT SSP site  */


/* GENERAL */

html, body {
  margin: 0px;
}
body {
  background-color: #cccc99;
}

/* for div containing content that should never be seen by visual browsers */
.offscreen {
  position: absolute;
  left: 0px; top: -9999px;
  width: 1px; height: 1px;
  overflow: hidden;
}
/* for skip link and back to top anchor */
#divskiplink,
#divtopanchor {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 1px;
  height: 1px;
  z-index: 1;
}

/* floating things */
.floatleft {
  float: left;
}
.floatright {
  float: right;
}
/* div or other to clear floating things */
.clear, .divclear {
  clear: both;
}
/* clear block */
.tinyclear {
  clear: both;
  font-size: 0px;
  height: 0px;
}
/* clear self *//* http://www.positioniseverything.net/easyclearing.html */
.clearself:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
 }

/* center */
.center {
  text-align: center;
}
/* don't allow to wrap */
.nowrap {
  white-space: nowrap;
}

/* elements for screen display or print display only */
.screenonly {
  display: block;
}
.printonly {
  display: none;
}
span.screenonly {
  display: inline;
}
span.printonly {
  display: none;
}

/* remove space around form */
form {
  display: inline;
  margin: 0;
  padding: 0;
}
/* get rid of fieldsets and legends */
fieldset {
  display: inline;
  border: none;
  margin: 0;
  padding: 0;
}
legend {
  display: none;
}

/* standard table styles */
table {
  border: none;
  border-collapse: collapse;
  border-spacing: 0px;
}
thead, tbody, tfoot {
  border: none;
}
/* table cells all aligned left and top */
td, th {
  text-align: left;
  vertical-align: top;
}
td.center,
th.center {
  text-align: center;
}
td.right,
th.right {
  text-align: right;
}

/* layout table */
/* note: cellspacing=0 must still be specified in table tag because of IE */
table.layouttable {
  border: none;
  border-spacing: 0px;
  margin: 0px;
  padding: 0px;
}
table.layouttable td {
  padding: 0px;
}

/* all lists use solid bullet */
ul {
  list-style-type: disc;
}

/* definition lists */
dl {
  margin: 0.5em 0px 1em 1.5em;
}
dl dt {
  font-weight: bold;
}
dl dd {
  margin: 0px 0px 0.5em 1.5em;
}

/* horizontal rules */
hr {
  height: 1px;
  border: 1px solid #666666;
}

/* default font and links */
html, body {
  font-family: "Trebuchet MS", Arial, Lucida, Helvetica, "Bitstream Vera Sans", sans-serif;
  font-size: 12px;
  line-height: 133%; /* relative to font size */
  color: #000000;
}
h1, h2, h3, h4, h5, h6, p, ul, ol, li {
  margin-top: 0px;
}
a,
a:link {
  color: #00597a;
  text-decoration: underline;
}
a:visited {
  color: #00597a;
  text-decoration: underline;
}
a:hover {
  color: #9e0b0f;
  text-decoration: underline;
}

/* size corrections for nested tags */
li li {
  font-size: 100%;
}



/* PRE-PAGE */
/* hidden stuff and stuff outside of the normal page flow */

#divprepage {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 1px;
  height: 1px;
}



/* OUTER SHELL */
/* container for all page content */

#divoutershell {
  width: 980px;
  margin: 0px auto;
}



/* PAGE AREA */
/* canvas for content */

#divpagearea {
  position: relative;
  background-color: #ffffff;
}



/* HEADER 1 */
/* primary nav and search */

#divheader1 {
  position: relative;
  z-index: 1;
  padding-top: 9px;
  width: 980px;
  height: 40px;
  background-color: #deecf2;
  background-image: url(/ssp/img/bkg_header1.gif);
  background-position: left top;
  background-repeat: no-repeat;
  border-bottom: 2px solid #f57b20;
}
/* primary navigation */
#divprimarynav {
  position: absolute;
  left: 0px;
  top: 9px;
  width: 760px;/* wider than necessary */
  height: 40px;
  z-index: 2;
}
#divprimarynav ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
  width: 760px;
}
#divprimarynav ul li {
  float: left;
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
}
#divprimarynav ul li a {
  display: block;
  width: 100px;
  height: 40px;
  text-indent: -9999px;
  overflow: hidden;
  outline: none;
  background-image: url(/ssp/img/primarynav.gif); /* sprites */
}
#divprimarynav ul li.home a {
  width: 54px;
  background-position: 0px 0px;
}
body.home #divprimarynav ul li.home a,
#divprimarynav ul li.home a:hover {
  background-position: 0px -40px;
}
#divprimarynav ul li.people a {
  width: 66px;
  background-position: -54px 0px;
}
body.people #divprimarynav ul li.people a,
#divprimarynav ul li.people a:hover {
  background-position: -54px -40px;
}
#divprimarynav ul li.alumni a {
  width: 63px;
  background-position: -120px 0px;
}
body.alumni #divprimarynav ul li.alumni a,
#divprimarynav ul li.alumni a:hover {
  background-position: -120px -40px;
}
#divprimarynav ul li.research a {
  width: 80px;
  background-position: -183px 0px;
}
body.research #divprimarynav ul li.research a,
#divprimarynav ul li.research a:hover {
  background-position: -183px -40px;
}
#divprimarynav ul li.publications a {
  width: 102px;
  background-position: -263px 0px;
}
body.publications #divprimarynav ul li.publications a,
#divprimarynav ul li.publications a:hover {
  background-position: -263px -40px;
}
#divprimarynav ul li.seminars a {
  width: 148px;
  background-position: -365px 0px;
}
body.seminars #divprimarynav ul li.seminars a,
#divprimarynav ul li.seminars a:hover {
  background-position: -365px -40px;
}
#divprimarynav ul li.news a {
  width: 109px;
  background-position: -513px 0px;
}
body.news #divprimarynav ul li.news a,
#divprimarynav ul li.news a:hover {
  background-position: -513px -40px;
}
#divprimarynav ul li.media a {
  width: 53px;
  background-position: -622px 0px;
}
body.media #divprimarynav ul li.media a,
#divprimarynav ul li.media a:hover {
  background-position: -622px -40px;
}
#divprimarynav ul li.classes a {
  width: 68px;
  background-position: -675px 0px;
}
body.classes #divprimarynav ul li.classes a,
#divprimarynav ul li.classes a:hover {
  background-position: -675px -40px;
}

/* search */
#divsearch {
  position: absolute;
  right: 8px;
  top: 20px;
  z-index: 1;
}
#divsearch table td {
  vertical-align: middle;
}
#divsearch table td.input,
#divsearch table td.button {
  background-color: #c0dbe5;
}
#divsearch #q {
  font-size: 11px;
  color: #00597a;
  width: 99px;
  padding: 1px 2px;
  background-color: #c0dbe5;
  border: none;
}



/* HEADER 2 */

#divheader2 {
  position: relative;
  z-index: 1;
  width: 980px;
  height: 166px;
  background-image: url(/ssp/img/bkg_toolnav.gif);
  background-position: left bottom;
  background-repeat: no-repeat;
}

/* ssp logo */
#divssplogo {
  position: absolute;
  left: 820px;
  top: 4px;
  z-index: 1;
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
}

/* photo */
#divsectionphoto {
  position: absolute;
  left: 339px;
  top: 0px;
  z-index: 2;
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
}

/* section name */
#divsectionname {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 300px;
  height: 80px;
  padding: 59px 57px 5px 10px;
  z-index: 5;
  background-image: url(/ssp/img/8bb9ce_60pct.png);
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
}

/* tool navigation */
#divtoolnav {
  position: absolute;
  left: 624px;
  top: 144px;
  width: 320px;
  height: 22px;
  z-index: 1;
}
#divtoolnav ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
  width: 320px;
}
#divtoolnav ul li {
  float: left;
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
}
#divtoolnav ul li a {
  display: block;
  width: 100px;
  height: 22px;
  text-indent: -9999px;
  overflow: hidden;
  outline: none;
  background-image: url(/ssp/img/toolnav.gif); /* sprites */
}
#divtoolnav ul li.contact a {
  width: 94px;
  background-position: 0px -16px;
}
body.contact #divtoolnav ul li.contact a,
#divtoolnav ul li.contact a:hover {
  background-position: 0px -57px;
}
#divtoolnav ul li.support a {
  width: 104px;
  background-position: -94px -16px;
}
body.support #divtoolnav ul li.support a,
#divtoolnav ul li.support a:hover {
  background-position: -94px -57px;
}
#divtoolnav ul li.directions a {
  width: 102px;
  background-position: -198px -16px;
}
body.directions #divtoolnav ul li.directions a,
#divtoolnav ul li.directions a:hover {
  background-position: -198px -57px;
}



/* BODY AREA */

#divbody {
  background-image: url(/ssp/img/bkg_body.gif);
  min-height: 444px;
}
#divbodyleft {
  float: left;
  padding: 29px 20px 26px 15px;
  width: 158px;
}
#divbodycenter {
  float: left;
  padding: 26px 12px 26px 12px;
  width: 564px;
}
#divbodyright {
  float: left;
  padding: 26px 0px 26px 18px;
  width: 168px;
}

/* secondary navigation */
#divsecondarynav ul {
  width: 158px;
  margin: 0px;
  padding: 0px;
  list-style: none;
}
#divsecondarynav ul li {
  width: 158px;
  font-size: 1.0em;
  line-height: 110%;
  margin-bottom: 7px;
}
#divsecondarynav a {
  display: block;
  width: 158px;
}
#divsecondarynav a,
#divsecondarynav a:link,
#divsecondarynav a:visited {
  color: #00597a;
  text-decoration: none;
}
#divsecondarynav a:hover {
  color: #9e0b0f;
  text-decoration: none;
}
#divsecondarynav li.active a {
  color: #9e0b0f !important;
}

/* text specifications */
div.text h1 {
  font-size: 1.16em;
  font-weight: bold;
  line-height: 120%;
  color: #9e0b0f;
  margin-bottom: 16px;
}
div.text h2 {
  font-size: 1.16em;
  font-weight: bold;
  line-height: 120%;
  color: #9e0b0f;
  margin-bottom: 16px;
}
div.text h3 {
  font-size: 1.0em;
  font-weight: bold;
  line-height: 200%;
  color: #9e0b0f;
  margin-bottom: 0px;
}
div.text h4 {
  font-size: 1.0em;
  font-weight: bold;
  line-height: 200%;
  color: #000000;
  margin-bottom: 0px;
}
div.text p {
  font-size: 1.0em;
  line-height: 133%;
  color: #000000;
  margin-bottom: 16px;
}
div.text span.red {
  color: #9e0b0f;
}
/* table of "items" - usually a photo on one side, and heading+paragraph on the other */
div.text table.itemtable {
  border: none;
  border-spacing: 0px;
  margin: 0px;
  padding: 0px;
}
div.text table.itemtable th,
div.text table.itemtable td {
  border-top: 1px solid #bfd9e5;
  padding: 16px 16px 16px 0px;
}
div.text table.itemtable tr.first th,
div.text table.itemtable tr.first td {
  border: none;
  padding-top: 0px;
}
div.text table.itemtable th.last,
div.text table.itemtable td.last {
  padding-right: 0px;
}
div.text table.itemtable th p,
div.text table.itemtable td p {
  margin-bottom: 0px;
}
/* striped table */
div.text table.striped tr.odd {
  background-color: #e9e9e9;
}
div.text table.striped tr.even {
}




/* FOOTER */

#divfooter {
  position: relative;
  z-index: 1;
  min-height: 28px;
  background-color: #8bb9ce;
}
/* MIT logo */
#divmitlogo {
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
  padding: 6px 0px 5px 10px;
}
/* links */
#divfooterlinks {
  position: absolute;
  left: 396px;
  top: 14px;
  width: 570px;
}
#divfooterlinks ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
}
#divfooterlinks ul li {
  float: left;
  font-size: 1.0em;
  line-height: 100%;
  margin: 0px 40px 0px 0px;
}
#divfooterlinks a {
  text-decoration: none;
}




/*** HOME PAGE ***/

/* page area */
body.home #divpagearea {
  background-image: url(/ssp/img/home/watermark.gif);
  background-position: 604px 128px;
  background-repeat: no-repeat;
}

/* header */
body.home #divheader2 {
  width: 990px;
  height: auto;
  margin-right: -10px; /* extra space for floats */
  background-image: none;
}
body.home #divheader2left {
  float: left;
  width: 623px;
}
body.home #divheader2right {
  float: left;
  width: 357px;
}

/* photo */
body.home #divhomephoto {
  position: relative;
  z-index: 1;
  width: 623px;
  height: 287px;
  overflow: hidden;
}
body.home #divhomephoto img {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 623px;
  height: 287px;
  z-index: 1;
  display: none;
}
body.home #divhomephoto img.default {
  display: block;
}

/* site title */
body.home #divsitetitle {
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
  width: 623px;
  height: 41px;
  background-color: #8bb9ce;
  background-image: url(/ssp/img/home/bkg_sitetitle.gif);
}

/* logo */
body.home #divssplogo {
  position: relative;
  left: 0px;
  top: 0px;
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
  padding: 10px 0px 16px 13px;
}

/* spotlight */
body.home #divspotlight {
  padding: 0px 0px 8px 24px;
  min-height: 197px;
}

/* tool navigation */
body.home #divtoolnav {
  position: relative;
  left: 0px;
  top: 0px;
  width: 357px;
  height: 41px;
  z-index: 1;
  background-image: url(/ssp/img/home/bkg_toolnav.gif);
}
body.home #divtoolnav ul {
  margin: 0px;
  padding: 0px;
  list-style: none;
  width: 320px;
}
body.home #divtoolnav ul li {
  float: left;
  font-size: 10px;
  line-height: 100%;
  margin: 0px;
}
body.home #divtoolnav ul li a {
  display: block;
  width: 100px;
  height: 41px;
  text-indent: -9999px;
  overflow: hidden;
  outline: none;
  background-image: url(/ssp/img/toolnav.gif); /* sprites */
}
body.home #divtoolnav ul li.contact a {
  width: 94px;
  background-position: 0px 0px;
}
body.home #divtoolnav ul li.contact a {
  width: 94px;
  background-position: 0px 0px;
}
body.home #divtoolnav ul li.contact a:hover {
  background-position: 0px -41px;
}
body.home #divtoolnav ul li.support a {
  width: 104px;
  background-position: -94px 0px;
}
body.home #divtoolnav ul li.support a:hover {
  background-position: -94px -41px;
}
body.home #divtoolnav ul li.directions a {
  width: 102px;
  background-position: -198px 0px;
}
body.home #divtoolnav ul li.directions a:hover {
  background-position: -198px -41px;
}

/* body */
body.home #divbody {
  background-image: url(/ssp/img/home/bkg_body.gif);
  min-height: 282px;
}
body.home #divbodyleft {
  float: left;
  padding: 14px 30px 14px 14px;
  width: 338px;
}
body.home #divbodycenter {
  float: left;
  padding: 14px 0px 14px 14px;
  width: 528px;
}

/* text specifications */
body.home div.text h2 {
  font-size: 2.0em;
  font-weight: normal;
  line-height: 100%;
  color: #9e0b0f;
  margin-bottom: 8px;
}
body.home div.text h3 {
  font-size: 1.0em;
  font-weight: bold;
  line-height: 160%;
  color: #9e0b0f;
  margin-bottom: 0px;
}
body.home div.text p {
  font-size: 1.0em;
  line-height: 160%;
  color: #000000;
  margin-bottom: 0px;
}
