/* Layout */
BODY { margin: 0; height:auto; }
DIV#innerbody      { position: relative; }
DIV#outertop       { position: relative; height: 122px; }
DIV#topsection     { position: relative; height: 106px; width: 994px; margin-left: auto; margin-right: auto; }
DIV#innertop       { position: relative; margin: 0 8px; height: 100%; }
DIV#outerheader    { position: relative; top: 8px; height: 88px; }
DIV#outermiddle    { position: relative; height:auto; }
DIV#middlesection  { position: relative; width: 994px; margin-left: auto; margin-right: auto; }
DIV#innermiddle    { position: relative; margin: 0 8px; }
TABLE.forlayout TD#leftside { width: 149px; }
DIV#outerpagemenu  { position: relative; width: 140px; }
DIV#outerbottomleftbanner { position: relative; width: 140px; }
TABLE.forlayout TD#rightside { width: 828px; }
DIV#outerbody      { position: relative; height: 100%; }
DIV#outerbottom    { position: relative; height:  40px; }
DIV#bottomsection  { position: relative; width: 994px; margin-left: auto; margin-right: auto; }
DIV#innerbottom    { position: relative; margin: 0 8px;}
DIV#outerfooter    { position: relative; top: 16px; height:  36px; }
DIV#outerheader, DIV#outersitemenu, DIV#outersubheader, DIV#outerpagemenu, DIV#outerbottomleftbanner, DIV#outerfooter { overflow: hidden; }
DIV#header, DIV#sitemenu, DIV#subheader, DIV#pagemenu, DIV#bottomleftbanner, DIV#body, DIV#footer { overflow: hidden; }
DIV#header, DIV#sitemenu, DIV#subheader, DIV#pagemenu, DIV#bottomleftbanner, DIV#body, DIV#footer { position: relative; height: 100%; }
@media screen { DIV#outerbody { overflow: hidden; } }

TABLE.forlayout { position: relative; margin: 0; border: 0; padding: 0; background: none; }
TR.forlayout { margin: 0; border: 0; padding: 0; background: none; vertical-align: top; height: 100%; }
TD.forlayout { margin: 0; border: 0; padding: 0; background: none; vertical-align: top; height: 100%; }
TD.forlayout *:first-child { margin-top: 0; }

/* Header: */
#header H1  { margin: 0; }
#header H2  { position: absolute; left: 0; top: 5px; width: 150px; margin: 0; text-align: center; }
/*
#header IMG { position: absolute; top: -8px; width: 776px; height: 106px; }
#topsection IMG { width: 776px; /* 548px; */ height: 106px; position: absolute; top: 0px; }
*/

/* Thumbnails */
DIV.thumbnails { position: relative; left: -2px; width: 602px; margin: 0; border: 0; padding: 0; }
DIV.thumbnails DIV.thumbnail { display: block; position: relative; float: left; width: 94px; height: 94px; margin: 2px; border: 1px solid; padding: 0; }
DIV.thumbnails DIV.thumbnail IMG { display: block; margin: auto; border: 0; padding: 0; }

/* Page Menu */
#pagemenu H1 { margin: 0 0 3px 0; padding: 4px 5px; }
#pagemenu UL, #pagemenu DL { position: relative; margin: 0; padding: 0; list-style: none; margin: 0 0 5px 0; }
#pagemenu UL LI, #pagemenu DT { display: block; padding: 1px 5px; }
#pagemenu DIV.menugroup { margin-bottom: 16px;  }
#pagemenu H1 A, #pagemenu LI A { display: inline-block; width: 100%; }

#pagemenu DD { margin: 0 0 0 55px; text-align: left; }
#pagemenu DT { margin-top: 0; width: 55px; float: left; clear: both; font-weight: bold; }
#pagemenu DD:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
* html #pagemenu DD { height: 1%; }
#pagemenu INPUT { width: 65px; }

/* Bottom Left Banner */
#bottomleftbanner { padding: 6px 8px; }

/* Buttons */
A.button { display: inline-block; position: relative; width: 150px; height: 18px; padding: 4px 5px; margin: 3px 3px 3px 0; }
/* BUTTON {  height: 26px; padding: 4px 5px; border: 0; margin: 3px; } */
H1 > .floatright A.button:first-child { margin-top: 5px; }
H2 > .floatright A.button:first-child { margin-top: 5px; }

/* Calendar */
TABLE[class="calendar"] { table-layout: fixed; width: 100%; }
.onehundred TH, .onehundred TD { width: 100px; }
.calendar TH { text-align: center; min-height: 24px; padding: 0; }
.calendar TD { text-align: center; height: 24px; padding: 0; }
.calendar A, .calendar DIV.a { display: block; position: relative; height: 100%; }
.calendar DIV.day { position: relative; height: 100%; margin-left: 3px; margin-right: 3px; }
.calendar SPAN.date   { float: left; }
.calendar SPAN.points { float: right; }
DL.onehundred DD { margin-left: 100px; }
DL.onehundred DT { width: 100px; }

/* File Download */
.filedownload { position: relative; margin-left: 13em; margin-top: 16px; margin-bottom: 16px; }
.filedownload IMG.icon { float: left; margin-right: 8px; }
P DIV.filedownload { position: absolute; top: 0; }

/* Footer */
#footer P { margin: 0; }
#footer H2, #footer UL { margin: 5px 0; }
#footer UL { position: absolute; top: 8px; margin: 0; padding: 0; list-style: none; clear: both; }
#footer UL LI { display: block; position: relative; float: left; margin: 1px 1.6em 1px 0; padding: 3px 0; }

/* Paragraph formatting: */
H1:first-child { margin-top: 0; }
H1, H2, H3, H4, H5, H6 { margin-top: 10px; }
H1, H2, H3, H4, H5, H6 { margin-bottom: 4px; }
P, TABLE, DL, UL, OL { margin-top: 8px; margin-bottom: 3px; }
P.date { margin-top: 5px; }
DL { margin-top: 0.56em; }

/* Miscellanious */
DIV.floatright { margin-left: 8px; }
