@charset "utf-8";

	/* 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, ins, kbd, q, s, samp,
	small, strike, strong, sub, sup, tt, var,
	b, u, i, center,
	dl, dt, dd, ol, ul, li,
	form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td {
		margin: 0;
		padding: 0;
		border: 0;
		outline: 0;
		font-size: 100%;
		vertical-align: baseline;
		background: transparent;
		}
	img, fieldset, hr { border:0; }

/*
	Variable Grid System.
	Learn more ~ http://www.spry-soft.com/grids/
	Based on 960 Grid System - http://960.gs/

	Licensed under GPL and MIT.
*/


/* Containers
----------------------------------------------------------------------------------------------------*/
.container_12 {
	margin-left: auto;
	margin-right: auto;
	width: 960px;
}

/* Grid >> Global
----------------------------------------------------------------------------------------------------*/

.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12 {
	display:inline;
	float: left;
	position: relative;
	margin-left: 10px;
	margin-right: 10px;
}

/* Grid >> Children (Alpha ~ First, Omega ~ Last)
----------------------------------------------------------------------------------------------------*/

.alpha {
	margin-left: 0;
}

.omega {
	margin-right: 0;
}

/* Grid >> 12 Columns
----------------------------------------------------------------------------------------------------*/

.container_12 .grid_1 {
	width:60px;
}

.container_12 .grid_2 {
	width:140px;
}

.container_12 .grid_3 {
	width:220px;
}

.container_12 .grid_4 {
	width:300px;
}

.container_12 .grid_5 {
	width:380px;
}

.container_12 .grid_6 {
	width:460px;
}

.container_12 .grid_7 {
	width:540px;
}

.container_12 .grid_8 {
	width:620px;
}

.container_12 .grid_9 {
	width:700px;
}

.container_12 .grid_10 {
	width:780px;
}

.container_12 .grid_11 {
	width:860px;
}

.container_12 .grid_12 {
	width:940px;
}



/* Prefix Extra Space >> 12 Columns
----------------------------------------------------------------------------------------------------*/

.container_12 .prefix_1 {
	padding-left:80px;
}

.container_12 .prefix_2 {
	padding-left:160px;
}

.container_12 .prefix_3 {
	padding-left:240px;
}

.container_12 .prefix_4 {
	padding-left:320px;
}

.container_12 .prefix_5 {
	padding-left:400px;
}

.container_12 .prefix_6 {
	padding-left:480px;
}

.container_12 .prefix_7 {
	padding-left:560px;
}

.container_12 .prefix_8 {
	padding-left:640px;
}

.container_12 .prefix_9 {
	padding-left:720px;
}

.container_12 .prefix_10 {
	padding-left:800px;
}

.container_12 .prefix_11 {
	padding-left:880px;
}



/* Suffix Extra Space >> 12 Columns
----------------------------------------------------------------------------------------------------*/

.container_12 .suffix_1 {
	padding-right:80px;
}

.container_12 .suffix_2 {
	padding-right:160px;
}

.container_12 .suffix_3 {
	padding-right:240px;
}

.container_12 .suffix_4 {
	padding-right:320px;
}

.container_12 .suffix_5 {
	padding-right:400px;
}

.container_12 .suffix_6 {
	padding-right:480px;
}

.container_12 .suffix_7 {
	padding-right:560px;
}

.container_12 .suffix_8 {
	padding-right:640px;
}

.container_12 .suffix_9 {
	padding-right:720px;
}

.container_12 .suffix_10 {
	padding-right:800px;
}

.container_12 .suffix_11 {
	padding-right:880px;
}



/* Push Space >> 12 Columns
----------------------------------------------------------------------------------------------------*/

.container_12 .push_1 {
	left:80px;
}

.container_12 .push_2 {
	left:160px;
}

.container_12 .push_3 {
	left:240px;
}

.container_12 .push_4 {
	left:320px;
}

.container_12 .push_5 {
	left:400px;
}

.container_12 .push_6 {
	left:480px;
}

.container_12 .push_7 {
	left:560px;
}

.container_12 .push_8 {
	left:640px;
}

.container_12 .push_9 {
	left:720px;
}

.container_12 .push_10 {
	left:800px;
}

.container_12 .push_11 {
	left:880px;
}



/* Pull Space >> 12 Columns
----------------------------------------------------------------------------------------------------*/

.container_12 .pull_1 {
	left:-80px;
}

.container_12 .pull_2 {
	left:-160px;
}

.container_12 .pull_3 {
	left:-240px;
}

.container_12 .pull_4 {
	left:-320px;
}

.container_12 .pull_5 {
	left:-400px;
}

.container_12 .pull_6 {
	left:-480px;
}

.container_12 .pull_7 {
	left:-560px;
}

.container_12 .pull_8 {
	left:-640px;
}

.container_12 .pull_9 {
	left:-720px;
}

.container_12 .pull_10 {
	left:-800px;
}

.container_12 .pull_11 {
	left:-880px;
}




/* Clear Floated Elements
----------------------------------------------------------------------------------------------------*/

/* http://sonspring.com/journal/clearing-floats */

.clear {
	clear: both;
	display: block;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
}

/* http://perishablepress.com/press/2008/02/05/lessons-learned-concerning-the-clearfix-css-hack */

.clearfix:after {
	clear: both;
	content: ' ';
	display: block;
	font-size: 0;
	line-height: 0;
	visibility: hidden;
	width: 0;
	height: 0;
}

.clearfix {
	display: inline-block;
}

* html .clearfix {
	height: 1%;
}

.clearfix {
	display: block;
}

/* -------------------------------------------------------------------------------------------------

It's *strongly* suggested that you don't modify this file.  Instead, load a new stylesheet after
this one in your layouts (eg formtastic_changes.css) and override the styles to suit your needs.
This will allow you to update formtastic.css with new releases without clobbering your own changes.

This stylesheet forms part of the Formtastic Rails Plugin
(c) 2008 Justin French

--------------------------------------------------------------------------------------------------*/


/* NORMALIZE AND RESET - obviously inspired by Yahoo's reset.css, but scoped to just form.formtastic
--------------------------------------------------------------------------------------------------*/
form.formtastic, form.formtastic ul, form.formtastic ol, form.formtastic li, form.formtastic fieldset, form.formtastic legend, form.formtastic input, form.formtastic textarea, form.formtastic select, form.formtastic p { margin:0; padding:0; }
form.formtastic fieldset { border:0; }
form.formtastic em, form.formtastic strong { font-style:normal; font-weight:normal; }
form.formtastic ol, form.formtastic ul { list-style:none; }
form.formtastic abbr, form.formtastic acronym { border:0; font-variant:normal; }
form.formtastic input, form.formtastic textarea, form.formtastic select { font-family:inherit; font-size:inherit; font-weight:inherit; }
form.formtastic input, form.formtastic textarea, form.formtastic select { font-size:100%; }
form.formtastic legend { color:#000; }


/* FIELDSETS & LISTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset { }
form.formtastic fieldset.inputs { }
form.formtastic fieldset.buttons { padding-left:25%; }
form.formtastic fieldset ol { }
form.formtastic fieldset.buttons li { float:left; padding-right:0.5em; }

/* clearfixing the fieldsets */
form.formtastic fieldset { display: inline-block; }
form.formtastic fieldset:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
html[xmlns] form.formtastic fieldset { display: block; }
* html form.formtastic fieldset { height: 1%; }


/* INPUT LIs
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li { margin-bottom:1.5em; }

/* clearfixing the li's */
form.formtastic fieldset ol li { display: inline-block; }
form.formtastic fieldset ol li:after { content: "."; display: block; height: 0; clear: both; visibility: hidden; }
html[xmlns] form.formtastic fieldset ol li { display: block; }
* html form.formtastic fieldset ol li { height: 1%; }

form.formtastic fieldset ol li.required { }
form.formtastic fieldset ol li.optional { }
form.formtastic fieldset ol li.error { }
  

/* LABELS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li label { display:block; width:25%; float:left; padding-top:.2em; }
form.formtastic fieldset ol li li label { line-height:100%; padding-top:0; }
form.formtastic fieldset ol li li label input { line-height:100%; vertical-align:middle; margin-top:-0.1em;}


/* NESTED FIELDSETS AND LEGENDS (radio, check boxes and date/time inputs use nested fieldsets)
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li fieldset { position:relative; }
form.formtastic fieldset ol li fieldset legend { position:absolute; width:25%; padding-top:0.1em; }
form.formtastic fieldset ol li fieldset legend span { position:absolute; }
form.formtastic fieldset ol li fieldset ol { float:left; width:74%; margin:0; padding:0 0 0 25%; }
form.formtastic fieldset ol li fieldset ol li { padding:0; border:0; }


/* INLINE HINTS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li p.inline-hints { color:#666; margin:0.5em 0 0 25%; }


/* INLINE ERRORS
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li p.inline-errors { color:#cc0000; margin:0.5em 0 0 25%; }
form.formtastic fieldset ol li ul.errors { color:#cc0000; margin:0.5em 0 0 25%; list-style:square; }
form.formtastic fieldset ol li ul.errors li { padding:0; border:none; display:list-item; }


/* STRING & NUMERIC OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.string input { width:74%; }
form.formtastic fieldset ol li.password input { width:74%; }
form.formtastic fieldset ol li.numeric input { width:74%; }


/* TEXTAREA OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.text textarea { width:74%; }


/* HIDDEN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.hidden { display:none; }


/* BOOLEAN OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.boolean label { padding-left:25%; width:auto; }
form.formtastic fieldset ol li.boolean label input { margin:0 0.5em 0 0.2em; }


/* RADIO OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.radio { }
form.formtastic fieldset ol li.radio fieldset ol { margin-bottom:-0.6em; }
form.formtastic fieldset ol li.radio fieldset ol li { margin:0.1em 0 0.5em 0; }
form.formtastic fieldset ol li.radio fieldset ol li label { float:none; width:100%; }
form.formtastic fieldset ol li.radio fieldset ol li label input { margin-right:0.2em; }


/* CHECK BOXES (COLLECTION) OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.check_boxes { }
form.formtastic fieldset ol li.check_boxes fieldset ol { margin-bottom:-0.6em; }
form.formtastic fieldset ol li.check_boxes fieldset ol li { margin:0.1em 0 0.5em 0; }
form.formtastic fieldset ol li.check_boxes fieldset ol li label { float:none; width:100%; }
form.formtastic fieldset ol li.check_boxes fieldset ol li label input { margin-right:0.2em; }



/* DATE & TIME OVERRIDES
--------------------------------------------------------------------------------------------------*/
form.formtastic fieldset ol li.date fieldset ol li,
form.formtastic fieldset ol li.time fieldset ol li,
form.formtastic fieldset ol li.datetime fieldset ol li { float:left; width:auto; margin:0 .3em 0 0; }

form.formtastic fieldset ol li.date fieldset ol li label,
form.formtastic fieldset ol li.time fieldset ol li label,
form.formtastic fieldset ol li.datetime fieldset ol li label { display:none; }

form.formtastic fieldset ol li.date fieldset ol li label input, 
form.formtastic fieldset ol li.time fieldset ol li label input, 
form.formtastic fieldset ol li.datetime fieldset ol li label input { display:inline; margin:0; padding:0;  }


/* CSS Document */
	
	body {
		background-color:#F5F5F5;
		color:#353535;
		font-family:Verdana, Geneva, Arial, Helvetica, sans-serif;
		font-size:62.5%;
		}
		html, body {
			height: 100%;
			}


	/* Global Styles */
	
		/* Headings H1-H6 */
		h1, h2, h3, h4 { margin:0 0 .5em 0; font-family:Georgia, "Times New Roman", Times, serif; font-style:italic; font-weight:normal; }
		h1 { font-size:2em; /*text-shadow:#fff 1px 1px 2px;*/ text-shadow:1px 1px 0 #fff; }
		h2 { font-size:1.8em; text-shadow:#fff 1px 1px 2px; }
		h3 { font-size:1.6em; margin:0 0 1em 0; }
		h4 { font-size:1.7em; color:#F5F5F5; margin:8px 0; text-shadow:#111 1px 1px 2px;  }
		h5 { font-size:1em; margin:1em 0; }
		h6 { font-size:1em; margin:1em 0; }
		
		/* Paragraph and Link Styles */
		
		p, ul, ol, dl {
			font-size:1.1em;
			line-height:1.8em;
			margin:0 0 1.4em 0;
			}
		
		ul, ol {
			margin:0 0 1em 2.5em;
			}
			ol {
				list-style: decimal;
				}
			ul {
				list-style: square;
				}
		table p, table ul, table ol, table dl, 
		ul ul, ul ol, ul ul ul, ul ul ol, ul ol ul, 
		ul ol ol, ol ol, ol ul, ol ol ol, ol ol ul, 
		ol ul ol, ol ul ul {
			font-size:1em;
			}
		a,
		a:link,
		a:visited {
			color:#4D8FC1;
			text-decoration:underline;
			}
		a:visited {
			color:#87B5D6;
			}
			
		a:hover {
			color:#4D8FC1;
			text-decoration:none;
			}
			h1 a, h2 a, h3 a, h4 a { color:#353535 !important; }
		hr { border-bottom:1px solid #E2E2E2; clear:both; margin:0 0 20px 0; }
	
		/* Forms */
		
		form {
			display:inline;
			margin:0 0 1.25em 0;
			color:#313131;
			}
		 
		input, select, textarea {
			font-size:1.3em;
			font-family:"Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;
			font-weight:bold;
			margin:0 0 .5em 0;
			padding:2px;
			border:1px solid #ccc;
			}
			select option {
				padding:0 0 1px 0;
				}
		form.formtastic fieldset ol li.string input,
		form.formtastic fieldset ol li.password input,
		form.formtastic fieldset ol li.numeric input,
		form.formtastic fieldset ol li.text textarea,
		input, textarea {
			background: #f8f8f8;
			color: #333;
			padding: 5px;
			/*font-weight: bold;*/
			width: 280px;
			max-width: 565px;
			clear:both;
			}
			form.formtastic fieldset ol li { margin-bottom:.5em; }
			form.formtastic fieldset ol li label { width:95%; text-align:left; }
			
			select {
				background: #f8f8f8;
				}
			input:focus, textarea:focus, select:focus {
				background: #fff;
				border-color: #9A9A9A;
				color: #333;
				}
			input.button {
				width:auto;
				font-size:1.3em;
				padding:5px 10px;
				}
		 
			input.checkbox {
				width:auto;
				padding:5px 10px;
				}
		 
		textarea {
			font-family:Verdana, Arial, Helvetica, sans-serif;
			line-height:1.25;
			width: 280px;
			font-size:1.2em;
			font-weight:normal;
			height:180px;
			}
		 
		label {
			cursor:pointer;
			text-align:right;
			margin-top:5px;
			}
			
		button {
			font-size:1.1em;
			display:block;
			margin:0 7px 0 0;
			background-color:#F5F5F5;
			border-color:#EAEAEA #CCCCCC #CCCCCC #EAEAEA;
			border-style:solid;
			border-width:1px;
			color:#565656;
			cursor:pointer;
			padding:5px 10px 5px 7px;
    		line-height:17px;
			}

			button img {     
				margin:0 6px -3px 0 !important;
				padding:0;
				border:none;
				width:16px;
				height:16px;
				float:left;
			 }

		/* Tables */
		
		table {
			border:0;
			border-collapse: collapse;
			border-spacing: 0;
			margin:0 0 1.25em 0;
			}
			 
		table tr td {
			padding:2px;
			}
		
		/* Code examples */
		
		pre { 
			background-color:#F5F5F5;
			border:1px solid #EBEBEB;
			padding:15px;
			overflow:auto;
			width:545px;
			font-size:1.5em;
			line-height:1.5em;
			margin-bottom:15px;
			margin-top:5px;
			}

			
	/* Notices */
			
	.error, .notice, .warning, .message, .success {
		padding:.8em;
		margin-bottom:1em;
		border:2px solid #ddd;
		font-size:1.1em;
		line-height:1.6em;
		}
		.error { background:#FBE3E4;color:#8a1f11;border-color:#FBC2C4; }
		.notice { background:#FFF6BF;color:#514721;border-color:#FFD324; }
		.message { background:#DAECF8;color:#487695;border-color:#6595B5; }
		.success { background:#E6EFC2;color:#264409;border-color:#C6D880; }
		
		.error img, .notice img, .warning img, .message img, .success img { margin-right:5px;	}
		
		.error h3, .notice h3, .warning h3, .message h3, .success h3 {
			font-size:1.2em;
			margin:0 0 .6em 0;;
			font-weight:bold;
			}
			.error h3 { color:#8a1f11; } 
			.notice h3 { color:#514721; } 
			.message h3 { color:#487695; } 
			.success h3 { color:#264409; }
			
			.error a { color:#8a1f11; }
			.notice a { color:#514721; }
			.message a { color:#487695; }
			.success a { color:#264409; }
		
		.warning, #errorExplanation, .errorExplanation {
			padding: 1em 1em 1em 1em;
			margin: 1em 0;
			border: 1px solid #fc0;
			background: #fff3c5;
			color: #6b5e2b;
			}
		
	/* Global Classes */
	 
	.hidden { display:none; }
	.clear_left { clear:left; }
	.clear_right { clear:right; }
	.float_left { float:left; }
	.float_right { float:right; }
	
	.text_left { text-align:left; }
	.text_right { text-align:right; }
	.text_center { text-align:center; }
	.text_justify { text-align:justify; }
	
	.bold { font-weight:bold; }
	.italic { font-style:italic; }
	.underline { border-bottom:1px solid; }
	.highlight { background:#ffc; }
	
	.datetime { color: #969696; }
			
	/* Page Styles */
	
		/* Header Styles */
		
		#header {
			background-color:#353535;
			height:60px;
			}
			h1#logo {
				display:block;
				background: url(/images/logo/sprysoft.gif) left top no-repeat;
				width:113px;
				height:26px;
				margin-top:22px;
				}
				h1#logo span {
					display:none;
					}
					
		/* Main Navigation Styles */
		
		ul#primary_navigation {
			margin:0 0 0 0;
			padding:12px 0 0 0;
			height:33px;
			font-size:1.2em;
			}
			ul#primary_navigation li {
				display:inline;
				text-align:center;
				margin:0 30px 0 0;
				}
				ul#primary_navigation li a {
					color:#333;
					text-shadow:1px 1px 0 #FFF;
					cursor:pointer;
					text-decoration:none;
					 -webkit-transition-duration:.2s
					}
					ul#primary_navigation li a:hover {
						color:#3874A0;
						}
					ul#primary_navigation li.selected a {
						color:#3874A0;
						}
						ul#primary_navigation li.selected a:hover {
							color:#333;
							}
						
		/* Sub page navigation */
		
		ul.sub_navigation {
			list-style-image:none !important;
			list-style-type:none !important;
			margin:0;
			padding:0;
			
			}
			ul.sub_navigation li {
				border-bottom:1px solid #F6F6F6;
				margin:0;
				padding:0;
				}
				ul.sub_navigation li.last {
					border-bottom:none;
					margin-bottom:10px;
					}
				ul.sub_navigation li a {
					display: block;
					padding:10px 5px;
					text-decoration: none;
					}
					ul.sub_navigation li a:hover {	
						background: #F5F5F5;
						}
					ul.sub_navigation li a img {
						margin-top:2px;
						}
						
		/* Content */
		
		#content-push {
			min-height: 100%;
			height: auto !important;
			height: 100%;
			margin: 0 auto -195px 0;
			}
		
			.main_content {
				background-color:#FFF;
				padding:20px 20px 10px 20px;
				margin-bottom:40px;
				border:1px solid #E2E2E2;
				border-width: 1px 0;
				/*font-size:1.1em;*/
				}
		#map {
			height:296px;
			border:1px solid #E2E2E2;
			border-width:1px 1px 0 1px;
			}
					
		/* Smaller panels */
		
		.column_small {
			float:left;
			margin:40px 19px 0 0;
			width:278px;
			}
			.column_small.last {
				margin-right:0;
				}
				
		.column_large {
			float:left;
			margin:40px 20px 0 0;
			width:575px;
			}
		.grid_4 h2,
		.grid_4 h1.title {
			float:left;
			}
		.icon {
			float:left;
			margin:2px 5px 0 0;
			}
			.panel {
				background-color:#FFFFFF ;
				border:1px solid #EBEBEB;
				border-width:1px 1px 0 1px;
				clear:left;
				padding:20px 20px 15px 20px ;
				}
				
			.panel ul {
				list-style-image:url(/images/icons/bullet_green.png);
				list-style-position:outside;
				}
				.panel ul li {
					padding:1px 0 2px 0 ;
					
					}
			.panel p { margin:0; padding:0; padding:10px 0; border-bottom:1px solid #EBEBEB; }
			.panel p.first { padding-top:0; }
			.panel p.last { padding-bottom:0; border:none; }
			
			.panel-bottom { background:#FFFFFF url(/images/panel-bottom-small.jpg) left bottom no-repeat; margin:0 0 20px 0; }

		#projects {
			border-top:1px solid #E2E2E2;
			}
			#projects .project {
				border-bottom:1px solid #E2E2E2;
				padding:18px;
				}
				#projects .project:hover {
					background-color:#FFFFFF;
					}
				#projects .project:hover {
					background-color:#FFFFFF;
					}
					
				.project h2 {
					float:none;
					}
		.project img { border:2px solid #959595; }
			.project img:hover { border-color:#656565; }
		
		h1.icon {
			margin:-1px 0 10px 20px;
			float:none;
			}
			
			a.read_more {
				padding:5px 10px;
				background-color:#353535;
				color:#F5F5F5;
				text-decoration:none;
				}
				a.read_more:hover {
					background-color:#4A4A4A;
					
					}
					
					
		/* Table Styles */
		
		
		/* Footer Styles*/
		
		#footer, .push {
			height: 170px;
			}

		#footer {
			background-color:#353535;
			margin-top:25px;
			color:#F5F5F5;
			}
			#footer a { color:#76B3E2; }
			#footer ul, #footer p {
				font-size:0.9em;
				line-height:1.6em;
				}
			#footer ul {	
				margin:0;
				padding:0;
				}
				#footer li {
					list-style:none;
					}
			ul.list_icons li {
				margin:0 0 10px 0;
				}
				ul.list_icons img {
					margin:0 5px 0 0;
					float:left;
					clear:left;
					}

					
/*test*/