/* based on 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, 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-weight: normal;
    vertical-align: baseline;
    background: transparent;
    }
    
    
body {
    min-width: 960px;
    font-family: "Helvetica Neue", "HelveticaNeue", Arial, Helvetica, sans-serif;
    font-size: 100%;
    background-color: #f6f6f6;
    margin: 0;
    padding: 0;
    text-align: left;
    font-size: 13px;
    *font-size: small;
    *font-size: 13px;
    *font: x-small;
    font-size-adjust:none;
    font-style:normal;
    font-variant:normal;
    text-shadow: 0 0 0 #000; /* pukes in Chrome */
    min-height: 100% !important;
    height: auto !important;
    _height: 100%; /* IE6 */
    }

body:nth-of-type(1)
{
     text-shadow: none; /* remove text-shadow declared in body */ }    
    
/***********************************************************/
/*** generic type treatments ***/

h2 {
    font-family: "Helvetica Neue Light", "HelveticaNeue-Light", "Helvetica Neue", "HelveticaNeue", Arial, Helvetica, sans-serif;
    font-weight: 300;
    font-size: 32px;
    margin-bottom: 2px;
    color: #333;
    padding: 0 10px 0 16px;
    }
    
h3 {
    font-size: 20px;
    margin-bottom: 2px;
    color: #333;
    padding: 0 10px 0 16px;
    }

h3.center {
	text-align: center;
	}
    
h4 {
    margin-bottom: 10px;
    line-height: 150%;
    font-size: 16px;
    color: #666;
    padding: 0 10px 0 16px;
    }

h4 strong {
	color: #900;
	}
    
h5 {
    text-transform: uppercase;
    letter-spacing: 1px;
    text-align: center;
    margin-bottom: 7px;
    font-size: 13px;
    color: #666;
    padding: 0 10px 0 16px;
    }
    
h6 {
    font-size: 13px;
    margin-bottom: 20px;
    color: #666;
    padding: 0 16px 0 16px;
    }
    
p {
    font-size: 13px;
    margin-bottom: 10px;
    line-height: 150%;
    color: #666;
    padding: 0 16px 0 16px;
    }
    
small {
    font-size: 12px;
    color: #666;
    padding: 0 16px 0 16px;
    }

blockquote {
    margin-bottom: 10px;
    line-height: 150%;
    font-size: 16px;
	font-style: italic;
    color: #999;
    padding: 0 20px 0 16px;
    }

blockquote span.open-quote {
	font-size: 42px;
	float: left;
	width: 24px;
	height: 12px;
	padding-top: 5px;
	margin-left: -5px;
	}

dl dt {
    font-size: 16px;
    margin-bottom: 2px;
    color: #333;
    padding: 0 16px 0 16px;
    }

dl dd {
    font-size: 13px;
    margin-bottom: 10px;
    line-height: 150%;
    color: #666;
    padding: 0 16px 0 16px;
    }

dl {
	margin-bottom: 20px;
	}

    
/***********************************************************/
/*** underline/overline ***/
    
.overline {
    border-top: 1px solid #d6d6d6;
    padding-top: 20px;
    }  
    
.underline {
    padding-bottom: 18px;
    border-bottom: 1px solid #d6d6d6;
    margin-bottom: 20px !important;
    }  
    
/***********************************************************/
/*** elements ***/
    
a:link, a:visited {
    color: #336699;
    text-decoration: none;
    }
    
a:hover, a:focus {
    text-decoration: underline;
    }
    
/***********************************************************/
/*** containers ***/
    
div#masthead {
    width: 100%;
    margin-bottom: 10px;
    }

	div#masthead-generic,
	div#content,
	div#footer {
	    width: 100%;
	    margin-bottom: 20px;
	    }

div.masthead-special {
	margin-bottom: 20px !important; /* overrides the ID above */
	}
    
div.outer {
    padding: 0;
    margin: 0 auto;
    width: 920px;
    }
    
div#masthead div.outer,
div#masthead-generic div.outer {
    width: 960px;
    }
    
div#masthead {
    background-color: #000;
    background: #000 url(../img/bg-masthead.png) bottom left repeat-x;
    }
    
div#masthead-generic {
    background-color: #000;
    padding-bottom: 5px;
    }
    
div.inner {
    width: 100%;
    clear: both;
    overflow: auto;  /* watch this for issues */
	overflow: hidden;
    margin-bottom: 10px;
    }
    
/***********************************************************/
/*** branding ***/

div#branding {
    position: relative;
    height: 72px;
    color: #999;
    /*
    filter: alpha(opacity=99.99);
    -moz-opacity: .9999;
    opacity: .9999;
    */
    /*text-shadow: 0 0 0 #000;  */ /* pukes in Chrome */
    }
    
img#logo {
    position: absolute;
    top: 12px;
    left: 20px;
    }
    
/***********************************************************/
/*** CR Edits ***/    
/*    
#branding img#download {
    position: absolute;
    top: 12px;
    right: 20px;
    }
    */
#followColumn
{
	width:500px; 
	position:relative; 
	float: left;
}

#followImage
{
    width:420px;
    position:relative; 
    float: left;     	
}    
    
#terms
{
	color: #666;
}

#terms ol li{
	margin-left:35px;
	padding-left:10px;
	padding-bottom:20px;
}
#terms ul li{
	margin-left:35px;
	position:relative;
	list-style: none;
}
#terms ul li .listNumber{
	left:-30px;
	top:0px;
	position:absolute;
}    

    
/***********************************************************/
/*** primary nav ***/

ul#nav-primary {
    float: right;
	margin: 18px 30px 8px 0;
    }
    
#masthead-generic ul#nav-primary {
    right: 225px;
    }
    
ul#nav-primary li {
    font-family: "Helvetica Neue Light", "HelveticaNeue-Light", Arial, Helvetica, sans-serif;
	font-size: 16px;
    list-style-type: none;
    display: inline;
    padding: 0 10px;
    }
    
ul#nav-primary a:link, ul#nav-primary a:visited {
    color: #8ac;
    text-decoration: none;
    }
    
ul#nav-primary a:hover, ul#nav-primary a:focus {
    color: #8ac;
    text-decoration: underline;
    }
    
ul#nav-primary li.download a {
    text-transform: uppercase;
	letter-spacing: 1px;
	font-size: 13px;
    }
    

    
/***********************************************************/
/*** hero ***/

small#user-state {
    float: right;
	clear: right;
	margin: 0 30px 5px;
    }

small#user-state a:link, small#user-state a:visited {
    color: #999;
    text-decoration: none;
    }

small#user-state a:hover, small#user-state a:focus {
    text-decoration: underline;
    }

small#user-state a.logger {
	margin-left: 10px;
	}


    

    
/***********************************************************/
/*** hero ***/
    
div#hero {
    height: 290px;
    position: relative;
    }
    
div#hero {
    background: transparent url(../img/bg-hero.png) top left no-repeat;
    }
    
    
/***********************************************************/
/*** hero message positioning ***/

div#hero .message {
    float: left;
    margin-top: 72px;
    margin-left: 490px;
    }

div#hero .cta {
    background: transparent url(../img/bg-cta-hero.png) top left no-repeat;
    position: absolute;
	right: -10px;
	bottom: 0;
	width: 600px;
	height: 80px;
	margin: 0;
    }

div#hero .cta a {
	position: absolute;
	top: 13px;
	right: 15px;
	}
    
/***********************************************************/
/*** hero type treatment ***/
    
div#hero h1 {
    font-family: "Helvetica Neue Light", "HelveticaNeue-Light", Arial, Helvetica, sans-serif;
    font-size: 33px;
    margin-bottom: 7px;
    line-height: 120%;
    color: #aaa;
    padding: 0 16px;
    }

div#hero h1 strong {
	font-family: "Helvetica Neue", "HelveticaNeue", Arial, Helvetica, sans-serif;
	font-weight: normal;
	color: #fff;
	margin-left: 45px;
	}
	
/***********************************************************/
/*** subhero ***/

div#subhero {
    height: 290px;
    position: relative;
    background: transparent url(../img/bg-subhero.png) top left no-repeat;
    }

div#subhero a:link, div#subhero a:visited {
    color: #ddd;
    text-decoration: none;
    }

div#subhero a:hover, div#subhero a:focus {
    color: #ddd;
    text-decoration: underline;
    }

div#subhero .media {
    position: absolute;
    top: 0;
    left: 20px;
    right: 400px;
    bottom: 0;
    }

div#subhero .media .flashy {
    margin: 20px 0 15px 0;
    }


div#subhero .media .col_m {
	float: left;
	width: 270px;
	margin: 30px 0 0 0;
	}

div#subhero .media .col_m p {
    font-family: "Helvetica Neue Light", "HelveticaNeue-Light", Arial, Helvetica, sans-serif;
    color: #aaa;
	text-align: center;
	}
	


div#subhero .media .video {
    float: left;
    background-color: #ddd;
    border: 4px solid #111;
    margin: 0 8px 8px 12px;
    padding: 1px;
    }

div#subhero .media .video img {
    display: block;
	}



/***********************************************************/
/*** subhero message positioning ***/

div#subhero .message {
    float: left;
    margin-top: 70px;
    margin-left: 570px;
    }

/***********************************************************/
/*** generic download positioning ***/

div.cta {
	padding-left: 5px;
	margin-bottom: 12px;
    }



/***********************************************************/
/*** hero type treatment ***/

div#subhero h1 {
    font-family: "Helvetica Neue Light", "HelveticaNeue-Light", Arial, Helvetica, sans-serif;
    font-size: 28px;
    margin-bottom: 7px;
    line-height: 100%;
    color: #fff;
    padding: 0 16px;
    }

div#subhero h2 {
    font-family: "Helvetica Neue", "HelveticaNeue", Arial, Helvetica, sans-serif;
    font-size: 18px;
    margin-bottom: 20px;
    color: #999;
    }


    
/***********************************************************/
/*** generic column layouts ***/

div.col_2,
div.col_3,
div.col_3_x2,
div.col_4,
div.col_5,
div.col_5_x2,
div.col_5_x3 {
    position: relative;
    float: left;
    /*overflow: auto */
    }
    
/* full-wdith column */
div.col_1 {
    position: relative;
    width: 920px;
    }
    
/* half-width column */
div.col_2 {
    width: 460px;
    }
    
/* third-width column */
div.col_3 {
    width: 305px;
    }
    
/* spans two third-width columns */
div.col_3_x2 {
    width: 610px;
    }
    
/* fourth-width column */
div.col_4 {
    width: 230px;
    }
    
/* spans three fourth-width column */
div.col_4_x3 {
    width: 690px;
    }
    
/* fifth-width column */
div.col_5 {
    width: 184px;
    }
    
/* spans two fifth-width columns */
div.col_5_x2 {
    width: 368px;
    }
    
/* spans three fifth-width columns */
div.col_5_x3 {
    width: 552px;
    }
    
/***********************************************************/
/*** image matting ***/

div.matting {
    float: left;
    position: relative;
    background-color: #FFF;
    border: 4px solid #dddddd;
    margin: 0 8px 12px 12px;
    padding: 1px;
    }
    
div.matting img {
    display: block;
    }
    
div.matting img.md {
    width: 200px;
    height: 125px;
    }
    
div.matting img.lg {
    width: 272px;
    }
    
div.matting img.xl {
    width: 430px;
    height: 175px;
    }
    
div.matting img.laptop {
    position: absolute;
    bottom: -50px;
    right: -75px;
    z-index: 1;
    }

/***********************************************************/
/*** image matting ***/

div.badge {
    float: left;
    position: relative;
    background-color: #FFF;
    border: 4px solid #dddddd;
    margin: 0 8px 12px 12px;
    padding: 1px;
    }

/* ultimately not needed */
div.badge img { 
    display: block;
    }


/***********************************************************/
/*** category nav ***/
    
ul#nav-category {
    position: absolute;
    top: 5px;
    right: 0;
	z-index: 1000;
    }
    
ul#nav-category li {
    list-style-type: none;
    display: inline;
    padding: 0 10px;
    font-size: 13px;
    }
    
/***********************************************************/
/*** generic column layouts ***/

ul.cards {
    width: 100%;
    clear: both;
    overflow: auto;  /* watch this for issues */
    padding-top: 5px;
    }
    
ul.cards li {
    float: left;
    overflow: auto;
    width: 230px;
    list-style-type: none;
    margin: 0 0 5px 0;
    padding: 0;
    }
    
ul.cards li h4 {
    padding-top: 5px;
    color: #111;
	margin-bottom: 2px;
	font-size: 13px;
    }
    
/***********************************************************/
/*** footer ***/

div#footer {
    margin-bottom: 120px;
    margin-top: 50px;
    }
    
div#footer div.nav-footer-outer {
    padding: 0;
    margin: 0 auto 15px;
    background: #fff url(../img/bg-upper-footer.png) no-repeat;
    width: 950px;
    position: relative;
    }
    
div#footer span.lower {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 950px;
    height: 10px;
    display: block;
    background: #fff url(../img/bg-lower-footer.png) bottom no-repeat;
    }
    
ul#nav-footer {
    padding: 15px 20px 18px;
    }
    
ul#nav-footer li {
    list-style-type: none;
    display: inline;
    padding: 0 10px;
    font-size: 15px;
    }
    
ul#nav-footer a {
    }
    
/***********************************************************/
/*** utilities ***/

.float_l {
    float: left !important;
    }
    
.float_r {
    float: right !important;
    }
    
.float_n {
    float: none !important;
    }
    
.clear_l {
    clear: left;
    }
    
.clear_r {
    clear: right;
    }
    
.clear_b {
    clear: both;
    }
    
.clear_n {
    clear: none;
    }
    
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0;
    font-size: 0;
    }
    
.clearfix { /* help for IE 6/7, adds padding */
    *display: inline-block;
    *zoom: 1;
    }
    
html[xmlns] .clearfix {
    display: block;
    }
    
* html .clearfix {
    height: 1%;
    }
    
.clearin {
    overflow: auto;
    }
    
/* failsafe for clearing floated stuff */
    .clearme {
    clear: both !important;
    border: none;
    }