/*
Theme Name: Third Way
Theme URI: http://thirdway.org/
Description: Third Way Custom Theme
Version: 1.0
Author: Toby Keller
Tags: politics

Third Way custom wordpress theme
*/

:focus {
	-moz-outline-style: none;
}

/* STRUCTURE ------------------------------------------------------------------------------------*/

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}

body {
  background: url(images/bg/bg.gif) left top repeat-x;
}

#container { 
  position: relative; 
  overflow: hidden;
  width: 950px;
  margin: 0 auto -110px;
  padding: 0 10px;
  min-height: 100%;
  height: auto !important;
  height: 100%;
  z-index: 10;
}

/* HEADER ------------------------------------------------------------------------------------*/

#header { height: 150px; position: relative; margin-bottom: 16px; z-index: 6000; }

#header_logo_link { 
  text-indent: -5000px;
  background: url(images/bg/logo.gif) left top no-repeat;
  width: 228px;
  height: 75px;
  display: block;
  position: absolute;
  top: 15px;
  left: -8px; 
}

ul#section_nav { position: absolute; right: 0; top: 33px; z-index: 8000; }
ul#section_nav li { 
  float: left; 
  margin: 0 -3px 0 0; 
  padding: 0;
  font-size: 16px; 
  background: url(images/bg/section_nav_separator.gif) right center no-repeat; 
  z-index: 8005;
  position: relative;
}

ul#section_nav a { color: #fff; display: block; padding: 6px 15px; }

ul#section_nav li.last { background: none; }
ul#section_nav li.active {  background: url(images/bg/section_nav_active_bg_left.gif) left top no-repeat; }
ul#section_nav li.active a { background: url(images/bg/section_nav_active_bg_right.gif) right top no-repeat; }

li.temp_inactive { background: url(images/bg/section_nav_separator.gif) right center no-repeat !important; }
li.temp_inactive a { background: none !important; }

ul#section_nav li:hover { background: url(images/bg/section_nav_active_bg_left.gif) left top no-repeat !important;}
ul#section_nav li:hover a { background: url(images/bg/section_nav_active_bg_right.gif) right top no-repeat !important; text-decoration: none; }

ul#section_nav li.sub-hover { background: url(images/bg/section_nav_hover_bg_left.gif) left top no-repeat !important;}
ul#section_nav li.sub-hover a {
  background: url(images/bg/section_nav_hover_bg_right.gif) right top no-repeat !important;
  padding-bottom: 13px;
}

ul#section_nav:hover li.active { background: url(images/bg/section_nav_separator.gif) right center no-repeat;  }
ul#section_nav:hover li.active a { background: none; }

ul.subnav { 
  display: none;
  width: 620px;
  height: 30px;
  position: absolute;
  right: -10px;
  top: 65px;
  background: url(images/bg/subsection_nav_bg.gif);
  margin: 0;
  padding: 0 0 0 14px;
  z-index: 7000;
}

ul.subnav:hover { display: block; }
ul.subnav li { float: left; position: relative; overflow: visible; }
ul.subnav li a { font-size: 13px; padding: 6px 15px; color: #fff; display: block; }

/* PROGRAM SUB-NAV SUB-NAV ------------------------------------------------------------------------ */
ul.subnav li:hover ul { display: block; }
ul.subnav li ul { 
  display: none; 
  position: absolute; 
  top: 24px; 
  left: 0px; 
  z-index: 5;  
  background: #144e7a url(images/bg/subsubnav-bg.gif) repeat-x;
  border-radius: 0 0 5px 5px;
  padding: 8px 0;
}
ul.subnav li ul li { display: block; float: none; white-space: nowrap;  }
ul.subnav li ul li a { font-size: 12px; }

ul.press_room_nav { width: 306px; background: url(images/bg/subsection_nav_bg_short.gif); }

ul#breadcrumbs { position: absolute; left: 0; bottom: 8px; margin-left: -15px; }
ul#breadcrumbs li { float: left; margin: 0 0 0 15px; padding: 0 24px 0 0; line-height: 40px; color: #fff; background: url(images/bg/breadcrumb_divider.gif) right center no-repeat; }
ul#breadcrumbs li a { color: #fff; text-shadow: #BE1E2D -1px -1px 0; padding: 0 2px; }

/* SHARED CONTENT -----------------------------------------------------------------------------------*/

#primary_content, #event_content {
  clear: left;
  float: left;
  width: 627px;
  margin-right: 37px;
}

#secondary_content, #event_panel {
  float: left;
  width: 286px;
}

#event_content { clear: none; margin: 0 0 1.5em 37px; }
#event_panel { clear: left; }

.retweet_button { float: left; margin-right: 15px; width: 50px; }

.document_info { float: left; width: 650px; margin-bottom: 1em; }
.document_info h2 { color: #333; border: none; letter-spacing: normal; text-transform: none; font-size: 1.75em; }
.document { background: #fff; border: 1px solid #bbb; padding: 20px; position: relative; margin: 1em 0; clear: left; font-size: 1.1em; }

#primary_content .document_info { width: 560px; }

.box {
  clear: both;
  background: url(images/bg/box_top.gif) left top no-repeat;
  padding-top: 10px;
  margin: 0 0 1em;
}

.box_content {
  background: url(images/bg/box_content.gif) left top repeat-y;
  padding: 0 10px 1px;
}

.box_bottom {
  background: url(images/bg/box_bottom.gif) left bottom no-repeat;
  height: 12px;
}

#secondary_content .box,
#event_panel .box { background-image: url(images/bg/sidebar_box_top.gif); }
#secondary_content .box_content,
#event_panel .box_content { background-image: url(images/bg/sidebar_box_content.gif); }
#secondary_content .box_bottom,
#event_panel .box_bottom { background-image: url(images/bg/sidebar_box_bottom.gif); }

#event_panel .box_content { padding: 5px 15px 1px; }

.event_address { background: url(images/bg/box_bottom_gray.gif) left bottom no-repeat; padding: 10px 10px 1px; }
.event_address p { margin-bottom: 10px; }

.rss_icon { margin-top: 4px; }

ul.short_list { margin: 1.5em 0 2em; }
ul.short_list li { border: none !important; margin: 0 0 1em !important; }

#publications_filter { max-height: 200px; overflow: auto; }

#photo_feature { width: 100%; height: 158px; overflow: hidden; clear: both; margin: -8px 0 1.5em; }
#photo_feature img { float: left; margin: 0; }

#secondary_content form { margin: 0 5px 1em; }
#secondary_content form input[type=text],
#secondary_content form textarea { width: 250px; }

#leadership_list { background: #f2f2f2; margin: -10px 0 10px; padding: 10px 0 10px 20px; }

.ui-accordion-header { outline: none; }

.article_show { padding-top: 26px; }

/* SEARCH ------------------------------------------------------------------------------*/

#search_box {
  background: url(images/bg/search_box_bg.gif) left top no-repeat;
  position: absolute;
  top: 98px;
  right: 0;
  width: 248px;
  height: 42px;
  padding: 3px 0 0 60px;
}

/*#search_box #search_str { width: 140px; height: 14px; float: left; margin-right: 5px; }*/
/*#search_box input[type=submit] { margin-top: 2px; float: left; }*/

#applesearch .sbox_l  {
	/*default styling*/
}

#applesearch .sbox_r  {
	/*default styling*/
}

#applesearch .sbox input {
	/*default styling*/
	width: 190px;
	float:left;
}

#content {
	clear: both;
}

#search_results {
  background: url(images/bg/search_results_bg_top.png) no-repeat;
  position: absolute;
  width: 631px;
  top: 120px;
  right: 40px;
  z-index: 9000;
  padding-top: 30px;
}

.search_results_content { 
  padding: 1px 20px 18px; 
  position: relative; 
  background: url(images/bg/search_results_bg_bottom.png) center bottom no-repeat;
  min-height: 250px;
}
.search_results_content .close_image { position: absolute; top: -3px; right: 20px; }

#search_results ul li { border-bottom: 1px dashed #D3C6AE; padding: 6px 0; overflow: hidden; }
#search_results ul li p { margin-bottom: 2px; line-height: 1.2em; }
#search_results ul li a { font-weight: bold; }
#search_results ul li p.name { font-size: 16px; }

.search_pagination { text-align: center; padding: 10px 0 2px; font-size: 15px; }
 
/* FOOTER ------------------------------------------------------------------------------------*/

#footer {
  height: 110px;
  background: url(images/bg/footer_bg.gif) left top repeat-x;
  position: relative;
  z-index: 100;
}

.footer_content { width: 950px; padding-top: 40px; margin: 0 auto; }

#footer #social_links { display: inline-block; vertical-align: middle; margin-right: 20px; margin-bottom: 0; }
#footer ul#footer_nav { display: inline-block; vertical-align: middle; margin-right: 20px;  }
#footer ul#footer_nav li { display: inline-block; vertical-align: middle; margin-top: 4px; border-right: 1px solid #ccc; line-height: 18px; padding: 0 10px;  }
#footer ul#footer_nav li.last { border: none; }
#footer .subscribe {  display: inline-block; vertical-align: middle; margin-right: 20px; width: 93px; height: 26px; line-height: 26px; text-align: center; text-decoration: none; background: url(images/buttons/blank_blue.png) no-repeat; color: #fff;  }
#footer p.copyright { display: inline-block; vertical-align: middle; margin: 4px 0 0; }

#social_links { margin-bottom: 10px; }
#social_links a { width: 27px; height: 27px; margin-right: 5px; overflow: hidden; text-indent: -9999px; display: inline-block; background-position: top center} 
#social_links a:hover { background-position: bottom left; }
#social_links a.facebook { background-image: url(images/icons/icon_facebook.png); }
#social_links a.twitter { background-image: url(images/icons/icon_twitter.png); }
#social_links a.linkedin { background-image: url(images/icons/icon_linkedin.png); }
#social_links a.tumblr { background-image: url(images/icons/icon_tumblr.png); }
#social_links a.flickr { background-image: url(images/icons/icon_flickr.png); }

/* TYPOGRAPHY -----------------------------------------------------------------------------------------------------*/

body { 
  font-size: .75em;
  color: #4d4d4d; 
  font-family: arial, sans-serif;
}

/* Headings
-------------------------------------------------------------- */

h1,h2,h3,h4,h5,h6 { font-weight: normal; }

h1 { font-size: 3em; line-height: 1; margin: .2em 0 0.5em; color: #003A66; }
h2 { font-size: 1.5em; margin: 0 0 0.5em; border-bottom: 2px solid #777; color: #777; font-weight: bold; clear: both; padding-bottom: 2px; text-transform: uppercase; letter-spacing: 2px; }
h3 { font-size: 1.5em; line-height: 1.25em; margin: 0 0 6px; }
h4 { font-size: 1.25em; line-height: 1.25; margin: 0 0 6px; }
h5 { font-size: 1em; margin: 0 0 6px; }
h6 { font-size: 1em; }

h1:first-child, h2:first-child { margin-top: 0; }

h1 img {
  vertical-align: middle;
}


/* Text elements
-------------------------------------------------------------- */

p           { margin: 0 0 1.5em; line-height: 1.6em; }
p.last      { margin-bottom: 0; }
p img.float    { float: left; margin: 1.5em 1.5em 1.5em 0; padding: 0; }
p img.top   { margin-top: 0; } /* Use this if the image is at the top of the <p>. */

p.caption   { text-align: center; font-style: italic; font-size: 1.2em; color: #999; }

ul, ol      { margin: 0; padding: 0; }
ul          { list-style-type: none; }
ol          { list-style-type: decimal; }
dl          { margin: 0; }
dl dt       { font-weight: bold; }
dd          { margin-left: 1.5em;}
ul li       { overflow: hidden; }

ul.bulleted { list-style-type: disc; margin-left: 20px; }
ul.bulleted li { overflow: visible; }

li.even     { background-color: #F2F2F2; }

#header ul, #footer ul { list-style-type: none; }

iframe      { border: 0; }

abbr, 
acronym     { border-bottom: 1px dotted #666; }
address     { margin-top: 1.5em; font-style: italic; }
del         { color:#666; }

blockquote  { margin: 0; padding: 1em .5em 0; color: #808080; font-style: italic; font-family: "Palatino", georgia, serif; font-size: 1.4em; background: url(images/bg/quote_left.gif) left top no-repeat; text-align: center; }
blockquote p { line-height: 1.3em; background: url(images/bg/quote_right.gif) right bottom no-repeat; padding-bottom: .75em; margin-bottom: 0; }
strong      { font-weight: bold; }
em,dfn      { font-style: italic; background: #ffc; color: #222; padding: 2px 5px; }
dfn         { font-weight: bold; }
pre,code    { margin: 1.5em 0; white-space: pre; }
pre,code,tt { font: 1em 'andale mono', 'monotype.com', 'lucida console', monospace; line-height: 1.5; } 
tt          { display: block; margin: 1.5em 0; line-height: 1.5; }

p.citation  { text-align: right; color: #FCBA63; font-family: "Trebuchet MS", sans-serif; font-style: italic; font-size: 1.1em; margin-right: 12px !important; line-height: 1.6em; }
cite        { display: block; color: #eee; margin-top: 4px; font-size: 1.3em; }

/* Because, boohoo, we have to support IE, but still want the real hr for semantic support */

div.hr {
	background: url(images/bg/hr.gif) left top repeat-x;
	clear:both;
	float:none;
	width:100%;
	height:3px;
	margin:0 0 1.4em;
}

hr { display: none; }

hr.clearboth, hr.clearleft {
	display: block;
	visibility: hidden;
	clear: both;
	margin: 0;
	padding: 0;
}

.last       { margin-right: 0 !important; }


/* LINKS
-------------------------------------------------------------- */

a:visited   { color: #003A66; }
a:hover     { color: #003A66; text-decoration: underline; }
a           { color: #003A66; text-decoration: none; }

a img { border: none; }

/* Tables
-------------------------------------------------------------- */

/*table   { width: 100%; margin: 1.4em 0; vertical-align: middle; border-left: 1px solid #ccc; border-right: 1px solid #ccc; border-top: 1px solid #ccc; }
th      { border-bottom: 1px solid #ccc; font-weight: normal; color: #777; vertical-align: baseline; text-align: left; background: url(images/bg/th_grad.png) left top repeat-x; }
td      { border-bottom: 1px solid #ccc; vertical-align: middle; }
th,td   { padding: 6px 5px 6px 5px; }
tfoot   { font-style: italic; }
caption { background: #ffc; }

tr.alt { background: #eee; }*/

/* Use this if you use span-x classes on th/td. */
/*table .last { padding-right: 0; } */


/* Forms
-------------------------------------------------------------- */

label              { display: block; margin-bottom: 3px; }
label.inline       { display: inline; }
textarea           { margin-bottom: 10px; }

fieldset           { border: none; }
fieldset div       { float: left; margin-right: 1em; }

form ul li         { margin-bottom: 1em; }

label span,
span.required      { color: red; }

p.spam_question    { width: 45px; line-height: 40px; float: left; margin-bottom: 0; }
input#captcha_answer { float: left; width: 40px !important; margin-top: 5px; }

form p { margin-bottom: 0; }

textarea, input[type=text], input[type=password] {
  border: 1px solid #222;
  border-right: 1px solid #999;
  border-bottom: 1px solid #999;
  font-family: verdana, arial, sans-serif;
  font-size: 16px;
  color: #333;
  padding: 3px 0;
}

textarea.error, input[type=text].error, input[type=password].error {
  border: 1px solid #f00;
  font-family: verdana, arial, sans-serif;
  font-size: 16px;
  color: #333;
  padding: 3px 0;
}

select.error {
  border: 1px solid #f00;
}

pre {
  background-color: #eee;
  padding: 10px;
  font-size: 11px;
}

.fieldWithErrors {
  float: none;
  margin: 0;
}

.fieldWithErrors * {
  background: url(images/bg/error_field_bg.png);
}

#errorExplanation {
  border: 2px solid #fff;
  padding: 4px 10px 6px;
  margin-bottom: 1em;
  background: #BE1E2D;
  color: #fff;
}

#errorExplanation h2, #errorExplanation p {
  display: none;
}

#errorExplanation ul li {
  list-style: square;
}

/* Some default classes
-------------------------------------------------------------- */

.small      { font-size: .8em; margin-bottom: 1.875em; line-height: 1.875em; }
.large      { font-size: 1.2em; line-height: 2.5em; margin-bottom: 1.25em; }
.quiet      { color: #888; }
.blurb      { font-size: 1.25em; line-height: 1.5em; font-style: italic; }

.hide       { display: none; }
.highlight  { background:#ff0; }
.added      { color:#060; }
.removed    { color:#900; }

.top        { margin-top:0; padding-top:0; }
.bottom     { margin-bottom:0; padding-bottom:0;border-bottom:none !important; }
.left       { float: left; }
.clear      { clear: both; }
.clearleft  { clear: left; }

.title      { font-size: 1.5em; font-weight: bold; }
.hide,
.hidden     { display:none; }

.flashes    { background: #FFFACC; border: 1px solid #ccc; width: 876px; margin: 0 auto; padding: 10px 18px; font-size: 1.2em; color: #716558;}

img.left    { margin: 0 8px 8px 0; }
img.photo {
  padding: 7px;
  border: 1px solid #bbb;
  margin-right: 18px;
}

.phone { padding-left: 21px; background: url(images/icons/phone.gif) left 1px no-repeat; }
.fax { padding-left: 21px; background: url(images/icons/fax.gif) left 1px no-repeat; }
.email { padding-left: 21px; background: url(images/icons/email.gif) left 1px no-repeat; }

.description p.phone { margin-bottom: 3px; }
.description h3 { font-weight: bold; font-size: 1.6em; }

#in_the_news_list .description h3 { margin-bottom: 0; }
#in_the_news_list .description p.date { margin-bottom: 0; }

/* CUSTOM TYPOGRAPHY
-------------------------------------------------------------- */

a.back_link { float: right; margin-bottom: 1.5em; }
a.more_link { color: #F0753F; }
a.view_all_link { color: #F0753F; float: right; margin-bottom: .5em; }

h2 a.view_all_link { float: right; border: none; font-size: 11px; font-weight: normal !important; letter-spacing: 0; text-transform: none; padding-top: 2px; }
#tw_fyi h2 a.view_all_link { color: #fff; }
.home_publications_accordion a.view_all_link { margin: 5px; }

p.notice { background: #FFFAD7 url(images/icons/notice.gif) 4px center no-repeat; padding: 7px 3px 6px 40px; clear: left; }
#facebox p.notice { margin-top: 1em; }

.push { height: 120px; clear: both; }

p.name { font-weight: bold; color: #003A66; font-size: 2em; margin-bottom: 0; line-height: 1em; }

.author { color: #888; font-size: 1.2em; margin-bottom: .75em; }
.author span { text-transform: uppercase; }

.pub_type, .topics { color: #F0753F; font-size: 12px; text-transform: uppercase; margin-bottom: 5px; line-height: 1em; }
.pub_type span { color: #888; }

.topics { color: #888; font-size: 11px; }
.topics_list { color: #F0753F; font-style: italic; margin-bottom: 16px; font-size: 14px; line-height: 1em; }

.title { font-weight: bold; color: #888; font-size: 1.3em; margin-bottom: 5px; }

.date { color: #F0753F; font-style: italic; font-size: 1.4em; margin-bottom: .75em; font-family: georgia, serif; }

a.centered { margin: 0 auto 1em; text-align: center; display: block; }
a.centered img { margin: 0 auto; }

.description { float: left; }

#view_full_size_link { 
  display:none;
  position: absolute;
  bottom: 8px;
  left: 8px;
  width: 170px; 
  color: #fff;
  background: url(images/bg/50_black.png);
  height: 30px;
  line-height: 30px;
  text-align: center;
}
#bio_photo:hover #view_full_size_link { display: block; }

#secondary_content .link_list { font-weight: bold; font-size: 1.2em; line-height: 1.8em; }

.box h2 { color: #F0753F; border-color: #F0753F; font-size: 1.3em; }

#press_release_list h2 { border: none; letter-spacing: normal; text-transform: none; }

#search_results h1 {
  color: #003A66; 
  border-bottom: 2px solid #003A66; 
  margin: 0 0 2px; 
  letter-spacing: 2px; 
  text-transform: uppercase; 
  font-size: 18px; 
  font-weight: bold; 
  padding-bottom: 2px;
}

.jobs_link { margin: -10px 0 1.5em; display: block; }

#primary_content a#share_this_link_sm { background: url(images/icons/share_this.gif) left center no-repeat; line-height: 22px; font-size: 15px; display: block; font-weight: bold; padding-left: 23px; float: right; }

h2#job_title { padding-right: 100px; }

/* BLOG STYLES -----*/

a.more-link, .navigation a, .navigation { color: #F0753F; }

.navigation a { line-height: 35px; }

.navigation { overflow: auto; width: 100%; }
.navigation div.alignleft { float: left; }
.navigation div.alignright { float: right; }

.post p.date { float: right; font-size: 1.3em; }

.author a { text-transform: uppercase; }

p.postmetadata { border: 1px dashed #ccc; border-left: none; border-right: none; line-height: 30px; clear: left; overflow:hidden; }

h2 a:hover { text-decoration: none; }

span.post_categories { text-align: right; float:right; }

.author_images { float: left; clear: left; width: 56px; margin-right:10px; }
.author_images img.avatar { padding: 3px; width: 45px; height: 45px; margin-bottom: 10px; }

.post { margin-bottom:4em; }
.post .description { width:560px; }
.post h2 { color: #003A66; text-transform:none; border:none; letter-spacing:0; color:#003A66; padding:none; font-size:1.75em; }
.entry { font-size: 1.1em; }

h2.pagetitle { margin-bottom:2em; text-transform:none; border:none; letter-spacing:0; color:#666; padding:none; font-size:1.5em; }

#share_this_container { margin-bottom: 1em; }

/* TEXTILE CONTENT -------------------------------------------------------------- */

.textile_content h1 { font-weight: bold; font-size: 1.8em; }
.textile_content h2 { font-weight: bold; font-size: 1.5em; color: #003A66; border: none; padding: none; letter-spacing: 0; text-transform: none; }
.textile_content em { background: none; padding: 0; font-style: italic; }

.textile_content ol,
.textile_content ul { padding-left: 2em; margin-bottom: 1.5em; }
.textile_content ol li,
.textile_content ul li { margin-bottom: .75em; overflow: visible; }
.textile_content ul { list-style-type: disc; overflow: visible; padding-left: 1.75em; } 

.textile_content a { font-weight: bold; }

.textile_content hr { display: block; }

.about_us_content h2,
#internships h2 { 
  color: #F0753F;
  border-bottom: 2px solid #F0753F;
  padding-bottom: 2px;
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 1.5em; 
  margin: 0 0 0.5em;
}

#internships h2 { color: #777; border-color: #777; }

#search_results .search_results_list li .textile_content h1,
#search_results .search_results_list li .textile_content h2,
#search_results .search_results_list li .textile_content h3,
#search_results .search_results_list li .textile_content h4,
#search_results .search_results_list li .textile_content h5,
#search_results .search_results_list li .textile_content h6 { font-size: 12px !important; font-weight: bold; color: #555; display: inline; padding: 0; margin: 0; text-transform: none !important; text-align: left !important; letter-spacing: 0 !important; border: none !important; }
#search_results .search_results_list li .textile_content h1 { font-size: 18px !important; }
#search_results .search_results_list li .textile_content h2 { font-size: 15px !important; }
#search_results .search_results_list li .textile_content h3 { font-size: 13px !important; }
#search_results .search_results_list li .textile_content p { display: inline; margin: 0; line-height: 1em; font-size: 12px; text-align: left !important; }
#search_results .search_results_list li .textile_content ul,
#search_results .search_results_list li .textile_content ol { display: none; }

/* TITLES -------------------------------------------------------------- */

h1.section_title {
  text-indent: -5000px;
  height: 36px;
  margin: 0 0 20px -4px;
  background-position: left top;
  background-repeat: no-repeat;
}

h1#third_way_perspectives  { background-image: url(images/titles/third_way_perspectives.gif); width: 345px; margin-bottom: 40px; }

h1.with_rss { float: left; width: 300px; }
