/*
 * Main stylesheet for Chester Great Outdoors Club Website displayed on screen.
 */

/*
 * Body defaults.
 */

html {
   /* Set height for footer positioning. */
  height: 100%;
}

body {
  margin: 0;
  border: 0;
  padding: 0;

   /* Set height for footer positioning. */
  height: 100%;

  background-color: #FFF;
  color: #484848;

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;

  line-height: normal;
  letter-spacing: normal;
}

/*
 * Main div (top-level container), header and footer.
 */

div.main {
  /* Set position for footer positioning. */
  position: relative;

  /* Center this block. */
  margin-left: auto;
  margin-right: auto;

  border-left: 6px solid #61878A;
  border-right: 6px solid #61878A;

  width: 760px;

  /*
   * Set min-height for footer positioning.
   * This works on standard browsers but not on IE6.
   */
  min-height: 100%;
}

div.maincontent {
  /*
   * Set padding-bottom for footer positioning.
   * This allows space for the footer and its margin.
   */
  padding-bottom: 48px;
}

div.header {
  padding-top: 7px;
  margin-bottom: 9px;
}

div.headerbig {
  padding-top: 9px;
  margin-bottom: 9px;
}

div.footer {
  /* Set position and bottom for footer positioning at bottom of viewport. */
  position: absolute;
  bottom: 0;
  width: 760px;
  height: 41px;
}

div.footer div.links {
  position: absolute;
  top: 25px;
  right: 12px;

  color: #FFF;

  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  font-size: 9px;
  font-style: normal;
  font-variant: normal;
  font-weight: bold;
}

div.footer div.links a {
  color: #FFF;
}

div.footnote {
  text-align: center;
}

/*
 * Table for left side menu bar and page content.
 * Page content includes right side link boxes.
 */

table.maincontent {
  width: 760px;
  table-layout: fixed;
}

td.leftside {
  width: 160px;
}

div.pagecontent {
  /*
   * Set margin on div.pagecontent instead of padding on td.pagecontent
   * to avoid IE bugs / confusion between padding width and content width
   * when setting width=100% on child elements.
   */
  margin-left: 15px;
  margin-right: 15px;
  width: 570px;
}

/*
 * Left side menu.
 */

table.leftmenu {
  border: 1px solid #61878A;
  width: 100%;
  table-layout: fixed;
  font-weight: bold;
}

td.leftmenubutton {
  border: 1px solid #61878A;
  width: 23px;
  vertical-align: middle;
}

td.leftmenutext {
  border: 1px solid #61878A;
  padding-left: 0.5em;
  width: auto;
  vertical-align: middle;
}

table.leftmenu tr.active a {
  color: #3F994C;
}

table.leftmenu tr.submenu td.leftmenubutton img {
  visibility: hidden;
}

/*
 * Home page
 * (including slide show, slide show caption,
 *      page text and right side menu bar).
 */

table.pagecontent {
  width: 570px;
  table-layout: fixed;
}

td.slide {
  border: 1px solid #61878A;
  width: 420px;
  height: 315px;

  /*
   * Set the background color the same as the border color and the
   * slidecaption cell in case the image doesn't fill the table cell.
   * Browsers seem to let the background color show even though the
   * image should fill the cell.
   */
  background-color: #61878A;
  color: #FFF;
}

td.slidecaption {
  border: 1px solid #61878A;
  width: 147px;

  background-color: #61878A;
  color: #FFF;

  text-align: center;
  vertical-align: middle;

  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.2em;
  font-style: normal;
  font-variant: normal;
  font-weight: bold;
}

td.pagetext {
  padding-top: 15px;
  padding-right: 15px;
  width: 405px;
}

td.rightside {
  padding-top: 15px;
  width: auto;
}

div.rightbox {
  margin-bottom: 1em;
  border: 1px solid #61878A;
  padding: 15px;
  width: 115px;

  color: #61878A;

  font-family: Arial, Helvetica, sans-serif;
  font-size: 1.2em;
  font-style: normal;
  font-variant: normal;
  font-weight: bold;
}

div.sign {
  padding-bottom: 0;
}

div.sign img {
  position: relative;
  left: 45px;
  margin-top: 15px;
  width: 75px;
}

/*
 * What We Do page
 * !!! Check printing on Firefox & IE
 */

table.whatwedo {
  width: 100%;
  table-layout: fixed;
}

table.whatwedo td {
  border: 1px solid #61878A;
}

table.whatwedo td.image {
  /* Width  = image width (160px) + 2 * image border (5px) */
  width: 170px;
  /*
   * Set the background color the same as the border color in case the
   * image doesn't fill the table cell.
   */
  background-color: #61878A;
}

table.whatwedo td.image div {
  border-top: 3px solid #61878A;
  border-bottom: 3px solid #61878A;
  border-left: 5px solid #61878A;
  border-right: 5px solid #61878A;
}

table.whatwedo tr.first td.image div {
  border-top: 5px solid #61878A;
}

table.whatwedo tr.last td.image div {
  border-bottom: 5px solid #61878A;
}

table.whatwedo td.text {
  padding: 6px;
  width: auto;
}

table.whatwedo td.text h2 {
  margin-top: 0;
}

/*
 * Contacts page.
 */

/* Old contact list without thumbnail images */
table.contactlist {
  width: auto;
  table-layout: auto;
}

/* Old contact list without thumbnail images */
table.contactlist td {
  padding-right: 2em;
}

table.contacts {
  width: 100%;
  table-layout: fixed;
}

div.contact {
  margin-top: 6px;
  margin-bottom: 6px;
  width: 132px;
}

div.contact div.thumb img {
  background-color: #F3F3F3;
  border: 1px solid #CCC;
  width: 120px;
  padding: 5px;
  margin: 1px;
  -moz-border-radius: 2px;
}

div.contact div.name {
  width: 100%;
  text-align: center;
  font-size: 1.1em;
}

div.contact div.role {
  width: 100%;
  text-align: center;
  font-size: 1.1em;
}

/*
 * Documents page.
 */

table.docs {
  width: auto;
  table-layout: auto;
}

td.docsicon {
  padding-right: 1em;
  width: 16px;
  vertical-align: middle;
}

td.docstext {
  width: auto;
  vertical-align: middle;
}

/*
 * Events pages.
 */

table.events {
  width: 100%;
  table-layout: fixed;
}

table.events col.col1 {
  width: 30%;
}

table.events col.col2 {
  width: 50%;
}

table.events col.col3 {
  width: 20%;
}

table.events td {
  padding: 6px 3px 6px 3px;
}

table.events td.leftcol {
  padding-left: 0;
}

table.events td.middlecol {
}

table.events td.rightcol {
  padding-right: 0;
}

table.events td.singlecol {
  padding-left: 0;
  padding-right: 0;
}

table.grades {
  width: 100%;
  table-layout: fixed;
}

table.grades col.col1 {
  width: 30%;
}

table.grades col.col2 {
  width: 70%;
}

/*
 * Edit events list pages.
 */

table.editevents {
  width: 100%;
  table-layout: fixed;
}

table.editevents col.col1 {
  width: 6%;
}

table.editevents col.col2 {
  width: 28%;
}

table.editevents col.col3 {
  width: 48%;
}

table.editevents col.col4 {
  width: 18%;
}

table.editevents td {
  padding: 6px 3px 6px 3px;
}

table.editevents tr.h1 td {
  padding-top: 0;
  padding-bottom: 0;
}

table.editevents td.leftcol {
  padding-left: 0;
}

table.editevents td.middlecol {
}

table.editevents td.rightcol {
  padding-right: 0;
}

table.editevents td img {
  display: inline;
}

table.editevents tr.changedLastUpdate {
  background-color: #FF8;
}

table.editevents tr.changedthisSession {
  background-color: #FFC;
}

/*
 * Events log pages.
 */

table.eventslog {
  width: 100%;
  table-layout: fixed;
}

table.eventslog col.col1 {
  width: 25%;
}

table.eventslog col.col2 {
  width: 25%;
}

table.eventslog col.col3 {
  width: 50%;
}

table.eventslog td {
  padding: 6px 3px 6px 3px;
}

table.eventslog td.leftcol {
  padding-left: 0;
}

table.eventslog td.middlecol {
}

table.eventslog td.rightcol {
  padding-right: 0;
}

/*
 * Add / edit events pages.
 */

table.eventform td {
  vertical-align: middle;
}

table.eventform label {
  display: block;
  text-align: right;
}

div.fieldwarning {
  font-weight: bold;
  color: #F63;
}

/*
 * Discounts page.
 */

table.discounts {
  width: 100%;
  table-layout: fixed;
}

table.discounts col.col1 {
  width: 30%;
}

table.discounts col.col2 {
  width: 10%;
}

table.discounts col.col3 {
  width: 40%;
}

table.discounts col.col4 {
  width: 20%;
}

table.discounts td {
  padding: 6px 3px 6px 3px;
}

table.discounts td.leftcol {
  padding-left: 0;
}

table.discounts td.middlecol {
}

table.discounts td.rightcol {
  padding-right: 0;
}

/*
 * Element defaults.
 */

div {
  margin: 0;
  border: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  margin: 0;
  border: 0;
  padding: 0;

  /*
   * Best not to set width = 100% as this causes some browsers to increase
   * column widths.
   */
}

tr {
  margin: 0;
  border: 0;
  padding: 0;
}

td {
  margin: 0;
  border: 0;
  padding: 0;
  vertical-align: top;
}

img {
  /*
   * Avoid unwanted space below images caused by inline images having
   * space below the baseline when using strict DOCTYPE.
   * Reference: <http://www.mozilla.org/docs/web-developer/faq.html>.
   */
  display: block;

  margin: 0;
  border: 0;
  padding: 0;
}

form {
  margin: 0;
  border: 0;
  padding: 0;
}

label, input, select, option {
  font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;
  font-size: 12px;
  font-style: normal;
  font-variant: normal;
  font-weight: normal;
}

label {
  margin: 4px 0 4px 0;
  border: 0;
  padding: 1px 3px 1px 0;
}

input {
  margin: 3px;
  border: 1px solid #61878A;
  padding: 1px 3px 1px 3px;
}

select {
  margin: 3px;
  border: 1px solid #61878A;
  padding: 0;
}

option {
  margin: 0;
  border: 0;
  padding: 0 5px 0 3px;
}

hr {
  margin: 2em 0 2em 0;
}

/*
 * Links
 * NB: a:hover is last so that it overrides a:link and a:visited.
 */

a:link {
  /* Standard text link color. */
  color: #61878A;
  text-decoration: none;
  cursor: hand;
}

a:visited {
  /* Standard used link color. */
  color: #61878A;
  text-decoration: none;
  cursor: hand;
}

a:hover {
  /* Standard link rollover color. */
  color: #F63;
  text-decoration: none;
  cursor: hand;
}

/*
 * Text styles.
 */

h1 {
  margin: 12px 0 6px 0;
  color: #3F994C;
  font-size: 1.4em;
  font-weight: bold;
}

h2 {
  margin: 12px 0 6px 0;
  color: #3F994C;
  font-size: 1.25em;
  font-weight: bold;
}

h3 {
  margin: 12px 0 6px 0;
  color: #3F994C;
  font-size: 1.1em;
  font-weight: bold;
}

h4 {
  margin: 12px 0 6px 0;
  color: #3F994C;
  font-size: 1em;
  font-weight: bold;
}

p {
  margin: 6px 0 6px 0;
  border: 0;
  padding: 0;
}

div.li {
  position: relative;
  margin: 6px 0 6px 2em;
}

div.ul div.ul div.li {
  margin: 0 0 0 2em;
}

div.compact div.li {
  margin: 0 0 0 2em;
}

div.bullet {
  position: absolute;
  left: -2em;
}

.top {
  margin-top: 0;
}

.credit {
  text-align: center;
  font-size: 0.9em;
}

.strong {
  font-weight: bold;
}

.editlink {
  margin-right: 0;
  margin-left: auto;
  text-align: right;
}

