/************************************************
/* GENERAL SETTINGS
/***********************************************/

html {
    font-family: Arial, Helvetica, sans-serif;
    font-size: 14px;
    line-height: 1.3;
    background: #f6f6f2 url('/images/site/bg.png') repeat-y 50% 0;
    color: #000000;
}

/* Links */
a {
    text-decoration: underline;
    color: #0033cc;
}

/************************************************
/* LAYOUT
/***********************************************/

/* Header */
#header {
    width: 950px;
    height: 80px;
    padding-right: 10px;
    margin: 0 auto;
}

/* Logo */
#logo {
    display: block;
    width: 434px;
    height: 60px;
    margin-top: 10px;
    float: left;
}

/* Navigation */
#nav {
    list-style: none;
    border-left: 1px solid #d8d8d2;
    float: right;
}

#nav li {
    float: left;
    border-right: 1px solid #d8d8d2;
    list-style: none;
}

#nav li a {
    display: block;
    height: 40px;
    line-height: 40px;
    padding: 40px 20px 0;
    text-decoration: none;
    color: #000000;
}

#nav li a:hover {
    background-color: #f6f6f2;
}

#nav li.active a,
#nav li.active a:hover {
    background-color: #99cc00;
    color: #ffffff;
}

/* Header stripe */
#header-stripe {
    height: 20px;
    background: #99cc00 url('/images/site/header-stripe.png') repeat-x 0 0;
}

/* Container */
#container {
    width: 940px;
    margin: 0 auto;
    padding: 20px 10px 10px;
}

/* Content wrapper */
#content-wrapper {
    width: 620px;
    float: left;
    margin-right: 20px;
}

#content-wrapper.search {
    width: 940px;
    float: none;
    margin-right: 0;
}

/* Sidebar */
#sidebar {
    width: 300px;
    float: left;
}

/* Footer */
#footer {
    clear: both;
    margin-top: 20px;
    padding-top: 10px;
    border-top: 1px solid #99cc00;
}

#credit {
    float: right;
}

/************************************************
/* CONTENT
/***********************************************/

/* Spacing between elements */
#content p,
#content ul,
#content ol,
#content table {
    margin: 1.3em 0; /* Should match line height */
}

/* Headings */
#content h1 {
    font-size: 2em;
    margin: 0 0 0.67em;
    padding-bottom: 0.3em;
    font-weight: bold;
    border-bottom: 1px solid #000000;
}

#content h2 {
    font-size: 1.5em;
    margin: 1em 0;
    font-weight: bold;
    padding: 0.5em 0;
    border-bottom: 1px solid #000000;
    clear: both;
}

#content h3 {
    font-size: 1.17em;
    margin: 1em 0;
    font-weight: bold;
    clear: both;
}

/* Summary */
#content #summary {
    font-weight: bold;
}

/* Author bio */
#content #author-bio {
    font-style: italic;
}

/* Lists */
#content ul,
#content ol {
    padding-left: 2.6em;
}

#content ul li {
    margin-bottom: 1.3em;
    list-style-type: disc;
}

#content ol li {
    margin-bottom: 1.3em;
    list-style-type: decimal;
}

/* Tables */
#content table {
    width: 100%;
}

#content table th,
#content table td {
    padding: 5px 10px;
    border: 1px solid #000000;
    text-align: left;
    vertical-align: top;
}

#content table th {
    background-color: #99cc00;
    font-weight: bold;
    color: #ffffff;
}

#content tr:hover {
    background-color: #f6f6f2;
}

#content table caption {
    caption-side: bottom;
    text-align: right;
    padding-top: 0.65em;
    font-style: italic;
    color: #999999;
}

/* Images */
#content img {
    max-width: 620px;
    max-height: 620px;
}

#content img.left {
    display: block;
    float: left;
    margin: 0 20px 20px 0;
}

#content img.right {
    display: block;
    float: right;
    margin: 0 0 20px 20px;
}

#content p.caption {
    margin-top: -0.65em;
    color: #999999;
    font-style: italic;
}

/* Buttons */
#content input[type="button"],
#content input[type="submit"] {
    padding: 2px 10px;
}

/* Meta boxes (at end of post) */
div.meta-container {
    margin-top: 20px;
    padding-top: 20px;
    border-top: 1px solid #000000;
}

div.meta-box.half {
    width: 300px;
    float: left;
    margin-right: 20px;
}

div.meta-box.half.last {
    margin-right: 0;
}

div.meta-box h2 {
    font-size: 1.5em;
    margin: 0 0 1em 0;
    font-weight: bold;
}

div.meta-box p {
    margin-bottom: 1.3em;
}

/* Entries listing */
#content div.entry-box {
    margin-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #d8d8d2;
}

#content div.entry-box.last {
    padding-bottom: 0;
    border-bottom: none;
}

#content div.entry-box div.thumbnail {
    width: 140px;
    height: 93px;
    float: left;
    margin-right: 20px;
}

#content div.entry-box div.description {
    width: 460px;
    float: left;
}

#content div.entry-box div.description h2 {
    margin: 0;
    font-size: 14px;
    font-weight: bold;
    border-bottom: none;
}

#content div.entry-box div.description p {
    margin: 0;
}

/* Index advert */
#content div.index-ad {
    margin-top: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #d8d8d2;
    text-align: center;
}

/* Page navigation */
#content div.page-nav {
    margin-top: 20px;
    border-top: 1px solid #000000;
    padding-top: 20px;
}

#content div.page-nav p {
    margin: 0;
}

#content div.page-nav p.next {
    float: right;
}

#content div.page-nav p.previous {
    float: left;
}

#content div.page-nav a {
    text-decoration: none;
}

#content div.page-nav a:hover {
    text-decoration: underline;
}

/* Message boxes */
#content div.message {
    margin-bottom: 20px;
    padding: 20px;
    border-width: 1px;
    border-style: solid;
}

#content div.message p {
    margin: 0;
}

#content div.message.alert {
    border-color: #99cc00;
    background-color: #f5fae6;
}

#content div.message.error {
    border-color: #ff0033;
    background-color: #ffe6eb;
}

/* Disqus comments */
#disqus_thread a {
    color: #0033cc;
}

/* Search results page */
#content-wrapper.search #cse-search-box {
    float: right;
}

/************************************************
/* SIDEBAR
/***********************************************/
#sidebar div.box {
    margin-bottom: 20px;
    padding: 20px;
    background-color: #f6f6f2;
}

#sidebar div.box.no-pad {
    padding: 0;
}

#sidebar div.box h3 {
    margin-bottom: 10px;
    font-size: 21px;
}

/* Search */
#sidebar-search-term {
    width: 224px;
    height: 19px;
    margin-right: 5px;
    padding: 2px;
    vertical-align: top;
    border: 1px solid #999999;
}

#sidebar-search-button {
    width: 25px;
    height: 25px;
    background: url('/images/site/search-button.png') 0 0 no-repeat;
    cursor: pointer;
    border: none;
    text-indent: -9999px;
    vertical-align: top;
}

/* Recent posts */
#sidebar div.recent-post {
    margin-bottom: 20px;
}

#sidebar div.recent-post.last {
    margin-bottom: 0;
}

#sidebar div.recent-post div.thumbnail {
    width: 125px;
    float: left;
    margin-right: 10px;
}

#sidebar div.recent-post div.thumbnail img {
    width: 125px;
}

#sidebar div.recent-post div.title {
    width: 125px;
    float: left;
}

/* Store links */
#sidebar a.store-link {
    display: block;
    width: 260px;
    height: 70px;
    background-image: url('/images/site/store-links.png');
    background-repeat: no-repeat;
}

#sidebar a.store-link span {
    display: none;
}

#sidebar a.store-link.adorama {
    background-position: 0 0;
}

#sidebar a.store-link.amazon {
    background-position: 0 -70px;
}

/* Subscribe icons */
#sidebar a.subscribe {
    display: block;
    width: 32px;
    height: 32px;
    margin-right: 8px;
    float: left;
    background-image: url('/images/site/subscribe-icons.png');
}

#sidebar a.subscribe span {
    display: none;
}

#sidebar a.subscribe.feed {
    background-position: 0 0;
}

#sidebar a.subscribe.email {
    background-position: -32px 0;
}

#sidebar a.subscribe.twitter {
    background-position: -64px 0;
}

/************************************************
/* ADSENSE ADS
/***********************************************/
#ad-top-banner {
    width: 728px;
    height: 90px;
    margin: 0 auto 20px;
}

#ad-content-top {
    margin-bottom: 1.3em;
}

/************************************************
/* CONTACT PAGE
/***********************************************/
#contact-form label {
    display: block;
    font-weight: bold;
}

#contact-form input.text {
    width: 296px;
    padding: 2px;
}

#contact-form textarea.textarea {
    width: 616px;
    padding: 2px;
    font-size: 14px;
    line-height: 1.3;
}

#contact-form span.error {
    display: block;
    color: #ff0033;
    font-weight: bold;
}
