﻿/*
Theme Name: Joe Sergeant
Theme URI: http://joesergeant.com
Description: WordPress theme for my personal website
Version: 4.0
Author: Joe Sergeant
Author URI: http://joesergeant.com
Tags: minimalist, white, blue, serif
*/

* { margin: 0; padding: 0; }

body {
	font-size: 62.5%;
	text-align: center;
	background: #FFF;
}

body, input, textarea, select {
	font-family: "Georgia", "Times New Roman", sans-serif;
}

#page {
	position: relative;
	width: 990px;
	margin: 50px auto 0 auto;
	text-align: left;
}

.clear:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
}

.clear {
    display: inline-block;
}

html[xmlns] .clear {
    display: block;
}

* html .clear {
    height: 1%;
}

/* Header + Navigation
--------------------------------------------------------------------------------------- */

#header {
	position: fixed;
	width: 100px;
}

#header h1 a {
	display: block;
	height: 41px;
	margin: 0 58px 0 4px;
	background: url(images/masthead.png) no-repeat 0 0;
	text-indent: -9000px;
}

#header ul#menu {
	margin: 45px 0 0 0;
	list-style: none;
}

#header ul#menu li {
	font-size: 2em;
	line-height: 1.4em;
}

#header ul#menu li a {
	padding: 2px 4px;
	color: #8C92A5;
	text-decoration: none;
}

body#page-home ul#menu li#menu-home a,
body#page-blog ul#menu li#menu-blog a,
body#page-about ul#menu li#menu-about a,
body#page-contact ul#menu li#menu-contact a {
	background: #25B1E5;
	color: #FFF;
}


/* Content
--------------------------------------------------------------------------------------- */

#content {
	margin: 0 310px 0 180px;
	padding: 72px 0;
}

body#page-home #content {
	margin: 0 415px 0 255px;
}

#content h2 {
	padding: 0 0 10px 0;
	font-size: 4em;
	color: #25B1E5;
	line-height: 1em;
	font-weight: normal;
}

#content h2 strong {
	color: #25B1E5;
	font-weight: normal;
}

#content h2 small {
	display: block;
	margin: 15px 0 0 0;
	font-size: 0.37em;
	color: #D6D8DF;
	line-height: 1.2em;
}

body#page-home h2 {
	font-size: 4.6em;
	color: #8C92A5;
	text-align: justify;
}

#content h3 {
	margin: 20px 0 0 0;
	padding: 0 0 5px 0;
	font-size: 1.8em;
	color: #8C92A5;
	line-height: 1em;
	font-weight: normal;
	font-style: italic;
}

#content h4 {
	padding: 0 0 10px 0;
	font-size: 1.2em;
	color: #D6D8DF;
	line-height: 1.4em;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 2px;
}

#content p,
#content li {
	margin: 5px 0 0 0;
	padding: 0 0 10px 0;
	font-size: 1.4em;
	color: #4C5261;
	line-height: 1.6em;
}

#content p.error {
	color: #CC0000;
}


#content ul,
#content ol {
	margin-left: 35px;
	padding: 0 0 10px 0;
}

#content li {
	padding-bottom: 0;
}

#content a {
	padding: 2px;
	color: #25B1E5;
	text-decoration: none;
}

#content a:hover {
	background: #25B1E5;
	color: #FFF;
}

#content .wp-caption.alignleft {
	float: left;
	display: inline;
	margin: 10px 20px 0 0;
}

#content .wp-caption.alignright {
	float: right;
	display: inline;
	margin: 10px 0 0 20px;
}

#content .wp-caption a:hover {
	background: none;
}

#content .wp-caption-text {
	padding: 5px 10px 20px 0;
	font-size: 1.1em;
	color: #888;
	font-style: italic;
	line-height: 1.2em;
}

/* --- Posts --- */

#content .post {
	padding: 0 0 10px 0;
	border: solid #E8E9ED;
	border-width: 0 0 1px 0;
}

#content .post h3 {
	margin-top: 0;
}

#content .post h4 {
	padding: 20px 0 5px 0;
}

/* --- Comments --- */

#content .comments {
	margin: 10px 0 0 0;
	padding: 0 0 20px 0;
	border: solid #E8E9ED;
	border-width: 1px 0 0 0;
}

#content .comments ol {
	margin: 15px 0 0 0;
	list-style: none;
}

#content .comments ol li {
	padding: 10px;
	background: #F3F4F5;
}

#content .comments ol li img {
	float: left;
	display: inline;
	border: solid 2px #FFF;
}

#content .comments ol li strong {
	display: block;
	margin: 0 0 0 50px;
	font-size: 0.9em;
	font-style: italic;
	font-weight: normal;
}

#content .comments ol li strong small {
	padding: 0 0 0 5px;
	color: #8C92A5;
}


#content .comments ol li p {
	margin-left: 50px;
	font-size: 0.9em;
}


/* --- Forms --- */

#content .form {
	padding: 0 0 20px 0;
}

#content .form .element {
	margin: 15px 0 0 0;
}

#content .form .element label {
	display: block;
	padding: 0 0 5px 0;
	font-size: 1.3em;
	color: #8C92A5;
	font-style: italic;
}

#content .form .element label small {
	text-transform: none;
	letter-spacing: 0.1em;
}

#content .form .element input[type=text],
#content .form .element textarea {
	width: 300px;
	padding: 5px 7px;
	border: solid 1px #CCC;
	border-top-color: #999;
	border-left-color: #999;
	background: #F7F7F7;
	font-size: 1.3em;
	color: #4C5261;
}

#content .form .element textarea {
	width: 484px;
	height: 120px;
}

#content .form .submit {
	margin: 15px 0 0 0;
	text-align: right;
}

#content .form .submit input {
	padding: 5px;
	font-family: Georgia;
	font-size: 1.4em;
	color: #444;
}


/* Sidebar
--------------------------------------------------------------------------------------- */

#sidebar-outer {
	position: absolute;
	top: 75px;
	right: 0;
	width: 230px;
}

/*body#page-home #sidebar-outer,
body#page-home #sidebar {
	width: 405px;
}*/

#sidebar {
	position: fixed;
	width: 230px;
}

#sidebar h4 {
	padding: 15px 0 0 0;
	font-size: 1.2em;
	color: #D6D8DF;
	line-height: 1.4em;
	font-weight: normal;
	text-transform: uppercase;
	letter-spacing: 2px;
}

#sidebar .section:hover h4 {
	color: #8C92A5;
}

#sidebar p,
#sidebar li {
	margin: 5px 0 0 0;
	font-size: 1.2em;
	color: #8C92A5;
	line-height: 1.6em;
}

#sidebar p .twitter-timestamp {
	font-size: 0.8em;
	white-space: nowrap;
}

#sidebar ul {
	list-style: none;
}

#sidebar ul li {
	line-height: 1.4em;
}

#sidebar ul li abbr {
	display: block;
	border: none;
	font-size: 0.8em;
	color: #D6D8DF;
}

#sidebar ul li:hover abbr {
	color: #8C92A5;
}

#sidebar a {
	padding: 2px;
	color: #25B1E5;
	text-decoration: none;
}

#sidebar a:hover {
	background: #25B1E5;
	color: #FFF;
}

#sidebar small {
	display: block;
	margin: 7px 0 0 2px;
	font-size: 1em;
	font-style: italic;
}

#sidebar small a {
	padding: 0;
	color: #8C92A5;
}

#sidebar small a:hover {
	color: #676F83;
	background: none;
}

#sidebar .section {
	padding: 0 0 15px 0;
	border: solid #E8E9ED;
	border-width: 0 0 1px 0;
}

#sidebar .section-last {
	border: none;
}