/* GLOBAL RESETS */
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-size:inherit;
	font-weight:inherit;
	outline: 0;
	vertical-align: baseline;
    }
:focus {
	outline: 0;
    }
body {
	line-height: 1;
    }
ol, ul {
	list-style: none;
    }
table {
	border-collapse: separate;
	border-spacing: 0;
    }
caption, th, td {
	text-align: left;
	font-weight: normal;
    }
blockquote:before, blockquote:after,
q:before, q:after {
	content: "";
    }
blockquote, q {
	quotes: "" "";
    }
/* END GLOBAL RESETS */


/* GENERIC STYLES */
.clear:after {
    content: ".";
    display:block;
    height:0;
    clear:both;
    visibility:hidden;
    }
strong {
    font-weight:700;
    }
em {
    font-style:italic;
    }
a {
    text-decoration:none;
    color:#4c7aac;
    }
a:hover {
    text-decoration:underline;
    color:#000;
    }
#secondary_content_wrapper a {
    text-decoration:none;
    color:#4c7aac;
    }
#secondary_content_wrapper a:hover {
    color:#fff;
    }
ol li {
    list-style:decimal;
    }
a:hover {
    color:#000;
    }
p {
    line-height:1.5em;
    margin:0 0 1.5em 0;
    }
p.first_graph:first-letter {
    float:left;
    font-size:3em;
    font-family:Georgia;
    margin:9px 4px 0 0;
    }
p.first_graph.safari_opera:first-letter {
    margin:12px 2px 0 0;
    }
p.first_graph:first-line {
    font-variant:small-caps;
    }
/* END GENERIC STYLES */


body {
    background:#000 url(../img/bgs/site_bg.jpg) no-repeat center top;
    font-size:16px;
    font-family:Tahoma, Arial, sans-serif;
    }
#site_wrapper {
    width:960px;
    margin:0 auto;
    }
#branding {
    margin:26px 0 0 0;
    }
#branding h1 a {
    text-indent:-50000px;
    background:transparent url(../img/branding.png) no-repeat;
    width:308px;
    height:92px;
    display:block;
    }
#branding h1 a:hover {
    background:transparent url(../img/branding.png) no-repeat 0 -93px;
    }
    
/* NAVIGATION */
#nav {
    width:960px;
    height:45px;
    margin:33px 0 0 0;
    background:transparent url(../img/bgs/nav_bg.jpg) no-repeat 0 bottom;
    }
#nav ul {
    margin:0 0 0 10px;
    }
#nav ul li {
    float:left;
    }
#nav ul li a {
    color:#85898d;
    font-size:1.125em;
    text-decoration:none;
    margin:0 10px 0 0;
    padding:5px 10px 0 10px;
    line-height:40px;
    display:block;
    }
#nav ul li a:hover {
    color:#4c7aac;
    }
#nav ul li.current_page a {
    background:#fff;
    color:#4c7aac;
    padding:0px 10px;
    border-top:5px solid #4c7aac;
    }
/* END NAVIGATION */


/* PRIMARY CONTENT */
#primary_content_wrapper {
    width:640px;
    padding:10px;
    background:#fff;
    float:left;
    }
#primary_content {
    font-family:Georgia;
    border:1px solid #eee;
    min-height:500px;
    }
#primary_content.texture {
    background:transparent url(../img/bgs/content_pattern.gif);
    }
#primary_content h2 {
    font-size:1.5em;
    font-style:italic;
    margin:0 0 20px 0;
    }
#content_wrapper {
    margin:40px;
    }
/* END PRIMARY CONTENT */


/* SECONDARY CONTENT */
#secondary_content_wrapper {
    float:left;
    width:290px;
    padding:10px 10px 0 0;
    background:#000;
    }
#secondary_content {
    background:#000;
    }
#secondary_content h3 {
    background:transparent url(../img/bgs/titlebar_bg.png) no-repeat;
    height:40px;
    width:240px;
    line-height:40px;
    color:#dedede;
    font-size:1.125em;
    font-family:Tahoma, Arial, sans-serif;
    font-weight:bold;
    letter-spacing:.2px;
    padding:0 0 0 50px;
    }
#secondary_content p {
    font-size:.875em;
    color:#dedede;
    margin:10px 0 40px 50px;
    }
#secondary_content p a:hover {
    color:#fff;
    text-decoration:underline;
    }
#secondary_content p.tags {
    margin:10px 0 10px 50px;
    }
#secondary_content ul {
    margin:10px 0 40px 40px;
    }
#secondary_content ul li {
    list-style-image:none;
    }
#secondary_content ul li a {
    height:40px;
    display:block;
    border-bottom:1px solid #1a1a1a;
    text-decoration:none;
    line-height:40px;
    padding:0 0 0 10px;
    }
#secondary_content ul li a:hover {
    color:#fff;
    background:#0f1822;
    }
#secondary_content ul img {
    margin:0 10px 0 0;
    vertical-align:middle;
    }
/* END SECONDARY_CONTENT */


/* FOOTER */
#footer_wrapper {
    background:#000 url(../img/bgs/site_bg_bottom.jpg) no-repeat center top;
    clear:both;
    height:420px;
    }
#footer {
    background:transparent url(../img/bgs/footer_bg.jpg) no-repeat;
    height:228px;
    width:910px;
    margin:0 auto;
    padding:40px 0 0 50px;
    }
.footer_bucket {
    width:260px;
    margin:0 40px 0 0;
    font-family:Tahoma, Arial, sans-serif;
    font-size:.875em;
    color:#fff;
    float:left;
    }
.footer_bucket h4 {
    font-size:1.125em;
    margin:0 0 18px 0;
    font-weight:bold;
    }
.footer_bucket a:hover {
    color:#fff;
    }
/* END FOOTER */


/* BLOG ENTRY */
#primary_content .blog_entry h2 {
    font-size:1.75em;
    }
.blog_entry h2 a {
    text-decoration:none;
    color:#4c7aac;
    }
.blog_entry h2 a:hover {
    color:#000;
    }
.blog_entry {
    margin:40px;
    clear:both;
    }
.blog_entry .entry_body {
    float:right;
    width:440px;
    display:inline;
    margin:-5px 0 0 0;
    }
.blog_entry .dateline {
    float:left;
    text-align:right;
    width:93px;
    }
.blog_entry .month {
    text-transform:uppercase;
    color:#BBB;
    text-align:right;
    }
.blog_entry .date {
    display:block;
    font-size:2.5em;
    }
.entry_body img {
    margin:0 0 0 -40px;
    }
.entry_body h3 {
    font-family:Tahoma, Arial, sans-serif;
    font-weight:bold;
    font-size:1.125em;
    margin:0 0 4px 0;
    }
.entry_body ol, ul {
    margin:0 0 1.5em 0;
    }
.entry_body ol li {
    line-height:1.5em;
    }
.entry_body ul li {
    line-height:1.5em;
    list-style:disc;
    }
.entry_body blockquote {
    background:transparent url(../img/quotation_mark.png) no-repeat 0px 5px;
    padding:0 0 0 40px;
    margin:0 0 0 -40px;
    color:#999;
    font-style:italic;
    }
.entry_body code {
    
    }
/* END BLOG ENTRY */


/* ARCHIVE */
ul.archive {
    margin:0 0 0 40px;
    list-style:disc;
    font-size:1.2em;
    }
ul.archive .archive_dateline {
    display:block;
    font-size:.75em;
    color:#777;
    margin:5px 0 0 0;
    }
ul.archive li {
    margin:0 0 20px 0;
    }
/* END ARCHIVE */


/* COMMENTS */
#comments {
    clear:both;
    }
#comments h2, #comment_form h2, h2.archive_header {
    clear:both;
    font-family:Georgia;
    font-size:1.5em;
    font-style:italic;
    line-height:40px;
    color:#fff;
    text-indent:40px;
    background:#365475;
    height:40px;
    margin:5px 0 0 0;
    }
.comment {
    background:transparent url(../img/quotation_mark.png) no-repeat 100px 25px;
    overflow:hidden;
    padding:20px 40px 20px 160px;
    }
.comment.odd {
    background-position: 100px 25px;
    }
.comment.even {
    background-position:100px 25px;
    background-color:#f4f4f4;
    }
.comment.author { 
    background-position:100px 25px;
    background-color:#365475;
    color:#fff;
    }
.comment p {
    font-family:Georgia;
    font-size:1em;
    }
.comment .byline {
    float:right;
    font-weight:bold;
    font-size:.875em;
    color:#313131;
    margin:-18px 0 0 0;
    }
.comment.author .byline {
    color:#ccc;
    }
.comment.author .byline a {
    color:#000;
    }
.comment.author .byline a:hover {
    color:#fff;
    }
p.no_comments {
    text-align:center;
    font-size:1.2em;
    margin:10px 0 40px 0;
    display:block;
    }
#comments .comment h1, #comments .comment h2, #comments .comment h3, #comments .comment h4, #comments .comment h5, #comments .comment h6 {
    font-size:18px;
    font-family:Georgia;
    font-weight:bold;
    background:none;
    color:#000;
    text-indent:0;
    }
#comments .comment ul li {
    list-style:disc;
    }
#comments .comment code {
    background:#ddd;
    margin:0 0 40px 0;
    display:block;
    padding:10px;
    }
#comments .comment blockquote {
    padding:10px;
    background:#ddd;
    }
#comment_form #errors h3 {
    background:#F4F4F4;
    border:1px solid #ddd;
    padding:5px;
    font-size:1em;
    color:#d3202a;
    margin:0 0 20px -60px;
    width:540px;
    }
#comment_form ul.errorlist {
    float:left;
    margin:0;
    }
#comment_form ul.errorlist li {
    font-family:Tahoma, Arial, sans-serif;
    color:#d3202a;
    font-size:.875em;
    font-weight:700;
    margin:0 0 0 10px;
    }
/* END COMMENTS */


/* COMMENT FORM */
#comment_form form {
    margin:20px 0 0 100px;
    }
#comment_form label {
    color:#313131;
    font-family:Georgia;
    letter-spacing:-.5px;
    float:left;
    width:56px;
    }
#comment_form input {
    height:20px;
    background:#f4f4f4;
    border:1px solid #365475;
    font-size:1em;
    font-weight:bold;
    padding:5px;
    float:left;
    }
#comment_form textarea {
    background:#f4f4f4;
    border:1px solid #365475;
    width:430px;
    padding:5px;
    font-family:Georgia;
    }
#comment_form fieldset {
    margin:0 0 13px 0;
    line-height:30px;
    width:500px;
    }
#comment_form fieldset#comment_field {
    width:440px;
    float:right;
    margin:0 40px 0 000;
    }
#comment_form #id_honeypot {
    display:none;
    }
#comment_form .submit-post {
    background:#000;
    color:#fff;
    display:block;
    float:right;
    height:30px;
    padding:0 5px 3px 5px;
    margin:10px 40px 20px 0
    }
#comment_form .field_description {
    font-size:.75em;
    float:left;
    margin:0 0 0 5px;
    }
#comment_form .asterisk {
    float:left;
    font-family:Arial;
    font-size:3em;
    color:#4a6685;
    margin:0 0 0 5px;
    padding:8px 0 0 0;
    }
#comment_form .markdown_field {
    font-style:italic;
    font-size:.75em;
    color:#aaa;
    }
/* END COMMENT FORM */


/* TWITTER UPDATES */
.tweet {
    padding:20px 40px 20px 80px;
    }
.tweet.odd {
    background:transparent url(../img/quotation_mark.png) no-repeat 20px 25px;
    }
.tweet.even {
    background:#f4f4f4 url(../img/quotation_mark.png) no-repeat 20px 25px;
    }
.tweet p {
    font-family:Georgia;
    font-size:1em;
    }
.tweet .date {
   float:right;
   font-weight:bold;
   font-size:.875em;
   color:#313131;
   margin:-18px 0 0 0;
   }
/* END TWITTER UPDATES */


/* HOMEPAGE */
#primary_content h2.titlebar {
    font-size:1.75em;
    font-style:normal;
    border-bottom:1px solid #e5e5e5;
    padding:0 0 5px 0;
    }
#latest_entries .entry {
    width:260px;
    float:left;
    margin:0 38px 0 0;
    }
#latest_entries .entry.second {
    margin:0;
    }
#latest_entries .entry h3 a {
    font-size:1.375em;
    font-style:italic;
    margin:0 0 10px 0;
    display:block;
    color:#4c7aac;
    text-decoration:none;
    }
#latest_entries .entry h3 a:hover {
    color:#000;
    text-decoration:underline;
    }

#latest_entries p a, a.read_more {
    font-style:italic;
    text-decoration:none;
    display:block
    }
#latest_entries p a:hover, a:hover.read_more {
    text-decoration:underline;
    }
/* END HOMEPAGE */


/* PORTFOLIO */
.portfolio_item {
    height:120px;
    overflow:hidden;
    margin:0 0 40px 0;
    }
.portfolio_item a img {
    border:5px solid #000;
    margin:0 40px 0 0;
    float:left;
    }
.portfolio_item a:hover img {
    border:5px solid #4C7AAC;
    }
#primary_content .portfolio_item h2 {
    margin:0 0 10px 0;
    }
#primary_content .portfolio_item h2 a {
    font-family:Tahoma;
    text-decoration:none;
    font-style:normal;
    font-weight:bold;
    font-size:1em;
    color:#4c7aac;
    }
#primary_content .portfolio_item h2 a:hover {
    color:#000;
    text-decoration:underline;
    }
.portfolio_item p {
    height:83px;
    width:198px;
    font-family:Tahoma;
    font-size:.875em;
    float:left;
    }
#portfolio_detail h2 {
    font-family:Tahoma, Arial, sans-serif;
    font-size:1.375em;
    font-weight:bold;
    font-style:normal;
    }
#portfolio_detail h3 {
    font-family:Tahoma, Arial, sans-serif;
    font-size:1em;
    font-weight:bold;
    margin:0 0 10px 0;
    }
#portfolio_detail ol, ul {
    margin:0 0 1.5em 0;
    }
#portfolio_detail ul {
    list-style:disc;
    }
#portfolio_detail li {
    line-height:1.5em;
    }
#portfolio_gallery {
    display:block;
    clear:both;
    }
#portfolio_gallery a {
    margin:0 20px 20px 0;
    float:left;
    }
#portfolio_gallery a img {
    border:5px solid #000;
    }
#portfolio_gallery a:hover img {
    border:5px solid #4C7AAC;
    }
/* END PORTFOLIO */


/* CODEHILITE */
.codehilite .hll { background-color: #ffffcc }
.codehilite .c { color: #408080; font-style: italic } /* Comment */
.codehilite .err { border: 1px solid #FF0000 } /* Error */
.codehilite .k { color: #b2d262; font-weight: bold } /* Keyword */
.codehilite .o { color: #dfa07b } /* Operator */
.codehilite .cm { color: #408080; font-style: italic } /* Comment.Multiline */
.codehilite .cp { color: #a1c8ef } /* Comment.Preproc */
.codehilite .c1 { color: #408080; font-style: italic } /* Comment.Single */
.codehilite .cs { color: #408080; font-style: italic } /* Comment.Special */
.codehilite .gd { color: #A00000 } /* Generic.Deleted */
.codehilite .ge { font-style: italic } /* Generic.Emph */
.codehilite .gr { color: #FF0000 } /* Generic.Error */
.codehilite .gh { color: #000080; font-weight: bold } /* Generic.Heading */
.codehilite .gi { color: #00A000 } /* Generic.Inserted */
.codehilite .go { color: #808080 } /* Generic.Output */
.codehilite .gp { color: #000080; font-weight: bold } /* Generic.Prompt */
.codehilite .gs { font-weight: bold } /* Generic.Strong */
.codehilite .gu { color: #800080; font-weight: bold } /* Generic.Subheading */
.codehilite .gt { color: #0040D0 } /* Generic.Traceback */
.codehilite .kc { color: #008000; font-weight: bold } /* Keyword.Constant */
.codehilite .kd { color: #008000; font-weight: bold } /* Keyword.Declaration */
.codehilite .kn { color: #a47343; font-weight: bold } /* Keyword.Namespace */
.codehilite .kp { color: #008000 } /* Keyword.Pseudo */
.codehilite .kr { color: #008000; font-weight: bold } /* Keyword.Reserved */
.codehilite .kt { color: #B00040 } /* Keyword.Type */
.codehilite .m { color: #5990CB } /* Literal.Number */
.codehilite .s { color: #5a8a46 } /* Literal.String */
.codehilite .na { color: #7D9029 } /* Name.Attribute */
.codehilite .nb { color: #008000 } /* Name.Builtin */
.codehilite .nc { color: #a1c8fc; text-decoration: underline; } /* Name.Class */
.codehilite .no { color: #880000 } /* Name.Constant */
.codehilite .nd { color: #AA22FF } /* Name.Decorator */
.codehilite .ni { color: #999999; font-weight: bold } /* Name.Entity */
.codehilite .ne { color: #D2413A; font-weight: bold } /* Name.Exception */
.codehilite .nf { color: #A1C8FC } /* Name.Function */
.codehilite .nl { color: #A0A000 } /* Name.Label */
.codehilite .nn { color: #FFF } /* Name.Namespace */
.codehilite .nt { color: #008000; font-weight: bold } /* Name.Tag */
.codehilite .nv { color: #668d45 } /* Name.Variable */
.codehilite .ow { color: #d79f7b; font-weight: bold } /* Operator.Word */
.codehilite .w { color: #bbbbbb } /* Text.Whitespace */
.codehilite .mf { color: #5990cb } /* Literal.Number.Float */
.codehilite .mh { color: #5990cb } /* Literal.Number.Hex */
.codehilite .mi { color: #5990cb } /* Literal.Number.Integer */
.codehilite .mo { color: #5990cb } /* Literal.Number.Oct */
.codehilite .sb { color: #BA2121 } /* Literal.String.Backtick */
.codehilite .sc { color: #BA2121 } /* Literal.String.Char */
.codehilite .sd { color: #BA2121; font-style: italic } /* Literal.String.Doc */
.codehilite .s2 { color: #BA2121 } /* Literal.String.Double */
.codehilite .se { color: #BB6622; font-weight: bold } /* Literal.String.Escape */
.codehilite .sh { color: #BA2121 } /* Literal.String.Heredoc */
.codehilite .si { color: #BB6688; font-weight: bold } /* Literal.String.Interpol */
.codehilite .sx { color: #008000 } /* Literal.String.Other */
.codehilite .sr { color: #BB6688 } /* Literal.String.Regex */
.codehilite .s1 { color: #BA2121 } /* Literal.String.Single */
.codehilite .ss { color: #19177C } /* Literal.String.Symbol */
.codehilite .bp { color: #5b99e4 } /* Name.Builtin.Pseudo */
.codehilite .vc { color: #19177C } /* Name.Variable.Class */
.codehilite .vg { color: #19177C } /* Name.Variable.Global */
.codehilite .vi { color: #19177C } /* Name.Variable.Instance */
.codehilite .il { color: #666666 } /* Literal.Number.Integer.Long */

.codehilite {
    background:#121235;
    color:#fff;
    width:440px;
    overflow:auto;
    position:relative;
    border-left:1px solid #3e3e5d;
    margin:0 0 1.5em 0;
    }
.codehilite pre {
    padding:10px;
    }
table.codehilitetable {
    margin:0 0 1.5em -40px;
    font-size:.875em;
    width:100%;
    }
td.linenos {
    background:#1f1f54;
    color:#888;
    }
td.linenos pre {
    text-align:center;
    width:38px;
    }
/* END CODEHILITE */

/**
 * jQuery lightBox plugin
 * This jQuery plugin was inspired and based on Lightbox 2 by Lokesh Dhakar (http://www.huddletogether.com/projects/lightbox2/)
 * and adapted to me for use like a plugin from jQuery.
 * @name jquery-lightbox-0.5.css
 * @author Leandro Vieira Pinho - http://leandrovieira.com
 * @version 0.5
 * @date April 11, 2008
 * @category jQuery plugin
 * @copyright (c) 2008 Leandro Vieira Pinho (leandrovieira.com)
 * @license CC Attribution-No Derivative Works 2.5 Brazil - http://creativecommons.org/licenses/by-nd/2.5/br/deed.en_US
 * @example Visit http://leandrovieira.com/projects/jquery/lightbox/ for more informations about this jQuery plugin
 */
#jquery-overlay {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 90;
	width: 100%;
	height: 500px;
}
#jquery-lightbox {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	z-index: 100;
	text-align: center;
	line-height: 0;
}
#jquery-lightbox a img { border: none; }
#lightbox-container-image-box {
	position: relative;
	background-color: #fff;
	width: 250px;
	height: 250px;
	margin: 0 auto;
}
#lightbox-container-image { padding: 10px; }
#lightbox-loading {
	position: absolute;
	top: 40%;
	left: 0%;
	height: 25%;
	width: 100%;
	text-align: center;
	line-height: 0;
}
#lightbox-nav {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index: 10;
}
#lightbox-container-image-box > #lightbox-nav { left: 0; }
#lightbox-nav a { outline: none;}
#lightbox-nav-btnPrev, #lightbox-nav-btnNext {
	width: 49%;
	height: 100%;
	display: block;
}
#lightbox-nav-btnPrev { 
	left: 0; 
	float: left;
}
#lightbox-nav-btnNext { 
	right: 0; 
	float: right;
}
#lightbox-container-image-data-box {
	font: 10px Verdana, Helvetica, sans-serif;
	background-color: #fff;
	margin: 0 auto;
	line-height: 1.4em;
	overflow: auto;
	width: 100%;
	padding: 0 10px 0;
}
#lightbox-container-image-data {
	padding: 0 10px; 
	color: #666; 
}
#lightbox-container-image-data #lightbox-image-details { 
	width: 70%; 
	float: left; 
	text-align: left; 
}	
#lightbox-image-details-caption { font-weight: bold; }
#lightbox-image-details-currentNumber {
	display: block; 
	clear: left; 
	padding-bottom: 1.0em;	
}			
#lightbox-secNav-btnClose {
	width: 66px; 
	float: right;
	padding-bottom: 0.7em;	
}
