/* -------------------------------------------------------------- 
   
   typography.css
   * Sets up some sensible default typography.
  
   Based on work by:
   * Nathan Borror     [playgroundblues.com]
   * Jeff Croft        [jeffcroft.com]
   * Christian Metts   [mintchaos.com]
   * Wilson Miner      [wilsonminer.com]
   * Richard Rutter    [clagnut.com]
   
   Read more about using a baseline here:
   * alistapart.com/articles/settingtypeontheweb
  
-------------------------------------------------------------- */

/* This is where you set your desired font size. The line-heights 
   and vertical margins are automatically calculated from this. 
   The percentage is of 16px (0.75 * 16px = 12px). */
   
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; }

#press_release_heading h3 { margin-bottom: 1em; }
#press_release_heading p.date { line-height: 1em; }


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

.textile_content h1,
.textile_content h2,
.textile_content h3, 
.textile_content h4, 
.textile_content h5 { margin-bottom: 1.15em; font-weight: normal; color: #000; line-height: 1.2em; padding: 0; }

.textile_content h1 { font-size: 1.9em; }
.textile_content h2 { font-size: 1.7em; border: none; padding: none; letter-spacing: 0; text-transform: none; }
.textile_content h3 { font-size: 1.5em; }
.textile_content h4 { font-size: 1.3em; }
.textile_content h5 { font-size: 1.1em; }

.textile_content h1.bold, .textile_content h2.bold, .textile_content h3.bold,  .textile_content h4.bold,  .textile_content h5.bold { font-weight: bold; }
.textile_content h1.shaded, .textile_content h2.shaded, .textile_content h3.shaded, .textile_content h4.shaded, .textile_content h5.shaded { padding: 3px 8px; background: #eee; }

.textile_content a { font-weight: bold; }
.textile_content p  { line-height: 1.4em; }
.textile_content em { background: none; padding: 0; font-style: italic; color: inherit; }
.textile_content hr { display: block; }
.textile_content blockquote { padding: 0 1em; margin: 1.5em 0; text-align: left; }
.textile_content blockquote p { padding: 0; }

.textile_content ol,
.textile_content ul { padding-left: 2em; margin-bottom: 1.5em; margin-top: 1.5em; line-height: 1.4em; }
.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 ul ul { list-style-type: circle; }
.textile_content ul ul ul { list-style-type: square; }
.textile_content ol ol { list-style-type: lower-alpha; }
.textile_content ol ol ol { list-style-type: lower-roman; }

.textile_content dl { margin: 1.5em 0; line-height: 1.4em; }
.textile_content dl dt,
.textile_content dl dd { margin-bottom: .75em; }
.textile_content dl dd p { margin-bottom: .75em; }

.textile_content table { margin: 1.5em 0; border: 1px solid #ccc; border-bottom: 0; border-right: 0; width: 100%; border-spacing: 0; }
.textile_content table th { text-align: left; background: #eee; border-spacing: 0; padding: 5px 10px; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; }
.textile_content table td { border-spacing: 0; padding: 5px 10px; border-bottom: 1px solid #ccc; border-right: 1px solid #ccc; }

.textile_content div { margin: 1.5em 0; border: 1px solid #aaa; background: #E8EFFF; font-size: 1.1em; padding: 12px; line-height: 1.4em; color: #111; }
.textile_content div:first-letter { float: left; font-size: 5em; padding: 0 4px 0 0; line-height: 1em; font-family: times, serif; }

.textile_content div.callout { font-size: 1em; border: none; border-left: 10px solid #F0753F; background: #fff; padding: 0 0 0 10px; }
.textile_content div.callout h2 { text-transform: uppercase; letter-spacing: 2px; color: #F0753F; margin-bottom: 5px; font-size: 1.5em; }
.textile_content div.callout p { margin-bottom: 0; color: #003A66; font-size: 1.4em; }

#text_size_wrapper,
.textile_content .text_size { background: none; border: none; padding: 0; margin: 0; }
#text_size_wrapper:first-letter,
.textile_content .text_size:first-letter,
#fresh_thinking:first-letter,
#fresh_thinking div.textile_content:first-letter,
div.callout:first-letter { float: none; font-size: 1em; margin: 0; padding:0; font-family: arial, sans-serif; }

.text_size_normal { font-size: 1.0em !important; }
.text_size_medium { font-size: 1.25em !important; }
.text_size_large { font-size: 1.5em !important; }

.textile_content .text_size { 
  background: #f2f2f2; 
  border: 1px solid #ccc; 
  border-top: none;
  border-right: none;
  text-transform: uppercase;
  font-size: 11px;
  padding: 3px 10px 2px;
  position: absolute;
  top: 0;
  right: 0;
}

.text_size a { margin-right: 3px; }
.text_size #med_text { font-size: 12px; }
.text_size #lg_text { font-size: 14px; }

.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: #003A66; border-color: #003A66; }

#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#browse_experts_title    { background-image: url(/images/titles/browse_experts.gif); }
h1#about_us                { background-image: url(/images/titles/about_us.gif); }
h1#board_of_trustees       { background-image: url(/images/titles/board_of_trustees.gif); }
h1#browse_publications     { background-image: url(/images/titles/browse_publications.gif); }
h1#contact                 { background-image: url(/images/titles/contact.gif); }
h1#contribute              { background-image: url(/images/titles/contribute.gif); }
h1#links                   { background-image: url(/images/titles/links.gif); }
h1#event_transcript        { background-image: url(/images/titles/event_transcript.gif); }
h1#honorary_co-chair       { background-image: url(/images/titles/honorary_co-chair.gif); }
h1#honorary_co-chairs      { background-image: url(/images/titles/honorary_co-chairs.gif); }
h1#in_the_news             { background-image: url(/images/titles/in_the_news.gif); }
h1#third_way_internships   { background-image: url(/images/titles/internships.gif); }
h1#third_way_links         { background-image: url(/images/titles/links.gif); }
h1#past_events             { background-image: url(/images/titles/past_events.gif); }
h1#press_releases          { background-image: url(/images/titles/press_releases.gif); }
h1#press_room              { background-image: url(/images/titles/press_room.gif); }
h1#third_way_programs      { background-image: url(/images/titles/programs.gif); }
h1#third_way_expert        { background-image: url(/images/titles/third_way_expert.gif); }
h1#third_way_jobs          { background-image: url(/images/titles/third_way_jobs.gif); width: 250px; }
h1#third_way_perspectives  { background-image: url(/images/titles/third_way_perspectives.gif); }
h1#third_way_staff         { background-image: url(/images/titles/third_way_staff.gif); }
h1#upcoming_events         { background-image: url(/images/titles/upcoming_events.gif); }
/*h1# { background-image: url(/images/titles/.gif); }*/

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

.program_title {
  display: block;
  text-indent: -5000px;
  height: 31px;
  background-position: left top;
  background-repeat: no-repeat;
}

h1.program_title { margin-left: 115px; }
#home_program_list .program_title { margin-left: 45px; height: 21px; }

#culture_program { background-image: url(/images/titles/the_culture_program.gif); }
#economic_program { background-image: url(/images/titles/the_economic_program.gif); }
#national_security_program { background-image: url(/images/titles/the_national_security_program.gif); }
#clean_energy_program { background-image: url(/images/titles/cep_program_page_header.png); }

#home_program_list #culture_program { background-image: url(/images/titles/culture_program_sm.gif); }
#home_program_list #economic_program { background-image: url(/images/titles/economic_program_sm.gif); }
#home_program_list #national_security_program { background-image: url(/images/titles/national_security_program_sm.gif); }
#home_program_list #clean_energy_program { background-image: url(/images/titles/cep_home_header.png); }