/*
 * Project:   Stephen Horner
 * Date:      2009-10-16
/* ---------------------------------------- */

* { margin: 0; padding: 0; }

html { min-height: 100%; margin: 0 0 1px; font-size: 100.01%; }
body { background: #d9cfb0 url(../images/bg.jpg); font-size: 62.5%; }

@media only screen and (max-device-width: 480px) { html { -webkit-text-size-adjust: none; } }

body, textarea, input, select, option, button { color: #4d4d4d; font-family: Verdana,"Helvetica Neue",Helvetica,Arial,sans-serif; line-height: 1.64; }
li, dt, dd, p, th, td, caption, pre { font-size: 1.1em; }
ul, ol, dl, p, table, pre, h1, h2, h3, h4, h5, h6 { margin-bottom: 10px; }

a { color: #7083b9; text-decoration: none; }
a:hover, a:focus, a:active { color: #7083b9; text-decoration: underline; }

ul, ol, dd, blockquote { padding-left: 40px; }
ul ul, ol ol, ul ol, ol ul { margin-bottom: 0; }
li *, li p, li li, dt *, dd *, p *, th *, td * { font-size: 1em; }

img { border: none; -ms-interpolation-mode: bicubic; }
pre { font-family: "Courier New",monospace; white-space: pre-wrap; }
table { border-collapse: collapse; border-spacing: 0; }
button { overflow: visible; padding: 0 10px; cursor: pointer; } button::-moz-focus-inner { padding: 0; border: none; }

hr { overflow: hidden; height: 1px; margin: 15px 0 !important; margin: -5px 0 8px; padding: 0; border: none; background-color: #ccc; color: #ccc; }
*:first-child+html hr { margin: -7px 0 8px !important; }

.offset { position: absolute !important; left: -10001px !important; overflow: hidden !important; }

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

#wrapper-a { background: url(../images/bg-gradient.png) repeat-x; overflow: hidden; }
#root { width: 880px; margin: 50px auto; }
 #top { position: relative; z-index: 100; background: url(../images/header.png) no-repeat; width: 880px; height: 387px; }
  #logo { position: absolute; left: 70px; top: 15px; width: 395px; height: 50px; }
   #logo a { display: block; width: 100%; height: 100%; text-indent: -999em; overflow: hidden; }
  #top h2 { position: absolute; left: -999em; }

  #top .address { position: absolute; left: 510px; top: 8px; width: 290px; height: 51px; overflow: hidden; background: url(../images/address.png) no-repeat; }
   #top .address p { position: absolute; left: -999em; }

 #header { position: absolute; left: 30px; top: 80px; width: 837px; height: 277px; }
  #header .visual { margin: 0; }
  #header .callout { position: absolute; right: 0; top: 150px; width: 372px; height: 131px; background: url(../images/callout.png) no-repeat; }
   #header .callout p { position: absolute; left: -999em; }

  #skip-links { position: absolute; top: 0; left: -10001px; list-style: none; margin: 0; padding: 0; }
   #skip-links li a:focus, #skip-links li a:active { display: block; position: absolute; left: 10701px; top: 0; z-index: 10001; width: 200px; margin: 15px 0 0 15px; padding: 2px 0; background: #333; color: #fff; text-align: center; text-decoration: none; }

 #nav { list-style: none; margin: 0 0 30px; padding: 0; overflow: hidden; width: 100%; }
  #nav li { display: inline; float: left; padding: 0 18px 0 19px; font: bold 1.2em Profile,Verdana,Helvetica,Arial,sans-serif; text-transform: uppercase; letter-spacing: 3px; background: url(../images/nav-sep.png) 0 50% no-repeat; white-space: nowrap; }
  #nav li.first { background: none; padding-left: 0; }
  #nav li.last { padding-right: 0; }

   #nav li a { }
   #nav li em { position: absolute; left: -10001px; top: -10001px; }

 #wrapper-b { width: 738px; padding: 50px; margin: -40px auto 10px; background: url(../images/content.png) 0 100% no-repeat; }

 #content { background: url(../images/content-sep.png) 470px 0 no-repeat; min-height: 540px; overflow: hidden; }
  #content .main { width: 440px; float: left; }
  #content .aside { width: 245px; float: right; }

 #content_short { background: url(../images/content-sep2.png) 470px 0 no-repeat; min-height: 330px; overflow: hidden; }
  #content_short .main { width: 440px; float: left; }
  #content_short .aside { width: 245px; float: right; }
  
 #footer { width: 801px; height: 80px; padding: 30px 18px; margin: 0 auto; background: url(../images/footer.png) no-repeat; }
  #footer ul { padding: 0; margin: 0; list-style: none; }
   #footer li { display: inline; float: left; padding: 0 25px; background: url(../images/footer-sep.png) no-repeat;   }
   #footer li.first { background: none; }

/* GENERAL
------------------------------------------- */

/* headers */

h1, h2, h3, h4, h5, h6 { font-family: Georgia,serif; font-style: italic; font-weight: normal; }
h1 { font-size: 2.2em; }
h2 { font-size: 1.9em; color: #a97e54; }
h3 { font-size: 1.4em; }
h4 { font-size: 1.2em; }
h5 { font-size: 1.2em; }
h6 { font-size: 1.0em; }

.aside h3 { padding: 0 0 5px; font-style: normal; color: #797979; text-transform: uppercase; letter-spacing: 2px; word-spacing: 5px; border-bottom: 1px solid #e6e6e6; }
 .aside h3 span { text-transform: lowercase; letter-spacing: 0; font-style: italic; }

/* containers */



/* forms */



/* tables */

table { }
 table th, table td { padding: 5px 10px; border: 0px solid #ccc; }

/* lists */

ul.a { padding: 0; list-style: none; }
 ul.a li { color: #a27d63; padding: 0 0 0 13px; background: url(../images/li-a.png) 0 50% no-repeat; line-height: 1.9em; }


/* paragraphs */
.figure-a { float: left; margin: 0 15px 0 0; }
.figure-b { float: right; margin: 0 0 10px 10px; }

.callout-a { font: italic 1.8em/1.66 Georgia,serif; color: #939db9; }

/* links */



/* other */


/* blog */

.post { padding: 0 0 15px; margin: 0 0 15px; border-bottom: 1px solid #ccc; border-bottom: 1px solid #e6e6e6; }
 .post .postinfo { margin: 0; font-size: 1em; text-transform: uppercase; letter-spacing: 1px; }
 .post .postinfo .via { margin-left: 30px; }

 .post blockquote { padding: 0 0 0 20px; border-left: 5px solid #e6e6e6; margin: 0 0 10px; }
  .post blockquote p { font: italic 1.8em/1.25 Georgia,serif; margin: 0; color: #a97e54; }

 .post .source { font-style: italic; }
 .post .link { font-size: 1.4em; }

 .post .photo img { display: block; margin: 0 auto; padding: 2px; border: 1px solid #e6e6e6; }
 .post .caption, .post .description { margin-top: -5px; }
  .post .caption p { font-size: 1em; text-transform: uppercase; letter-spacing: 2px; }

 .post .media-player { margin: 0 0 10px; }

 .post .chat { padding: 0; list-style: none; }
  .post .chat li { position: relative; padding: 5px 10px 5px 115px; margin: 0 0 2px; overflow: hidden;  }
  .post .chat .odd { background: #efefef; }
  .post .chat .even { background: #fefefe; }
   .post .chat .name { position: absolute; left: 5px; width: 90px; font-weight: bold; text-align: right; }