/* Red Letter Design
 * 
 * Site redesign, September 2010
 *
 *
 * Brenda Egeland
 * Red Letter Design
 * www.RedLetterDesign.net
 *
 */
/* 
 *
 * Reset browser default styles to insure consistency across various browsers
 *
 */
html, body, div, 
applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, font, img, ins, kbd, q, s, samp,
small, strike, sub, sup, tt, var,
dd, dl, dt, li, ol, ul,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td { border: 0; font-size: 100%; line-height: 1; margin: 0; padding: 0; text-align: left; vertical-align: baseline; }
a img, :link img, :visited img { border: 0; }
ol, ul { list-style: none; }
q:before, q:after, blockquote:before, blockquote:after { content: ""; }

/* 
 *
 * Helpful fixes
 *
 */

/* -- forces vertical scrollbars to avoid horizontal shift on short pages */
html { overflow-y: scroll; }


/* 
 *
 * Structure    
 *
 */
body            { background: #8a8781 url(../images/layout/background.jpg) top center repeat; }
div#background  { background: url(../images/layout/backgroundtop.jpg) top center repeat-x; }
div#container   { margin: 0 auto; width: 970px; }
div#header      { background: url(../images/layout/header.png); height: 80px; padding: 20px 40px 0 40px; position: relative; }
div#primarynav  { background: url(../images/layout/navbar.png) center top no-repeat; height: 30px; padding: 0 20px 0 20px; }
div#content     { background: url(../images/layout/body.png) center top repeat-y; min-height: 500px; padding: 0px 30px 10px 30px; }
    .has_sidebar div#content    { background: url(../images/layout/sidebarbody.png) center top repeat-y; }
    .has_rightbar div#content   { background: url(../images/layout/rightbarbody.png) center top repeat-y; }
    .dark div#content           { background: url(../images/layout/darkbody.png) center top repeat-y; }
div#footer      { background: url(../images/layout/footer.png) center top no-repeat; padding: 0 40px 60px 0px; position: relative; }
    .has_sidebar div#footer     { background: url(../images/layout/sidebarfooter.png) center top no-repeat; }
    .has_rightbar div#footer    { background: url(../images/layout/rightbarfooter.png) center top no-repeat; }
    .dark div#footer            { background: url(../images/layout/darkfooter.png) center top no-repeat; }
div#subfooter   { padding: 0 20px 70px 20px; position: absolute; top: 40px; }


/*
 * Slideshow
 *
 */
#homepageslideshow { border: 1px solid #8a8781; width: 628px; height: 468px; float: left;}


/*
 *
 * Columns
 *
 *
 */
div.column      { float: left; padding: 10px; }
div.single      { width: 110px; }
div.sidebar,
div.twowide     { width: 240px; }
div.threewide   { width: 370px; }
div.rightbar    { padding-left: 30px; width: 350px; }
div.fourwide    { width: 500px; }
div.main,
div.fivewide    { width: 630px; /* for use with sidebar */ }
div.sixwide     { width: 760px; }
div.fullwidth   { width: 890px; }
div.stickynote  { background: url(../images/layout/stickynote.png) center top no-repeat; float: left; height: 190px; margin: 10px 0 0 0; padding: 20px 20px 20px 30px; width: 210px; }


/* 
 *
 * Fonts
 *
 */
body { font-family: "Palatino Linotype", Palatino, Georgia, "Times New Roman", Times, serif; }
div#header h1,
ul.inlinenav li,
div#primarynav li,
div#sidenav li,
h2, h4, td, th,
a.sidebadge, .error, .warning, .success
                    { font-family: "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", Geneva, Verdana, sans-serif; }
input, textarea     { font-family: Verdana, Arial, sans-serif; }


/* 
 *
 * Typography
 *
 */
body, input, textarea { color: #444444; font-size: 14px; line-height: 1.0; }

h1  { color: #990000; font-size: 24px; font-weight: normal; line-height: 24px; margin: 0; padding: 12px 0 6px 0; }
    div#header h1 { clear: right; color: #555555; font-size: 16px; font-weight: normal; line-height: 20px; margin: 0; padding: 17px 0 0 0; text-align: right; }

h2  { color: #333333; font-size: 18px; font-weight: bold; line-height: 24px; margin: 0; padding: 12px 0 0 0; }

h3  { color: #990000; font-size: 16px; font-style: normal; font-weight: bold; line-height: 18px; margin: 0; padding: 12px 0 0 0; }

p   { font-size: 14px; line-height: 18px; margin: 0; padding: 6px 0 12px 0; }
    div#header p { color: #afaba4; font-size: 14px; font-style: italic; line-height: 20px; margin: 0; padding: 0; text-align: right; }
    div#subfooter p { color: #e1dfda; font-size: 11px; line-height: 16px; padding: 0; }
    div.frontpagecontent p {font-size: 16px; line-height: 24px;}
li  { font-size: 13px; line-height: 18px; margin: 0; padding: 0; }
    li li { font-size: 11px; }

strong { color: #990000; font-weight: bold; }
em { color: #000000; font-style: italic; }

blockquote { background-color: #eeeee9; border-left: 8px solid #e1dfda; margin: 9px 0px; padding: 0 18px 0 9px; }
    blockquote p { padding: 9px 0 9px 0; }
    blockquote p.blockquoteLead { font-weight: bold; }
    blockquote p.blockquoteSource { font-size: 11px; font-style: italic; text-align: right; }

a,
a:link,
a:visited { color: #990000; }
a:hover,
a:active { color: #ea0000; }

img.photoRight { border: 1px solid #7b7b7b; float: right; margin: 4px 0 0px 18px; padding: 0; }
img.photoLeft { border: 1px solid #7b7b7b; float: left; margin: 4px 18px 0px 0; padding: 0; }
img.graphicRight { border: none; float: right; margin: 12px 0 6px 18px; padding: 0; }
img.graphicLeft { border: none; float: left; margin: 12px 18px 6px 0; padding: 0; }
img.rldheader   { float: left; }

ul { list-style-position: outside; list-style-type: square; margin: 0 0 0 1.5em; padding: 6px 0 12px 0; }
ol { list-style-position: outside; list-style-type: decimal; margin: 0 0 0 1.5em; padding: 6px 0 12px 0; }
ul ul, 
ol ul { list-style-position: outside; list-style-type: disc; margin: 0 0 0 2em; padding: 0; }
ol ol, 
ul ol { list-style-position: outside; list-style-type: lower-alpha; margin: 0 0 0 2em; padding: 0 0 0 0; }

dl { margin: 0; padding: 6px 0 12px 0; }
dt { font-size: 13px; font-weight: bold; line-height: 18px; margin: 0; padding: 0; }
dd { font-size: 13px; line-height: 18px; margin: 0 0 0 1.5em; padding: 0; }

table   { background-color: #ccc7bf; border: 1px solid #8a8781; margin: 0 0 17px 0; padding: 0; }
td, th  { font-size: 11px; font-weight: normal; line-height: 13px; margin: 0; padding: 2px; text-align: left; }
th      { background-color: #ccc7bf; border-bottom: 1px solid #8a8781; font-weight: bold; vertical-align: middle; }
td      { background-color: #e1dfda; border-bottom: 1px solid #ccc7bf; vertical-align: middle; }
    tr.alt td { background-color: #f0eee9; }
    tr.unbilled td { background-color: yellow !important; }
    tr.overdue td { background-color: red !important; }
    tr.due_soon td { background-color: orange !important; }
table td a,
table td a:link,
table td a:visited  { color: #444444; }
table td a:hover    { color: #990000; }
.cellRight  { text-align: right; }
.cellCenter { text-align: center; }
.cellNoWrap { white-space: nowrap; }
.cellDate   { padding-right: 10px; text-align: right; white-space: nowrap; }
.heading    { vertical-align: bottom; }
.cellTop    { vertical-align: top; }
tr.monthTotal td    { border-bottom: 2px solid #444444; border-top: 1px solid #444444; font-weight: bold; }
tr.yearTotal  td    { background-color: #afaba4; border-bottom: 3px solid #444444; border-top: 1px solid #444444; font-weight: bold; }
tr.grandTotal td    { background-color: #ccc7bf; border-bottom: 4px solid #444444; border-top: 1px solid #444444; font-weight: bold; }
tr.divider td       { border-bottom: 2px solid #444444; }


form {  }
form p { padding: 0; }
table.formTable     { background-color: transparent; border: none; }
table.loginFormTable { background-color: #ffffff; border: 1px solid #8a8781; padding: 10px;}
    .formTable th,
    .loginFormTable th   { background-color: transparent; border: none; color: #8a8781; font-size: 12px; line-height: 13px; text-align: right; vertical-align: top;}
    .formTable td,
    .loginFormTable td   { background-color: transparent; border: none; font-size: 12px; line-height: 13px; vertical-align: top;}
th.requiredNotice {text-align: left;}
textarea { color: #555555; font-size: 15px; padding: 3px; width: 100%; background-color: #e1dfda; border: none;}
.rightbar textarea { background-color: #ffffff; }
input[type="text"] { color: #555555; font-size: 15px; padding: 3px; width: 100%; background-color: #e1dfda; border: none;}
.rightbar input[type="text"] { background-color: #ffffff; }
input[type="password"] { color: #555555; font-size: 15px; padding: 3px; width: 100%; background-color: #e1dfda; border: none; }
select { font-size: 11px; }
input.button { font-size: 11px; line-height: 13px; padding: 3px 3px 2px 2px; }
input.sendMessageButton { background: url(../images/yellow_mail_send.png) left center no-repeat; height: 48px; padding-left: 48px; border: none; font-size: 18px; font-weight: bold; color: #8a8781;}
input.sendMessageButton:hover { color: #990000; }
input.loginButton { background: url(../images/lock.png) left center no-repeat; height: 48px; padding-left: 48px; border: none; font-size: 18px; font-weight: bold; color: #8a8781;}
input.loginButton:hover { color: #990000;  background-image: url(../images/unlock.png)}
div.checkInput { float: left; padding-right: 20px; }
label { font-size: 13px; font-weight: bold; line-height: 18px; }
    label.selectLabel { font-weight: normal; }
div#honeypot    { display: none; }


table.striped input[type="text"] {color: #555555; font-size: 11px; padding: 2px; width: 98%; background-color: #ffffff; border: none; }
table.striped textarea { color: #555555; font-size: 11px; padding: 2px; width: 98%; background-color: #ffffff; border: none;}


/* 
 *
 * Navigation
 *
 */
div#primarynav ul { list-style: none; margin: 0; padding: 0; }
    div#primarynav ul li { color: #afaba4; display: inline; font-size: 14px; letter-spacing: 1px; line-height: 30px; padding: 0 15px 0 17px; }
        div#primarynav ul li a,
        div#primarynav ul li a:link,
        div#primarynav ul li a:visited { color: #e1dfda; text-decoration: none; padding: 7px 0 6px 17px; background: url(../images/indicator.png) left center no-repeat;}
        div#primarynav ul li a:hover { color: #ffffff; text-decoration: none; background-position: left top; }
        div#primarynav ul li.current_page a,
        div#primarynav ul li.parent_page a,
        div#primarynav ul li.ancestor_page a { color: #ffffff; background-position: left bottom;}

div#sidenav { padding: 10px 25px 10px 10px; width: 225px; }
    div#sidenav h2 { color: #555555; padding-bottom: 20px; }
    div#sidenav ul { list-style-position: outside; list-style: none; margin: 0; padding: 0; text-indent: 0; }
        div#sidenav ul li { text-indent: 0; }
            div#sidenav ul li a { background-color: #ffffff; border: 1px solid #555555; color: #555555; display: block; font-size: 15px; line-height: 18px; margin: 0 0 10px 0; padding: 10px 10px 10px 20px; text-decoration: none; }
                div#sidenav ul li a:hover { background-color: #66625B; color: #ffffff; }
            div#sidenav ul li.current_page a, 
        div#sidenav ul li.current_page a:link,
        div#sidenav ul li.current_page a:visited
        div#sidenav ul li.current_page a:hover { background-color: #990000; color: #ffffff; text-decoration: none; }
            div#sidenav ul li .related_text { color: #AFABA4; display: block; font-size: 12px; line-height: 14px; padding: 0; }
            div#sidenav ul li.current_page .related_text { color: #AFABA4; }

ul.inlinenav { margin: 0; padding: 0; height: 20px;}
    ul.inlinenav li { color: #AFABA4; display: inline; float: right; font-size: 11px; padding: 0 0 0 20px; }
        ul.inlinenav li a,
        ul.inlinenav li a:link,
        ul.inlinenav li a:visited { color: #AFABA4; }
        ul.inlinenav li a:hover { color: #66625B; }


/* 
 *
 * Classes
 *
 */
.clear          { clear: both; }
.clearLeft      { clear: left; }
.clearRight     { clear: right; }
.readmorelink   { float: right; padding: 8px 0 0 3px; }
.required       { color: #8a8781; font-size: 11px; }
.retMessage     { font-weight: bold; }
.formError      { color: #b20000; font-size: 11px; }
.error, 
.warning,
.success        { color: #990000; font-weight: bold; }
.hilite         { background-color: #ffff55; color: #B20000; } /* used for hilite-fade jQuery function, use with span */
.detail         { font-size: 11px; color: #666666 }
.note           { font-size: 11px; }
.tiny           { font-size: 9px;}
.good           { color: #000099; }
.bad            { color: #990000; }
.rightalign     { text-align: right; }
.nospacing      { margin: 0; padding: 0; }
.flashMessage   { text-align: right; } 
.sitemap  .related_text { padding-left: 15px; }
div.callout     { width: 50%; float: right; border: 2px solid #990000; margin: 5px 0 5px 10px; padding: 5px;}


/*
 *
 * Badges on front page
 *
 */
a.sidebadge { display: block; color: #555555; border: 2px solid #555555; text-decoration: none; font-size: 14px; line-height: 18px; width: 100px; text-align: center; padding: 84px 3px 4px 3px; margin: 0 0 15px 0; background-color: #e1dfda;}
a.sidebadge:hover { color: #ffffff; border-color: #990000; background-color: #66625B;}
a#viewportfolio {background-image: url(../images/viewportfolio.png); background-position: left top; background-repeat: no-repeat;}
a#wordpressdev {background-image: url(../images/wordpress.png); background-position: left top; background-repeat: no-repeat;}


/*
 *
 * Admin nav
 *
 */
p.adminInlineNav { font-size: 11px; }
p.adminInlineNav span { padding: 0 5px 0 0; }
p.adminInlineNav .current_page { display: none; }
