/* 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,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin: 0;
	padding: 0;
	border: 0;
	font-weight: inherit;
	font-style: inherit;
	font-size: 100%;
	font-family: inherit;
	vertical-align: baseline;
}

body { color: #333; background: #ccc; }

/* Tables still need 'cellspacing="0"' in the markup. */
/*table { border-collapse: separate; border-spacing: 0; }
caption, th, td { text-align: left; font-weight: normal; }*/

/* Remove possible quote marks (") from <q>, <blockquote>. */
/*blockquote:before, blockquote:after, q:before, q:after { content: ""; }
blockquote, q { quotes: "" ""; }*/




/* text */
body {
  font-family: "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
  line-height: 1.5; /* Unitless for proper inheritance */
}

/* This is where you set your desired font size. The line-height 
   and vertical margins are automatically calculated from this. 
   
   You have to add an extra calculation here because of IE, so that 
   all users may resize text manually in their browsers.
   
   The top one is for IE: The percentage is of 16px (default IE text size)
   10px is 62.5%, 12px is 75%, 13px is 81.25%, and so forth).
   The second value is what all other browsers see (the wanted font size). */
   
body          { font-size: 75%; }   /* IE */
html > body   { font-size: 12px; }  /* Other browsers */

p {
	margin: 1em 0;
	text-align:justify;
}

a {
	color: #0F2C61;
  text-decoration: underline;
  outline: none;
}

a:hover {
	text-decoration: underline;
}


h1, h2, h3, h4, h5, h6 { 
  font-family: "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
  color: #222;
  line-height: 1;
}

h1 { font-size: 2.5em; margin: 0.4em 0; }
h2 { font-size: 1.6em; margin: 0.625em 0; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.2em; font-weight:bold; }
h5 { font-size: 1.1em; font-weight: bold; }
h6 { font-size: 1em; }

h1 a, h2 a, h3 a, h4 a, h5 a, h5 a {
	color: inherit;
	text-decoration: none; /* reset by :hover */
}


ul, ol      { margin: 0 0 1.5em 1.5em; }
ol          { list-style-type: decimal; }
dl          { margin: 1.5em 0; }
dl dt       { font-weight: bold; }
li          { margin: 0; }
/*
blockquote  { margin: 1.5em 0 1.5em 1.5em; color: #666; font-style: italic; }
*/
strong      { font-weight: bold; }
em          { font-style: italic; }
pre         { margin-bottom: 1.3em; background: #eee; border: 0.1em solid #ddd; padding: 0.5em; }
code        { font: 0.9em Monaco, monospace; }


/* site */

body {
  background-color: #3f3f3f;
  text-align: center;
}

#wrapper {
  background-image: url(/images/wrapper_background.png);
  background-repeat: repeat-y;
  width: 1002px; /* whatever width the background image has */
	margin: 0 auto;
}

#footer_wrapper {
  /* we really would rather be under #wrapper, but we need a different background */
  background-image: url(/images/footer_background.png);
  background-repeat: repeat-none;
  width: 1002px;
  height: 42px;
	margin: 0 auto;
}

#container {
	width: 960px;
	text-align: left;
	margin: 0 auto;
/*  border-top: 1px solid #f7f7f7; /* cover the whole margin */
}

#header {
	background-color: #07286e;
	background-image: url(/images/header_background.png);
	position: relative; /* make this div the containing block for absolutely position children */
	left: 0;
	top: 0;
	width: 960px;
	height: 250px;
}

#header_logo {
  position: absolute;
  left: 54px;
  top: 45px;
  width: 372px;
  height: 160px;
}

#header_text {
  background-image: url(/images/header_divider.png);
  background-repeat: no-repeat;
  color: #aaa;
  position: absolute;
  left: 478px;
  top: 0px;
  width: 340px;
  height: 64px;
  padding: 92px 70px;
}

#header_text a {
  margin-top: -1.5em;
  display: block;
  float: right;
  color: #bbb;
  font-weight: bold;
  text-decoration: none;
}

#header_text a:hover {
  text-decoration: underline;
}

#content {
  background-color: #f7f7f7;
  border-top: 1px solid #f7f7f7; /* cover the whole margin */
  border-bottom: 1px solid #f7f7f7;

  /* clear child floats */
  overflow: auto;
}

#footer {
  /* reset from footer_wrapper */
	width: 952px;
	text-align: left;
	margin: 0 auto;
	
	background-color: #101010;
	color: #666;
	font-size: 75%;
	padding: 4px 4px;
}

#footer A {
	color: #777;
}

#posts_archive {
  background-color: #e7e7e7;
  background-image: url(/images/stripe_background.png);
  background-repeat: repeat-x;
  width: 960px;
  padding: 0.5em 0 1.5em 0;
}

#posts_archive h2 {
  line-height: 2em;
}

#posts_dates .selected {
  font-weight: bold;
}

#posts_dates .disabled {
  color: #ccc;
}

#content > h2, #blog_posts_from, #latest_blog_post {
  margin-left: 10px;
}

#blog_posts_from {
  /* we have a few &nbsp;s whose job is to stretch the line out to be > 1 line - which we then chop off.  we can then force the first line to be justified properly to match the width of the line under it! */
  text-align: justify;
  width: 151px;
  height: 1.04em;
}

#posts {
  /* clear child floats */
  overflow: auto;
  width: 100%;
}

div.page {
  clear: both;
	margin: 0 32px 4em 180px;
}

div.page h1 {
}

div.page .info {
	float: left;
	width: 160px;
	margin: -2.4em 0 0 -180px;
	color: #666;
	font-weight: bold;
}

div.page .info a       { text-decoration: none; }
div.page .info a:hover { text-decoration: underline; }

div.page .info div {
	clear: right;
	float: right;
	margin-bottom: 1em;
}

div.page .info .post_date {
  font-family: "Lucida Grande", Helvetica, Arial, Verdana, sans-serif;
  font-size: 1.2em;

	/* give enough space for the date part only, chomping off the time part */
  width: 8em;
  line-height: 1em;
  height: 1em;
  overflow: hidden;
  text-align: right;
}

.author, .tag, .comments {
  padding-left: 16px;
	background-position: left;
	background-repeat: no-repeat;
}

.author {
	background-image: url(/images/icon_person.png);
}

.tag {
	display: block;
	background-image: url(/images/icon_tag.png);
}

.tag .unpublished {
	color: #d00;
}

.comments {
	background-image: url(/images/icon_comment.png);
}

#tag_add {
	width: 10em;
}

#posts_dates {
  margin: -2.4em 0 0 180px;
}

#history h2 {
  margin-top: 1.5em;
}

#history ul {
  margin: 0;
  list-style-type: none;
}

#history li {
  margin-top: 1em;
}

#history .meta {
  font-style: italic;
}

#post_comment {
  background: white;
  padding: 1em;
}

#post_comment label {
  display: inline-block;
  width: 8.8em;
}

#send_message label {
  display: inline-block;
  width: 10.8em;
}

#post_comment input, #send_message input {
  width: 16em;
  margin: 0 0.4em 0.4em 0;
}

#post_comment textarea, #send_message textarea {
  width: 40em;
  height: 10em;
  vertical-align: text-top;
  font: inherit;
}

form .note {
  font-size: 8pt;
  color: gray;
}

#post_comment #comment_submit {
  margin: 0.4em 0 0 10em;
  width: 6em;
  height: 2em;
  /*border-top: 1px solid #cccccc;
    border-right: 1px solid #666666;
    border-bottom: 1px solid #666666;
    border-left: 1px solid #cccccc;
    background-color: #cccccc;*/
}

#send_message #message_submit {
  margin: 0.4em 0 0 12em;
  width: 6em;
  height: 2em;
  /*border-top: 1px solid #cccccc;
    border-right: 1px solid #666666;
    border-bottom: 1px solid #666666;
    border-left: 1px solid #cccccc;
    background-color: #cccccc;*/
}

#post_comment .formError {
  color: red;
  padding-left: 9.2em;
}

#send_message .formError {
  color: red;
  padding-left: 11.2em;
}

.field_with_errors {
  display: inline-block;
}

.field_with_errors input {
  border-color: #cc0;
  background-color: #ee5;
}

div.notice {
  font-weight: bold;
  padding: 0.35em 0.40em 0.25em 0.40em;
  margin: 0.37em 10px;
  border: 0.08333em solid #00cc00;
  background: #ccffcc;
}

div.error {
  font-weight: bold;
  padding: 0.35em 0.40em 0.25em 0.40em;
  margin: 0.37em 10px;
  border: 0.08333em solid #cc0000;
  background: #ffcccc;
}

body.contact #content {
  padding: 1em 20px;
}

#login_form {
	padding: 12px;
}

#login_form label {
	display: inline-block;
	width: 6em;
}

#login_form input[type=submit] {
	width: 6em;
}

.slide {
	overflow: auto;
	margin-top: 1em;
}

.slide p {
	margin: 0 0 0.5em 0;
}

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