body {
  margin: 0;
  padding: 0;
  font: 12px/16px Arial, sans-serif;
  background: /*#295760*/ #043a44 url(/img/background_body.jpg) repeat-x scroll top left;
}

a {
  color: #043a44;
}

a:hover {
  color: #8e3523;
}

h1 {
  margin: 0 15px 20px 15px;
  font-weight: normal;
  font-size: 26px;
  line-height: 16px;
  color: #8e3523;
}

h2 {
  margin: 20px 15px 10px 15px;
  font-size: 14px;
  line-height: 18px;
  color: #043a44;
}

h3 {
  margin: 25px 15px 10px 15px;
  font-size: 12px;
  line-height: 16px;
  color: black;
}

img {
  border: none;
}

p {
  margin: 0 15px 18px 15px;
}

ul {
  margin: 0 15px 18px 15px;
  padding: 0;
}

li {
  margin: 5px 0 0 15px;
}

table {
  table-layout: fixed;
  border-collapse: collapse;
}

td {
  vertical-align: top;
}


.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

#header, #container, #footer {
  width: 850px;
  margin: 0 auto 0 auto;
}

#background {
  background-color: #f9faf2;
}




#header {
  color: #eff0e8;
}

#header img {
  display: block;
}

#header #logolink {
  display: block;
  float: left;
  width: 200px;
  height: 108px;
  margin-left: 40px;
}

#header #topnav {
  float: right;
  margin-top: 76px;
}

#header #topnav a {
  font-size: 14px;
  line-height: 18px;
  text-decoration: none;
  color: #eff0e8;
}

#header #topnav a:hover, #header #topnav a.currentpage {
  color: #b3c9a6;
  text-decoration: underline;
}

#header #hero {
  clear: both;
  width: 838px;     /* 838px width + 5px left padding + 5px right padding + 1px left border + 1px right border = 850px */
  padding: 5px;
  border: 1px solid white;
}




#container {
  padding-top: 25px;
  padding-bottom: 30px;
  border-top: 36px solid #8e3523;
  background-color: #f9faf2;  /* color rule from above repeated for cases when window is narrower than content */
}

#homeheader {
  margin-top: -25px;
  padding-bottom: 10px;
}

#homecalendarframe {
  margin-bottom: 20px;
}

#container .rightline {
  border-right: 1px solid #1f4d56;
}

#container .colleft {
  float: left;
  width: 424px;     /* 1px less than half of 850px because of the right border in the subtemplate that has a line between columns */
}

#container .colright {
  float: right;
  width: 425px;
}



.calendar_head,
.calendar {
  width: 770px;
  margin: 0 auto 10px auto;
}

/*.calendar_head a,
.calendar a {
  text-decoration: none;
}

.calendar_head a:hover,
.calendar a:hover {
  text-decoration: underline;
}*/

.calendar a:hover {
  color: #043a44;
}

.calendar_head td {
  width: 33%;
}

.calendar_head #cal_title {
  text-align: center;
  font-size: 20px;
  font-weight: bold;
  color: #043a44;
}

.calendar_head #prevmonth, .calendar_head #nextmonth {
  color: #043a44;
  font-size: 14px;
  line-height: 18px;
}

.calendar_head #nextmonth {
  text-align: right;
}

.calendar {
  border: 2px solid #c7c8c2;
}

.calendar #daysrow th {
  width: 100px;
  color: #FFFFFF; 
  background-color: #b2a99e;
  border: 2px solid #c7c8c2;
  border-top: none;
  text-align: center;
}

.calendar #daysrow th a {
  color: white;
  font-weight: bold;
}

.calendar td {
  width: 100px;
  height: 90px;
  padding-left: 5px;
  border: 2px solid #c7c8c2; 
  text-align: left;
}

.calendar td .head {
  height: 10px;
}

.calendar td a {
  color: #8e3523;
  font-weight: bold;
}

.calendar td ul {
  margin: 0;
  padding: 0;
  line-height: normal;
  list-style: none;
}




#footer {
  width: 835px;     /* 835px width + 15px left padding = 850px */
  padding: 25px 0 30px 15px;
  color: #f9f9f2;
  line-height: 18px;
}

#footer a {
  color: #f9f9f2;
  text-decoration: none;
}

#footer a:hover {
  text-decoration: underline;
}

#footer .bottomnav {
  float: left;
  margin: 15px 50px 0 0;
  padding: 0;
  list-style: none;
}

#footer #addressbox {
  float: right;
  text-align: right;
}

#footer #addressbox address {
  margin-top: 15px;
}

#brownboots {
  margin: 15px 0 0 0;
  color: #9fb8b4;
}

#brownboots a {
  color: #9fb8b4;
}
