/**
 * Reset Browser's Internal Stylesheets, 
 * which normalizes the display between a variety of browsers.
**/
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td {
    margin: 0;
    padding: 0;
}

/** "generic" styles **/

body {
    margin: 0; padding: 0;
    background: #E3EDC2; color: #333;
    font: small "Lucida Grande", Arial, sans-serif;
}

a {
    text-decoration: none;
}

a img {
    border: 0;
}

p {
    margin: 0 0 1em;
}

/** masthead styles **/

#masthead {
    margin-bottom: 1.75em; padding-top: 1px;
    background: #ABD240;
    width: 79em;
}

#homelink {
    display: block;
    margin: 1em 2em 1em; padding: 2em 0 0.5em 1em;
}

#navlinks {
    margin: 0; padding: 0.5em 3em;
    background: #686397; color: #FFF;
}

#navlinks li {
    display: inline;
    margin-right: 0.5em; padding-right: 0.75em;
    border-right: 1px solid #99C;
    font-weight: bold;
}

#navlinks li.last {
    border-right: 0;
}

#navlinks a {
    color: #D4EC84;
}

#today {
    margin-top: -1.66em; padding: 0 2em 0 0;
    color: #FFF;
    font-weight: bold;
    text-align: right;
    line-height: 1;
}

/** main column styles **/

#content {
    float: left;
    padding: 0 20em 4em 3em;
    width: 57em;
}

#content h1 {
    margin: 0 33% 1.25em -2em; padding: 0.5em 2em;
    background: #FFF; color: #686397;
    font-size: 1.5em;
}

#content h1 b {
    color: #B0D742;
}

#content h2 {
    margin: 0.5em 0; padding-bottom: 0.25em;
    border-bottom: 1px solid #B0D742;
    font-size: 1.5em;
}

#content img.illus {
    float: left;
    margin: 1em 1em 1em 0;
}

#demo a {
    color: #686397;
}

#popup_player a {
    color: #686397;
}

#photocredit {
    font-size: small;
}

#composingcredits li {
    list-style-type: none;
}

#recordingcredits li {
    list-style-type: none;
}

/** sidebar styles **/

#sidebar {
    float: left;
    width: 17em;
    margin: 0 0 4em -18em;
}

#sidebar div h3 {
    background: #9B96CA;
}

#sidebar div {
    background: #3A3C2D; color: #FFF;
    padding: 0 1em 1em;
    margin-top: 0.75em;
}

#sidebar div h3 {
    font-size: 1.25em;
    margin: 0 -0.8em; padding: 0.4em 0.8em;
    text-transform: lowercase;
}

#music-on-the-web a, #music-player a {
    color: #D4EC84;
}

#music-on-the-web h4, #music-player h4 {
    margin: 0 0 0.5em; padding: 0.5em 0;
    border-bottom: 1px solid #FFF;
    font-weight: normal;
}

#photos a {
    color: #D4EC84;
}

#photos img {
    display: block;
    margin: 2em auto 0;
}

/** footer styles **/

#footer {
    clear: both;
    padding: 1.5em 3em;
    background: #A0C63A;
    width: 73em;
}

#footer p {
    margin: 0;
}

#footer a {
    color: #333;
    text-decoration: underline;
}

/** error styles **/

.error {
    text-size: xx-large;
    color: #FF0000;
}

.flash_notice, .flash_error, .flash_warning {
    background-color:#FFF4C8;
    border:1px solid #EBDFB0;
    color:#000000;
    font-size:1.4em;
    margin-top:0.5em;
    padding:0.5em;
    text-align:center;
}

.flash_error {
    background-color:#FFC8C8;
    border:1px solid #EBB0B0;
}

.flash_notice {
    background-color:#C8FFCB;
    border:1px solid #B0EBB0;
}
.flash_notice a, .flash_error a, .flash_warning a {
    border:medium none !important;
    color:#01A163;
}