/* General */
html, body {
    color: #333;
    background: #222;
    font-family: "Times New Roman", Times, serif;
    font-size: 14px;
}
    h1, h2, h3, h4, h5 {
        font-weight: bold;
        font-family: Helvetica, Arial, sans-serif;
    }
    h1 {
        font-size: 28px;
    }
    h2 {
        font-size: 24px;
        margin-bottom: 0.5em;
    }
    h3 {
        font-size: 20px;
        margin-bottom: 0.25em;
    }
    
    p {
        margin-bottom: 1em;
    }
    strong {
        font-weight: bold;
    }
    small {
        font-size: 12px;
    }

    a {
        color: #195A20;
    }
    a:hover {
        color: #769E79;
    }
    
    div.hr {
        border-top: 1px solid #CCC;
        clear: both;
        width: 100%;
        height: 0;
        overflow: hidden;
    }
    div.clear {
        clear: both;
        height: 0;
        overflow: hidden;
    }
    
    a.button {
        font-family: Helvetica, Arial, sans-serif;
        text-align: center;
        display: block;
        font-size: 18px;
        font-weight: bold;
        text-decoration: none;
        color: #FFF;
        background: #195A20;
        border: 5px outset #030;
        width: 120px;
        padding: 8px 0;
        margin: 0 auto;
    }
    a.button:hover {
        background: #769E79;
    }
    a.button:active {
        background: #030;
        border-style: inset;
    }

/* Layout */    
    div.container {
        background: #FFF;
        width: 800px;
        padding: 10px 20px;
        margin: 0 auto;
    }
        div.header {
            border-bottom: 1px dashed #000;
            padding: 0 0 10px;
        }
            div.header img {
                float: right;
            }
            div.header h1 {
                float: right;
                border: 1px solid #000;
                border-width: 1px 0;
                padding: 6px 10px 2px;
                margin: 6px 0 0;
            }
            div.header ul {
                font-family: Helvetica, Arial, sans-serif;
                font-size: 13px;
                float: left;
                margin: 19px 0 0;
            }
                div.header ul li {
                    float: left;
                    margin-right: 1px;
                }
                div.header ul li.last {
                    margin-right: 0;
                }
                    div.header ul a {
                        text-decoration: none;
                        color: #FFF;
                        background: #195A20;
                        padding: 6px 8px;
                    }
                    div.header ul a:hover {
                        background: #769E79;
                    }
                    
        div.content {
            padding: 20px 10px;
        }
            .content ul {
                margin-bottom: 1em;
            }
                .content ul li {
                    list-style: disc;
                    margin: 0 0 0 1em;
                }
            .content ol {
                margin-bottom: 1em;
            }
                .content ol li {
                    list-style: decimal;
                    margin: 0 0 0 1.4em;
                }
        div.footer {
            border-top: 1px dashed #000;
            padding: 10px;
        }
            div.footer strong {
                color: #000;
            }
        

/* Home Page */
.home div.intro {
    width: 755px;
    margin: 0 auto;
}
    .home .intro div.left-col {
        float: left;
        width: 227px;
    }
        .home .intro div.left-col div.register {
            margin-top: 20px;
        }
            .home .register h3 {
                text-align: center;
                color: #C00;
            }
            .home .intro div.register a {
                font-family: Helvetica, Arial, sans-serif;
                text-align: center;
                display: block;
                font-size: 18px;
                font-weight: bold;
                text-decoration: none;
                color: #FFF;
                background: #195A20;
                border: 5px outset #030;
                width: 120px;
                padding: 8px 0;
                margin: 0 auto;
            }
            .home .intro div.register a:hover {
                background: #769E79;
            }
            .home .intro div.register a:active {
                background: #030;
                border-style: inset;
            }
        .home .intro a.credit-clock-hours {
            color: #D90;
            background: #FFF url('../images/clock.jpg') no-repeat scroll 0 0;
            border: 2px solid #363;
            font-size: 16px;
            display: block;
            width: 110px;
            height: 34px;
            padding: 8px 8px 8px 64px;
            margin: 40px auto 0;
        }
        .home .intro a.credit-clock-hours:hover {
            color: #FB0;
        }
        
        .home .intro .local-housing {
            font-size: 16px;
            font-weight: bold;
            width: 210px;
            padding: 8px;
            background: #DFD;
            border: 2px solid #363;
            margin: 40px auto 0;
            text-align: center;
        }
            
    .home .intro div.text {
        text-align: center;
        float: right;
        width: 520px;
        margin: 26px 0 0;
    }
        .home .intro h2 {
            color: #363;
            margin-bottom: 14px;
        }
            .home .intro h2 strong {
                font-size: 34px;
            }
        .home .intro .text h3 {
            line-height: 1.25;
            background: #DDD;
            width: 380px;
            margin: 0 auto 18px;
            padding: 8px 0;
            border: 1px solid #999;
            border-width: 1px 0;
        }
        .home .intro p.date {
            font-size: 20px;
            margin-bottom: 10px;
        }
        .home .intro address {
            font-size: 16px;
            text-align: left;
            width: 165px;
            margin: 0 auto 4px;
        }
        
        .home .intro a.directions {
            font-size: 16px;
            background: #FFF url('../images/directions.png') no-repeat scroll left center;
            height: 24px;
            padding: 4px 28px;
        }
        
        .home .intro p.keynote {
            font-size: 20px;
            margin-top: 20px;
        }
        .home .intro #past-workshops {
            text-align: left;
            width: 375px;
            margin: 26px auto 0;
        }
        .home .intro p.green {
            color: #000;
            background: #DFD url('../images/earth.png') no-repeat scroll 7px center;
            border: 2px solid #363;
            text-align: left;
            width: 280px;
            padding: 8px 8px 8px 80px;
            margin: 30px auto 0;
        }
            .home .intro p.green strong {
                color: #030;
            }

/* Application for Workshop Proposal */
.rfp ul {
    font-weight: bold;
}
.rfp a.button {
    width: 190px;
}

/* Past Programs Landing */
.past-programs ul {
    font-size: 16px;
}
    .past-programs ul li {
        margin-bottom: 0.5em;
    }

/* Past Programs */
table#schedule {
    font-size: 16px;
    width: 545px;
    margin: 20px 0;
}
    table#schedule tr.alt {
        background: #DDD;
    }
        table#schedule th {
            text-align: left;
            font-weight: bold;
            padding: 8px 0 8px 8px;
        }
        table#schedule td {
            text-align: right;
            padding: 8px 0;
        }
        table#schedule td.dash {
            text-align: center;
            padding: 8px 6px 8px 12px;
        }
        table#schedule td.last {
            padding-right: 8px;
        }

.past-program div.hr {
    margin: 20px 0;
}
.past-program p.grade-level {
    font-style: italic;
}

/* Resource Fair */
.resource-fair ol {
    color: #000;
}

/* Photos */
ul#photo-gallery {}
    ul#photo-gallery li {
        list-style: none;
        float: left;
        margin: 0 7px 0 0;
    }
    ul#photo-gallery li.lastcol {
        margin-right: 0;
    }
    
/* Registration Form */
div.reg-form table td,
div.reg-form table th {
    padding: 5px 0;
}
div.reg-form table th {
    text-align: right;
    font-weight: bold;
    width: 200px;
    padding-right: 12px;
}
    div.reg-form table label {
        float: right;
    }
    div.reg-form table span.required {
        color: #F00;
        float: right;
        margin-right: 3px;
    }
        div.reg-form table fieldset#content_area label {
            float: none;
        }
    div.reg-form table input[type=submit] {
        cursor: pointer;
        color: #030;
        font-weight: bold;
        font-size: 16px;
        background: #CCEEC0;
        padding: 2px 6px;
        border: 3px outset #363;
        -moz-border-radius: 8px;
        -webkit-border-radius: 8px;
        border-radius: 8px;
    }
    div.reg-form table input[type=submit]:hover {
        background: #E0F6E0;
    }
    div.reg-form table input[type=submit]:active {
        color: #CCEEC0;
        border-style: inset;
        background: #030;
    }

    /* Registration Form Error Messages */
    div.reg-form ul.error {
        color: #F00;
    }