/*
 * HTML5 Boilerplate
 *
 * What follows is the result of much research on cross-browser styling.
 * Credit left inline and big thanks to Nicolas Gallagher, Jonathan Neal,
 * Kroc Camen, and the H5BP dev community and team.
 *
 * Detailed information about this CSS: h5bp.com/css
 *
 * ==|== normalize ==========================================================
 */


/* =============================================================================
   HTML5 display definitions
   ========================================================================== */

article, aside, details, figcaption, figure, footer, header, hgroup, nav, section { display: block; }
audio, canvas, video { display: inline-block; *display: inline; *zoom: 1; }
audio:not([controls]) { display: none; }
[hidden] { display: none; }


/* =============================================================================
   Base
   ========================================================================== */

/*
 * 1. Correct text resizing oddly in IE6/7 when body font-size is set using em units
 * 2. Prevent iOS text size adjust on device orientation change, without disabling user zoom: h5bp.com/g
 */

html { font-size: 100%; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

html, button, input, select, textarea { font-family: sans-serif; color: #222; }

body { margin: 0; font-size: 1em; line-height: 1.4; }

/*
 * Remove text-shadow in selection highlight: h5bp.com/i
 * These selection declarations have to be separate
 * Also: hot pink! (or customize the background color to match your design)
 */

::-moz-selection { background: #353f65; color: #fff; text-shadow: none; }
::selection { background: #353f65; color: #fff; text-shadow: none; }


/* =============================================================================
   Links
   ========================================================================== */

a { color: #38436b; }
a:hover { text-decoration: none; }
a:focus { outline: 0; }

/* Improve readability when focused and hovered in all browsers: h5bp.com/h */
a:hover, a:active { outline: 0; }


/* =============================================================================
   Typography
   ========================================================================== */

abbr[title] { border-bottom: 1px dotted; }

b, strong { font-weight: bold; }

blockquote { margin: 1em 40px; }

dfn { font-style: italic; }

hr { display: block; height: 1px; border: 0; border-top: 1px solid #ccc; margin: 1em 0; padding: 0; }

ins { background: #ff9; color: #000; text-decoration: none; }

mark { background: #ff0; color: #000; font-style: italic; font-weight: bold; }

/* Redeclare monospace font family: h5bp.com/j */
pre, code, kbd, samp { font-family: monospace, serif; _font-family: 'courier new', monospace; font-size: 1em; }

/* Improve readability of pre-formatted text in all browsers */
pre { white-space: pre; white-space: pre-wrap; word-wrap: break-word; }

q { quotes: none; }
q:before, q:after { content: ""; content: none; }

small { font-size: 85%; }

/* Position subscript and superscript content without affecting line-height: h5bp.com/k */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }
sup { top: -0.5em; }
sub { bottom: -0.25em; }


/* =============================================================================
   Lists
   ========================================================================== */

ul, ol { margin: 1em 0; padding: 0 0 0 40px; }
dd { margin: 0 0 0 40px; }
nav ul, nav ol { list-style: none; list-style-image: none; margin: 0; padding: 0; }


/* =============================================================================
   Embedded content
   ========================================================================== */

/*
 * 1. Improve image quality when scaled in IE7: h5bp.com/d
 * 2. Remove the gap between images and borders on image containers: h5bp.com/i/440
 */

img { border: 0; -ms-interpolation-mode: bicubic; vertical-align: middle; }

/*
 * Correct overflow not hidden in IE9
 */

svg:not(:root) { overflow: hidden; }


/* =============================================================================
   Figures
   ========================================================================== */

figure { margin: 0; }


/* =============================================================================
   Forms
   ========================================================================== */

form { margin: 0; }
fieldset { border: 0; margin: 0; padding: 0; }

/* Indicate that 'label' will shift focus to the associated form element */
label { cursor: pointer; }

/*
 * 1. Correct color not inheriting in IE6/7/8/9
 * 2. Correct alignment displayed oddly in IE6/7
 */

legend { border: 0; *margin-left: -7px; padding: 0; white-space: normal; }

/*
 * 1. Correct font-size not inheriting in all browsers
 * 2. Remove margins in FF3/4 S5 Chrome
 * 3. Define consistent vertical alignment display in all browsers
 */

button, input, select, textarea { font-size: 100%; margin: 0; vertical-align: baseline; *vertical-align: middle; }

/*
 * 1. Define line-height as normal to match FF3/4 (set using !important in the UA stylesheet)
 */

button, input { line-height: normal; }

/*
 * 1. Display hand cursor for clickable form elements
 * 2. Allow styling of clickable form elements in iOS
 * 3. Correct inner spacing displayed oddly in IE7 (doesn't effect IE6)
 */

button, input[type="button"], input[type="reset"], input[type="submit"] { cursor: pointer; -webkit-appearance: button; *overflow: visible; }

/*
 * Re-set default cursor for disabled elements
 */

button[disabled], input[disabled] { cursor: default; }

/*
 * Consistent box sizing and appearance
 */

input[type="checkbox"], input[type="radio"] { box-sizing: border-box; padding: 0; *width: 13px; *height: 13px; }
input[type="search"] { -webkit-appearance: textfield; -moz-box-sizing: content-box; -webkit-box-sizing: content-box; box-sizing: content-box; }
input[type="search"]::-webkit-search-decoration, input[type="search"]::-webkit-search-cancel-button { -webkit-appearance: none; }

/*
 * Remove inner padding and border in FF3/4: h5bp.com/l
 */

button::-moz-focus-inner, input::-moz-focus-inner { border: 0; padding: 0; }

/*
 * 1. Remove default vertical scrollbar in IE6/7/8/9
 * 2. Allow only vertical resizing
 */

textarea { overflow: auto; vertical-align: top; resize: vertical; }

/* Colors for form validity */
input:valid, textarea:valid {  }
input:invalid, textarea:invalid { background-color: #f0dddd; }


/* =============================================================================
   Tables
   ========================================================================== */

table { border-collapse: collapse; border-spacing: 0; }
td { vertical-align: top; }


/* =============================================================================
   Chrome Frame Prompt
   ========================================================================== */

.chromeframe { margin: 0.2em 0; background: #ccc; color: black; padding: 0.2em 0; }


/* ==|== primary styles =====================================================
   Author: Scott Ramsey
   ========================================================================== */

body {
	text-align: center;
	background: #363f66;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

p, article li{ font-size: .75em; }
h2 { font-size: 1.75em; color: #38436b; font-style: italic; }
h3 { font-size: 1em; color: #95c941; }

div.wrapper  { 
	margin: 0 0 0 0;
	padding: 0 0 0 0; 
}
div.wrapper { background: url("../img/bgHome.png") repeat-x 0 154px transparent; }
#home div.wrapper { background: url("../img/bgHome.png") repeat-x 0 462px transparent; }

header div,
div#main, 
footer section{
	width: 940px;
	margin-left: auto;
	margin-right: auto;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0;
	text-align: left;
}

header { height: 154px; background: url("../img/bg.jpg") no-repeat top center #95c941; }
#home header { height: 462px; }

h1 {
	width: 238px;
	height: 90px;
	background: url("../img/logo.png") no-repeat top left transparent;
	text-indent: -5000px;
	overflow: hidden;
	float: left;
	margin: 0 0;
	padding: 0;
	position: absolute;
	top: 35px;
}

nav {
	display: block;
	width: 646px;
	margin-left: 295px;
	height: 38px;
	background: url("../img/bgNav.png") no-repeat 0 0 transparent;
	position: absolute;
	top: 69px;
}

nav select { display: none; }

nav ul{
	padding-left: 10px;
}

nav li {
	float: left;
	display: block;
	padding-top: 4px;
}

nav a {
	color: #fff;
	font-weight: bold;
	font-size: 14px;
	font-style: italic;
	text-decoration: none;
	margin: 0 22px;
	text-shadow: 1px 1px 3px #001b47;
}

nav a:hover,
nav a.active { color: #95c941; }

div#main {
	clear: both;
	margin-top: -29px;
}
.lt-ie8 #main  { margin-top: -9px; }

#home #main { margin-top: -337px; }

 
section.intro img {
	float: right;
	position: relative;
	top: -9px;
}
   
section.intro h2 {
	display: block;
	width: 383px;
	height: 203px;
	background: url("../img/bgIntro.png") no-repeat 0 72px transparent;
	text-indent: -5000px;
	overflow: hidden;
	padding: 72px 0 0 0;
	margin: 0 0 0 34px;
}

section.intro p { display: none; }

section.details,
#home aside {
	z-index: 5000;
	position: relative;
	top: -75px;
}

section.details {
	width: 590px;
	padding-right: 25px;
	z-index: 5000;
	clear: both;
	border-right: 1px dotted #38436b;
	float: left;
	padding-top: 0;
}

aside {
	display: block;
	float: left;
	width: 296px;
	padding-left: 25px;
	padding-top: 0;
	color: #38436b;
	/* margin-top: 283px; */
	margin-top: 453px;
	border-left: 1px dotted #38436b;
}

#home aside { 
	margin-top: 0;
	border-left: 0;
}

aside h3 {
	display: block;
	float: right;
	width: 101px;
	height: 101px;
	background: url("../img/freeTrial.png") no-repeat 0 10px transparent;
	text-indent: -5000px;
	overflow: hidden;
	margin: 0 0 0 10px;
	padding: 10px 0 0 0;
}

aside p {
	font-size: 1em;
}

article {
	margin-top: 40px;
	width: 590px;
	padding-bottom: 30px;
	float: left;
	padding-right: 25px;
}

#how article {
	width: 940px;
	padding-right: 0;
}

article img.feature {
	float: right;
	margin: -110px -350px 20px 20px;
}

article p.intro,
section.details p { font-size: 1em; }
article p.highlight{ font-size: 1.7em; padding-top: 20px; color: #353f65; }
img.steps { float: right; margin: -15px 0 15px 30px; }

article div.step {
	float: left;
	display: block;
	width: 280px;
	padding: 10px 25px;
	background: url("../img/bgStep.png") no-repeat 25px 0 transparent;
}

article div.step.step1 {
	padding-left: 0;
	clear: both;
	background-position: 0 0;
}

article div.step.step3 {
	padding-right: 0;
}

article div.profile {
	width: 270px; 
	padding: 0 50px 20px 0; 
	float: left;
}

article div.profile.right { padding: 0 0 0; } 

form legend {
	font-weight: bold;
	font-size: 1em;
	color: #95c941;
}

form p label {
	display: block;
	clear: both;
	padding-bottom: 1em;
}

form p {
	padding-bottom: 1em;
}

form p label { 
	float: left;
	width: 150px;
	padding-top: 4px;
	padding-left: 10px;
}

form p label em { 
	float: left;
	position: absolute;
	margin-left: -10px;
	color: red;
}

form p input[type="text"] { 
	width: 300px;
	padding: 3px;
	float: left;
}

form p textarea,
form p input[type="submit"] { 
	margin-left: 160px;
}

form p textarea { 
	margin-top: -2.7em;
	width: 300px;
	height: 150px;
	float: left;
}

span.field-validation-error {
	display: block;
	float: left;
	padding: 5px 0 10px;
	color: red;
	font-style: italic;
}

form p input.input-validation-error { border: 1px solid red; }

.lt-ie8 span.field-validation-error { width: 300px; }

.lt-ie8  form p textarea { margin-top: -4em; }

.lt-ie8 form { overflow-x: hidden; }

form p input[type="submit"] {
	background: -webkit-gradient(linear, left top, left bottom, from(#37426a), to(#1d3244));
	background: -moz-linear-gradient(top, #37426a, #1d3244);
    background: -ms-linear-gradient(top, #37426A 0%, #1D3244 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#37426a', endColorstr='#1d3244');
    border: 1px solid #1d3244;
    color: #fff;
	border-radius: 2em 2em 2em 2em;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    outline: medium none;
    padding: 0.5em 2em 0.55em;
    text-align: center;
    text-decoration: none;
    text-shadow: 0 1px 1px rgba(0, 0, 0, 0.3);
    vertical-align: baseline;
	font-weight: bold;
	font-style: italic;
	clear: both;
	margin-top: 1em;
}


form p input[type="submit"]:active {
	position: relative;
	top: 1px;
} 

footer { 
	color: #fff;
	margin: 0;
	padding: 0 0 20px;
	background: url("../img/bgFooter.png") repeat-x 0 0 transparent; 
	overflow: auto;
	clear: both;
}

.lt-ie8 footer { padding-top: 20px; }

footer a,
footer a:hover,
nav a,
footer h3 { color: #fff; }

#home footer aside,
footer aside {
	font-size: 0.75em;
	color: #fff;
	float: right;
	text-align: right;
	padding-top: 35px;
	margin-bottom: -100px;
	margin-top: 0;
	position: relative;
	width: 160px;
	top: -100px;
	background: url("../img/logoSmall.png") no-repeat 80px 0 transparent;
}

a.linkedin 
{
    display: block;
    background: url(../img/linkedin.png) -5px -8px no-repeat transparent;
    padding: 4px 0 4px 22px;
}






/* ==|== media queries ======================================================
   EXAMPLE Media Query for Responsive Design.
   This example overrides the primary ('mobile first') styles
   Modify as content requires.
   ========================================================================== */

@media screen and (max-width: 960px) {
	
	header div,
	div#main, 
	footer section,
	#how article{ width: 740px; }
	
	h1 {
		width: 172px;
		height: 60px;
		background: url("../img/logo960.png") no-repeat top left transparent;
		top: 16px;
	}
	
	header { height: 104px; }
	#home header { height: 371px; }
	div.wrapper { background-position: 0 104px; }
	#home div.wrapper { background-position: 0 371px; }
	
	#home #main { margin-top: -295px; }
	
	nav {
		width: 543px;
		margin-left: 193px;
		top: 35px;
		height: 38px;
		background: url("../img/bgNav960.png") no-repeat 0 0 transparent;
	}

	nav ul { padding-left: 10px; }

	nav a { margin: 0 11px; }
	
	#image {
		float: right;
		display: block;
		margin: 11px 16px 0 0;
		width: 368px;
		height: 371px;
		background: url("../img/devices960.png") no-repeat 0 0 transparent;
	}
	
	#image img { display: none; }
	section.intro h2 {
		width: 258px;
		height: 150px;
		background: url("../img/bgIntro960.png") no-repeat 0 72px transparent;
	}
	
	section.details,
	article { 
		width: 440px;
	}
	section.details,
	#home aside { margin-top: 10px; }
	article img.feature { margin-right: -295px; }
	
	aside { width: 246px; }
	
	img.steps { width: 360px; }
	article p.highlight { font-size: 1.25em; }
	
	article div.step { width: 210px; }
	article div.profile { width: 100%; float: none; padding: 0 0; } 
	
	form p label { 
		float: left;
		width: 300px;
		padding-top: 10px;
		padding-left: 10px;
		padding-bottom: 0;
	}
	
	form p input[type="text"],
	form p textarea { width: 400px; }
	
	form p input[type="text"] { margin-left: 10px; }
	
	form p textarea { margin: 0 0 0 10px; }
	
	span.field-validation-error { padding: 5px 0 0 10px; }
}

@media screen and (max-width: 740px) {
	
	header div,
	div#main, 
	footer section,
	#how article,
	section.details { width: 460px; }
	
	#home div.wrapper { background-position: 0 243px; }
	#home header { height: 243px; }
	#home #main { margin-top: -167px; }
	
	nav {
		width: 241px;
		margin-left: 193px;
		top: 35px;
		height: 38px;
		background: url("../img/bgNav740.png") no-repeat 0 0 transparent;
	}

	nav ul { display: none; }
	
	nav select {
		display: block;
		color: #fff;
		background: #2d3c5a;
		width: 210px;
		font-weight: bold;
		font-style: italic;
		border: 0;
		margin: 7px 0 0 15px;
	}
	
	section.details { padding: 0 0 0 0; border-right: 0; border-bottom: 1px dotted #38436B; }
	#image { display: none; }
	section.intro h2 {
		width: 432px;
		height: 202px;
		background: url("../img/devices740.png") 0 0 no-repeat transparent;
		margin: 8px 0 0 7px;
		padding: 40px 0 0 0;
	}
	article h2 { width: 220px; }
	article div.step { width: 460px; padding-left: 0; padding-right: 0; background-position: 0 0; }
	img.steps { width: 360px; float: none; margin: 0 0 0 50px; }
	article img.feature { margin-right: 0; width: 200px; }
	
	#home aside,
	aside { 
		margin-top: 0;
		border-left: 0;
		width: 440px;
		padding-bottom: 2em;
	}
	#home aside { padding-bottom: 0; }
	#home aside h3 { margin-right: 20px; }
	
	footer p { margin-right: 200px; }
	footer aside p { margin-right: 0; }
	footer aside { margin-top: -33px; }
}

@media screen and (max-width: 480px) {
	
	header div,
	div#main, 
	footer section,
	article,
	#how article,
	#home aside,
	aside,
	section.details { width: 300px; }
	
	h1 { margin-left: 67px; }
	
	nav {
		width: 310px;
		margin-left: 0;
		top: 90px;
		height: 38px;
		background: url("../img/bgNav480.png") no-repeat 0 0 transparent;
	}
	
	nav select { width: 275px; }
	
	section.intro h2 {
		width: 310px;
		height: 128px;
		background: url("../img/devices480.jpg") 0 0 no-repeat transparent;
		margin: 68px 0 0 0;
		padding: 40px 0 0 0;
	}
	
	article h2 { width: 300px; }
	article div.step { width: 300px;}
	img.steps { width: 300px; margin: 0 0 0 0; }
	article img.feature { display: none; }
	
	form p input[type="text"],
	form p textarea { width: 280px; }
	form p input[type="submit"] { margin-left: 90px; }
	
	footer p { margin-right: 170px; font-size: .7em; }
	footer aside,
	#home footer aside	{ margin-top: -58px; font-size: 1em;}
	footer aside p { padding-left: 20px;}
}



/* ==|== non-semantic helper classes ========================================
   Please define your styles before this section.
   ========================================================================== */

/* For image replacement */
.ir { display: block; border: 0; text-indent: -999em; overflow: hidden; background-color: transparent; background-repeat: no-repeat; text-align: left; direction: ltr; *line-height: 0; }
.ir br { display: none; }

/* Hide from both screenreaders and browsers: h5bp.com/u */
.hidden { display: none !important; visibility: hidden; }

/* Hide only visually, but have it available for screenreaders: h5bp.com/v */
.visuallyhidden { border: 0; clip: rect(0 0 0 0); height: 1px; margin: -1px; overflow: hidden; padding: 0; position: absolute; width: 1px; }

/* Extends the .visuallyhidden class to allow the element to be focusable when navigated to via the keyboard: h5bp.com/p */
.visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { clip: auto; height: auto; margin: 0; overflow: visible; position: static; width: auto; }

/* Hide visually and from screenreaders, but maintain layout */
.invisible { visibility: hidden; }

/* Contain floats: h5bp.com/q */
.clearfix:before, .clearfix:after { content: ""; display: table; }
.clearfix:after { clear: both; }
.clearfix { *zoom: 1; }



/* ==|== print styles =======================================================
   Print styles.
   Inlined to avoid required HTTP connection: h5bp.com/r
   ========================================================================== */

@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; } /* Black prints faster: h5bp.com/s */
  a, a:visited { text-decoration: underline; }
  a[href]:after { content: " (" attr(href) ")"; }
  abbr[title]:after { content: " (" attr(title) ")"; }
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }  /* Don't show links for images, or javascript/internal links */
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; } /* h5bp.com/t */
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
}
