/* ------------------------------------------------------------

	* SpyderLynk
	* Coded by Taylor Smith of Imulus

	screen.css
	- Site wide style, layout, and function

	=Colors
	- 

------------------------------------------------------------ */



/* =Initial Page Structure 
------------------------------------------------------------ */

* { 
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	vertical-align: baseline;
	list-style: none;
}

html {
	font: 12px/1.5 "Helvetica Neue", Arial, Helvetica, sans-serif;
	color: #222;
	background: #919191 url('/images/layout/bg-html.jpg') left top repeat-x;
}

body { 
	position: relative;
	width: 922px; 
	margin: 0 auto;
}

#header {
	position: relative;
	height: 95px;
}

.sub #header { 
	position: relative;
}

#container {
	float: left; 
	position: relative;
	width: 902px;
	padding: 10px;
	margin: 0 auto; 
	background: #fff;
}

#content { 
	float: left;
	background: url('/images/layout/bg-grid.jpg') left bottom no-repeat;
	position: relative;
}

.sub #content { 
	position: relative;
	background: #fff url('/images/layout/bg-content_sub.jpg') left top repeat-x;
	width: 881px;
	padding: 10px;
}

#footer { 
	clear: both;
	position: relative;
	width: 902px;
	padding: 10px;
	color: #fff;
}


/* =Basic Element Styles 
------------------------------------------------------------ */ 

h1, h2, h3, h4, h5, h6 {
	font-weight: bold;
	font-family: "Helvetica Neue", Arial, Helvetica, sans-serif;
	padding-bottom: 8px;
	color: #91b32d;
}

h1 { 
	font-size: 18px;
	padding-bottom: 12px;
}

h2 { 
	font-size: 18px;
	font-weight: bold;
}

h3 { 
	font-size: 16px;
}

h4 { 
	font-size: 12px;
}

h5 { 
	font-size: 12px;
}

h6 { 
	font-size: 12px;
}

p {
	padding-bottom: 18px;
}

.spacer { 
	padding-top: 18px;
}

ul {
	margin-bottom: 18px;
}

ul li {
	padding-left: 13px;
}

ol {
	margin-bottom: 18px;
}

ol li {
	list-style: decimal;
	margin-left: 15px;
}

ol.alpha li {
	list-style: lower-alpha;
}

input,
textarea { 
	padding: 2px;
	border: 1px solid #999;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

input[type="image"], 
input.submit { 
	border: 0 !important;
	padding: 0 0 0 3px !important;
	background: transparent !important;
	width: auto !important;
}

select { 
	padding: 0;
	border: 1px solid #999;
	border-radius: 3px;
	-moz-border-radius: 3px;
	-webkit-border-radius: 3px;
}

img,
a img { 
	border: 0;
	vertical-align: middle;
} 

a { 
	color: #088af7;
	text-decoration: none;
}

a:visited { 
	color: #164b77;
}

a:hover { 
	color: #73b4ea;
	text-decoration: none;
}

a.hover-box img.original {
	float: left;
	position: relative;
}

a.hover-box img.hover { 
	display: none;
}

a.hover-box { 
	position: relative;
	float: left;
	display: block;
}

a.hover-box:hover { 
	display: block; 
	font-size: 100%; 
	z-index: 1; 
}

a.hover-box:hover img.hover { 
	display: block;
	position: absolute;
	float: left;
	left: 0;
	top: 0;
	z-index: 1000;
}


/* =Utilities 
------------------------------------------------------------ */ 

.left { 
	float: left;
	position: relative;
	margin: 0 10px 5px 0;
}

.right { 
	float: right;
	position: relative;
	margin: 0 0 5px 10px;
}

.bottom {
	margin-bottom: 0;
	padding-bottom: 0;
}

.clear {
	clear: both;
}

.clear-left { 
	clear: left;
}

.clear-right { 
	clear: right;
}

.clear-none { 
	clear: none;
}

.center { 
	text-align: center;
}

.autoclear:after { 
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden; 
}

.autoclear { 
	display: inline-block;
}

.autoclear { 
	display: block;
}

	/* =Forms 
------------------------------------------------------------ */ 

fieldset {
	width: 274px;
	background: #e9e9e9;
	padding: 10px;
	margin: -10px -10px 10px -10px;
	display: inline;
}

input {
	float: left;
	width: 244px;

}

.forms p { 
	position: relative;
	float: left;
	clear: left;
	padding: 0 0 15px 150px;
}

.forms p label.name { 
	position: relative;
	float: left;
	width: 140px;
	padding-right: 10px;
	margin-left: -150px;
	text-align: right;
} 

.forms span.error { 
	display: block;
	position: absolute;
	right: 0;
	width: 240px;
	color: #999;
	font-size: .9em;
	background: #eee;
	padding: 3px 5px 4px 5px;
	border: 1px solid #ccc;
	line-height: 1em;
}

.forms p input { 
	width: 300px;
}

.forms p input.small { 
	width: 70px;
}

.forms p input.medium { 
	width: 200px;
}

.forms p input.large { 
	width: 300px;
}

.forms p input.complete {
	border: 1px solid #ccc;
	background: #ddd;
	width: auto;
	height: auto;
	padding: 2px 5px;
}

.forms p textarea { 
	width: 300px;
}

.forms p textarea.short { 
	height: 70px;
}

.forms p textarea.tall { 
	height: 180px;
}

.forms p span.radcheck { 
	
}

.forms p span.radcheck input { 
	border: 0;
	width: auto;
	height: auto;
	vertical-align: middle;
	margin-left: 10px;
	margin-right: 5px;
}

.forms p select { 
	border: 1px solid #ccc;
	width: 306px;
}

/* =Layout and Function 
------------------------------------------------------------ */ 

	/* =Header 
------------------------------------------------------------ */ 

h1.logo {
	float: left;
	text-indent: -9999px;
}

h1.logo a {
	display: block;
	width: 230px;
	height: 95px;
	background: url('/images/layout/h1-logo.gif') left top no-repeat;
}

ul#navigation {
	position: absolute;
	right: 0;
	bottom: 8px;
	margin: 0;
	padding: 0;
}

ul#navigation li {
	float: left;
	list-style: none;
	margin: 0;
	padding: 0 10px;
}

ul#navigation li a {
	color: #222;
	text-decoration: none;
}

ul#navigation li a:hover,
ul#navigation li.active a {
	color: #98bb30;
}

#flash {
	float: left;
	width: 902px;
	height: 379px;
	margin-bottom: 10px;
}

#flash img {
	float: left;
}

#header fieldset {
	position: absolute;
	background: #fff;
	top: 0;
	right: 0;
	padding: 20px 10px 0 0;
	width: auto;
	height: auto;
}

#header fieldset input {
	width: 140px;
}


	/* =Content 
------------------------------------------------------------ */ 


#content ul li {
	background: url('/images/icons/li-bullet.gif') 0 6px no-repeat;
}


.sub #content h3 {
	font-size: 13px;
	color: #333;	
}

.module {
	float: left;
	width: 273px;
	min-height: 300px;
	height: auto !important;
	height: 300px;
	padding: 10px 10px 0 10px;
	margin-right: 11px;
}

.last {
	margin-right: 0;
}

#interactive ul {
	font-size: 11px;
}

#interactive ul li {
	float: left;
	width: 123px;
}

.module ul li a {
	display: block;
}

.module h3 span {
	font-weight: normal;
	color: #7f7f7f;
}

#solutions {
	position: relative;
}

.teaser {
	position: absolute;
	bottom: 0;
	left: 304px;
	margin: 0 auto;
	width: 293px;
}

.teaser h3 {
	margin-bottom: 125px;
	padding-left: 10px;
}

.teaser h3 span {
	font-weight: normal;
	color: #7f7f7f;
}

.teaser img {
	position: absolute;
	right: 0;
	bottom: 0;
}

.teaser p.callout {
	position: absolute;
	left: 10px;
	bottom: 0;
	padding: 0;
	width: 273px;
	text-align: center;
}

p.callout {
	position: absolute;
	bottom: 0;
	padding: 0;
	width: 273px;
	text-align: center;
}

p.callout a {
	display: block;
	padding: 5px;
	background: #164b77;
	color: #fff;
	text-align: center;
}

p.callout a:hover {
	background: #0d3a5f;
}

p.callout a span {
	background: transparent url('/images/icons/a-callout.gif') right center no-repeat;
	padding-right: 15px;
}

	/* =Sidebar
------------------------------------------------------------ */ 

#sidebar {
	float: left;
	background: #fff url('/images/layout/bg-sidebar.jpg') left top repeat-x;
	padding-top: 6px;
	padding-bottom: 4px;
	padding-right: 4px;
	margin-right: 30px;
	width: 218px;
}

#sidebar #wrap {
	border: 1px solid #adbd7c;
	margin-left: -4px;
	padding-left: 15px;
	padding-right: 4px; 
}

#sidebar h2 {
	padding: 5px 0;
	color: #4c4c4c;
}

#sidebar ul {
	border-top: 1px solid #e4e4e4;
}

#sidebar ul li {
	background: url('/images/icons/li-subnav_bullet.gif') left 10px no-repeat;
	list-style: none;
}

#sidebar ul li a {
	display: block;
	padding: 5px 0;
	color: #666;
}
#sidebar ul li.active a {
	font-weight: bold;
}

#sidebar ul li a:hover {
	color: #262626
}


	/* =Main
------------------------------------------------------------ */ 

#main {
	width: 629px;
	float: left;
}

#main ul li {
	list-style: disc;
	background: none;
	padding: 0;
	margin-left: 15px;
}

#subcontent {
	float: left;
	background: #c8c8c8 url('/images/layout/bg-subcontent.jpg') left bottom no-repeat;
	width: 902px;
	padding: 0 10px 10px 10px;
	margin-top: 10px;
}

#subcontent .grid {
	position: relative;
	float: left;
	width: 273px;
	min-height: 200px;
	height: auto !important;
	height: 200px;
	padding: 10px;
	margin-right: 11px;
	border-top: 10px solid #d3d3d3;
}

#subcontent .grid p img {
	display: block;
	margin: 0 auto;
	margin-top: 5px;
}

.grid dl {
	font-weight: bold;
}

.grid dl dt {
	width: 60px;
	float: left;
}

.grid dl dd {
	padding-left: 60px;
}

/* Banners with narrow text and wide bg images */

#subcontent .snaptag,
#subcontent .services,
#subcontent .solutions,
#subcontent .try-it,
#subcontent .mobile-access,
#subcontent .demo,
#subcontent .text-programs {
	width: 155px;
	padding-right: 128px;
}

#subcontent .snaptag		{ background: url('/images/layout/banner-snaptags.jpg') right bottom no-repeat; }
#subcontent .services		{ background: url('/images/layout/banner-services.jpg') right bottom no-repeat; }
#subcontent .solutions		{ background: url('/images/layout/banner-solutions.jpg') right bottom no-repeat; }
#subcontent .try-it			{ background: url('/images/layout/banner-try_it.jpg') right bottom no-repeat; }
#subcontent .mobile-access	{ background: url('/images/layout/banner-mobile_access.jpg') right bottom no-repeat; }
#subcontent .demo			{ background: url('/images/layout/banner-demo.jpg') right bottom no-repeat; }
#subcontent .text-programs	{ background: url('/images/layout/banner-text_programs.jpg') right bottom no-repeat; }

#subcontent .last * {
	color: #fff;
}

#subcontent .last {
	margin-right: 0;
}

.grid ul {
	font-size: 11px;
}

.grid ul li {
	float: left;
	width: 123px;
	background: url('/images/icons/li-bullet.gif') 0 6px no-repeat;
}

.grid ul li a {
	display: block;
}

.last ul li {
	background: url('/images/icons/li-bullet_white.gif') 0 6px no-repeat;
}

.grid.contact.last {
	margin: 0;
	padding: 8px 0;
}

	/* =Footer 
------------------------------------------------------------ */ 

#footer ul {
	float: right;
}

#footer ul li {
	float: left;
	list-style: none;
	margin: 0; 
	padding: 0;
}

#footer ul li a {
	display: block;
	color: #fff;
	padding: 0 10px;
	border-right: 1px solid #fff;
}

#footer ul li a:hover {
	color: #ddd;
}

#footer ul li.last a {
	padding-right: 0;
	border: none;
}

