/* $Id: html-elements.css,v 1.1 2008/02/15 16:22:09 johnalbin Exp $ */

/****
 **** HTML ELEMENT STYLING
 ****/


/** fonts **/
  /*
   * Our font size and line height declarations are based on the following ALA
   * article:
   *   http://www.alistapart.com/articles/howtosizetextincss
   *
   * All modern browsrs use a 16px default font size. Specifying the font-size
   * and line-height in ems (relative to the 16px default font) allows the user
   * to resize the font in the browser and produces the most consistent results
   * across different browsers.
   */
  body
  {
    font-size: 100%; /* Fixes exaggerated text resizing in IE6 and IE7 */
  }

  #page,
	#closure-blocks, /* Needs to get added to the closure blocks since it is pulled outside of page */
	#footer, /* Needs to get added to footer since it is pulled outside of page */
	#newsletter-top /* needed on newsletter pages for the top help text */
  {
    /*
     * To use a 12px font size on the page, delete the 14px declarations.
     * to use a 14px font size on the page, delete the 12px declarations.
     */

    /* Use a 13px base font size with a 20px line height */
    font-size: 0.8125em; /* 16px x .8125 = 13px */
    line-height: 1.5385em; /* 13px x 1.5385 = 20px */

  }

	.node-type-newsletter-display-no-sidebar #footer /* The footer on newsletter pages needs to be reset */
	{
		font-size: 1em;
	}

	body.with-font-medium #page #main #content #content-area .content-resize
  {
    /* Use a 16px base font size with a 21px line height */
    font-size: 1.154em; /* 1.154 x 13 = 15px */
    line-height: 1.467em; /* 1.467 x 15px = 22px */
  }

  body.with-font-large #page #main #content #content-area .content-resize
  {
    /* Use a 18px base font size with a 23px line height */
    font-size: 1.308em; /* 1.308 x 13 = 17px */
    line-height: 1.412em; /* 1.412 x 17 = 24px */
  }

  body, caption, th, td, input, textarea, select, option, legend, fieldset
  {
    /* The following font family declarations are based on the Microsoft core
     * web fonts which are common fonts available on most computer systems. The
     * Bitstream Vera fonts are commonly available on Linux systems where the MS
     * fonts are less common.
     *
     * A user's web browser will look at the comma-separated list and will
     * attempt to use each font in turn until it finds one that is available
     * on the user's computer. The final "generic" font (sans-serif or serif)
     * hints at what type of font to use if the web browser doesn't find any
     * of the fonts in the list.

    font-family: "Times New Roman", Times, Georgia, "Bitstream Vera Serif", serif;
    font-family: Times, "Times New Roman", Georgia, "Bitstream Vera Serif", serif;
    font-family: Georgia, "Times New Roman", "Bitstream Vera Serif", serif;

    font-family: Verdana, Tahoma, Arial, Helvetica, "Bitstream Vera Sans", sans-serif;
    font-family: Tahoma, Verdana, Arial, Helvetica, "Bitstream Vera Sans", sans-serif;
    font-family: Helvetica, Arial, "Bitstream Vera Sans", sans-serif;
    font-family: Arial, Helvetica, "Bitstream Vera Sans", sans-serif;

    font-family: "Bitstream Vera Sans Mono", "Courier New", monospace;

     */

    font-family: Georgia, "Times New Roman", "Bitstream Vera Serif", serif;
  }

	body
	{
		color:#2b3841;
	}

  pre, code
  {
    font-size: 1.1em; /* Monospace fonts can be hard to read */
    font-family: "Bitstream Vera Sans Mono", "Courier New", monospace;
  }

/** headings **/
  h1 /*Headings have a default value of 46px */
  {
    font-size: 2.938em; /* 3.538 x 13 = 3.538 */ 
    line-height: 1em;
		font-weight: bold;
		font-family: Lucida Grande, Arial, Helvetica, sans-serif;
    margin-top: 0;
    margin-bottom: 0.5em; /* 0.5em is equavalent to 1em in the page's base font.
                             Remember, a margin specified in ems is relative to
                             the element's font-size, not to the pages' base
                             font size. So, for example, if we want a 1em margin
                             (relative to the base font), we have to divide that
                             length by the element's font-size:
                             1em / 2em = 0.5em */
  }

  h2
  {
    font-size: 1em;
    line-height: 1.3em;
    margin-top: 0em; /* Equivalent to 20px in the page's base font: 1.0256 x 19.5px = 20px */
    margin-bottom: 1.0256em;
  }

  h3
  {
    font-size: 1.3em;
    line-height: 1.3em;
    margin-top: 0em; /* Equivalent to 20px in the page's base font: 1.183 x 16.9px = 20px */
    margin-bottom: 1.183em;
  }

  h4, h5, h6
  {
    font-size: 1.1em;
    line-height: 1.3em;
    margin-top: 0em; /* Equivalent to 20px in the page's base font: 1.398 x 14.3px = 20px */
    margin-bottom: 1.398em;
  }

/** block-level elements **/
  p, ul, ol, dl, pre, table, fieldset, blockquote
  {
    margin: 0 0 1.5385em 0;
  }

	blockquote
	{
		margin-left: 1.5385em;
		margin-right: 1.5385em;
	}

	label
	{
		font-weight: bold;
	}

/** lists **/
  /* standardize list item indentation */
  ul, ol
  {
    margin-left: 0;
    padding-left: 2em;
  }

  .block ul /* Drupal overrides */
  {
    margin: 0 0 1em 0;
    padding: 0 0 0 2em;
  }

	.item-list ul
	{
    margin: 0 0 0 0;
    padding: 0 0 0 0;
  }

  ul ul, ul ol,
  ol ol, ol ul,
  .block ul ul, .block ul ol,
  .block ol ol, .block ol ul,
  .item-list ul ul, .item-list ul ol,
  .item-list ol ol, .item-list ol ul
  {
    margin: 0;
  }

  li
  {
    margin: 0;
    padding: 0;
  }

  .item-list ul li /* Drupal override */
  {
    margin: 0 0 8px;
    padding: 0 0 9px;
    list-style: none;
		list-style-image: none;
  }

	.item-list ul li.views-row-last
	{
		padding: 0 0 0 0;
	}

	#sidebar-right .item-list ol,
	.composite-column-last .item-list ol
  {
    margin: 0 0 10px 1.416em;
		padding: 0 0 0 0;
  }

	#sidebar-right .item-list ol li, /* Drupal override */
	.composite-column-last .item-list ol li
  {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
		vertical-align: top;
		list-style-position: outside;
  }

  ul.menu li, /* Drupal override */
  li.expanded,
  li.collapsed,
  li.leaf
  {
    margin: 0;
    padding: 0;
  }

  ul          { list-style-type: disc; }
  ul ul       { list-style-type: circle; }
  ul ul ul    { list-style-type: square; }
  ul ul ul ul { list-style-type: circle; }
  ol          { list-style-type: decimal; }
  ol ol       { list-style-type: lower-alpha; }
  ol ol ol    { list-style-type: decimal; }

  dt
  {
    margin: 0;
    padding: 0;
  }

  dd
  {
    margin: 0 0 0 2em;
    padding: 0;
  }

/** links **/
  /* The order of link states are based on Eric Meyer's article:
   * http://meyerweb.com/eric/thoughts/2007/06/11/who-ordered-the-link-states
   */
  a:link
  {
		color:#004276;
		text-decoration:none;
  }

  a:visited
  {
		color:#004276;
		text-decoration:none;
  }

  a:hover,
  a:focus
  {
		color:#004276;
		text-decoration:underline;
  }

  a:active
  {
		color:#004276;
		text-decoration:underline;
  }

/** tables **/
  /* Override Drupal default CSS */
  table
  {
    border-collapse: collapse;
  }
	
	table
	{
		display: block;
		margin: 0 0 46px;
		font-size: 0.846em; /* 0.846 x 13px = 11px */
	}

	thead
	{
		display: block;
	}

	tbody
	{
		display: block;
	}

  th,
  thead th,
  tbody th
  {
		font-style: italic;
		font-weight: normal;
    text-align: left;
		color: #FFF;
		padding-left: 10px;
    padding-right: 0;
    border-bottom: none;
		background: #1a1a1a;
  }

	thead tr
	{
		height: 29px;
		display: table;
		width: 633px;
	}

  tbody
  {
    border-top: none;
  }

	tr.even, tr.odd
	{
		background: none;
	}

/** abbreviations **/
  abbr
  {
    border-bottom: 1px dotted #666;
    cursor: help;
    white-space: nowrap;
  }

  /* Date-based "abbreviations" show computer-friendly timestamps which are not
     human-friendly. */
  abbr.created
  {
    border: none;
    cursor: auto;
    white-space: normal;
  }

/** images **/
  img
  {
    border: 0;
  }

/** horizontal rules **/
  hr
  {
    height: 1px;
    border: 0px none;
		margin: 0 0 1.5385em 0;
  }

/** forms **/
  form
  {
    margin: 0;
    padding: 0;
  }

  fieldset
  {
    margin: 0 0 0 0;
    padding: 0 0 0 0;
		border: 0px none;
  }
