/* reset CSS */
* {
	margin: 0;
	padding: 0;
	border: none;
line-height: 150%;
}

.floatleft
{
  float: left;
}

.floatright
{
  float: right;
}



body {
	text-align: center;
	color: black;
	background-color: #eec;
	font-family: "lucida grande", lucida, helvetica, arial, tahoma, Sans-Serif;
	font-size: 12pt;
}

.clear {
	clear: both;
}

#page-wrapper 
{
  width: 80%;
  /* min-width: 770px; the old value. revert if anything horribly breaks, but the new one is needed to accomodate the schedule not doing stupid things */
  min-width: 880px;
  max-width: 1200px;
  text-align: left;
  margin: 0 auto;
  /* IE hax, emulates min-width and max-width, from http://www.fijiwebdesign.com/fiji-web-design-blog/max-width-and-min-width-support-for-ie.html */
  /* width: expression(Math.max(Math.min(((document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth) - 20)*.8, 1200), 770)+'px'); old code before accomodating schedule */
  width: expression(Math.max(Math.min(((document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth) - 20)*.8, 1200), 880)+'px');
}

#page-header {
	background: black url(olin.jpg) no-repeat right;
        height: 125px;
	color: white;
}

#page-header a {
	color: inherit;
	text-decoration: none;
}

#HMC-CS {
	background: #593D22 url(header_seal.png) no-repeat center;
        height: 125px;
	text-align: center;
	font-family: helvetica, arial, sans-serif;
	padding: 10px;
	margin-right: 450px;
}

#HMC-CS h1 {
	color: #DAC5AC;
	font-size: 26px;
	font-weight: bold;
	text-shadow: black 4px 4px 4px;
}

#HMC-CS h1 a {
color: #DAC5AC;
}

#HMC-CS h2 {
	font-weight: normal;
	font-size: 36px;
	text-shadow: black 4px 4px 4px;
}


#HMC-CS h2 a {
color: white;
}


div#top_stripe
{
  background-color: #000;

}

div#top_navbar
{
  font-size: 0.85em;

}

div#top_navbar em {
    color: #DAC5AC;
    font-style: inherit;
}

div#top_navbar ul 
{
  padding-left: 0;
  margin-left: 0;
  background-color: #000;
  float: left;
}

div#top_navbar ul li 
{
  display: inline;
}

div#top_navbar ul li a
{
  padding: 8px 15px;
  float: left;
  border-right: 1px solid #333;
  text-decoration: none;
  background-color: #000;
  color: #fff;
}

div#top_navbar ul li a:hover
{
  background-color: #333;
  color: #DAC5AC;
}

div#searchform
{
  color: white;
  float: right;
  padding-top: 7px; 
}

div#searchform input.search 
{
  position: relative;
  left: 10px;
  padding: 2px 16px 2px 2px;
}

div#searchform input.search_btn 
{
  position: relative;
  right: 8px;
  top: 2px;
}

#sidebar {
	color: white;
	background-color: transparent;
	width: 170px;
	float: left;
	font-size: 15px;
}

#sidebar p, #sidebar ol, #sidebar ul {
        padding: .25em 1em;
}


#sidebar ul ul {
        margin: 0em 1em;
}

#sidebar a {
	color: white;
	text-decoration: none;
	display: block;
	margin: 0px -1em;
	padding: 0px 1em;
}

#sidebar li li a {
	margin: 0px -2em;
	padding: 0px 2em;

}

#sidebar a:hover {
	color: #DAC5AC;
	text-decoration: underline;
}


#sidebar .directory-listing {
	list-style-type: none;
}

#sidebar .directory-listing li {
	padding: 0.5em 0em;
}

#sidebar .directory-listing a {
	margin: -0.5em -1em;
	padding: 0.5em 1em;
}

#sidebar .directory-listing .current-directory {
	background: #15547E url(bg-sidebar-dark.png) left repeat-y;
/*
	color: #E7C79E;
*/
	margin: 0px -1em;
        padding: 0.25em 1em; 
}

#sidebar .directory-listing ul {
	list-style-type: none;
	padding: 0px;
	font-size: 0.83em;
}

#sidebar .directory-listing a.current-page {
	color: #C2A572;
}

div#footer
{
width: 80%;
	border-top: 2px solid black;
  /* min-width: 770px; the old value. revert if anything horribly breaks, but the new one is needed to accomodate the schedule not doing stupid things */
  min-width: 880px;
  max-width: 1200px;
  text-align: left;
  margin: 0 auto;
  /* IE hax, emulates min-width and max-width, from http://www.fijiwebdesign.com/fiji-web-design-blog/max-width-and-min-width-support-for-ie.html */
  /* width: expression(Math.max(Math.min(((document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth) - 20)*.8, 1200), 770)+'px'); old code before accomodating schedule */
  width: expression(Math.max(Math.min(((document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth) - 20)*.8, 1200), 880)+'px');
}


#footer div {
	clear: both;
	background: transparent url(footer_seal.gif) no-repeat scroll 10px 10px;
	color: rgb(150, 150, 128);
	padding: 16px 102px 40px;
	font-size: 10px;
        line-height: 100%;
}

#footer div a {
	color: rgb(150, 150, 128);
	text-decoration: underline;
}


#footer div a:hover {
	color: black;
}

#middle 
{
	background: #3B7EA3 url(bg-sidebar.png) top left repeat-y;
	padding: 3px 2px 2px 0;
}

#page-contents #breadcrumbs 
{
	font-size: 0.7em;
	color: #593D22;
	margin-bottom: 2em;
}

#page-contents #breadcrumbs a 
{
	color: #593D22;
}

#page-contents {
	margin-left: 170px;
	padding: 10px 32px 40px;
	color: black;
	background-color: white;
	font-size: 10pt;
	border: solid #333;
	border-width: 0px 1px 1px 0px;
        position: relative;
}

#page-contents h2 a
{
  text-decoration: none;
  color: black;
}


#page-contents h2 a:hover
{
  text-decoration: underline;
}


#page-contents ol, #page-contents ul, #page-contents dl {
	margin: 0.5em 0 1em;
}

#page-contents li
{
	margin-left: 4em;
	padding: 0.25em; 
}


#page-contents h1 {
	font-size: 22pt;
	font-weight: bold;
	color: #332419;
	margin: 1em 0 0.4em;
	border-bottom: 1px solid #ccc;
}

#page-contents h2 {
	font-size: 19pt;
	font-weight: bold;
	color: #001D5A;
	margin: 1em 0 0.4em;
}
#page-contents h3 {
	font-size: 17pt;
	font-weight: bold;
	color: #332419;
	margin: 1em 0 0.4em;
}
#page-contents h4 {
	font-size: 14pt;
	font-weight: bold;
	color: #001D5A;
	margin: 1em 0 0.4em;
}
#page-contents h5 {
	font-size: 12pt;
	font-weight: bold;
	color: #332419;
	margin: 1em 0 0.4em;
}
#page-contents h6 {
	font-size: 11pt;
	font-weight: bold;
	color: #001D5A;
	margin: 1em 0 0.4em;
}

#page-contents p {
	margin: 1em 0;
}

#page-contents hr {
	border: none;
	border-top: 3px solid #E6D8CD;
	margin: 0.5em 2em;
}


/* For the schedule mini-nav */

.schedule-semesters {
    position: relative !important;
    overflow: hidden !important;
    width: 100% !important;
    margin: 0;
    padding: 0;
}

.schedule-semesters-content {
	position: relative !important;
/*	margin: 5px 0 20px !important;*/
}

.schedule-semesters-list {
	margin: 0 !important;
	padding: 0 !important;
        list-style-type: none !important;
}

.schedule-semester {
        margin: 5px !important;
/*	margin-top: 5px !important;
	margin-bottom: 5px !important;*/
        padding: 0 !important;
}

.schedule-semesters-header,
.schedule-semesters-content {
    margin-right: 0 !important;
    margin-left: 0 !important;
}

/*.schedule-semesters-header { 
    border-width: 0 0 1px !important;
    border-style: solid !important;
    border-color: #ccc !important; 
    padding: 0 !important;
    font-size: 14px !important; 
    font-family: trebuchet ms !important; 
    margin-bottom: 8px !important;
    padding-bottom: .3em !important; 
}*/

.schedule-semesters-header,
.schedule-semesters-header a {
    color: #333 !important;
    font-weight: normal !important;
}

.schedule-semesters-content a {
    color: #666 !important;
}

#page-contents .schedule-semesters-content {
    margin-top: 15px !important;
    margin-bottom: 15px !important;
    border: 1px solid #ccc !important;
    background-color: #f3f3f3 !important;
} 

.schedule-semesters-header {
    font-size: 14px !important;
}

.schedule-semesters-content {
    margin-top: 5px !important;
    margin-bottom: 20px !important;
    font-size: 11px !important;
}

#semester-schedule-box 
{
  width: 87px !important; /* 105px */
  margin: 0 !important;
  float: left !important;
  /* IE hax, emulates min-width and max-width, from http://www.fijiwebdesign.com/fiji-web-design-blog/max-width-and-min-width-support-for-ie.html */
/* will work back in in a bit  width: expression(Math.max(Math.min(((document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth) - 20)*.8, 1200), 770)+'px'); */
}

#semester-schedule-table 
{
  width: 85%;
  font-size:90%;
  min-width: 465px !important;
  max-width: 785px !important;
/*  max-width: 1200px; */
  margin: 0 auto !important;
  /* IE hax, emulates min-width and max-width, from http://www.fijiwebdesign.com/fiji-web-design-blog/max-width-and-min-width-support-for-ie.html */
  width: expression(Math.max(Math.min((((document.documentElement ? document.documentElement.clientWidth : document.body.clientWidth)-20)*.8-220)*.8, 785), 465)+'px');
 /* width: expression(450+'px') !important; */
}

table#semester-schedule-table
{
  border: 1px solid #ccc;
  border-collapse: collapse;
}

#semester-schedule-table tr.top-row
{
  background-color: #f3f3f3;
  color: #001D5A;
}

#semester-schedule-table tr.even-row
{
  background-color: #f6f6f6;
}

#semester-schedule-table tr.odd-row
{
  background-color: #ffffff;
}

#semester-schedule-table th
{
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #999;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-bottom: 0.3em;
  font-size: 1.2em;
  font-weight: bold;
}

#semester-schedule-table td
{
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-bottom: 0.1em;
  padding-top: 0.1em;
}

.sample-schedules-table
{
  border-collapse: collapse;
  margin-top: 1em;
  margin-bottom: 2em;
  border: 1px solid #ccc;
}

.sample-schedules-table td
{
  padding-left: 1.0em;
  padding-right: 1.0em;
  padding-bottom: 0.1em;
  padding-top: 0.1em;
  border-bottom: 1px solid #ccc;
}

.sample-schedules-table td.cs-maj-req
{
  font-weight: bold;
}

.sample-schedules-table tr.unit-total
{
  font-style: italic;
}

.sample-schedules-table tr.unit-total td
{
  padding-bottom: 1.0em;
}

.sample-schedules-table tr.header-row
{
  background-color: #f3f3f3;
}

.sample-schedules-table tr.header-row td
{
  border-bottom: 1px solid #999;
  font-weight: bold;
}

#page-contents div.notice
{
  margin: 1.25em 0;
  padding: 1em;
  width: 87%;
  background-color: #FFFFDD;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
  border-radius: 0.75em;
}

#page-contents div.prof_info
{
  width: 98%;
  float: left;
  margin: 1.25em 0;
  padding: 1em;
  background-color: #DED9D6;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
  border-radius: 0.75em;
}

#page-contents div.prof_info h2 {
  margin: 0 0 0.4em;
  padding: 0;
  font-size: 1.7em;
  font-weight: bold;
}

#page-contents div.prof_info h3 {
  margin: 0 0 0.4em;
  padding: 0;
  font-size: 1.25em;
  font-weight: bold;
}

#page-contents div.prof_info h4 {
  margin: -0.35em 0 0.9em;
  padding: 0;
  font-size: 0.9em;
  font-weight: bold;
}


#page-contents .prof_picture
{
  height: 100px;
  width: 100px;
  float: left;
}


#page-contents div.prof_contact
{
  margin-left: 100px;
  padding: 0;
}

#page-contents div.prof_contact dl {
  position: relative;
  background-color: white;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
  border-radius: 0.75em;
  padding: 0.75em;
  margin: 0 0 0 1em;
}

#page-contents div.prof_contact dt {
  margin: 0;
  padding: 0;
  float: left;
  margin-right: 0.3em;
  font-weight: bold;
}

#page-contents div.prof_contact dd {
  margin: 0;
  padding: 0;
}

#page-contents div.prof_info p {
  background-color: white;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
  border-radius: 0.75em;
  padding: 0.75em;
  margin: 1.4em 0 0.4em;
}


#page-contents div.bidscrptn {
  margin: 1.25em 0;
  padding: 1em;
  background-color: #DED9D6;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
}

#page-contents div.bidscrptn-header h2 {
  border-bottom: 1px solid #332419;
  margin: 0;
  padding: 0 0 2px;
  font-size: 1.25em;
  font-weight: bold;
}

#page-contents div.bidscrptn-header dl {
  margin: 0.25em 0 0;
  padding: 0.25em 0;
}

#page-contents div.bidscrptn-header dl dt {
display:inline;
font-weight: bold;
padding: 0 1em 0 0;
margin: 0;
}

#page-contents div.bidscrptn-header dl dd {
display: inline;
margin: 0;
padding: 0;
}


#page-contents div.bidscrptn-content {
margin: 0.75em 0 0;
padding: 0.75em;
background-color: white;
-webkit-border-radius: 0.75em;
-moz-border-radius: 0.75em;
}



#page-contents div.crsdscrptn {
  margin: 1.25em 0;
  padding: 1em;
  background-color: #DED9D6;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
}

#page-contents div.crsdscrptn-header h2 {
  border-bottom: 1px solid #332419;
  margin: 0;
  padding: 0 0 2px;
  font-size: 1.25em;
  font-weight: bold;
}

#page-contents div.crsdscrptn-header dl {
  margin: 0.25em 0 0;
  padding: 0.25em 0;
}

#page-contents div.crsdscrptn-header dl dt {
display:inline;
font-weight: bold;
padding: 0 1em 0 0;
margin: 0;
}

#page-contents div.crsdscrptn-header dl dd {
display: inline;
margin: 0;
padding: 0;
}

#page-contents div.crsdscrptn-content {
margin: 0.75em 0 0;
padding: 0.75em;
background-color: white;
-webkit-border-radius: 0.75em;
-moz-border-radius: 0.75em;
}


#page-contents div.event {
  margin: 1.25em 0 2.5em;
  padding: 1em;
  background-color: #DED9D6;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
}

#page-contents div.event-header h2 {
  border-bottom: 1px solid #332419;
  margin: 0;
  padding: 0 0 2px;
  font-size: 1.25em;
  font-weight: bold;
}

#page-contents div.event-header h3.event-category {
  font-size: 1.1em;
  font-weight: bold;
  text-transform: uppercase;
  margin: 0.4em 0;
  float: right;
  padding: 0.3em 0.5em;
  color: white;
  background-color: #3B7EA3;
  -webkit-border-radius: 0.5em;
  -moz-border-radius: 0.5em;
}

#page-contents div.event-header dl {
  margin: 0.25em 0 0;
  padding: 0.25em 0;
}

#page-contents div.event-header dl dt {
font-weight: bold;
padding: 0 1em 0 0;
margin: 0;
float: left;
}

#page-contents div.event-header dl dd {
margin: 0;
padding: 0;
}

#page-contents div.event-content {
clear: right;
margin: 0.75em 0 0;
padding: 0.75em;
background-color: white;
-webkit-border-radius: 0.75em;
-moz-border-radius: 0.75em;
}


#page-contents div.event-body, #page-contents div.event-more {
margin: 1em;
}

#page-contents div.event-content p {
margin: 1em 0;
}

#page-contents div.event-content h1 {
font-size: 2em;
font-weight: bold;
}
#page-contents div.event-content h2 {
font-size: 1.5em;
font-weight: bold;
}

#page-contents div.event-content hr {
	border: none;
	border-top: 1px solid #DED9D6;
	width: 90%;
	margin: 0.5em auto;
}

#page-contents div.event-archive {
  padding: 0.75em 0.5em;
  background-color: white;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
  border-radus: 0.75em;
  z-index:1;
  position: absolute;
  top: 32px;
  right: 32px;
  width: auto;
  border: 3px #3B7EA3 solid;
-webkit-box-shadow: 0px 10px 20px rgba(0,0,0,0.6);
-moz-box-shadow: 0px 10px 20px rgba(0,0,0,0.6);
box-shadow: 0px 10px 20px rgba(0,0,0,0.6);
}

#page-contents div.event-archive h2 {
font-size: 110%;
font-weight: bold;
margin: 0 0 0.5em;
padding:0;
}

#page-contents div.event-archive ul {
        padding: 0;
        margin: 0;
}

#page-contents div.event-archive ul li {
font-size: 95%;
        display: inline;
        padding: 0;
        margin: 0 1em 0 0;
}


#contact-info-main {
float: left;
width: 40%;
padding: 1em 0;
margin: 0;
}


#contact-info-main h5 {
margin-top: 0;
}

#contact-info-main dl {
padding: 0;
margin: 0;
}

#contact-info-main dl dt {
  font-weight: bold;
  padding: 1em 0 0.25em;
}

#contact-info-main dl dd {
  padding: 0.25em 0;
  margin-left: 2.5em;
}

#contact-info-main address {
  font-style: normal;
  line-height: 130%;
}

#contact-info-extra {
padding: 1em;
margin: 0 0 0 50%;
background-color: #DED9D6;
color: black;
-webkit-border-radius: 0.75em;
-moz-border-radius: 0.75em;
}

#contact-info-extra h5 {
margin-top: 0;
}

#contact-info-extra ul {
padding: 0;
margin: 0;
list-style-type: none;
}

#contact-info-extra ul li {
margin: 0;
padding: 1em 0;
}

ul#clinic-projects-nav
{
  list-style-type: none;
}

ul#clinic-projects-nav li
{
  display: inline;
}

ul.clinic-projects-list li
{
  margin-bottom: 1em;
  margin-top: 1em;
}

.project-client
{
  font-weight: bold;
}

.this-is-important
{
  font-weight: bold;
}

/* For the clinic mini-nav */


.clinic-terms-list {
        margin: 0;
        padding: 0;
        list-style-type: none;
}

.clinic-term {
        margin: 0;
        padding: 0.2em;
        display: inline;
}

#page-contents div.clinic-project {
  margin: 1.25em 0;
  padding: 1em;
  background-color: #DED9D6;
  color: black;
  -webkit-border-radius: 0.75em;
  -moz-border-radius: 0.75em;
}

#page-contents div.clinic-project-header h2 {
  border-bottom: 1px solid #332419;
  margin: 0;
  padding: 0 0 2px;
  font-size: 1.25em;
  font-weight: bold;
}

#page-contents div.clinic-project-header dl {
  margin: 0.25em 0 0;
  padding: 0.25em 0;
}

#page-contents div.clinic-project-header dl dt {
display:inline;
font-weight: bold;
padding: 0 1em 0 0;
margin: 0;
}

#page-contents div.clinic-project-header dl dd {
display: inline;
margin: 0;
padding: 0;
}

#page-contents div.clinic-project-content {
margin: 0.75em 0 0;
padding: 0.75em;
background-color: white;
-webkit-border-radius: 0.75em;
-moz-border-radius: 0.75em;
}

/* Nifty imgteaser thing borrowed from:
   http://www.sohtanaka.com/web-design/css-on-hover-image-captions/ */
.imgteaser {
    margin: 10px;
    overflow: hidden;
    float: left;
    position: relative;
}
.imgteaser a {
    text-decoration: none;
    float: left;
}
.imgteaser a:hover {
    cursor: default;
}

.imgteaser a img {
    float: left;
    margin: 0;
    background: #fff;
    border: none;
}

.imgteaser a .more {
    position: absolute;
    right: 10px;
    bottom: 10px;
    font-size: 12px;
    color: #fff;
    background: #000;
    padding: 5px 10px;
    filter:alpha(opacity=65);
    opacity:.65;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=65)"; /*--IE 8 Transparency--*/
}
.imgteaser a:hover .desc{
    display: block;
    font-size: 12px;
    padding: 10px 0;
    background: #111;
    filter:alpha(opacity=75);
    opacity:.75;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=75)"; /*--IE 8 Transparency--*/
    color: #fff;
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 10px;
    margin: 0;
    width: 280px;
}

.imgteaser a:hover .desc strong {
    display: block;
    margin-bottom: 5px;
    font-size: 14px;
    font-weight: bold;
}

.imgteaser a .desc { display: none; }
.imgteaser a:hover .more { visibility: hidden;}

.imgteaser-row 
{ 
    width: 700px;
    margin: 0 auto;
    padding: 0;
}


div.alertbox
{
    color: black;
    background: #ff7;
    margin: 1.5em 0;
    padding: 1em 2em;
}


#newsbox
{
    color: black;
    background: #ded9d6;
    margin: 1.5em 0;
    padding: 1em 0.5em 0.5em;
    -webkit-border-radius: 0.75em;
    -moz-border-radius: 0.75em;
    border-radius: 0.75em;
}

#newsbox #newsboxheader
{
    margin: 0 0 0.5em;
    text-align: center;
}

#newsbox #newsboxcontent
{
    color: black;
    background: white;
    margin: 0;
    padding: 1em;
    -webkit-border-radius: 0.5em;
    -moz-border-radius: 0.5em;
    border-radius: 0.5em;
    -webkit-box-shadow: inset 0 4px 8px 2px #BBB;
    -moz-box-shadow: inset 0 4px 8px 2px #BBB;
    box-shadow: inset 0 4px 8px 2px #BBB;
}


table.colloquium-schedule
{
  width: 100%;
  font-size:90%;
  margin: 1em auto 1em 0;
  border: 1px solid #ccc;
  border-collapse: collapse;
}

table.colloquium-schedule tr.top-row
{
  background-color: #f3f3f3;
  color: #001D5A;
}

table.colloquium-schedule tr.even-row
{
  background-color: #f6f6f6;
}

table.colloquium-schedule tr.odd-row
{
  background-color: #ffffff;
}

table.colloquium-schedule th
{
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #999;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-bottom: 0.3em;
  font-size: 1.2em;
  font-weight: bold;
}

table.colloquium-schedule td
{
  border-left: 1px solid #ccc;
  border-right: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  padding-left: 0.5em;
  padding-right: 0.5em;
  padding-bottom: 0.1em;
  padding-top: 0.1em;
}

table.colloquium-schedule span.categorylabel {
  float: right;
  font-weight: bold;
  text-transform: uppercase;
  padding: 0em 0.5em;
  margin-left: 1.5em;
  color: white;
  background-color: #3B7EA3;
  -webkit-border-radius: 0.5em;
  -moz-border-radius: 0.5em;
}

