body, h1, h2, h3, h4, p {
	margin: 0;
	padding: 0;
}
body {
	font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif;
	font-size: 80%;
}


/* CLEAR FLOATED ELEMENTS
----------------------------------------------------------------------------------------------------*/

/* http://sonspring.com/journal/clearing-floats */

.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}

/* http://perishablepress.com/press/2009/12/06/new-clearfix-hack */

.clearfix:after {
	clear: both;
	content: ' ';
	display: block;
	font-size: 0;
	line-height: 0;
	visibility: hidden;
	width: 0;
	height: 0;
}

/*
	The following zoom:1 rule is specifically for IE6 + IE7.
	Move to separate stylesheet if invalid CSS is a problem.
*/
* html .clearfix,
*:first-child+html .clearfix {
	zoom: 1;
}



/**
 * XHTML TAGS
 * ----------------------------------------------------------------------- */
h3 {
	font-size: 1.25em;
	color: #898989;
	padding-bottom: 12px;
}
a, a:visited {
	color: #F98131;
	text-decoration: none;
}
a:hover {
	color: #004D80;
}
p {
	margin-bottom: 1em;
}
img {
	border: none;
}
blockquote {
	font-style: italic;
	line-height: 1.6em;
}
code {
	display: block;
	font-family: Courier, 'Courier New', 'Nimbus Mono L', 'DejaVu Sans Mono', fixed;
	font-size: 1em;
	padding-bottom: 1em;
}


/**
 * IMAGES
 * ----------------------------------------------------------------------- */
.img-float-left {
	float: left;
	padding: 0px 1em 1em 0px;
}

#my-social-sites {
	float: left;

}
#my-social-sites li {
	display: block;
	margin-bottom: 0.25em;
}
#my-social-sites li a:hover {
	background-color: #EEE;
	display: block;
	-moz-border-radius:6px;
	-webkit-border-radius:6px
}
#my-social-sites li a, #my-social-sites li a:visited {
	display: block;
	font-size: 10px;
	color: #898989;
	font-style: italic;
	line-height: normal !important;
	background-position: 6px 7px;
	margin: 0px;
	padding: 7px 6px 4px 40px;
}
#my-social-sites li a strong, #my-social-sites li a:visited strong {
	display: block;
	line-height: 12px !important;
	font-size: 12px !important;
	color: #004D80 !important;
	padding: 0px !important;
	margin: 0px !important;
}
#my-social-sites li.twitter a {
	background-image: url('../img/ui/icons/social/24px/twitter.png');
	background-repeat: no-repeat;
}
#my-social-sites li.facebook a {
	background-image: url('../img/ui/icons/social/24px/facebook.png');
	background-repeat: no-repeat;
}
#my-social-sites li.delicious a {
	background-image: url('../img/ui/icons/social/24px/delicious.png');
	background-repeat: no-repeat;
}
#my-social-sites li.lastfm a {
	background-image: url('../img/ui/icons/social/24px/lastfm.png');
	background-repeat: no-repeat;
}
#my-social-sites li.linkedin a {
	background-image: url('../img/ui/icons/social/24px/linkedin.png');
	background-repeat: no-repeat;
}
#my-social-sites li.flickr a {
	background-image: url('../img/ui/icons/social/24px/flickr.png');
	background-repeat: no-repeat;
}



/**
 * SITE LAYOUT
 * ----------------------------------------------------------------------- */
body {
	background: url('../img/ui/master-head-bg.png') repeat-x;
}
#page-container {
	/* background: url('../img/ui/grid.png') 297px 0px no-repeat; */
}
#master-head {
	width: 960px;
	height: 124px;
	margin: 0 auto;
}
#master-head h1 a {
	display: block;
	position: absolute;
	text-indent: -10000px;
	background: url('../img/ui/epicserve-logo.png') no-repeat;
	top: 20px;
	width: 280px;
	height: 104px;
}
#main-nav ul, #main-nav li {
	position: absolute;
	margin: 0;
	padding: 0;
	list-style: none;
}
#main-nav a, #main-nav a:visited {
	position: absolute;
	display: block;
	text-indent: -10000px;
	overflow: hidden;
	top: 94px;
	left: 650px;
	width: 101px;
	height: 30px;
	background: url('../img/ui/main-nav.png') 0px 0px no-repeat;
}
#about a, #about a:visited {
	background-position: 0px -30px;
}
#contact a, #contact a:visited {
	width: 103px;
	left: 751px;
	background-position: -101px -30px;
}
#archive a, #archive a:visited {
	left: 854px;
	background-position: -204px -30px;
}
#about a:hover {
	background-position: 0px 0px;
}
#contact a:hover {
	background-position: -101px 0px;
}
#archive a:hover {
	background-position: -204px 0px;
}
#lead-article-container {
	width: 960px;
	margin: 0 auto;
	padding: 26px 0 20px;
}
#lead-article {
	float: left;
	width: 620px;
	margin-left: 10px;
	margin-right: 10px;
}
#lead-article p {
	text-align: justify;
}
#lead-article h2 a, #lead-article h2 a:visited {
	color: #F98131;
	text-decoration: none;
}
#lead-article h2 a:hover {
	color: #004D80;
}
#lead-article div.meta {
	font-size: 0.75em;
	color: #666666;
	margin-bottom: 2em;
}
#latest-photos {
	float: right;
	width: 305px;
	margin-left: 10px;
	margin-right: 5px;
}
#latest-photos .flickr_badge_image img {
	display: block;
	margin: auto;
}
#latest-photos .flickr_badge_image, #latest-photos .flickr_badge_image a {
	float: left;
	display: block;
}
#latest-photos .flickr_badge_image a img, #latest-photos .flickr_badge_image a {
	width: 95px;
	height: 72px;
}
#latest-photos .flickr_badge_image {
	overflow: hidden;
	margin: 0px 10px 10px 0;
	background: #9f9f9f;
}
#latest-photos #flickr_badge_image3,
#latest-photos #flickr_badge_image6,
#latest-photos #flickr_badge_image9 {
	margin: 0 0 10px 0;
}
span.flickr_badge_beacon {
	display: none;
}
#index-panel-container {
	float: left;
	width: 100%;
	clear: both;
	background: #E9E9E9 url('../img/ui/index-panel-bg.png') 0px 0px repeat-x;
	border-bottom: 2px #D6D6D6 solid;
	padding: 18px 0 2em;
}
#index-panel {
	width: 960px;
	margin: 0 auto;
}
#index-panel li, #index-panel ul {
	list-style: none;
	margin: 0;
	padding: 0;
}
#index-panel a, #index-panel a:visited {
	color: #000000;
	text-decoration: none;
}
#index-panel a:hover {
	color: #F98131;
}
#recent-articles {
	float: left;
	width: 310px;
	padding: 0px 0 0 10px;
}
#recent-comments {
	float: left;
	width: 310px;
	padding: 0px 0px 0px 10px;
}
#latest-links {
	float: left;
	width: 310px;
	padding: 0px 0px 0px 10px;
}
#footer {
	width: 920px;
	clear: both;
	color: #898989;
	font-size: 0.75em;
	margin: 0 auto;
	padding: 25px 0px 1em 40px;
	background: url('../img/ui/footer-logo-icon.png') 10px 25px no-repeat;
}


/**
 * ARTICLE STYLES
 * ----------------------------------------------------------------------- */
#main-col h1 {
	font-size: 1.75em;
 	color: #004D80;
 	margin-bottom: 1em;
}
#blog h1  {
	margin-bottom: 0;
}
#blog div.meta {
	font-size: 0.85em;
	color: #6A6A6A;
	margin-bottom: 1.5em;
}
#main-col h2 {
	font-size: 1.25em;
	color: #6A6A6A;
	border-bottom: 1px solid #6A6A6A;
	margin: 1.5em 0 1em;
	padding-bottom: 0.25em;
}
#main-col .section {
	margin-bottom: 2em;
}
#main-col .section h1 {
	font-size: 1.25em;
	margin: 1.5em 0 0.5em;
}
#main-col .section h2 {
	font-size: 1em;
}
#main-col tt {
	font-family: Courier, 'Courier New', 'Nimbus Mono L', 'DejaVu Sans Mono', fixed;
	font-size: 1em;
	background-color: #ddd;
}
#main-col table.docutils {
    border: 0;
    border-collapse: collapse;
}
#main-col table.docutils td, #main-col table.docutils th {
    padding: 1px 8px 1px 5px;
    border-top: 0;
    border-left: 0;
    border-right: 0;
    border-bottom: 1px solid #aaa;
}
#main-col table.field-list td, #main-col table.field-list th {
    border: 0 !important;
}
#main-col table.footnote td, #main-col table.footnote th {
    border: 0 !important;
}
#main-col th {
    text-align: left;
    padding-right: 5px;
}
#main-col table.citation {
    border-left: solid 1px gray;
    margin-left: 1px;
}
#main-col table.citation td {
    border-bottom: none;
}
ul.cc-links, ul.cc-links li {
	margin: 0;
	padding: 0;
	list-style: none;
}
ul.cc-links {
	padding-bottom: 2em;
}
ul.cc-links li {
	display: inline;
	padding-right: 1em;
}
ul.cc-links a, ul.cc-links a:visited {
	color: #6A6A6A;
}
ul.cc-links a:hover {
	color: #F98131;
}
ul.cc-links li.comments a, ul.cc-links li.comments a:visited {
	padding-left: 18px;
	background: url('../img/ui/comment-icon.png') 0 0 no-repeat;
}
ul.cc-links li.continue a, ul.cc-links li.continue a:visited {
	padding: 0 0 0 20px;
	background: url('../img/ui/continue-icon.png') 0 0 no-repeat;
}
#bookmark-links dd {
	line-height: 18px;
	margin-left: 0em;
}
#bookmark-links dt {
	margin-top: 2em;
}
#bookmark-links a, #bookmark-links a:visited {
	color: #6A6A6A;
}
#bookmark-links span {
	display: inline-block;
	height: 18px;
	margin-right: 1em;
}
#bookmark-links span a {
	display: inline-block;
	height: 18px;
	line-height: 18px;
	padding: 0 0 0 24px;
	background: url('../img/ui/icons/social/social-18px-sprite.png') no-repeat 0px 0px;
}
#bookmark-links span.delicious a       { background-position: 0px 0px; }
#bookmark-links span.delicious a:hover { background-position: 0px -18px; }
#bookmark-links span.digg      a       { background-position: 0px -36px; }
#bookmark-links span.digg      a:hover { background-position: 0px -54px; }
#bookmark-links span.newsvine  a       { background-position: 0px -72px; }
#bookmark-links span.newsvine  a:hover { background-position: 0px -90px; }
#bookmark-links span.blinklist a       { background-position: 0px -108px; }
#bookmark-links span.blinklist a:hover { background-position: 0px -126px; }
#bookmark-links span.magnolia  a       { background-position: 0px -144px; }
#bookmark-links span.magnolia  a:hover { background-position: 0px -162px; }


/**
 * ARTICLE COMMENTS
 * ----------------------------------------------------------------------- */
#comments dl {
	position: relative;
}
#comments dt {
	position: relative;
	padding: 6px 6px 0.5em 80px;
	margin: 0px;
}
#comments dd {
	margin: 0 0 1.5em 0px;
	padding: 6px 6px 6px 80px;
}
#comments dd.alt, #comments dt.alt {
	background-color: #F2F2F2;
}
#comments .gravatar {
	position: absolute;
	top: 10px;
	left: 10px;
	margin-right: 10px;
}
#comments .gravatar a {
	float: left;
	display: block;
	width: 60px;
	height: 60px;
}

/**
 * FORMS
 * ----------------------------------------------------------------------- */
form p label {
	width: 100px;
	float: left;
}
form p input, form p select, form p span {

}
form p span input {

}
input[type=text], input.txt, input.txt-desc, textarea {
	font-family: "Lucida Sans Unicode","Lucida Grande",sans-serif;
	background-color: #E9E9E9;
	border: 1px solid #6A6A6A;
}
form select {
	background-color: #E9E9E9;
	border: 1px solid #6A6A6A;
}
form input.txt-desc {
	color: #6A6A6A;
}
form tr th {
	font-weight: normal;
	text-align: left;
}
#generated-form textarea {
	width: 569px;
	height: 500px;
}
#blog-comment-form label {
	float: left;
	width: 75px;
	font-weight: bold;
}
textarea {
	font-size: 1em;
}
#blog-comment-form span {
	font-size: 0.75em;
	color: #999999;
}
#blog-comment-form textarea {
	width: 100%;
}
#error-msg, {
	padding:4px;
	margin:0 0 12px 0;
	border-top:2px solid #CC0000;
	border-bottom:2px solid #CC0000;
	background:#FCF0F0;
}
#error-msg p {
	margin:0;
	font:bold 12px Arial, Helvetica, sans-serif;
	color:#CC0000;
}
#error-msg li {
	font:normal 12px Arial, Helvetica, sans-serif;
	color:#CC0000;
}
ul.errorlist {
	color: #CC0000;
	padding: 4px 0px;
	list-style: none;
}
form .btn {
	cursor: pointer;
	padding: 4px 6px;
	color: #6A6A6A;
	background-color: #E9E9E9;
	border: 1px solid #6A6A6A;
}
form .btn:hover {
	color: #ffffff;
	background-color: #6A6A6A;
}


/**
 * TWO COLUMN LAYOUT
 * ----------------------------------------------------------------------- */
#two-col-container {
	width: 960px;
	margin: 0 auto;
	padding: 26px 0 0;
}
#main-col {
	width: 609px;
	float: left;
	padding: 0 0 2em 10px;
}
#two-col-container #main-col h3 {
	margin-bottom: 0px;
	padding-bottom: 0px;
}
#main-col p {
	text-align: justify;
}
#extra-col {
	margin-left: 650px;
}
#extra-col h3 {
	padding-top: 20px;
	margin-bottom: 0px;
	padding-bottom: 0px;
}
#extra-col h3.first {
	padding-top: 0px;
}
#extra-col #good-reading h3 {
	margin-bottom: 10px;
}
#extra-col ul, #extra-col li {
	list-style: none;
	margin: 0;
	padding: 0;
}
#extra-col ul {
	margin-bottom: 1em;
}
#extra-col dd {
	margin-left: 0px;
}
#favorite-blogs {
	float: left;
}
#good-reading {
	float: left;
	padding-bottom: 2em;
}
#good-reading dd {
	color: #898989;
	padding-bottom: 1em;
}
#good-reading dl {
	margin: 0;
	padding: 0;
}


/**
 * ARCHIVE
 * ----------------------------------------------------------------------- */
#archive dl, #archive dt, #archive dd {
	margin:0pt;
	padding:0pt;
}
#archive dd {
	margin: 0px;
}
#archive dt {
	font-size: 1.25em;
	color: #6A6A6A;
	margin: 2em 0pt 1em;
}
#archive dd.day {
	float:left;
	padding-right:1em;
	text-align:right;
	width:2em;
}
#archive dd.desc {
	margin-left: 3em;
}
#archive dd.link {
	margin-bottom: 1em;
}
#archive dd ul, #archive dd li {
	list-style: none;
}
#archive dd li.desc {
	color: #969595;
}


/**
 * PAGINATION
 * ----------------------------------------------------------------------- */
div.page-nav {
	border-top:1px solid #F98131;
	margin-top:2em;
	padding-top:0.5em;
}
.pagination .current {
	padding: 2px 6px;
	color: #fff;
	background: #F98131;
}
.pagination span.disabled {
	color: #898989;
	border: 1px solid #898989;
	padding: 2px 6px;
}
.pagination a.prev, .pagination a.prev:visited,
.pagination a.next, .pagination a.next:visited,
.pagination a.page, .pagination a.page:visited {
	padding: 2px 6px;
	border: 1px solid #F98131;
}
.pagination a.prev:hover,
.pagination a.next:hover,
.pagination a.page:hover {
	color: #004D80;
	border: 1px solid #004D80;
}


/* SyntaxHighlighter styles
---------------------------------------- */
div.code .lines .line table tr td.content code {
	display: inline;
}
div.code {
	margin: 1.5em 0;
}
pre code {
	padding: 0em 1em 1em;
}


/**
 * SEXY BUTTONS
 * -------------------------------------------------------------------- */
a.btn {
    text-decoration: none;
}
a.btn, input[type=submit], input[type=button] {
    cursor: pointer;
    padding: 10px;
    border: none;
    border-top: 1px solid #eee;
    border-radius: 6px;
    -webkit-border-radius: 6px;
    -moz-border-radius: 6px;
    background: #ddd; /* for non-css3 browsers */
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffdddddd', endColorstr='#ff999999'); /* for IE */
    background: -webkit-gradient(linear, left top, left bottom, from(#ddd), to(#999)); /* for webkit browsers */
    background: -moz-linear-gradient(top,  #ddd,  #999); /* for firefox 3.6+ */
    color: #444;
    -webkit-box-shadow: 1px 2px 2px rgba(0, 0, 0, .5);
    -moz-box-shadow: 1px 2px 2px rgba(0, 0, 0, .5);
    box-shadow: 1px 2px 2px rgba(0, 0, 0, .5);
    text-shadow: 0 1px 0 rgba(255, 255, 255, .8);
}
a.btn:hover, input[type=submit]:hover, input[type=button]:hover {
    background: #999; /* for non-css3 browsers */
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffaaaaaa', endColorstr='#ff444444'); /* for IE */
    background: -webkit-gradient(linear, left top, left bottom, from(#aaa), to(#444)); /* for webkit browsers */
    background: -moz-linear-gradient(top,  #aaa,  #444); /* for firefox 3.6+ */
    color: #fff;
    border-top: solid 1px #ccc;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .65);
}
a.btn:active, input[type=submit]:active, input[type=button]:active {
    background: #444; /* for non-css3 browsers */
    filter:  progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ffaaaaaa'); /* for IE */
    background: -webkit-gradient(linear, left top, left bottom, from(#444), to(#aaa)); /* for webkit browsers */
    background: -moz-linear-gradient(top,  #444,  #aaa); /* for firefox 3.6+ */
    color: #fff;
    border-top: solid 1px #999;
    text-shadow: 0 1px 0 rgba(0, 0, 0, .8);
}

/* ADMONITIONS AND WARNINGS ------------------------------------------------- */

/* Shared by admonitions, warnings and sidebars */
div.admonition,
div.warning,
div.sidebar {
    font-size: 0.9em;
    margin: 2em 0;
    padding: 0;
}
div.admonition p,
div.warning p,
div.sidebar p {
    margin: 0.5em 1em 0.5em 1em;
    padding: 0;
}
div.admonition pre,
div.warning pre,
div.sidebar pre {
    margin: 0.4em 1em 0.4em 1em;
}
div.admonition p.admonition-title,
div.warning p.admonition-title,
div.sidebar p.sidebar-title {
    margin: 0;
    padding: 0.1em 0 0.1em 0.5em;
    color: white;
    font-weight: bold;
    font-size: 1.1em;
    text-shadow: 0 1px rgba(0, 0, 0, 0.5);
}
div.admonition ul, div.admonition ol,
div.warning ul, div.warning ol,
div.sidebar ul, div.sidebar ol {
    margin: 0.1em 0.5em 0.5em 3em;
    padding: 0;
}


/* Admonitions and sidebars only */
div.admonition, div.sidebar {
    border: 1px solid #6A6A6A;
    background-color: #f4f4f4;
}
div.admonition p.admonition-title,
div.sidebar p.sidebar-title {
    background-color: #6A6A6A;
    border-bottom: 1px solid #6A6A6A;
}

/* Warnings only */
div.warning {
    border: 1px solid #900000;
    background-color: #ffe9e9;
}
div.warning p.admonition-title {
    background-color: #b04040;
    border-bottom: 1px solid #900000;
}

