/**
 * PUBLIC WEBSITE
 * Site Structure / Layout
 *
 * Contents:
 *   - General Layout
 *     - Header
 *     - Navigation
 *     - Page Body
 *     - Sub Navigation
 *     - Content Area
 *     - Footer
 *   - Helpers
 *   - Home Page
 *     - Overrides
 *     - Blocks (Main, Aside)
 *   - Hidden Elements (grouped)
 */

/* ============================================================================
   GENERAL LAYOUT */

html {
    background: #e0e0e0 url(../images/theme/bg.png) repeat-x;
}

body {
    margin: 0;
    padding: 0;
}

#wrapper1 {
    background: #fff url(../images/theme/bg-wrapper1.png) repeat-y;
    margin: 0 auto;
    width: 982px;
}

#wrapper2 {
    background: transparent url(../images/theme/bg-wrapper2.png) no-repeat;
    width: 982px;
}

#wrapper3 {
    background: transparent url(../images/theme/bg-wrapper3.png) left bottom no-repeat;
    padding: 0 11px;
    width: 960px;
}


/* ----------------------------------------------------------------------------
   HEADER */

#header {
    background: #221312 url(../images/theme/bg-header.jpg) no-repeat;
    height: 137px;
}

#header h1 {
    padding: 5px 0 0 0;
}

#header h1 a {
    display: block;
    height: 97px;
    margin: 0 auto;
    width: 234px;
}


/* ----------------------------------------------------------------------------
   NAVIGATION */
   
ul#nav {
    padding: 0;
}

ul#nav li {
    display: inline;
    list-style: none;
}

ul#nav li a {
    background: transparent url(../images/theme/bg-nav.png) no-repeat;
    display: block;
    float: left;
    height: 35px;
    width: 0;
}

ul#nav li.nav-about         a { width: 170px; background-position: -4px 0; }
ul#nav li.nav-resources     a { width: 148px; background-position: -174px 0; }
ul#nav li.nav-exhibits      a { width: 75px;  background-position: -320px 0; }
ul#nav li.nav-collections   a { width: 194px; background-position: -395px 0; }
ul#nav li.nav-faq           a { width: 59px;  background-position: -587px 0; }
ul#nav li.nav-hours         a { width: 136px; background-position: -644px 0; }
ul#nav li.nav-contact       a { width: 103px; background-position: -778px 0; }
ul#nav li.nav-home          a { width: 71px;  background-position: -880px 0; }

ul#nav li.nav-about         a:hover, body.body-about                ul#nav li.nav-about         a { background-position: -4px -35px; }
ul#nav li.nav-resources     a:hover, body.body-resources            ul#nav li.nav-resources     a { background-position: -174px -35px; }
ul#nav li.nav-exhibits      a:hover, body.body-exhibits             ul#nav li.nav-exhibits      a { background-position: -320px -35px; }
ul#nav li.nav-collections   a:hover, body.body-collections-research ul#nav li.nav-collections   a { background-position: -395px -35px; }
ul#nav li.nav-faq           a:hover, body.body-faq                  ul#nav li.nav-faq           a { background-position: -587px -35px; }
ul#nav li.nav-hours         a:hover, body.body-hours                ul#nav li.nav-hours         a { background-position: -644px -35px; }
ul#nav li.nav-contact       a:hover, body.body-contact              ul#nav li.nav-contact       a { background-position: -778px -35px; }
ul#nav li.nav-home          a:hover, body.body-home                 ul#nav li.nav-home          a { background-position: -880px -35px; }


/* ----------------------------------------------------------------------------
   PAGE BODY */

#page-body {
    overflow: hidden;
    padding-bottom: 30px;
}


/* ----------------------------------------------------------------------------
   SUB NAVIGATION */

#subnav {
    float: left;
    padding: 20px 12px 60px 18px;
    width: 178px;
}

#subnav h3 {
	text-indent: -9000px;
    padding: 0 0 5px 0;
}

#subnav h3 a {
    background-repeat: no-repeat;
    display: block;
    width: 178px;
    height: 19px;
}

body.body-about                   #subnav h3 a { background-image: url(../images/theme/subnav-titles/about.png); }
body.body-resources               #subnav h3 a { background-image: url(../images/theme/subnav-titles/resources.png); }
body.body-essay                   #subnav h3 a { background-image: url(../images/theme/subnav-titles/resources.png); }
body.body-exhibits                #subnav h3 a { background-image: url(../images/theme/subnav-titles/exhibits.png); }
body.body-collections-research    #subnav h3 a { background-image: url(../images/theme/subnav-titles/collections.png); height: 44px; }
body.body-faq                     #subnav h3 a { background-image: url(../images/theme/subnav-titles/about.png); }
body.body-hours                   #subnav h3 a { background-image: url(../images/theme/subnav-titles/about.png); }
body.body-contact                 #subnav h3 a { background-image: url(../images/theme/subnav-titles/about.png); }
body.body-site-map                #subnav h3 a { background-image: url(../images/theme/subnav-titles/about.png); }

#subnav ul {
    border-bottom: 1px solid #dfcfb4;
    padding: 0;
    margin: 10px 0;
}

#subnav ul li,
#subnav ul li li {
    display: inline;
    list-style: none;
}

#subnav li a {
    background: transparent url(../images/theme/bullet-green.png) 0 7px no-repeat;
    border-top: 1px solid #dfcfb4;
    color: #3b332a;
    display: block;
    font-size: 11px;
    padding: 2px 0 3px 20px;
    text-decoration: none;
}

#subnav li a:hover,
#subnav li.active a {
    background-color: #ebe0cc;
}

#subnav ul li ul {
    margin: -1px 0px;
}

#subnav ul li ul li a {
    padding: 2px 0 3px 40px;
	background: transparent url(../images/theme/bullet-green-thin.gif) 20px 9px no-repeat;
}

body.body-exhibits #subnav li a {
    background-image: url(../images/theme/bullet-orange.png);
}


/* ----------------------------------------------------------------------------
   CONTENT AREA (MAIN + ASIDE) */

.page-title {
    float: left;
    padding: 20px 15px 0 15px;
    min-height: 33px;
    width: 722px;
}

.page-title h1 {
    padding: 0;
}

#main {
    float: left;
    padding: 0 15px;
    width: 357px;
}

#main h2 a,
#main h2 a:link,
#main h2 a:visited,
#main h2 a:hover {
    text-decoration: none;
	color: #4E0504;
}

#aside {
    float: left;
    width: 350px;
}


/* ----------------------------------------------------------------------------
   FOOTER */

#footer {
    background: #e0e0e0 url(../images/theme/bg-footer.jpg) no-repeat;
    color: #666;
    padding: 50px 0 20px 0;
    text-align: center;
    width: 982px;
}

#footer p#footer-links {
    color: #999;
    padding: 0 0 15px 0;
}

#footer p#footer-links a:link, 
#footer p#footer-links a:visited {
    color: #666;
}

#footer p#footer-links a:hover {
    color: #000;
}

#footer address {
    background: transparent url(../images/theme/footer-logo.png) center top no-repeat;
    padding-top: 6px;
}


/* ============================================================================
   HELPERS */

hr.separator {
    display: none;
}

img.photo {
	border: 8px solid #f5efe4;
}

img.photo2 {
	border: 8px solid #f5efe4;
	margin-left: 15px;
}

img.alignRight {
	float: right;
	margin: 0px 0px 15px 15px;
}

img.alignLeft {
	float: left;
	margin: 0px 15px 15px 0px;
}

.caption {
    color: #4e0504;
    display: block;
    font: italic normal 13px/15px Georgia;
    padding: 2px 10px 0 0;
}

#main .caption {
    padding-left: 0;
}

/* ----------------------------------------------------------------------------
   SIFR */
   
.sIFR-flash { visibility: visible !important; margin: 0; }
.sIFR-replaced { visibility: visible !important; }
span.sIFR-alternate { position: absolute; left: 0; top: 0; width: 0; height: 0; display: block; overflow: hidden; }
.sIFR-flash + div[adblocktab=true] { display: none !important; }

.sIFR-hasFlash .page-title h1 {
	visibility: hidden;
	font-size: 26px;
	padding: 0 !important;
}


/* ============================================================================
   HOME */

/* ----------------------------------------------------------------------------
   OVERRIDES */

body.body-home #content a:link,
body.body-home #content a:visited {
    text-decoration: none;
}

body.body-home #content a:hover {
    text-decoration: underline;
}

body.body-home #main {
    background: transparent url(../images/theme/home/bg-main.png) 254px 423px no-repeat;
    float: right;
    padding: 0;
    width: 752px;
}

body.body-home #aside {
    float: left;
    padding: 20px 12px 0 18px;
    width: 178px;
}


/* ----------------------------------------------------------------------------
   BLOCKS */

body.body-home .block h2 {
    background: transparent no-repeat;
    height: 28px;
    padding: 0 0 8px 0;
}

body.body-home .block-search    h2 { background-image: url(../images/theme/home/search-collection.png); }
body.body-home .block-exhibit   h2 { background-image: url(../images/theme/home/latest-exhibit.png); }
body.body-home .block-resources h2 { background-image: url(../images/theme/home/online-resources.png); }
body.body-home .block-hours     h2 { background-image: url(../images/theme/home/research-hours.png); }
body.body-home .block-blog      h2 { background-image: url(../images/theme/home/blog-posts.png); }
body.body-home .block-news      h2 { background-image: url(../images/theme/home/whats-new.png); }


/* ----------------------------------------------------------------------------
   MAIN BLOCKS */

body.body-home #main .block {
    float: left;
    padding: 22px 12px 0 12px;
    width: 218px;
}

body.body-home #main .block-search {
    padding-left: 24px;
}

body.body-home .block-search a:link,
body.body-home .block-search a:visited {
    color: #58742d;
}

body.body-home .block-exhibit a:link,
body.body-home .block-exhibit a:visited {
    color: #c46100;
}

body.body-home .block-resources a:link,
body.body-home .block-resources a:visited {
    color: #9a303f;
}

body.body-home #main p {
    padding: 0;
}


/* ----------------------------------------------------------------------------
   ASIDE BLOCKS */

body.body-home #aside .block {
    padding: 0 0 24px 0;
}

body.body-home #aside .block h2 {
    padding: 0;
}

body.body-home #aside .block a:link,
body.body-home #aside .block a:visited {
    color: #9a303f;
}

body.body-home .block-hours strong {
    padding-right: 1em;
    white-space: nowrap;
}

body.body-home #aside .block-blog h2 {
    padding-bottom: 4px;
}

body.body-home .block-news strong {
    font-size: 12px;
}

body.body-home #aside p {
    padding: 0 0 5px 0;
    line-height: 14px;
}

body.body-home #aside ul {
    margin: 0;
    padding: 0;
}

body.body-home #aside li {
    list-style: none;
    padding: 5px 0;
    line-height: 14px;
}

body.body-home #aside .block-hours p {
    font-size: 12px;
}

body.body-home #aside .block-hours p.more {
    font-size: 11px;
    padding-top: 5px;
}

/* ============================================================================
   About */

body.body-about .block-blog {
    margin-top: 30px;
}


/* ============================================================================
   ONLINE RESOURCES */

/* ----------------------------------------------------------------------------
   SEARCH FORM (in sidebar) */

#search-resources hr {
    border-top: 1px solid #bda57a;
}

#search-resources label {
    display: block;
    font-weight: bold;
    padding: 10px 0 5px 0;
}

#search-resources p {
    padding: 2px 0 0 0;
}

#search-resources legend {
    display: none;
}

#search-resources .date-part {
    display: block;
    float: left;   
    padding: 0 5px 0 0; 
}

#search-resources .date-part select {
    display: block;
}

#search-resources .date-part label {
    font-weight: normal;
    padding: 0 0 5px 0;
}

#search-resources .date-part select.month   { width: 70px; }
#search-resources .date-part select.day     { width: 40px; }
#search-resources .date-part select.year    { width: 50px; }


/* ----------------------------------------------------------------------------
   CHRONOLOGY  */

table.chronology {
    margin: 10px 0;
    width: 100%;
}

table.chronology th, 
table.chronology td {
    border: 1px solid #bda57a;
    padding: 3px 10px;
    text-align: left;
    vertical-align: top;
}

table.chronology th {
    background: #bda57a;
    color: #fff;
}

table.chronology tr.even td {
    background: #f7f2ea;
}

/* ============================================================================
   EXHIBITS */

body.body-exhibits #main {
    width: 522px;
}

body.body-exhibits #aside {
    padding: 16px 0 0 10px;
    width: 180px;
}

#picture {
    background: #c1ab84 url(../images/theme/bg-exhibit-picture.jpg) no-repeat;
    height: 338px;
    padding: 27px;
    margin: 15px 0 10px 0;
    text-align: center;
    width: 482px;
}

#picture p {
    padding: 20px 0 0 0;
}

.thumbs {
    background: transparent url(/lib/images/theme/bg-exhibit-thumbs.png) left bottom no-repeat;
    height: 340px;
    padding: 37px 0 0 0;
    width: 130px;
}

.thumbs img {
    border: 1px solid #987b4b;
    float: left;
    margin: 0 10px 10px 0;
}

ul.chapters {
    clear: left;
    padding: 35px 0 5px 0;
}

ul.chapters li {
    font: bold 12px georgia;
    list-style: none;
    padding: 0 0 8px 0;
}

ul.chapters li a {
    color: #c00;
    text-decoration: none;
}

ul.chapters li a:hover {
    text-decoration: underline;
}

ul.chapters li.active a,
ul.chapters li a.active {
    color: #333;
}

p.prev-next {
    font: bold 12px georgia;
}

p.prev-next a {
    color: #c00;
}


/* ============================================================================
   HOURS + ACCESS */

body.body-hours #aside {
    width: 200px;
}

body.body-hours #main {
    width: 507px;
}

body.body-hours .google-map {
    padding: 10px 0;
}

body.body-hours .google-map iframe {
    border: 8px solid #f5efe4;
    height: 360px;
    width: 707px;
}

body.body-hours .google-map p {
    background: #f5efe4;
    font-size: 10px;
    padding: 0 8px 10px 8px;
    text-align: right;
    width: 707px;
}


/* ============================================================================
   CONTACT US */

body.body-contact .form fieldset {
    float: left;
    width: 335px;
}

body.body-contact .form fieldset input {
    width: 225px;
}

body.body-contact .form .button-row input {
	margin-left: 100px;
	width: 100px;
}

body.body-contact .form .button-row p {
	margin-left: 100px;
}

body.body-contact .form fieldset textarea {
    width: 225px;
    margin-bottom: 8px;
}

body.body-contact .form fieldset#contact-info {
    margin-right: 30px;
}

/* ============================================================================
   FAQs */


body.body-faq #subnav .block-blog {
	margin-top: -8px;
}

body.body-faq h2.first {
	margin-top: 0px;
    border-top: none;
}

body.body-faq h2 {
	margin-top: 8px;
    padding-top: 13px;
	border-top: 1px dotted #12562C;
}


/* ============================================================================
   COLLECTIONS */

body.body-collections-research h2.first {
	margin-top: 0px;
    border-top: none;
}

body.body-collections-research h2 {
	margin-top: 8px;
    padding-top: 13px;
	border-top: 1px dotted #12562C;
}


/* ============================================================================
   SITE MAP */

body.body-site-map #main h3 {
    padding: 15px 0 0 30px;
}

body.body-site-map #main ul {
    padding: 5px 0 0 60px;
}

body.body-site-map-default #main ul ul {
	display: none;
}


/* ============================================================================
   HIDDEN ELEMENTS (screen reader-friendly) */

#header h1 a img,
ul#nav li a span,
#subnav h3 a span,
body.body-home #subnav,
body.body-home .page-title,
body.body-home .block h2 span,
#footer address strong,
#search-resources legend,
.hidden {
    left: -9999px;
    position: absolute;
    visibility: hidden;
}

/* WIDE PAGES (HIDE ASIDE) */

body #subnav h2 {
	border-top: none;
}


table.Col2 {
	width: 100%;
}

table.Col2 td.Col2Half {
	width: 349px;
}

table.Col2 td.Col2Gutter {
	width: 24px;
}

body.body-about-default #aside,
body.body-resources-results #aside,
body.body-contact #aside,
body.body-collections-research-research-policies #aside,
body.body-collections-research-photocopy-and-duplication-policy #aside,
body.body-collections-research-what-do-we-have #aside,
body.body-hours-default #aside,
body.body-faq-default #aside,
body.body-legal-terms-of-use #aside {
    display: none;
}

body.body-about-default #main,
body.body-about-chronology #main,
body.body-resources-results #main,
body.body-contact #main,
body.body-collections-research-research-policies #main,
body.body-collections-research-photocopy-and-duplication-policy #main,
body.body-collections-research-what-do-we-have #main,
body.body-hours-default #main,
body.body-faq-default #main,
body.body-legal-terms-of-use #main {
    width: 722px;
}