html, body { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }

div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, pre, a, abbr, acronym, address, code, del, dfn, em, img, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, caption, tbody, tfoot, thead, tr { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; }

blockquote, q { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; quotes: "" ""; }
blockquote:before, q:before, blockquote:after, q:after { content: ""; }

th, td, caption { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; text-align: left; font-weight: normal; vertical-align: middle; }

table { margin: 0; padding: 0; border: 0; font-weight: inherit; font-style: inherit; font-size: 100%; font-family: inherit; vertical-align: baseline; border-collapse: separate; border-spacing: 0; vertical-align: middle; }

a img { border: none; }

body.bp { line-height: 1.5; font-family: Helvetica Neue, Arial, Helvetica, sans-serif; color: #333333; font-size: 75%; }
body.bp h1 { font-weight: normal; color: #222222; font-size: 3em; line-height: 1; margin-bottom: 0.5em; }
body.bp h1 img { margin: 0; }
body.bp h2 { font-weight: normal; color: #222222; font-size: 2em; margin-bottom: 0.75em; }
body.bp h3 { font-weight: normal; color: #222222; font-size: 1.5em; line-height: 1; margin-bottom: 1em; }
body.bp h4 { font-weight: normal; color: #222222; font-size: 1.2em; line-height: 1.25; margin-bottom: 1.25em; }
body.bp h5 { font-weight: normal; color: #222222; font-size: 1em; font-weight: bold; margin-bottom: 1.5em; }
body.bp h6 { font-weight: normal; color: #222222; font-size: 1em; font-weight: bold; }
body.bp h2 img, body.bp h3 img, body.bp h4 img, body.bp h5 img, body.bp h6 img { margin: 0; }
body.bp p { margin: 0 0 1.5em; }
body.bp p img.left { display: inline; float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }
body.bp p img.right { display: inline; float: right; margin: 1.5em 0 1.5em 1.5em; padding: 0; }
body.bp a { text-decoration: underline; color: #000099; }
body.bp a:visited { color: #000066; }
body.bp a:focus { color: black; }
body.bp a:hover { color: black; }
body.bp a:active { color: #cc0099; }
body.bp blockquote { margin: 1.5em; color: #666; font-style: italic; }
body.bp strong { font-weight: bold; }
body.bp em { font-style: italic; }
body.bp dfn { font-style: italic; font-weight: bold; }
body.bp sup, body.bp sub { line-height: 0; }
body.bp abbr, body.bp acronym { border-bottom: 1px dotted #666; }
body.bp address { margin: 0 0 1.5em; font-style: italic; }
body.bp del { color: #666; }
body.bp pre { margin: 1.5em 0; white-space: pre; }
body.bp pre, body.bp code, body.bp tt { font: 1em 'andale mono', 'lucida console', monospace; line-height: 1.5; }
body.bp li ul, body.bp li ol { margin: 0 1.5em; }
body.bp ul { margin: 0 1.5em 1.5em 1.5em; list-style-type: disc; }
body.bp ol { margin: 0 1.5em 1.5em 1.5em; list-style-type: decimal; }
body.bp dl { margin: 0 0 1.5em 0; }
body.bp dl dt { font-weight: bold; }
body.bp dd { margin-left: 1.5em; }
body.bp table { margin-bottom: 1.4em; width: 100%; }
body.bp th { font-weight: bold; }
body.bp thead th { background: #c3d9ff; }
body.bp th, body.bp td, body.bp caption { padding: 4px 10px 4px 5px; }
body.bp tr.even td { background: #e5ecf9; }
body.bp tfoot { font-style: italic; }
body.bp caption { background: #eee; }
body.bp .quiet { color: #666666; }
body.bp .loud { color: #111111; }

body.bp .clear { clear: both; }
body.bp .nowrap { white-space: nowrap; }
body.bp .clearfix { overflow: hidden; display: inline-block; }
body.bp .clearfix { display: block; }
body.bp .small { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; }
body.bp .large { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; }
body.bp .first { margin-left: 0; padding-left: 0; }
body.bp .last { margin-right: 0; padding-right: 0; }
body.bp .top { margin-top: 0; padding-top: 0; }
body.bp .bottom { margin-bottom: 0; padding-bottom: 0; }
body.bp .showgrid { background: url('/../../public/images/grid.png'); }
body.bp .error { padding: .8em; margin-bottom: 1em; border: 2px solid #dddddd; background: #fbe3e4; color: #8a1f11; border-color: #fbc2c4; }
body.bp .error a { color: #8a1f11; }
body.bp .notice { padding: .8em; margin-bottom: 1em; border: 2px solid #dddddd; background: #fff6bf; color: #514721; border-color: #ffd324; }
body.bp .notice a { color: #514721; }
body.bp .success { padding: .8em; margin-bottom: 1em; border: 2px solid #dddddd; background: #e6efc2; color: #264409; border-color: #c6d880; }
body.bp .success a { color: #264409; }
body.bp .hide { display: none; }
body.bp .highlight { background: yellow; }
body.bp .added { background: #006600; color: white; }
body.bp .removed { background: #990000; color: white; }

body.three-col #container { padding-top: 30px; padding-bottom: 30px; }
body.three-col #container.has_layout { width: 950px; margin: 0 auto; overflow: hidden; display: inline-block; }
body.three-col #container.has_layout { display: block; }
body.three-col #sidebar { display: inline; float: left; margin-right: 0; width: 310px; }
* html body.three-col #sidebar { overflow-x: hidden; }
body.three-col #content.has_layout { display: inline; float: left; margin-right: 10px; width: 630px; }
* html body.three-col #content.has_layout { overflow-x: hidden; }

html, body, #main_container { height: 100%; }

body > #main_container { height: auto; min-height: 100%; overflow: hidden; }

#main { font-size: 12px; padding: 24px 0 24px; }

#header { height: 24px; position: absolute; z-index: 10; width: 100%; top: 0; background: #666 url(/images/bar_bg.png) repeat-x center left; border-bottom: 1px solid black; }
#header .nav { display: inline; float: left; margin-right: 10px; border-left: 1px solid #282828; text-transform: uppercase; letter-spacing: 0.1em; font-weight: normal; }
#header dl { padding: 0; }
#header dl a { display: block; color: #fff; border: none; text-decoration: none; height: 12px; margin: 6px 0 0 0; padding: 0 0 6px 10px; font-size: 12px; line-height: 12px; text-shadow: 0 1px 1px rgba(255,255,255,0.5); }
#header dl dt#home { border-left: none; }
#header dl dd#search_bar { width: 180px; float: right; border-left: 0; }
#header dl dd#search_bar input#q { width: 180px; }
#header dl dd { width: 80px; margin-right: 0; margin-left: 0; position: relative; }

#footer { clear: both; position: relative; height: 19px; margin-top: -24px; padding: 4px 0 0 0; background: #666 url(/images/bar_bg.png) repeat-x center left; border-top: 1px solid black; color: #fff; overflow: hidden; font-size: 12px; }
#footer .container { /* +container */ padding: 0 10px; font-size: 10px; }
#footer .container p#legal { overflow: visible; margin: -5px 0 0 0; height: 19px; line-height: 25px; color: #333; }
#footer .container p#legal .prototype { display: inline-block; overflow: visible; height: 24px; width: 35px; text-indent: -9999px; background: url(/images/prototype_logo_tiny.png) no-repeat center center; }
#footer .container p#legal a { text-decoration: none; color: #fff; border-bottom: 1px solid; }

body.bp sup { padding: 2px; }
body.bp sup a { text-decoration: none; }

.footnotes { border-top: 1px solid #bbb; padding-top: 1.5em; }
.footnotes p:last-child a:last-child { text-decoration: none; }
.footnotes p:last-child a:last-child:hover { text-decoration: underline; }

.home #about, .home #error { text-align: center; background: #fff; z-index: 0; margin: 0 0 0 -140px; position: absolute; top: 50px; left: 50%; padding: 20px; height: 100px; width: 240px; -moz-border-radius: 5px; -webkit-border-radius: 5px; -webkit-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.4); -moz-box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.4); border: 4px solid #ccc; }
.home #about h1, .home #error h1 { font-size: 14px; font-weight: bold; }
.home #about h2, .home #error h2 { font-size: 12px; }
.home #error { display: none; }

#map { width: 100%; position: absolute; z-index: 10; top: 24px; left: 0; bottom: 24px; }

