/*----------------------------------------------------------------------
    screen.css

    Screen styles go here.

----------------------------------------------------------------------*/

@import url(reset.css);
@import url(typography.css);
@import url(grid.css);
@import url(forms.css);

/*

*/

/* =GENERAL
========================================*/
body,
html {
    height: 100%;
}

body {
    color: #dadada;
    background: #e0e0e1 url(../images/back-body.png) left top repeat-y;
    text-align: left;
}

#wrapper {
    width: 1000px;
    min-height: 100%;
    background: url(../images/back-wrapper.png) left bottom no-repeat;
}

#container {
    width: 960px;
    padding: 0 20px;
    background: url(../images/back-container.png) left top no-repeat;
}

#fine-print {
    clear: both;
    margin-left: 50px;
    padding-bottom: 120px;
    width: 540px;
    font-size: 0.71489em; /* 10px */
}

/* =Branding --------------------------- */
#branding {
    display: block;
    width: 240px;
    margin-bottom: 40px;
    padding: 0;
    float: right;
    text-align: center;
}

    #branding h1 {
        display: block;
        padding: 25px 0 0 0;
        background: url(../images/back-main-navigation.png) center top repeat-y;
    }

    #branding h1 a {
        display: block;
        margin: 0 auto;
        width: 100px;
        height: 50px;
        text-indent: -1000em;
        background: url(../images/logo.png) center bottom no-repeat;
    }

    #branding h1 a:hover {
        background: url(../images/logo.png) center top no-repeat;
    }

#branding-bottom {
    display: block;
    width: 240px;
    height: 19px;
    float: right;
    background: url(../images/back-branding-bottom.png) center top repeat-y;
}

/* =Navigation --------------------------- */
#main-navigation {
    list-style-type: none;
    width: 120px;
    margin: 0 auto;
    padding: 10px 0 0 0;
    background: url(../images/back-main-navigation.png) center top repeat-y;
}

    #main-navigation li {
        display: block;
        padding: 0;
    }

        #main-navigation li a {
            display: block;
            height: 0;
            padding-top: 24px;
            overflow: hidden;
            background-image: url(../images/nav.png);
            background-repeat: no-repeat;
        }

        #nav-home a { background-position: left top; }
        #nav-about a { background-position: left -24px; }
        #nav-articles a { background-position: left -48px; }
        #nav-links a { background-position: left -72px; }
        #nav-work a { background-position: left -96px; }
        #nav-downloads a { background-position: left -120px; }
        #nav-contact a { background-position: left -144px; }

        #nav-home a:hover { background-position: right top; }
        #nav-about a:hover { background-position: right -24px; }
        #nav-articles a:hover { background-position: right -48px; }
        #nav-links a:hover { background-position: right -72px; }
        #nav-work a:hover { background-position: right -96px; }
        #nav-downloads a:hover { background-position: right -120px; }
        #nav-contact a:hover { background-position: right -144px; }

        #nav-home a.selected { background-position: right top; }
        #nav-about a.selected { background-position: right -24px; }
        #nav-articles a.selected { background-position: right -48px; }
        #nav-links a.selected { background-position: right -72px; }
        #nav-work a.selected { background-position: right -96px; }
        #nav-downloads a.selected { background-position: right -120px; }
        #nav-contact a.selected { background-position: right -144px; }

/* =Content --------------------------- */
.main {
    float: left;
    width: 720px;
}

.aside {
    float: left;
    padding: 0 40px;
    width: 160px;
    color: #bababa;
}

.aside:hover {
    color: #ffffff;
}

.footer {
    min-height: 370px;
}

    .footer.section {
        background: none;
    }

.section {
    padding: 3.2858em 0 1.6429em 0;
    background: url(../images/back-section.png) center bottom no-repeat;
}

.entry {
    margin-top: 1.6429em;
}

.summary {
    margin-bottom: 0.82145em;
}

.figure {
    display: block;
    margin-top: 0.3em;
}

.l {
    float: left;
    margin-right: 20px;
}

.r {
    float: right;
    margin-left: 20px;
}

.col_3 { width: 120px; }
.col_4 { width: 180px; }
.col_5 { width: 240px; }
.col_6 { width: 300px; }

/* comments */
.comments { /* comments ordered list */
    list-style-type: none;
    margin-bottom: 3.2858em;
}

    .comments li {
        display: block;
        padding-top: 3.2858em;
        padding-bottom: 1.6429em;
        border-bottom: 1px solid #1b1e27;
    }

        .comments li:first-child {
            padding-top: 0;
        }

        .comments .meta li {
            display: inline;
            margin: 0;
            padding: 0;
            border: none;
        }

        .comments .meta .gravatar {
            display: block;
            float: right;
        }

            .comments .meta .gravatar img {
                border: 1px solid #403d3b;
            }

.archives {
    background: url(../images/back-archives.png) center top repeat-y;
}

.article-list dd {
    padding-bottom: 0.82145em;
}

    #home .article-list dd:last-child {
        padding-bottom: 0;
    }

/* portfolio */
.work {
    margin-bottom: 2.46435em;
}

    .work h4 {
        margin-bottom: 0;
        line-height: 1.23218em;
        color: #b9ad47;
    }
    
    .work dt {
        font-size: 0.57143em;
        font-variant: small-caps;
        text-transform: uppercase;
        font-family: Helvetica, "Helvetica Neue", Arial, sans-serif;
    }
    
    .work dd {
        color: #73706e;
        font-size: 0.85714em;
        font-style: italic;
        line-height: 0.82145em;
    }
    
        .work dd.meta {
            padding-bottom: 0.82145em;
        }
    
    .work p {
        font-size: 0.85714em;
    }

/* downloads */
.downloads .grid_3 {
    margin: 0 10px 10px 10px;
    padding: 0;
    width: 150px;
}

    .downloads .grid_3.alpha {
        margin-left: 0;
    }

    .downloads .grid_3.omega {
        margin-right: 0;
    }

.downloads .grid_6 {
    margin: 0 10px 10px 10px;
    padding: 0;
    width: 320px;
}

    .downloads .grid_6.alpha {
        margin-left: 0;
    }

    .downloads .grid_6.omega {
        margin-right: 0;
    }

/*
#authenticjobs {width: 200px; margin: 1em 0; padding: 5px 10px; font: 11px normal Arial, sans-serif; line-height: 120%; background: #fff;}
#authenticjobs a img {float: left; padding: 8px 10px 5px 0; border: 0;}
#authenticjobs ul {clear: left; margin: 0; padding: 0 0 0 20px;}
#authenticjobs ul li {padding: 2px 0;}
*/

/* =Custom --------------------------- */


/* =UTILITY CLASSES
========================================*/
.warning {
    color: #c00;
}

.last {
    border: none;
}

.clear {
    clear: both;
}

/* http://sonspring.com/journal/clearing-floats */
html body * span.clear,
html body * li.clear,
html body * dd.clear
{
    background: none;
    border: 0;
    clear: both;
    display: block;
    float: none;
    font-size: 0;
    list-style: none;
    margin: 0;
    padding: 0;
    overflow: hidden;
    visibility: hidden;
    width: 0;
    height: 0;
}

/* http://www.positioniseverything.net/easyclearing.html */
.section:after,
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}

 * html .clearfix { height: 1%; }
 * html .section { height: 1%; }
.clearfix { display: block; }
.section { display: block; }