/*   
Author: Tom Rose (tom@slurve.com)
Author URI: http://slurve.com
Date: 24 Feb 2009
*/

/* -------------------------------------------------------------------------- global */

body { margin: 0; padding: 0; background: #fff url(images/bg.gif) 0 125px repeat-x; }
html, body, #wrap { min-height: 100%; width: 100%; height: 100%; }
html>body, html>body #wrap { height: auto; }
a img { border: none; }
p { margin: 0 0 15px 0; }

/* -------------------------------------------------------------------------- headers */
	
h1 { margin: 0 0 15px 0; font-size: 24px; font-weight: normal; line-height: 28px; color: #888; }
h2 { font-size: 18px; line-height: 24px; margin: 0 0 5px 0; color: #888; }
h3 { font-size: 12px; line-height: 18px; font-weight: normal; text-transform: uppercase; color: #666; margin: 0 0 2px 0; }

/* -------------------------------------------------------------------------- links */

a, a:visited { color: #d48c16; text-decoration: none; outline: none; }
a:hover, a:active { text-decoration: underline; }
#footer a, #footer a:visited { color: #666; }
#footer a:hover, #footer a:active { color: #444; }

/* -------------------------------------------------------------------------- masthead */

#masthead { position: relative; height: 154px; z-index: 3; }
#logo { position: absolute; top: 27px; left: 0; }
#logo a { position: relative; width: 240px; height: 0px !important; display: block; background: url(images/logo.png) top left no-repeat; overflow: hidden; padding: 73px 0 0 0; border: 0; outline: none; }
#logo a:hover { background-position: 0 -73px; }
#logoNewSchool { position: absolute; top: 44px; right: 50px; }
#nav { background: #463f38 url(images/bg.gif) 0 0 repeat-x; width: 960px; height: 28px; position: absolute; bottom: 1px; left: 0; }
#nav ul { margin: 0; padding: 0; list-style-type: none; /*width: 849px;*/ }
#nav li { margin: 6px 6px 0 20px; padding: 0; float: left; display: inline; position: relative; }
#nav li a { position: relative; height: 0px !important; display: block; overflow: hidden; padding: 19px 0 0 0; color: #fff; }
#nav .home a { width: 38px; background: url(images/nav_home.gif) top left no-repeat; }
#nav .news a { width: 38px; background: url(images/nav_news.gif) top left no-repeat; }
#nav .exec-board a { width: 80px; background: url(images/nav_exec.gif) top left no-repeat; }
#nav .senators a { width: 67px; background: url(images/nav_senators.gif) top left no-repeat; }
#nav .agenda a { width: 53px; background: url(images/nav_agenda.gif) top left no-repeat; }
#nav .about a { width: 44px; background: url(images/nav_about.gif) top left no-repeat; }
#nav .divisional-govts a { width: 120px; background: url(images/nav_govts.gif) top left no-repeat; }
#nav .resources a { width: 79px; background: url(images/nav_resources.gif) top left no-repeat; }
#nav .elections a { width: 72px; background: url(images/nav_elections.gif) top left no-repeat; }
#nav .contact a { width: 60px; background: url(images/nav_contact.gif) top left no-repeat; }
#nav li:hover, #nav li:hover a, #nav a:hover, #home .home a, #news .news a, #exec-board .exec-board a, #senators .senators a, #agenda .agenda a, #about .about a, #divisional-govts .divisional-govts a, #contact .contact a { background-position: 0 -24px; cursor: pointer; }
#nav ul ul { display: none; width: 170px; position: absolute; top: 19px; left: -15px; padding: 6px 0 0 0; margin: 0; z-index: 3; opacity: 0.9; border-bottom: 10px solid #85836F; background: url(images/bg_nav.gif) 0 0 repeat-x !important; }
#nav li li { float: none; display: block; list-style-type: none; width: 146px; padding: 1px 0px 0 0; margin-left: 6px; border: none; }
#nav li li.firstItem { padding-top: 8px; }
#nav li:hover a, #nav a:hover { color: #ffdead; border-bottom: none; text-decoration: none; }
#nav li li a, #nav li:hover li a , #nav li li a:visited, #nav li:hover li a:visited { color: #fff !important; font-size: 11px; line-height: 13px; height: auto !important; margin: 0 8px 0 8px; padding: 0; text-transform: none; width: 146px !important; border: none; background: none !important; cursor: pointer; }
#nav li li a:hover, #nav li:hover li a:hover { border: none; color: #ccc !important; }

/* -------------------------------------------------------------------------- containers */

#wrap { position: absolute; top: 0; left: 0; background: url(images/backgrounds/rotate.php) 0 0 repeat-x; }
#container { position: relative; margin: 0 auto; width: 960px; height: auto; padding: 0 0 50px 0; font-family: "Lucida Grande", "Lucida Sans Unicode", Verdana, sans-serif; font-size: 12px; line-height: 16px; }
#container p { color: #555; line-height: 18px; }
#main { float: left; display: inline; width: 620px; padding: 20px; margin: 5px 0 50px 0; z-index: 1; }
#main.wide { float: none; display: block; width: 920px; }

/* -------------------------------------------------------------------------- sidebar */

#sidebar { float: left; display: inline; width: 260px; min-height: 400px; height: auto !important; height: 400px; padding: 20px; margin: 15px 0 80px 0; background: url(images/vline.gif) 0 23px no-repeat; }
#sidebar p { color: #888; font-size: 11px; }
#sidebar h2 { color: #999; text-transform: uppercase; font-size: 14px; margin: 0 0 8px 0; }
#sidebar .headlines { margin-bottom: 20px; }
#sidebar .headlines li.lastItem { border-bottom: none; }
#sidebar .headlines .current_page_item a, #sidebar .headlines .current_page_item a:visited { color: #555; cursor: text; }
#sidebar .headlines .current_page_item a:hover { text-decoration: none; } 

/* -------------------------------------------------------------------------- homepage */

#leadPanelsWrap { position: relative; width: 920px; }
#leadPanelsWrap #leadPanelsNav { position: absolute; bottom: 30px; right: 0; z-index: 2; }
#leadPanelsWrap #leadPanelsNav a, #leadPanelsWrap #leadPanelsNav a:visited { font-size: 28px; margin: 0 4px; outline: none; border: 1px dotted #ddd; padding: 0 5px; }
#leadPanelsWrap #leadPanelsNav a:hover { text-decoration: none; }
#leadPanelsWrap #leadPanelsNav a.activeSlide { color: #524a42; border: 1px dotted #999; }
#leadPanelsWrap .searchSite { width: 232px; position: absolute; right: 180px; bottom: 20px; z-index: 3; background-color: #eee; padding: 7px; }
#leadPanelsWrap .searchSite .submit { width: 100px; }
#leadPanelsWrap .searchSite form { margin: 0; }
#leadPanels { position: relative; z-index: 1; }
#panelB, #panelC { display: none; }
.featuredPhoto { width: 475px; height: 290px; background: url(images/featured_default.jpg) 0 0 no-repeat; float: left; display: inline; margin: 0 0 20px 0; position: relative; }
.featuredPhoto img { position: absolute; top: 0; left: 0; width: 475px; height: 290px; }
#container .featuredPhoto p.caption { position: absolute; bottom: 0; left: 0; width: 455px; padding: 10px 10px 10px 10px; color: #fff; margin: 0; font-size: 15px; line-height: 20px; }
#container .featuredPhoto p.caption.off { display: none; }
.featuredStory { width: 425px; float: left; display: inline; margin: 0 0 20px 20px; background: url(images/txt_latest.gif) 0 0 no-repeat; padding: 33px 0 0 0; }
.featuredStory h1 { margin: 0 0 8px 0; font-size: 26px; line-height: 30px; }
.featuredStory h1 a { letter-spacing: -1px; font-weight: bold; }
.featuredStory p { margin: 0; line-height: 19px; }
.bottomContent { width: 920px; border-top: 1px dotted #ccc; }
.bottomContent h2 a { position: relative; height: 0px !important; display: block; overflow: hidden; padding: 15px 0 0 0; margin: 20px 0 8px 0; }
.bottomContent h2.ussBegins a { width: 147px; background: url(images/title_uss.gif) top left no-repeat; }
.bottomContent h2.studentsAgenda a { width: 179px; background: url(images/title_agenda.gif) top left no-repeat; }
.bottomContent .bottomLeft { float: left; display: inline; width: 660px; }
.bottomContent .bottomRight { float: left; display: inline; width: 240px; min-height: 423px; height: auto !important; height: 423px; margin: 0 0 0 20px; }
.bottomContent .columnA { float: left; display: inline; width: 350px; min-height: 423px; height: auto !important; height: 423px; margin: 0 20px 0 0; padding: 20px 20px 0 0; background: url(images/vline.gif) top right no-repeat; }
.bottomContent .columnA h3 { text-transform: none; font-size: 14px; line-height: 17px; margin: 0 0 6px 0; }
.bottomContent .columnA .subA { float: left; display: inline; width: 165px; margin: -16px 20px 0 0; padding: 0; position: relative; z-index: 2; }
.bottomContent .columnA .subB { float: left; display: inline; width: 165px; margin: -16px 0 0 0; padding: 0; position: relative; z-index: 2; }
.bottomContent .columnB { float: left; display: inline; width: 250px; min-height: 423px; height: auto !important; height: 423px; margin: 0; padding: 20px 20px 0 0; background: url(images/vline.gif) top right no-repeat; }
.bottomContent .columnC { width: 820px; border-top: 1px dotted #ccc; margin: 5px 0 0 0; padding: 0 100px 0 0; }
.bottomContent .agendaList ul { margin: 0 0 30px 0; padding: 0; }
.bottomContent .agendaList li { color: #666; font-size: 14px; line-height: 18px; margin: 0 0 8px 0; padding: 0; list-style-type: none; }
.bottomContent .agendaList li.smile { background: url(images/smile.gif) 0 2px no-repeat; padding-left: 22px; }
.bottomContent .agendaList li.smile a, .bottomContent .agenda li.smile a:visited { color: #48a046; }
.bottomContent .agendaList li.frown { background: url(images/frown.gif) 0 2px no-repeat; padding-left: 22px; }
.bottomContent .agendaList li.frown a, .bottomContent .agenda li.frown a:visited { color: #931a1d; }
.bottomContent .agendaList li.undecided { background: url(images/undecided.gif) 0 2px no-repeat; padding-left: 22px; }
.bottomContent .agendaList li.undecided a, .bottomContent .agenda li.undecided a:visited { color: #c4a72f; }
.focusWrap { background: url(images/txt_focus.gif) 0 0 no-repeat; padding: 30px 0 0 0; min-height: 100px; height: auto !important; height: 100px; }
.focusWrap strong { font-size: 14px; margin: 0; color: #777; }
.pollWrap { background: #eee url(images/bg_poll.gif) top right no-repeat; margin: 0 0 20px 0; padding: 12px 15px 15px 15px; width: 216px; }
.letterWrap { background: #eee url(images/bg_letter.gif) top right no-repeat; margin: 0 0 20px 0; padding: 12px 15px 15px 15px; width: 216px; min-height: 140px; height: auto !important; height: 140px; }
.letterWrap strong { font-size: 14px; margin: 0; color: #777; }
#container .pollWrap p { margin: 0; }
#container .pollWrap p.pollQuestion { font-size: 14px; font-weight: bold; }
#container .pollWrap p.pollItem { margin: 8px 0; }
#container .pollWrap p.pollItem input { margin: 0 5px 0 0; vertical-align: middle; }
#container .pollWrap p.pollItem label { margin: 0; vertical-align: middle; font-size: 11px; }
.pollWrap input.submit { width: 48px; padding: 4px 0; background-color: #a0a77b; color: #fff; border: none; font-size: 11px; float: left; display; inline; margin: 5px 0 0 0; }
.pollWrap input.submit:hover { background-color: #5f6744; cursor: pointer; border: none; }
#container .pollWrap p.pollResultText { float: left; display: inline; margin: 8px 0 0 12px; font-size: 11px; }
.pollResultItem { margin: 8px 0; font-size: 11px; color: #555; }
.pollResultItem .pollResultText { font-weight: bold; }
.pollResultItem .pollResultBar { color: #888; }
.pollResultItem .pollResultBar img { vertical-align: middle; }
#container .pollTotalText { margin: 8px 0 0 0; font-size: 11px; color: #888; }
.officersImg { margin: 0 0 20px 0; width: 246px; height: 205px; }

/* -------------------------------------------------------------------------- footer */

#footer { position: absolute; bottom: 0; width: 100%; padding: 20px 0; background: #524a42; \width: 100%; w\idth: 100%; font-family: "Lucida Grande", "Lucida Sans Unicode", Verdana, sans-serif; font-size: 11px; line-height: 16px; color: #ccc; }
#footer a, #footer a:visited { color: #ffdead; }
#footer a:hover { color: #ffdead; }
.footerWrap { width: 960px; margin: 0 auto; }
.contactInfo { float: left; display: inline; margin: 0 10px 7px 10px; }
.contactInfo img { margin: 7px 0 0 0; height: 15px; }
.creditInfo { text-align: right; float: right; display: inline; margin: 0 10px 7px 0; }
   
/* -------------------------------------------------------------------------- polls */

#polls .pollWrap { width: 580px; }
#polls #sidebar .headlines { font-size: 11px; color: #666; }
#polls #sidebar .headlines li { margin: 10px 0; }
#polls #sidebar .headlines a { display: block; font-weight: bold; font-size: 12px; }

/* -------------------------------------------------------------------------- interior */

.post { margin: 25px 0 0 0; }
#container .success { background-color: #ddd; padding: 15px; font-size: 18px; font-weight: bold; margin: 15px 0; color: #999; }

/* -------------------------------------------------------------------------------- form elements */

#searchForm input { width: 120px; border: 1px solid #ccc; padding: 3px; color: #444; }
#searchForm .submit { width: 50px; height: auto; background: none; color: #d48c16; border: none; }
#searchForm .submit:hover { color: #444; cursor: pointer; }
#contactForm { margin: 20px 0; }
#contactForm img { vertical-align: middle; margin: 0 0 0 10px; } /* verification image */
#contactForm label { text-transform: uppercase; display: block; font-weight: bold; font-size: 11px; color: #999; margin: 0 3px 0 0; }
#contactForm input, textarea { width: 300px; border: 1px solid #ccc; padding: 3px; color: #444; }
#contactForm input:focus, textarea:focus, select:focus { background-color: #ffc; }
#contactForm textarea { width: 400px; height: 200px; font: normal 11px "Lucida Grande", Verdana, sans-serif; }
#contactForm label.error { text-transform: none; font-size: 10px; font-weight: normal; line-height: 14px; margin: 4px 0 0 0; color: #930; }
#contactForm .required { font-style: italic; font-family: Georgia, serif; font-size: 11px; margin: 20px 0; color: #ccc; }
#contactForm .ddfmerrors { color: #930; font-size: 130%; }
#contactForm .errorlist { color: #930; font-weight: bold; }
#contactForm .submit { width: 100px; height: 28px; background-color: #a0a77b; color: #fff; border: none; }
#contactForm .submit:hover { background-color: #5f6744; cursor: pointer; border: none; }

/* -------------------------------------------------------------------------- utility */

.alignright { float: right; display: inline; margin: 15px 0 15px 15px; border: 4px solid #ccc; }
.alignleft { float: left; display: inline; margin: 15px 15px 15px 0; border: 4px solid #ccc; }
.headlines { margin: 0 0 15px 0; padding: 0; }
.headlines li { margin: 0 0 3px 0; padding: 2px 0 6px 0; list-style-type: none; border-bottom: 1px dotted #ccc; }
a.imglink:link, a.imglink:visited { border: none; }
.backtotop { font-size: 80%; text-transform: uppercase; }
.clear { clear: both; }
