* { margin: 0; padding: 0; list-style-type: none; }
html, body {
  font: 14px Arial,Trebuchet MS,Helvetica,sans-serif;
  color: #232222;
  height: 100%;
  background: transparent url(../images/grey-speckle.gif);
}
h1, h2, h3 { margin: 0; padding: 0; }
h1 { font-size: 24px; color: #2498BE; }
h2 { font-size: 22px; margin-bottom: 15px; color: #fff; }
h3 { color: #fff; }
h4 { color: #eee; }
a { color: #67ccff; }
a:link, a:visited { text-decoration: none; }
a:hover { text-decoration: underline; cursor: pointer; }
a.active { color: #fff; }
a.active:hover { text-decoration: none; }
img { border: none; }
label { display: block; padding: 10px 0 5px; font-size: 18px; color: #228EE1; }
label.normal { font-size: 100%; display: inline; }
input[type="text"], input[type="password"], input[type="file"], textarea { font-size: 14pt; padding: 2px; margin-bottom: 10px; width: 400px; }
input[type="file"] { font-size: 12px; }
input[type="text"].small_input, input[type="password"].small_input, textarea.small_input { font-size: 100%; padding: 2px; }
input[type="text"]:focus { outline: 0 none; }
textarea { height: 80px; font-size: 14px; }
input[type="submit"] {
  width: 115px;
  height: 32px;
  color: #000;
  font-size: 14px;
  text-align: center;
  background: transparent url(/images/round_button.png) no-repeat 0 0;
  border: 0 none;
  margin-top: 10px;
  display: block;
  font-weight: bold;
}
input[type="submit"]:hover { cursor: pointer; background-position: 0 -32px; }
form {  }
form p { padding-bottom: 10px; border-bottom: 1px solid #ccc; }
p { margin: 10px 0; line-height: 20px; }
small { font-size: 90%; }
.big { font-size: 24px; }
.medium { font-size: 16px; }
.underline { text-decoration: underline; }
.centered { text-align: center; }
.indented { padding-left: 22px; }
.bold { font-weight: bold; }
.required { color: #FB342E; }

#flash { text-align: center; height: 20px; font-weight: bold; font-size: 18px; width: 100%; }
#flash_success, #flash_notice {
  color: #228EE1;
}
#flash_failure {
  color: #FB342E;
}

/* Colors */
.blue { color: #228EE1; }
.white-back, .white-back h2 { color: #090909; }

/* Font sizes */
.very_large_text { font-size: 26px; }

/* Centered content */
#header-insides, #banner-insides, .middle, #footer-insides { width: 900px; margin: 0 auto; }

/* Header */
#header { width: 100%; height: 116px; background: transparent url(../images/header-repeat.png) repeat; }
#header-insides { background: #0062b4 url(../images/header-background.png) no-repeat 50% 0; height: 116px; position: relative; }
#header #logo { margin-top: 25px; }
#menu { position: absolute; right: 0; top: 70px; font-size: 24px; }
#menu a { height: 34px; display: inline-block; }
#menu #home-link { background: transparent url(../images/home-link.png) no-repeat 0 -1px; width: 75px; margin-right: 15px; }
#menu #home-link:hover { background-position: 0 -34px; }
#menu #blog-link { background: transparent url(../images/blog-link.png) no-repeat 0 -1px; width: 64px; margin-right: 15px; }
#menu #blog-link:hover { background-position: 2px -34px; }
#menu #team-link { background: transparent url(../images/team-link.png) no-repeat 0 0; width: 75px; margin-right: 15px; }
#menu #team-link:hover { background-position: 0 -32px; }
#menu #contact-link { background: transparent url(../images/contact-link.png) no-repeat 0 1px; width: 130px; padding-bottom: 1px;}
#menu #contact-link:hover { background-position: 0 -32px; }

#banner { background-color: #fff; }
#banner p { margin: 0; color: #222; }
#banner-shadow-top { background: transparent url(../images/banner-shadow-top.png) repeat-x; height: 12px; margin-top: 17px; }
#banner-shadow-bottom { background: transparent url(../images/banner-shadow-bottom.png) repeat-x; height: 12px; margin-bottom: 10px; }
#banner-insides { background: transparent url(../images/banner.png) no-repeat; height: 200px; }
#main { background: transparent url(../images/grey-speckle.gif) repeat-x repeat-y; color: #7d7d7d; font-size: 14px; }
#dark { background-color: #090909; padding: 40px 0; }
#dark-top { background: transparent url(../images/dark-clouds.png) no-repeat; height: 43px; width: 900px; margin: 0px auto 0; }

.half { width: 360px; }
.third { width: 260px; padding: 0 35px 0 0; float: left; vertical-align: top; }
.fifth { width: 160px; padding: 0 20px 0 0; float: left; vertical-align: top; }
.icon-item { display: block; line-height: 40px; vertical-align: middle; }
.icon-item img { float: left; margin-right: 3px; }

#darker-rounded-top, #darker-rounded-bottom { background-color: #0c0c0c; width: 920px; height: 29px; margin: 0px auto 0; }
#darker-rounded-top { -moz-border-radius-topleft: 20px; -moz-border-radius-topright: 20px; -webkit-border-top-left-radius: 20px; -webkit-border-top-right-radius: 20px; }
#darker { background-color: #0c0c0c; width: 860px; margin: 0 auto; padding: 0 30px; }
#darker-rounded-bottom { -moz-border-radius-bottomleft: 20px; -moz-border-radius-bottomright: 20px; -webkit-border-bottom-left-radius: 20px; -webkit-border-bottom-right-radius: 20px; }
#darker .third { width: 250px; padding: 0 30px 0 0; }

.team-member-photo { float: left; width: 174px; height: 211px; text-align: center; padding-top: 18px; margin-right: 20px; background: transparent url(../images/team-member-back.png) no-repeat; }
.team-member-info { height: 230px; padding-top: 10px; }
.team-member-info h2 { font-size: 26px; margin-bottom: 2px; color: #ddd; }
.team-member-info h3 { color: #888; margin-bottom: 10px; }

.contact h2 { margin: 20px 0 2px 0; }
#contact-form { float: left; height: 440px; padding-right: 60px; border-right: 1px dashed #151515; margin-right: 60px; }
#contact-form textarea { height: 200px; }
#contact-help { padding-top: 10px; font-size: 18px; line-height: 28px; }
.errors input[type="text"], .errors textarea { background: #cc5555; }

.left { float: left; width: 250px; }
.right { float: right; width: 450px; }
.clear_all { clear: both; }

/* Footer */
#footer {
  color: #7d7d7d;
  padding: 10px 0;
  text-align: center;
}

.slide img {-moz-border-radius: 15px; -webkit-border-radius: 15px; }

.mbneg20 { margin-bottom: -20px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt30 { margin-top: 30px; }
.mt70 { margin-top: 70px; }
.mb10 { margin-bottom: 10px; }
.mb20 { margin-bottom: 20px; }
.pt20 { padding-top: 20px; }
.h200 { min-height: 200px; }
.h180 { min-height: 180px; }

/* From http://sixrevisions.com/tutorials/javascript_tutorial/create-a-slick-and-accessible-slideshow-using-jquery/ */
/*
#slideshow {
	margin:0 auto;
	width:960px;
	height:500px;
	position:relative;
}
#slideshow #slidesContainer {
  margin:0 auto;
  width:890px;
  height:500px;
  overflow:auto; 
  position:relative;
}
#slideshow #slidesContainer .slide {
  margin:0 auto;
  width:870px; 
  height:363px;
}
*/
/** 
 * Slideshow controls style rules.
 */
.control {
  display:block;
  width:39px;
  height:500px;
  text-indent:-10000px;
  position:absolute;
  cursor: pointer;
}
#leftControl {
  top:0;
  left:0;
  background:transparent url(/images/control_left.jpg) no-repeat 0 0;
}
#rightControl {
  top:0;
  right:0;
  background:transparent url(/images/control_right.jpg) no-repeat 0 0;
}

