/* ------------- RESET -------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dd, dl, dt, li, ol, ul, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td { margin: 0; padding: 0; border: 0; font-style: normal; text-align: left; font-family: inherit; }

table { border-collapse: collapse; border-spacing: 0; }
ol, ul { list-style: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; }
* { margin: 0; outline: none; }

/* ----------- PAGE LAYOUT ----------- */

html, body, #wrapper {height: 100%;}

body > #wrapper {height: auto; min-height: 100%;}

#wrapper {
  background: #fff url(img/bg_wrapper.png) repeat-y 0% 0%;
  width: 960px;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  margin: 0 auto;
  overflow: hidden;
}

#column1, #column2, #column3 {
  float: left;

  min-height: 500px;
  height: auto !important;
  height: 500px;/* Needs to match the min height pixels above */

  margin: 0; 
}

#column1 { float: left; width: 220px; }
#column2 { float: left; margin: 0 20px; width: 500px; }
#column3 { float: left; width: 200px; margin-top: -84px; }

.gutter-horizontal { float: left; height: 20px; width: 100%; }
.gutter-vertical { float: left; height: 20px; width: 20px; }

/* -------------- HEADER ------------- */

#header {
  background: url(img/header.png) no-repeat 0% 0%; 
  float: left; 
  height: 75px;
  padding: 25px 0 0 15px; 
  width: 100%; 
}

#header h2 {
  color: #fff;
  font-size: 120%;
  line-height: 1.1em;
  margin: 0 0 0 2px;
}

#header h1 {
  display: block;
  color: #fff;
  font-weight: bold;
  font-size: 40px;
  line-height: 1.1em;
  margin: -50px 0 0 0;
}

#header span {
  color: #1d5773;
  display: block;
  font-size: 40px;
  font-weight: bold;
  line-height: 1.1em;
  letter-spacing: 1px;
  margin: -3px 0 0 3px;
}

#page {
  background: url(img/bg_h2.png) no-repeat 0% 0%;
  float: left;
  height: 74px;
  margin: 0 0 20px 0;
  width: 760px;
}

/* -------------- FOOTER ------------- */

#main {padding-bottom: 55px;}  /* must be same height as the footer */

#footer {
  background: url(img/bg_footer.png) no-repeat 0% 0%;
  position: relative;
  margin: 0 auto;
  margin-top: -55px; /* negative value of footer height */
  height: 55px;
  clear: both;
  padding: 15px; 
  text-align: center; 
  width: 930px;
}

/* ------------ NAVIGATION ----------- */

/* NAVIGATION 1 HORIZONTAL */

#navigation1 {
  background: #fff url(img/bg_navigation1.png) repeat-x 0% 0%;
  border: 1px solid #cadee8;
  border-top-width: 0;
  float: left;
  margin: 0;
  width: 958px;
}

ul#menu1, ul#menu1 ul { padding: 0; margin: 0; list-style: none; }

ul#menu1 li {

  float: left;
  line-height: 1.4em;
  position: relative;
  z-index: 10;
}

ul#menu1>li li { float: none; }

#menu1 a, #menu1 a:link, #menu1 a:visited {
  border-right: 1px solid #cadee8;
  outline: none;
  display: block;
  color: #069;
  padding: 15px 1em;
  text-decoration: none;
}

ul#menu1 a:hover { background-color: #fff; background-image: none; color: #9d2100; }

ul#menu1 li li { border-width: 0; }

ul#menu1 li li a, ul#menu1 li li a:link, ul#menu1 li li a:visited {
  border-bottom: 1px solid #cadee8;
  border-right-width: 0;
  color: #069;
  background-color: #fff;
  font-weight: normal;
  padding: 4px 0.5em;
  width: 160px;
}

ul#menu1 li li a:hover { background-color: #cadee8; color: #069; }

ul#menu1 li ul { border: 1px solid #cadee8; border-bottom-width: 0; position: absolute; margin-top: 0; left: -999em; }

#menu1 li:hover ul ul, #menu1 li.sfhover ul ul { left: -999em; }

#menu1 li:hover ul, #menu1 li li:hover ul, #menu1 li.sfhover ul, #menu1 li li.sfhover ul {
  top: 0;
  left: -1px;
  margin-left: 100%;
}

#menu1 li:active ul, #menu1 li:hover ul, #menu1 li.sfhover ul {
  background-color: #f0f0f0;
  top: 100%;
  margin-left: 0;
}

/* NAVIGATION 2 VERTICAL FLYOUT RIGHT */

#navigation2 {
  background: url(img/bottom_navigation2.png) no-repeat bottom left;
  float: left;
  margin: 0 0 16px 20px;
  padding-bottom: 110px;
  position: relative;
}

ul#menu2 {
  left: 0;
  padding: 0;
  height: auto;
  text-align: left;
  width: 200px;
}

ul#menu2, ul#menu2 ul { padding: 0; margin: 0; list-style: none; }

ul#menu2 li { 
  line-height: 1.4em;
  position: relative;
  float: left;
}

ul#menu2>li li { float: none; }

#menu2 a, #menu2 a:link, #menu2 a:visited {
  background-color: #e8f0f7;
  outline: none;
  display: block;
  font-weight: bold;
  padding: 4px 8px;
  width: 154px;
  color: #069;
  text-decoration: none;
}

ul#menu2 a:hover { color: #069; background-color: #cadee8; }

ul#menu2 li li a, ul#menu2 li li a:link, ul#menu2 li li a:visited {
  background-color: #fff;
  border-top-width: 0;
  color: #069;
  display: block;
  font-weight: normal;
  line-height: 1.4em;
  padding: 4px 8px;
}

ul#menu2 li li a:hover { background-color: #cadee8; color: #069; }

ul#menu2 li ul {
  border: 1px solid #cadee8;
  position: absolute;
  left: -999em;
  margin-top: 0;
}

#menu2 li:hover ul, 
#menu2 li li:hover ul, 
#menu2 li.sfhover ul, 
#menu2 li li.sfhover ul {
  top: 0;
  left: 0;
  margin-left: 100%;
}

/* ---------- FONTS/COLORS ----------- */

body {
  background: url(img/bg_body.png) repeat 0% 0%;
  color: #000;

  font: normal 13px/1.4em arial, helvetica, sans-serif;

/* Chose a font and uncomment.
  
  font: normal 13px/1.4em verdana, arial, helvetica, sans-serif;
  font: normal 13px/1.4em georgia, times new roman, times, serif;
  font: normal 13px/1.4em courier new, courier, monospace;

*/

  word-spacing: 0.1em;
}

h1, h2, h3, h4, h5, h6 {
  color: #069;
  line-height: 1em;
  letter-spacing: 1px;
  margin-bottom: 16px;
}

h1 { font-size: 240%; font-weight: normal; }

h2 { font-size: 180%; margin-top: 0; font-weight: normal; }

#page h2 { margin: 34px 0 0 30px; }

h3 { font-size: 140%; }

h4, h5, h6 {
  color: #000;
  font-size: 100%;
  font-weight: bold;
  margin-bottom: 8px;
}

#column1 h4 {
  background-color: #069;
  color: #fff;
  margin: 0 0 0 20px;
  padding: 5px 8px;
  width: 154px;
}

#column3 h4 {
  background: url(img/column3_h4.gif) no-repeat 0% 0%;
  color: #000;
  height: 24px;
  line-height: normal;
  margin: 0 0 0 10px;
  padding: 12px 0 0 8px;
}

/* ------------- LINKS ------------- */

a, a:link, a:visited {
  color: #9d2100;
  font-weight: bold;
  letter-spacing: 1px;
  text-decoration: underline;
}

a:hover { color: #f23200; text-decoration: none; }

strong, bold {
  font-weight: bold;
  letter-spacing: 1px;
  font-variant: small-caps;
}

i, em {
  font-weight: bold;
  color: #069;
  font-style: normal;
  letter-spacing: 1px;
}

/* ----------- SITE STYLES ----------- */

p { margin-bottom: 16px; width: 100%; }

#column2 ul { clear: both; padding-left: 0; margin: 10px 0; }

#column2 li { list-style-type: square; margin: 5px 0 5px 25px; }

blockquote { padding: 0 20px; }

blockquote p { border-left: 5px solid #9dcae0; font-size: 100%; font-style: italic; letter-spacing: 1px; padding-left: 10px; }

img { border: 0; vertical-align: middle; }

code { color: #f23200; font-family: courier new, courier, monospace; font-size: 100%; }

/* ------------- CLASSES ------------- */

/* COMMENTS / NEWS NAVIGATION */

.float-left { float: left; margin-bottom: 20px; text-align: left; width: 49%; }
.float-right { float: right; margin-bottom: 20px; text-align: right; width: 49%; }

/* IMAGES */

.img-left { float: left; margin: 5px 10px 0 0; }
.img-center { margin: 0 auto 20px auto; display: block; }
.img-right { float: right; margin: 5px 0 0 10px; }

.img-thumb-landscape { 
  background: #fff url(img/shadow_thumb_landscape.gif) no-repeat bottom right; 
  height: 75px;
  padding-bottom: 5px;
  padding-right: 5px; 
  width: 100px; 
}

.img-large-landscape { 
  background: #fff url(img/shadow_large_landscape.gif) no-repeat bottom right; 
  height: 375px;
  padding-bottom: 5px;
  padding-right: 5px; 
  width: 500px;
}

.img-thumb-portrait { 
  background: #fff url(img/shadow_thumb_portrait.gif) no-repeat bottom right; 
  height: 100px;
  padding-bottom: 5px;
  padding-right: 5px; 
  width: 75px; 
}

.img-large-portrait { 
  background: #fff url(img/shadow_large_portrait.gif) no-repeat bottom right; 
  height: 500px;
  padding-bottom: 5px;
  padding-right: 5px; 
  width: 375px;
}

/* TABLES */

table { border: 1px solid #069; border-bottom-width: 0; border-collapse: collapse; border-spacing: 0; }

tr.title { background-color: #069; color: #fff; font-weight: bold; }

td, tr, th { margin: 0; padding: 5px; text-align: left; vertical-align: top; }

.stripe { background-color: #e9f1f7; }
  
td { border-right: 1px solid #069; border-bottom: 1px solid #069; }

/* BORDERS */

.border-top { border-top: 1px solid #9dcae0; margin-top: 16px; padding-top: 16px; }
.border-bottom { border-bottom: 1px solid #9dcae0; margin-top: 16px; padding-bottom: 16px; }

/* BOXES */

.box { 
  border: 1px solid #9dcae0; 
  margin-bottom: 18px; 
  padding: 5px 10px; 
  width: auto; 
}

#column3 .box { 
  background: url(img/bg_box.gif) no-repeat bottom left;
  border-width: 0;
  margin: 0 0 10px 10px;
  padding: 5px 10px;
  width: 160px; 
}

/* FORMS */

.input { background: #fff; border: 1px solid #069; width: 250px; font: 13px Arial, Helvetica, sans-serif; padding: 2px; }

textarea { background: #fff; border: 1px solid #069; height: 150px; width: 500px; font: normal 13px Arial, Helvetica, sans-serif;; padding: 2px; }

.button { background: #069; border: 1px solid #069; color: #fff; font-weight: bold; letter-spacing: 1px; padding: 2px 6px; }

/* ------------- CLEARFIX ------------ */

.clear:after {content: "."; display: block; height: 0; clear: both; visibility: hidden; }
.clear { display: inline-block; }
/* Hides from IE-mac \*/
* html .clear { height: 1%;}
.clear {display: block;}
/* End hide from IE-mac */