﻿/* -------------------------------------------------------------- 
  
    base.css
    Includes reset styles, modification classes and base styles 
    for typography and common layout elements such as tables, 
    forms and grids.

    Content:
    01 - Reset styles
    02 - Modification classes
    03 - Base typography
        03.01 - Block level elements
        03.02 - Inline (text level) elements
    04 - Tables
    05 - Forms
    06 - Thickbox

---------------------------------------------------------------*/

/*---------------------------------------------------------------
01 - Reset styles (see http://meyerweb.com/eric/tools/css/reset/)
---------------------------------------------------------------*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td
{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	background: transparent;
}

img
{ vertical-align: bottom; }

body
{ line-height: 1; }

ol, ul
{ list-style: none; }

blockquote, q
{ quotes: none;  }

blockquote:before, blockquote:after,
q:before, q:after
{
	content: '';
	content: none;
}

/* remember to define focus styles! */
:focus
{ outline: 0; }

/* remember to highlight inserts somehow! */
ins
{ text-decoration: none; }

del
{ text-decoration: line-through; }

/* tables still need 'cellspacing="0"' in the markup */
table
{
	border-collapse: collapse;
	border-spacing: 0;
}

/*---------------------------------------------------------------
02 - Modification classes
---------------------------------------------------------------*/

.positionRelative
{ position: relative; }

.positionAbsolute
{ position: absolute; }

.positionFixed
{ position: fixed; }

.positionStatic
{ position: static; }

.clearLeft
{ clear: left !important; }

.clearRight
{ clear: right !important; }

.clearBoth
{ clear: both !important; }

.clearNone
{ clear: none !important; }

.floatLeft
{ float: left !important; }

.floatRight
{ float: right !important; }

.floatNone
{ float: none !important; }

.displayInline
{ display: inline !important; }

.displayBlock
{ display: block !important; }

.displayNone
{ display: none !important; }

.visibilityHidden
{ visibility: hidden !important; }

.visibilityVisible
{ visibility: visible !important; }

.textAlignRight
{ text-align: right !important; }

.textAlignLeft
{ text-align: left !important; }

.textAlignCenter
{ text-align: center !important; }

.textAlignJustify
{ text-align: justify !important; }

.textDecorationUnderline
{ text-decoration: underline !important; }

.textDecorationNone
{ text-decoration: none !important; }

.widthAuto
{ width: auto !important; }

.width100
{ width: 100% !important; }

.width75
{ width: 75% !important; }

.width66
{ width: 66% !important; }

.width50
{ width: 50% !important; }

.width33
{ width: 33% !important; }

.width25
{ width: 25% !important; }

.width10
{ width: 10% !important; }

/* any element with this class will be hidden off screen, but should still be seen by screen readers */
.nonVisual
{
    position: absolute !important;
    left: -9000px !important;
    top: 0 !important;
}

.leader
{ margin-bottom: 0 !important; }

/*---------------------------------------------------------------
03 - Base typography
---------------------------------------------------------------*/

/*
    Typography rules:
    * the base font-size is set relative to 10px on the body element, therefore 0.1em is the equivalent of 1px
    * if a font-size is set on a parent element, the font-size of the parent element becomes the base font-size
    * all typographical measurements should be relative (i.e. ems)
    * typographical measurements are calculated by (desired value(px equiv) / element font size(px equiv))em
*/

/*---------------------------------------------------------------
03.01 - Block level elements
---------------------------------------------------------------*/

body
{
    font: 62.5%/1.5 Arial, Helvetica, Verdana, sans-serif;
    color: #333;
    background-color: #fff;
}

h1
{
    margin: 0 0 0.607em; /*0 0 17px*/
    font-size: 2.8em; /*28px*/
    font-weight: bold;
    line-height: 1.357; /*38px*/
    color: #002c5f;
}

h2
{
    margin: 0 0 0.5em; /*0 0 9px*/
    font-size: 1.8em; /*18px*/
    font-weight: bold;
    line-height: 1.333; /*24px*/
    color: #002c5f;
}

h3
{
    margin: 0 0 0.571em; /*0 0 8px*/
    font-size: 1.4em; /*14px*/
    font-weight: bold;
    line-height: 1.571; /*22px*/
    color: #002c5f;
}

h4
{
    margin: 0 0 0.923em; /*0 0 12px*/
    font-size: 1.3em; /*13px*/
    font-weight: bold;
    line-height: 1.384; /*18px*/
    color: #002c5f;
}

p
{
    margin: 0 0 1.363em; /*0 0 15px*/
    font-size: 1.1em; /*11px*/
    line-height: 1.363; /*15px*/
}

blockquote
{
    padding: 0 15px;
}
    
    blockquote p
    { font-style: italic; }

address
{
    margin: 0 0 1.363em; /*0 0 15px*/
    font-size: 1.1em; /*11px*/
    line-height: 1.363; /*15px*/
    font-style: normal;
}
    
.listLeader
{ margin-bottom: 0; }

li
{
    margin-bottom: 1.363em;
    font-size: 1.1em; /*11px*/
    line-height: 1.363; /*15px*/
}

    li li
    {
        font-size: 1em; /*11px*/
    }

ul, ol
{ margin: 0 2.4em 1.5em; /*0 24px 15px*/ }

    li ul, li ol
    { margin: 0 2.4em; /*0 24px*/ }

    ul
    { list-style-type: disc; }

        ul.horizontal
        {
            margin: 1.5em 0; /*15px 0*/
            list-style-type: none;
            overflow: hidden;
        }

            ul.horizontal li
            {
                float: left;
                padding: 0 7px;
            }

            ul.horizontal li.first
            {
                padding-left: 0;
            }
            
	        ul.horizontal.separated li
	        {
	            padding-left: 6px;
		        border-left: 1px solid #333;
	        }
            
	        ul.horizontal.separated li.first
	        {
                padding-left: 0;
		        border: 0;
	        }

    ol
    { list-style-type: decimal; }

        ol.horizontal
        {
            margin: 1.5em 0; /*15px 0*/
            list-style-type: none;
            overflow: hidden;
        }

            ol.horizontal li
            {
                float: left;
                padding: 0 7px;
            }

            ol.horizontal li.first
            {
                padding-left: 0;
            }
            
ul.compact li,
ol.compact li
{
    margin: 0;
}
            
dl
{
    overflow: hidden;
}

dt, dd
{
    font-size: 1.1em; /*11px*/
    line-height: 1.363; /*15px*/
}

dt
{
    clear: both;
    float: left;
    width: 100px;
    padding: 0.181em 20px 0.272em 0;
    font-weight: bold;
    text-transform: uppercase;
}

dd
{
    clear: right;
    float: right;
    width: 411px;
    padding: 0.181em 0 0.272em; 
    margin-bottom: 1.363em;  
}

    dd li
    { font-size: 1em; }

/*---------------------------------------------------------------
03.02 - Inline (text level) elements
---------------------------------------------------------------*/

abbr[title], acronym[title], dfn[title]
{
    border-bottom: 1px dashed #888;
    cursor: help;
}

    acronym
    {
        letter-spacing: 0.083em;
        text-transform: uppercase;
    }

del
{
    color: #888;
    text-decoration: line-through;
}

strong, dfn
{ font-weight: bold; }

em, dfn, cite
{ font-style: italic; }

big
{ font-size: 1.09em;/*12px*/ }

small, sup, sub
{ font-size: 0.909em;/*10px*/ }

    sup
    { vertical-align: super; }

    sub
    { vertical-align: sub; }

code, kbd
{ font-family: 'andale mono', 'monotype.com', 'lucida console', monospace; white-space: pre; }

a
{
    color: #002c5f;
    text-decoration: underline;
    cursor: pointer;
}

    a:focus, a:hover
    { text-decoration: none; }

/*---------------------------------------------------------------
04 - Tables
---------------------------------------------------------------*/
table
{
    margin-bottom: 1.5em;
}

    table thead th
    {
        padding: 0 12px;
        border-bottom: 1px solid #d0d0d0;
        font-size: 1.4em;/*14px*/
        line-height: 1.571; /*22px*/
        font-weight: bold;
        text-align: center;
    }
    
    table tbody th,
    table tbody td,    
    table tfoot th,
    table tfoot td 
    {
        padding: 0 12px;
        border-width: 0 1px 1px 0;
        border-style: solid;
        border-color: #d0d0d0;
        font-size: 1.2em;
        line-height: 1.25;
        text-align: left;
    }
    
    table tbody th
    {
        font-weight: bold;
    }
    
    table tbody th.last,    
    table tbody td.last
    {
        border-width: 0 0 1px;
    }
    
    table tfoot th
    {
        padding: 0 12px;
    }
    
    table tfoot td
    {
        border-bottom-width: 0;
    }
    
    table tfoot td.last
    {
        border-width: 0;
    }

/*---------------------------------------------------------------
05 - Forms
---------------------------------------------------------------*/
legend
{
    margin: 0 0 0.5em; /*0 0 9px*/
    font-size: 1.8em; /*18px*/
    font-weight: bold;
    line-height: 1.333; /*24px*/
    color: #002c5f;
}

    legend.nonVisual
    {
        display: none;
        visibility: hidden;
    }

div.formInput
{
    clear: both;
    width: 531px;
    margin-bottom: 1.5em;
    overflow: hidden;
}

div.formInput.medium
{
    width: 331px;
}

    div.formInput label
    {
        float: left;
        display: block;
        width: 100px;
        padding: 0.181em 20px 0.272em 0;
        font-size: 1.1em;
        line-height: 1.363;
        font-weight: bold;
        text-transform: uppercase;
    }

        div.formInput label em.required
        {
            position: relative;
            top: -2px;
            font-size: 1.09em;
            color: #e00;
        }
    
    div.formInput input.text, 
    div.formInput input.file, 
    div.formInput input.checkbox, 
    div.formInput span.checkbox input, 
    div.formInput input.radio, 
    div.formInput span.radio input, 
    div.formInput textarea, 
    div.formInput select
    {
        padding: 0;
        margin: 0;
        font-family: inherit;
        font-size: 1.1em;
        line-height: 1.363;
    }
    
    div.formInput input.text,  
    div.formInput input.file, 
    div.formInput textarea, 
    div.formInput select
    {
        float: left;
        display: block;
        width: 201px;
        padding: 0.181em 4px 0.272em;
        border-width: 1px;
        border-style: solid;
        border-color: #656565 #ccc #ccc #656565;
    }
    
    div.formInput input.text.medium
    {
        width: 120px;
    }
    
    div.formInput input.text.small
    {
        width: 60px;
    }
    
    div.formInput input.file
    {
        width: 211px;
    }
    
    div.formInput select
    {
        width: 211px;
        padding-left: 0;
        padding-right: 0;
    }
    
    div.formInput select.medium
    {
        width: 130px;
    }
    
    div.formInput select.small
    {
        width: 70px;
    }
    
    div.formInput input.submit.floatLeft
    {
        margin-left: 10px;
    }
    
    div.formInput span.validation
    {
        position: relative;
        left: -3px;
        float: right;
        width: 408px;
        font-size: 1.1em;
        line-height: 1.363;
        color: #e00 !important;
    }
    
    div.formInput.medium span.validation
    {
        width: 208px;
    }
    
    div.formInput span.information
    {
        clear: both;
        float: left;
        display: block;
        width: 100px;
        padding-right: 20px;
        font-size: 1.1em;
        line-height: 1.363;
    }

div.formInput.inputFirst
{
    position: relative;
}

div.formInput.inputFirst label
{
    float: none;
    width: auto;
    padding: 0.181em 0 0.272em 24px;
}

    div.formInput.inputFirst input.radio,
    div.formInput.inputFirst span.radio input,
    div.formInput.inputFirst input.checkbox,
    div.formInput.inputFirst span.checkbox input
    {
        position: absolute;
        left: 0;
        top: 0;
    }

div.formInputGroup
{
    clear: both;
    overflow: hidden;
}

div.formInputGroup.medium
{
    width: 331px;
}

    div.formInputGroup div.formInput
    {
        width: auto;
    }

div.formInputGroup.radioButtonList,
div.formInputGroup.checkboxList
{
    margin-bottom: 1.5em;
}

    div.formInputGroup.radioButtonList ul,
    div.formInputGroup.checkboxList ul
    {
        float: left;
        margin: 0;
        padding: 0;
    }

    div.formInputGroup.medium.radioButtonList ul,
    div.formInputGroup.medium.checkboxList ul
    {
        width: 209px;
    }

        div.formInputGroup.radioButtonList ul li,
        div.formInputGroup.checkboxList ul li
        {
            margin-bottom: 0;
        }

            div.formInputGroup.radioButtonList ul li div.formInput,
            div.formInputGroup.checkboxList ul li div.formInput
            {
                margin-bottom: 0;
            }

                div.formInputGroup.radioButtonList ul li div.formInput label,
                div.formInputGroup.checkboxList ul li div.formInput label
                {
                    font-size: 1em;
                }

    div.formInputGroup span.title
    {
        float: left;
        display: block;
        width: 100px;
        padding: 0.181em 20px 0.272em 0;
        font-size: 1.1em;
        line-height: 1.363;
        font-weight: bold;
        text-transform: uppercase;
    }

        div.formInputGroup span.title em.required
        {
            position: relative;
            top: -2px;
            font-size: 1.09em;
            color: #e00;
        }
        
div.formInputGroup.creditCardDate
{
    margin-bottom: 1.5em;
    overflow: hidden;
}
        
    div.formInputGroup.creditCardDate div.formInput
    {
        clear: none;
        float: left;
        margin: 0;
        padding-right: 20px;
    }
            
        div.formInputGroup.creditCardDate div.formInput label,
        div.formInputGroup.creditCardDate div.formInput select
        {
            width: auto;
        }
        
div.formOptions
{
    margin: 1.5em 0;
    padding: 0 15px;
    overflow: hidden;
}

    div.formOptions.alignWithInputs
    {
        width: 331px;
    }

/*---------------------------------------------------------------
06 - Thickbox
---------------------------------------------------------------*/
    
/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> global settings needed for thickbox <<<-----------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
*{padding: 0; margin: 0;}

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> thickbox specific link and font settings <<<------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
/*
#TB_window {
	font: 12px Arial, Helvetica, sans-serif;
	color: #333333;
}

#TB_secondLine {
	font: 10px Arial, Helvetica, sans-serif;
	color:#666666;
}


#TB_window a:link {color: #666666;}
#TB_window a:visited {color: #666666;}
#TB_window a:hover {color: #000;}
#TB_window a:active {color: #666666;}
#TB_window a:focus{color: #666666;}
*/

/* ----------------------------------------------------------------------------------------------------------------*/
/* ---------->>> thickbox settings <<<-----------------------------------------------------------------------------*/
/* ----------------------------------------------------------------------------------------------------------------*/
#TB_overlay {
	position: fixed;
	z-index:100;
	top: 0px;
	left: 0px;
	height:100%;
	width:100%;
}

.TB_overlayMacFFBGHack {background: url('../../javascript/jquery/plugins/thickbox/macFFBgHack.png') repeat;}
.TB_overlayBG {
	background-color:#000;
	filter:alpha(opacity=75);
	-moz-opacity: 0.75;
	opacity: 0.75;
}

#TB_window {
	position: fixed;
	background: #ffffff;
	z-index: 102;
	color:#000000;
	display:none;
	/*border: 4px solid #525252;*/
	text-align:left;
	top:50%;
	left:50%;
	padding-bottom: 30px;
	background-color: #012864;
	border-bottom: 5px solid #ca005d;
}

#TB_window img#TB_Image {
	display:block;
	margin: 15px 0 0 15px;
	border-right: 1px solid #ccc;
	border-bottom: 1px solid #ccc;
	border-top: 1px solid #666;
	border-left: 1px solid #666;
}

#TB_caption{
	height:25px;
	padding:7px 30px 10px 25px;
	float:left;
}

#TB_closeWindow{
	height:25px;
	padding:11px 25px 10px 0;
	float:right;
}

#TB_closeAjaxWindow{
	padding:7px 10px 5px 0;
	margin-bottom:1px;
	text-align:right;
	float:right;
}

#TB_ajaxWindowTitle{
	float:left;
	padding:7px 0 5px 10px;
	margin-bottom:1px;
}

#TB_title{
	background-color:#e8e8e8;
	height:27px;
}

#TB_ajaxContent{
	clear:both;
	/*padding:2px 15px 15px 15px;*/
	padding:0 15px;
	/*overflow:auto;*/
	overflow:hidden;
	text-align:left;
	line-height:1.4em;
	background-color: #fff;
}

#TB_ajaxContent.TB_modal{
	padding:15px;
}

#TB_ajaxContent p{
	padding:5px 0px 5px 0px;
}

#TB_load{
	position: fixed;
	display:none;
	height:13px;
	width:208px;
	z-index:103;
	top: 50%;
	left: 50%;
	margin: -6px 0 0 -104px; /* -height/2 0 0 -width/2 */
}

#TB_HideSelect{
	z-index:99;
	position:fixed;
	top: 0;
	left: 0;
	background-color:#fff;
	border:none;
	filter:alpha(opacity=0);
	-moz-opacity: 0;
	opacity: 0;
	height:100%;
	width:100%;
}

#TB_iframeContent{
	clear:both;
	border:none;
	margin-bottom:-1px;
	margin-top:1px;
	_margin-bottom:1px;
}

#TB_ajaxContent div#callbackTitle
{
    width: 332px;
    overflow: hidden;
}

    #TB_ajaxContent div#callbackTitle h2
    {
        float: right;
        width: 220px;
        padding-top: 16px;
        text-align: right;
    }

    #TB_ajaxContent div#callbackTitle p
    {
        float: left;
        width: 110px;
    }

#TB_ajaxContent div#callbackForm,
#TB_ajaxContent div#callbackForm fieldset
{
    width: 332px;
}

    #TB_ajaxContent div.formInput
    {
        width: 332px;
    }

        #TB_ajaxContent div.formInput span.validation
        {
            width: 208px;
        }

    #TB_ajaxContent div#callbackForm div.formOptions
    {
        width: 332px;
        padding: 0;
        margin-bottom: 0;
    }
