body {
  font-family: Georgia, Times, Times New Roman, Times Roman, serif;
  color: #000000;
  background: #ffffff;
  margin: 0;
  padding: 0;
}

h1,h2,h3,#menu a,input,textarea,div.captionimg,th,td.subheading {
  font-family: Arial, Helvetica, sans-serif;
}

div#banner {
  position: relative;
  height: 80px;
  color: #CBE3FA;
  background: #042A13 url(/images/logo.png) left center no-repeat;
}

div#banner span.right {
  display: block;
  position: absolute;
  font-size: 170%;
  font-weight: bold;
  bottom: 0;
  right: 0;
  margin: 10px;
}

h1 {
  display: block;
  float: left;
  color: #CDE2F9;
  margin: 0;
  padding: 0.5em;
  font-size: 220%;
  position: relative;
  left: -20em;
  border: 1px solid red;
}

.smaller {
  font-size: 75%;
}

p.location {
  color: #BD451D;
  font-size: 70%;
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  margin-top: -10px;
  margin-bottom: -5px;
}

p.location a,p.location a:link,p.location a:visited,p.location a:active {
  color: #BD451D;
  border: none;
}

p.location a:hover {
  border-bottom: 1px solid #BD451D;
}

p.osmaps {
  font-size: 80%;
  font-style: italic;
}

h2 {
  color: #69209A;
  font-size: 150%;
  padding: 0;
  margin: 0;
  margin-bottom: 0.5em;
  margin-top: 10px;
}

h3 {
  color: #9933CC;
}

.date {
  font-size: 90%;
}

strong {
  color: 69209A;
}

input,textarea {
  background-color: #f6f6f6;
}

img.right {
  margin-left: 1.5em;
  margin-bottom: 1em;
}

img.left {
  float: left;
  margin-right: 1.5em;
  margin-bottom: 1em;
}

a.imglink,a.imglink:link,a.imglink:visited,a.imglink:active,a.imglink:hover,img {
  border: 1px solid #042A13;
}

a,a:link,a:visited,a:active {
  color: #008D00;
  text-decoration: none;
  border-bottom: 1px solid #D9F4D9;
}

a:hover {
  border-bottom: 1px solid #008D00;
}

dt {
  margin-top: 1em;
}

.hangpunc {
  text-indent: -0.4em;
}

table.spaced td {
  vertical-align: top;
  padding-bottom: 1em;
  padding-right: 1em;
}

div#main {
  color: #000000;
  padding: 1em;
  padding-left: 15em;
  padding-right: 1.5em;
  background: #ffffff;
  min-height: 28em;
  line-height: 130%;
}

* html div#main {
  height: 28em;
}  /* min-height fix for IE6 */
div#menu {
  position: absolute;
  top: 80px;
  left: 1.5em;
  text-align: center;
}

div#menu ul {
  margin-left: 0;
  margin-right: auto;
  margin-top: 1.5em;
  padding: 0;
  text-align: left;
  list-style-type: none;
}

div#menu ul li {
  margin: 0;
  margin-bottom: 0.5em;
  padding: 0;
  width: 12em;
}

div#menu ul li a,div#menu ul li a:link,div#menu ul li a:visited,div#menu ul li a:active {
  display: block;
  color: #CBE3FA;
  background: #3E7619;
  padding: 0.15em;
  padding-left: 0.5em;
  border: none;
  font-weight: bold;
  text-decoration: none;
  text-align: left;
  _height: 0; /* For IE6 */
}

div#menu ul li a:hover {
  color: #ffffff;
  background: #339900;
  border: none;
}

div#menu ul ul {
  display: block;
  margin-top: 0;
  background-color: #000000; /* For FF rounding gaps */
}

div#menu ul ul li {
  margin-bottom: 0;
  width: 100%;
  font-size: 80%;
}

div#menu ul ul li a,div#menu ul ul li a:link,div#menu ul ul li a:visited,div#menu ul ul li a:active {
  padding: 0.2em;
  padding-left: 2em;
  font-weight: normal;
  background-color: #CDE2F9;
  background-image: none;
}

div#menu ul ul li a:hover {
  background-color: #FFA92B;
  background-image: none;
}

* html div#menu ul ul li {
  display: inline;
}  /* For IE6 */
p.mapack {
  font-size: 75%;
  font-style: italic;
}

p.by {
  margin: 0;
  font-size: 60%;
  color: #3E7619;
  clear: both;
  padding: 1.5em;
  text-align: left;
}

p.by a,p.by a:link,p.by a:visited,p.by a:active {
  border: none;
}

p.by img {
  position: relative;
  top: 1px;
  border: none;
}

#main li {
  margin-bottom: 0.25em;
}

form table {
  border-collapse: collapse;
}

form table td,form table th {
  padding: 0.25em;
  vertical-align: top;
}

td.rowtitle {
  text-align: right;
}

div.captionimg {
  font-size: 90%;
  text-align: center;
}

div.captionimg img {
  display: block;
  border: 1px solid #000099;
}

div.captionimg.left {
  float: left;
  margin-right: 1em;
}

div.captionimg.right {
  float: right;
  margin-left: 1em;
}

/*----- Photos -----*/
div.photo {
  display: -moz-inline-box; /* Moz */
  display: inline-block; /* Op, Saf \*/
  vertical-align: top; /* IE Mac */
  text-align: center;
  padding: 6px;
  margin-right: 20px;
  margin-bottom: 20px;
  color: #000000;
  background-color: #f6f6f6;
  font-size: 90%;
}

div.photo.album {
  width: 180px;
  background: #FFF6E4 url(/images/spiral.jpg) top left repeat-y;
  padding-left: 25px;
  padding-top: 15px;
  padding-bottom: 15px;
  font-size: 95%;
  color: #CD2927;
  border: 0;
}

div.photo.album div {
  width: 180px;
}

div.photo.album img {
  border: 1px solid #666666;
}

div.thumb {
  width: 150px;
}

/*----- Hack for IE6 -----*/
/* \*/
* html div.photo {
  display: inline;
  width: 0;
}

* html div.photo.album {
  display: inline;
  width: 180px;
}

/**/
div.photo div,div.photo img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

div.photo p {
  display: block;
  width: 150px;
  margin-top: 5px;
  margin-bottom: 0;
  margin-left: auto;
  margin-right: auto;
}

div.photo a,div.photo a:link,div.photo a:visited,div.photo a:active,div.photo a:hover {
  border-bottom: none;
}

table td {
  padding: 0.1em 0.5em;
  background: #D9ECFF;
}

td.subheading {
  background: #B6DE9C;
}

th {
  text-align: left;
  padding: 0.1em 0.5em;
  color: #CBE3FA;
  background: #3E7619;
}

sup {
  font-size: 60%;
  line-height: 1;
}

div.promotion {
  float: left;
  margin-top: 1em;
  margin-right: 1em;
  width: 24em;
  border: 2px dashed #000000;
  background: #ffffcc;
  padding: 0.5em 1em;
  width: 24em;
}

div.promotion h3 {
  margin-top: 0;
}
