@charset "UTF-8";

/*  ==============================

	MIKE'S FRAMEWORK (MPA FRAME)
	Michal Pechardo
	Version 4.5
	www.michalpechardo.com
	Modified by Jacob Taylor

==============================  */

/*  ---------------------------------------------------------------------------------------
    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, 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:inherit; font-style:inherit; font-size:100%; font-family:inherit; vertical-align:baseline; }
	:focus				 { outline:0; }
	body                 { line-height:1; color:black; background:white; }
	ol, ul               { list-style:none; }
	table                { border-collapse:separate; border-spacing:0; }
	caption, th, td      { text-align:left; font-weight:normal; }
	blockquote:before    { content:""; }
	blockquote:after     { content:""; }
	q:before, q:after    { content:""; }
	blockquote, q        { quotes:"" ""; }

/*  ---------------------------------------------------------------------------------------
    HTML ELEMENTS
    --------------------------------------------------------------------------------------- */
	body                { background: #fff; font-family: 'Lato', sans-serif; width:100%; position:relative;
						-webkit-font-smoothing: antialiased; -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }

	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
	h1					{ font-size: 32px; line-height: 42px; margin-bottom: 14px; color:#fff; font-weight:300;}
	h2 					{ font-size: 36px; line-height: 40px; margin-bottom: 10px; color:#666666; }
	h3 					{ font-size: 28px; line-height: 36px; margin-bottom: 14px; color:#666666; font-weight:400; }
	h4 					{ font-size: 18px; line-height: 40px; color:#888888; }
	h5 					{ font-size: 17px; line-height: 24px; }
	h6 					{ font-size: 16px; line-height: 21px; color:#555; }
	p                   { font-size: 16px; line-height: 24px; margin:0 0 24px; color:#555555; overflow: hidden;  }
	pre                 { }
	em 					{ font-style: italic; }
	strong 				{ font-weight: bold; color: #333; }
	.underline			{ text-decoration: underline !important; }
	.small 				{ font-size:14px; line-height:24px; margin-bottom: 14px; }
	.lineheight			{ line-height:26px; }
	.faq-text, .faq-text:visited			{ font-size: 20px; line-height: 34px; }
	.faq-text:hover, .faq-text:focus		{ font-size: 20px; line-height: 34px; }
	li.faq-text		{ text-indent: -35px; padding-left: 35px; }
	li.faq-text p		{ text-indent: 0px; margin-left: -35px;}
	.review-text		{ line-height:24px; }
	.about-heading		{ font-size:22px; line-height:30px; color:#000; margin-bottom:0px; }

	/*	styles  */
	.ylw				{ color:#fbdd74; margin:5px 0 0 10px; }
	.yllw				{ color:#fbdd74 !important; }
	.blu				{ font-size:14px; color:#27216d !important; margin-bottom:20px !important; }
	.blu2				{ font-size:16px; color:#27216d !important; margin-bottom:20px !important; line-height:24px; }
	.grn				{ color:#0a9400 !important; }
	.rd					{ color:#d34848 !important; }
	.gray-body 			{ background: #F0F0F0 !important; }
	.wht-body, .white-body, .white-bg 			{ background: #fff !important; padding:50px 0px 50px; }
	.blue-bg2 			{ background: #f5faff !important; padding:50px 0px 50px; }
	.prpl 				{ color:#338181; }
	.gry 				{ color:#666666; }
	.lnk 				{ color:#009bd0 !important; }
	.blk 				{ color:#000 !important; }

	.grey-bg			{ background:#eee !important; padding:35px 0px; }

	/*	Icon Fonts  */
	@font-face 			{ font-family: 'FontAwesome';src: url('../../font/fontawesome-webfont.eot');src: url('../../font/fontawesome-webfont.eot?#iefix') format('embedded-opentype'),
						  url('../../font/fontawesome-webfont.woff') format('woff'),
						  url('../../font/fontawesome-webfont.ttf') format('truetype'),
						  url('../../font/fontawesome-webfont.svg#FontAwesome') format('svg'); font-weight: normal;font-style: normal;}

	/*	Links  */
	a, a:visited 		{ font-size: 16px; line-height: 24px; outline: 0; text-decoration: none; color: #08C; position: relative; transition: all 0.3s ease-out; -webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out;  }
	a:hover, a:focus 	{ font-size: 16px; line-height: 24px; color: #0AF; }
	p a, p a:visited 	{ line-height: inherit; }

	/*	Selection  */
	:focus              { outline:0; }
	ins                 { text-decoration:none; }
   	del                 { text-decoration:line-through; }
   	table               { border-collapse:collapse; border-spacing:0; }
   	::selection         { background:blue; color:#fff; }
   	::-moz-selection    { background:blue; color:#fff; }

	/*	List  */
	ul, ol 				{ margin-bottom: 20px; }
	ul 					{ list-style: none outside; }
	ol 					{ list-style: decimal; }
	ol, ul.square, ul.circle, ul.disc { margin-left: 30px; }
	ul.square 			{ list-style: square outside; }
	ul.circle			{ list-style: circle outside; }
	ul.disc				{ list-style: disc outside; }
	ul ul, ul ol,
	ol ol, ol ul 		{ margin: 4px 0 5px 30px; font-size: 90%;  }
	ul ul li, ul ol li,
	ol ol li, ol ul li 	{ margin-bottom: 6px; }
	li 					{ margin-bottom: 12px; }
	ul.large li 		{ line-height: inherit; }

/*	Blockquotes  */
	blockquote, blockquote p { font-size: 17px; line-height: 24px; color: #777; font-style: italic; }
	blockquote 			{ margin: 0 0 20px; padding: 9px 20px 0 19px; border-left: 1px solid #ddd; }
	blockquote cite 	{ display: block; font-size: 12px; color: #555; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited, blockquote cite a:visited { color: #555; }

/*	Advanced CSS  */
	hr 					{ border: solid #ddd; border-width: 1px 0 0; clear: both; margin: 10px 0 30px; height: 0; }
	table tr:nth-child(even) { background: #fff;}
	.clearfix:before,
	.clearfix:after 	{ content: " ";display: table;}
 	.clearfix:after 	{ clear: both;}
	.clearfix 			{ *zoom: 1;}
	.ir 				{ text-indent: 100%; white-space: nowrap;overflow: hidden;}
	*, *:before, *:after { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box; }

/*  ---------------------------------------------------------------------------------------
    ADVANCED CSS
    --------------------------------------------------------------------------------------- */
	.content 			{ font: 1em/1.4 Segoe, "Segoe UI", "Helvetica Neue", Arial, sans-serif;}
 	.title 				{ font: 1.7em/1.2 Baskerville, "Baskerville old face", "Hoefler Text", Garamond, "Times New Roman", serif;}
 	.code 				{ font: 0.8em/1.6 Monaco, Mono-Space, monospace;}
	.disabled 			{ pointer-events: none;opacity: 0.5;}

/*	Advanced Styling CSS  */
	.embossed-light 	{ border: 1px solid rgba(0,0,0,0.1); box-shadow: inset 0 1px 0 rgba(255,255,255,0.7);}
	.embossed-heavy 	{ border: 1px solid rgba(0,0,0,0.1); box-shadow:  inset 0 2px 3px rgba(255,255,255,0.3), inset 0 -2px 3px rgba(0,0,0,0.3), 0 1px 1px rgba(255,255,255,0.9);}
	.gradient-light-linear 	{ background-image: linear-gradient(rgba(255,255,255,.5), rgba(255,255,255,0));}
	.gradient-dark-linear 	{ background-image: linear-gradient(rgba(0,0,0,.25), rgba(0,0,0,0));}
	.gradient-light-radial 	{ background-image: radial-gradient(center 0, circle farthest-corner, rgba(255,255,255,0.4), rgba(255,255,255,0));}
	.gradient-dark-radial 	{ background-image: radial-gradient(center 0, circle farthest-corner, rgba(0,0,0,0.15), rgba(0,0,0,0));}
	.light-rounded 		{ border-radius: 3px;}
	.heavy-rounded 		{ border-radius: 8px;}
	.full-rounded		{ border-radius: 50%;}
	.barrel-rounded 	{ border-radius: 20px/60px;}
	.mac {display: block;border: none;border-radius: 20px;padding: 5px 8px;color: #333;box-shadow: inset 0 2px 0 rgba(0,0,0,.2),  0 0 4px rgba(0,0,0,0.1);}
	.mac:focus {  outline: none;  box-shadow:  inset 0 2px 0 rgba(0,0,0,.2),  0 0 4px rgba(0,0,0,0.1), 0 0 5px 1px #51CBEE;}
	.inset-shadow		{ box-shadow: inset 0px 0px 15px rgba(0, 0, 0, 0.3); -webkit-box-shadow: inset 0px 0px 15px rgba(0, 0, 0, 0.3); -moz-box-shadow: inset 0px 0px 15px rgba(0, 0, 0, 0.3); }

/*	Advanced Inline CSS  */
	.inline-link-1 		{ display: inline-block; margin: 0 0.2em; padding: 3px;background: #97CAF2; border-radius: 2px; transition: all 0.3s ease-out; text-decoration: none; font-weight: bold; color: white;}
	.inline-link-1:hover   { background: #53A7EA; }
	.inline-link-1:active  { background: #C4E1F8; }
	.inline-link-1:visited { background: #F2BF97; }
	.inline-link-3 		   { display: inline-block;position: relative; padding-left: 6px; text-decoration: none; color: #6AB3EC; text-shadow: 0 1px 1px rgba(255,255,255,0.9);}
	.inline-link-3:hover   { color: #3C9CE7;}
	.inline-link-3:before  { content: "\25BA"; font-size: 80%;  display: inline-block; padding-right: 3px; pointer-events: none;}
	.inline-link-3:hover:before { color: #F2BF97; }

	.videoWrapper 		   { position: relative; padding-bottom: 80%; /* 16:9 */ height: 0; margin-bottom:20px; }
	.videoWrapper iframe   { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

/*  ---------------------------------------------------------------------------------------
    PRE-LOAD
    --------------------------------------------------------------------------------------- */
	div#preload { display: none; }


/*  ---------------------------------------------------------------------------------------
    DEFAULT CLASSES
    --------------------------------------------------------------------------------------- */
	.no-bg              { background:none; }
	.no-display         { display:none; }
	.no-border          { border:0 !important; }
	.no-margin          { margin:0; }
	.no-padding         { padding:0; }
	.clear              { clear: both; display: block; overflow: hidden; visibility: hidden; width: 0; height: 0; }
	.left               { float:left; }
	.right              { float:right; }
	.center             { text-align:center !important; }
	.text-center 		{ text-align:center; float:none; }
	.alignleft          { float:left; margin:0 20px 10px 0; }
	.alignright         { float:right; margin:0 0 10px 20px; }
	.aligncenter        { margin:0 auto; }
	.always-center		{ display: block !important; margin-left: auto !important; margin-right: auto !important; float:none !important; }

	.pad-top-10			{ margin-top:10px !important; }
	.pad-bottom-10		{ margin-bottom:10px !important; }
	.pad-top			{ margin-top:20px !important; }
	.pad-bottom			{ margin-bottom:20px !important; }
	.pad-top-40			{ margin-top:40px !important; }
	.pad-bottom-40		{ margin-bottom:40px !important; }
	.x-pad-bottom 		{ margin-bottom:0px !important;  }
	.x-pad-top	 		{ margin-top:0px !important;  }
	.x-pad-left			{ margin-left:0px !important; }
	.x-pad-full 		{ margin:0px !important;  }
	.padding-t50		{ padding-top:50px !important; }
	.padding-b50		{ padding-bottom:50px !important; }
	.p-space p			{ margin-bottom:0px !important; }
	.p-space2 p			{ margin-bottom:0px; }
	.pads				{ padding:20px 0px; }
	.pad-left 			{ padding-left:10px; }

	.margin-right		{ margin-right:60px; }
	.margin-left		{ margin-left:60px; }

	.img-control		{ max-width:100% !important; }
	.thumbnail-img		{ max-width:75% !important; }

	.relative			{ position:relative; }
	.inblock			{ display:inline-block; }
	.overflow			{ overflow:hidden; }

	.top-border			{ border-top:1px solid #ccc; }
	.border				{ width:100%; border-bottom:1px solid rgba(255,255,255,0.2); border-top:1px solid rgba(0,0,0,0.2); clear:both; display:block; margin:20px 0px; }
	.dot-half			{ width:50%; border-top:1px dotted #ccc; clear:both; display:block; margin:30px auto 30px; }
	.dot-full			{ width:100%; border-top:1px dotted #ccc; clear:both; display:block; margin:30px auto 30px; }
	.dot-right			{ border-right:1px dotted #ccc; }
	.early-100			{ width:inherit; }
	.early-50			{ width:inherit; }
	.early-25			{ width:inherit; }
	.frame				{ background:#efefef; border:1px solid #ccc; padding:10px; }

	.late-show			{ display:none !important; }
	.later-show			{ display:none !important; }
	.early-show			{ display:block !important; }
	.earlier-show	    { display:block !important; }

	.late-pad			{ margin-bottom:0px; }
	.full				{ width:100% !important; text-align:center; }

/*  ---------------------------------------------------------------------------------------
    BUTTONS
    --------------------------------------------------------------------------------------- */
	.button, .button:visited { width:auto; display: inline-block; padding: 5px 10px 6px; color: #fff; text-decoration: none; text-align:center; -moz-border-radius: 30px; -webkit-border-radius: 30px;border-bottom: 1px solid rgba(0,0,0,0.25);position: relative;cursor: pointer;}

	.button:hover								{ background-color: #111; color: #fff; }
	.button:active								{ top: 1px; }
	.small.button, .small.button:visited 		{ font-size: 11px; font-weight: bold; line-height: 1; text-transform: uppercase; letter-spacing: 1px; padding: 14px 20px; }
	.button, .button:visited,
	.medium.button, .medium.button:visited 		{ font-size: 14px; font-weight: bold; line-height: 1; text-transform: uppercase; letter-spacing: 1px; padding: 14px 20px; }
	.large.button, .large.button:visited		{ font-size: 14px; font-weight: bolder; text-transform: uppercase; letter-spacing: 1px; padding: 20px 35px; margin:0px 10px; }

	.index.button, .index.button:visited		{ font-size: 14px; font-weight: bold; line-height: 1; text-transform: uppercase; letter-spacing: 1px; padding: 20px 35px; }

	.green.button, .green.button:visited		{ background-color: #27216d; width:100%; padding: 14px 14px; margin:0px 0px; color:#fff; text-shadow: 0 -1px 1px rgba(0,0,0,.3);}
	.green.button:hover							{ background-color: #0f51b9; }
	.blue.button, .blue.button:visited			{ background-color: #036abf; color:#fff; text-shadow: 0 -1px 1px rgba(0,0,0,.3);}
	.blue.button:hover							{ background-color: #009bd0; }
	.blue2.button, .blue2.button:visited		{ background-color: #036abf; color:#fff; text-shadow: 0 -1px 1px rgba(0,0,0,.3);}
	.blue2.button:hover							{ background-color: #009bd0; }
	.grey.button, .grey.button:visited			{ background-color: #979797; color:#fff; text-shadow: 0 -1px 1px rgba(0,0,0,.3); margin-left:20px; }
	.grey.button:hover							{ background-color: #b1b0b0; }
	.plain.button, .plain.button:visited		{ background-color: transparent; color:#666666; border-bottom: none !important; }
	.plain.button:hover							{ background-color: transparent; color:#902bbf; }
	.red.button, .red.button:visited			{ background-color: #e33100; }
	.red.button:hover							{ background-color: #872300; }
	.magenta.button, .magenta.button:visited	{ background-color: #a9014b; }
	.magenta.button:hover						{ background-color: #630030; }
	.filled.button, .filled.button:visited		{ background-color: #fff; border:2px solid #fff; padding: 10px 0px; margin:0px 10px; color:#00345a; }
	.yellow.button, .yellow.button:visited		{ background:transparent; padding: 14px 40px; margin:0px 10px; color:#fff; border:2px solid #fff; }
	.yellow.button:hover						{ background-color: #fff; color:#00345a; text-shadow:none; }

	button.standard, a.standard, input[type=submit].standard { padding: 6px 10px; -webkit-border-radius: 2px 2px; border: solid 1px rgb(153, 153, 153); background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(255, 255, 255)), to(rgb(221, 221, 221))); color: #333; text-decoration: none; cursor: pointer; display: inline-block; text-align: center; text-shadow: 0px 1px 1px rgba(255,255,255,1); line-height: 1; }
	.standard:hover 		{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(248, 248, 248)), to(rgb(221, 221, 221))); }
	.standard:active 		{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(204, 204, 204)), to(rgb(221, 221, 221))); }
	.standard.medium 		{ padding: 5px 8px; font-size: 12px; }
	.standard.large 		{ padding: 10px 15px; font-size: 21px; font-weight: bold; }
	.standard.scaled 		{ -webkit-transform: scale(2); -webkit-transform-origin: bottom left; }

	.standard.blue 			{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(255, 255, 255)), to(rgb(98,202,227))); border-color: rgb(98,202,227);  }
	.standard.green 		{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(255, 255, 255)), to(rgb(213,224,77))); border-color: rgb(213,224,77);  }
	.standard.red 			{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(241,93,34)), to(rgb(146,60,6))); border-color: rgb(146,60,6); text-shadow: 0px -1px 1px rgba(0,0,0,0.5); color: #fff; }
	.standard.purple 		{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(202,0,108)), to(rgb(124,0,64))); border-color: rgb(202,0,108); text-shadow: 0px -1px 1px rgba(0,0,0,0.5); color: #fff;  }
	.standard.orange 		{ background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(rgb(255, 255, 255)), to(rgb(245,132,38))); border-color: rgb(245,132,38);  }


/*  ---------------------------------------------------------------------------------------
    SITE ELEMENTS
    --------------------------------------------------------------------------------------- */
	#logo					{ float:left; margin: 0 auto 0; }
	.logo-small				{ width:100%; max-width: 540px; margin:25px auto 40px; display: block; }
	.logo-smallest			{ width:100%; max-width: 320px; margin:35px auto 20px; display: block; }
	.footer-logo 			{ max-width: 150px; margin-top: 30px; float: left; }

	.section .border		{ margin:10px 0px !important; }
	.slide p				{ font-size:14px; color:#848484; margin-bottom:0px; text-align:center; }
	.slide .fa				{ color:#848484; display:block; text-align:center; }
	#featured div			{ min-height:140px; max-height:100%; padding:20px 10px; border-right:1px solid #ccc; margin-top:10px; margin-bottom:0px; display:block; }
	#featured div:last-child	{ border:none; }

	.red-box				{ background:#fcdada; padding:10px 10px; z-index:100; position:relative; border:1px solid #dfb3b3; margin:20px 0px; }
	.richard				{ max-width:90px; float:left; margin: 15px 0px 0px 15px; }

	.gray-box				{ background:#fff; padding:20px 20px; z-index:100; position:relative; margin:40px; }
	.gray-box p				{ font-size:14px; color:#27216d; margin-bottom:0px; }
	.gray-box h1			{ font-size:28px; color:#27216d; margin-bottom:0px; text-align:center; }

	.gray-box2				{ background:#f4f4f4; padding:26px 20px; z-index:100; position:relative; border:1px solid #ccc; margin-bottom:20px; }
	.gray-box2 p { font-size:14px; color:#27216d; margin-bottom:0px; }
	.gray-box2 h1			{ font-size:28px; color:#27216d; margin:15px 20px 0px 35px; text-align:left; float:left; }

	.gray-box3				{ background:#f4f4f4; padding:10px 20px; z-index:100; position:relative; border:1px solid #ccc; margin-bottom:20px; }
	.gray-box3 h2			{ font-size:18px; font-weight:bold; margin-bottom:0px; }

	.gray-box4				{ background:rgba(255,255,255,.8); padding:26px 20px; z-index:100; position:relative; border:1px solid #ccc; margin-bottom:20px; margin-top:15%; }
	.gray-box4 p 			{ font-size:14px; color:#27216d; margin-bottom:20px; line-height:24px; text-align:center; }
	.grayfix h2				{ font-size:18px; font-weight:bold; margin-bottom:0px; }

	.product-block 			{ width: 31%; min-height: 250px; margin-right: 22px; float: left; }
	.product-block p 		{ margin-top: 5px; line-height: 24px; text-align: left; margin-bottom: 0px; }
	.product-block img 		{ max-width: 100%; margin-bottom: 10px; }
	.product-block span 	{ font-size: 12px; color: #999; font-style: italic;}

	.book-block 			{ width: 47%; min-height: 256px; margin-right: 22px; float: left; }
	.book-block p 			{ margin-top: 5px; line-height: 24px; text-align: left; }
	.book-block img 		{ max-width: 100%; margin-bottom: 10px; }
	.book-block span 		{ font-size: 12px; color: #999; font-style: italic;}

	.boss-img				{ width:100%; border:1px solid #ddd; padding:5px; }

	.description-box		{ margin:0px; }
	.description-box h1		{ font-size:28px; line-height:38px; font-weight:500; color:#000; margin-bottom:0px; }
	.description-box h4		{ font-size:14px; line-height:20px; font-weight:500; color:#888888; margin-bottom:0px; }

	/* backgrounds */
	.blue-bg				{ width:100%; min-width:100%; height: 440px; background:url(../images/banner-1280px.jpg) right; background-size: cover; overflow: hidden;
	background-repeat:no-repeat; position:relative; display:block; }
	.blue-bg-small			{ width:100%; min-width:100%; height: 240px; background:url(../images/banner-1280px.jpg) right; background-size: cover; overflow: hidden;
	background-repeat:no-repeat; position:relative; display:block; }
	.gray-bg				{ background:#e5e5e5; padding:20px 0px; margin-bottom:20px; z-index:100; position:relative; border:solid #ccc; border-width:1px 0px; }
    .overlay				{ background:url(../images/overlay.png) repeat; }
	.blue-full				{ background:url(../images/blue-bg.jpg) no-repeat center center fixed;
							  -webkit-background-size: cover;-moz-background-size: cover; -o-background-size: cover;background-size: cover; }

	/* nav */
	.nav					{ width:100%; background:#252525; height:50px; position:relative; padding-bottom:20px; display:block; }
	.nav-logo				{ margin-top:16px; float:left; }
	ul.nav-list				{ list-style: none; text-align: center; margin-top: 40px; margin-bottom: 10px; display: block; }
	.nav-list li 			{ display: inline-block; margin: 0 20px; }
	.nav-list li a 			{ text-transform:uppercase; font-size:14px; font-weight:900; color:#fff; letter-spacing:1px; float:right;
	-webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; }
	.nav-list li a:hover 	{ color:#ccc; -webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; }
	.nav-active 			{ color: #009bd0 !important; }

	/* classes */
	.fix					{ display:block; }
	.ipad-place				{ background:url(../images/ipad.png) no-repeat transparent; position:absolute; bottom:5px; right:50px; z-index:1000; }
	.ipad					{ width:300px; height:426px; margin:0 auto; }
	.big					{ float:right; }
	.big p					{ width:80%; float:right; }
	.icon					{ display: block !important; margin-left: auto !important; margin-right: auto !important; float:none !important; margin-bottom:15px;  }
	.icon2					{ float:left; margin-right:20px; padding:20px;  }

	.mini					{ width:25%; float:left; display:inline-block; border-right:1px solid #ccc; margin-top:20px; padding:10px; }
	.mini2					{ width:25%; float:left; display:inline-block; border-right:1px solid #ccc; margin-top:20px; padding:10px; }
	.hide					{ display:none; }

	/* reviews */
	.word1					{ font-size:16px; line-height:10px; margin-bottom:15px; display:block; }
	.word2					{ font-size:12px; line-height:10px; }
	.button-fix				{ padding-top:12px !important; padding-bottom:12px !important; }
	.space					{ display:none; }

/*	#fl1					{ max-width:600px; }
	#fl2					{ min-width:600px; max-width:620px; }
	#fl3					{ min-width:600px; max-width:620px; }
	#fl4					{ min-width:600px; max-width:620px; }
	#fl5					{ min-width:600px; max-width:620px; }*/
#fl1, #fl2, #fl3, #fl4		{ max-width:600px; }
	#fl3					{ max-width:600px; }
	#fl4					{ max-width:600px; }
	#fl5					{ max-width:1000px; }
	#fl3 img				{ max-width:80px; }
	#fl3 p					{ font-size:14px; line-height:20px; color:#000; overflow:hidden; text-align:left; }
	#fl3 h3					{ font-size:18px; color:#27216d; margin-bottom:10px; }
	.lightbox h2 			{ line-height: 44px; color:#333; text-align:center; }
	.lightbox h3 			{ font-size: 20px; font-weight: bold; text-transform: uppercase; line-height: 32px; margin-bottom: 0px; color:#412D68; text-align:left; }
	.lightbox h4			{ font-size:18px; line-height:24px; }
	.lightbox h6			{ font-size:16px; line-height:22px; }
	.lightbox p 			{ font-size:15px; line-height:21px; color:#848484; text-align:center; margin:10px 0px; }
	.lefty					{ width:30%; float:left; margin-right:5%; }
	.righty					{ width:30%; float:left; }
	.first					{ width:48.5%; float:left; margin-right:3%; }
	.last					{ width:48.5%; float:left; }
	.phone					{ width:12.5%; float:left; margin-right:3%; }
	.phone2					{ width:12.5%; float:left; }

	.option-box:hover, .option-box2:hover, .option-box3:hover,
	.option-box4:hover 		{ background:#efefef; border-color: #848484; }

	.option-box				{ margin: 20px 0px 20px 85px; padding: 30px 20px; height: 225px; text-align:center; border:none; }
	.option-box2			{ margin: 10px 0px 0px 85px; padding: 30px 20px; height: 260px; text-align:center; border:none; }
	.option-box3			{ margin: 20px 80px 20px 0px; padding: 30px 20px; height: 225px; text-align:center; border:none; }
	.option-box4			{ margin: 10px 80px 0px 0px; padding: 30px 20px; height: 260px; text-align:center; border:none; }

	.option-box p 			{ padding-bottom:35px; }
	.option-box2 p 			{ padding-bottom:15px; }

/* GUIDE TO FILEMAKER CSS */
	.brown-box			{ display:block; position:absolute; width:439px; height:506px; left:481px; top:65px; }
	.brown-stripe		{ display:block; position:absolute; width:435px; height:40px; left:483px; top:280px; }

	.green-box			{ display:block; position:absolute; width:346px; height:505px; left:86px; top:65px; }
	.green-stripe		{ display:block; position:absolute; width:337px; height:50px; left:90px; top:283px; }

	.beginner			{ display:block; position:absolute; width:94px; height:auto; right:0px; top:120px; }
	.intermediate		{ display:block; position:absolute; width:94px; height:auto; right:0px; top:260px; }
	.senior				{ display:block; position:absolute; width:94px; height:auto; right:0px; top:400px; }

	.business			{ display:block; position:absolute; width:94px; height:auto; left:0px; top:160px; }
	.developer			{ display:block; position:absolute; width:94px; height:auto; left:0px; top:340px; }
/* END */

/* CONTACT PAGE BOXES */
	.contact			{ padding:70px 0px 50px; }
	.contact h1			{ font-size:40px; color:#333; font-weight:700; margin-bottom:30px; }

	.contact-box		{ border:1px solid #aaa; padding:20px; border-radius:10px; height:375px; margin-bottom:20px; }
	.contact-box h2		{ font-size:20px; color:#333; font-weight:700; line-height:28px; }
	.contact-box p 		{ font-size:16px; line-height:26px; margin-bottom:10px; }

	.shorter-box		{ height:200px; }

	.phone-bg			{ background:#fff; padding:50px 0px 30px; }
	.phone-bg h2		{ font-size:24px; color:#333; font-weight:700; line-height:32px; }
	.phone-bg p 		{ font-size:18px; line-height:26px; margin-bottom:10px; }
	.phone-bg a 		{ font-size:18px; }
/* END */

	.half					{ width:49%;}
	.half h3				{ margin-bottom:0px; color:#27216d; }
	.listed li				{ font-size:14px; color:#848484; border-bottom:1px solid #dcdcdc; padding:5px; }
	.listed h3				{ line-height:26px; margin:14px 0px 10px; }

	.left-wing 				{ float: left; width: 66%; padding-right: 20px; }
	.right-wing 			{ float: right; width: 32%; }

	.twitch-calendar		{ background: #fff;}
	.full-wing				{ float: left; width: 100%; margin: 20px 0 0; padding-right: 20px; }
	.left-wing2 			{ float: left; width: 48%; padding-right: 20px; }
	.right-wing2 			{ float: right; width: 48%; margin-right: 20px; }
	.right-wing2-text		{ color: #2f79cd; }
	.right-wing .product-block { width: 100%; float: right; }

	.left-wing3				{ float: left; width: 46%; padding-right:20px; border-right:8px solid #ddd; }
	.right-wing3			{ float: right; width: 52%; }

	.tcc-blue				{ background: #7fe0d1; color: #fff; }
	.tcc-light-blue			{ background: #d2eee9 !important; }
	/*.tcc-blue-2				{ background: #34c6d2; color: #fff; }
	.tcc-light-blue-2		{ background: #96e3ea !important; }
	.tcc-blue-3				{ background: #00aad3; color: #fff; }
	.tcc-light-blue-3		{ background: #7cd9f0 !important; }
	.tcc-blue-4				{ background: #0282a1; color: #fff; }
	.tcc-light-blue-4		{ background: #95c1cc !important; }
	.tcc-blue-5				{ background: #0282a1; color: #fff; }
	.tcc-light-blue-5		{ background: #95c1cc !important; }*/

	/* Below Added by Jacob Taylor. Exactly as above, but much more amenable to PHP's foreach loop. */
	th.tcc-blue:nth-child(1) { background: #7fe0d1; color: #fff; }
	th.tcc-blue:nth-child(2) { background: #34c6d2; color: #fff; }
	th.tcc-blue:nth-child(3) { background: #06d1d3; color: #fff; }
	th.tcc-blue:nth-child(4) { background: #00aad3; color: #fff; }
	th.tcc-blue:nth-child(5) { background: #0282a1; color: #fff; }


	.tcc-blue, .tcc-light-blue { min-width: 17%;}
	.twitch-calendar .table-striped {
		table-layout: fixed;
	}

	td.tcc-light-blue:nth-child(1) { background: #d2eee9 !important; }
	td.tcc-light-blue:nth-child(2) { background: #96e3ea !important; }
	td.tcc-light-blue:nth-child(3) { background: #10b1c3 !important; }
	td.tcc-light-blue:nth-child(4) { background: #7cd9f0 !important; }
	td.tcc-light-blue:nth-child(5) { background: #22a2c1 !important; }

	td.tcc-light-blue a {color: #910000;}
	/* fix the errant 1-2px borders inherited from Bootstrap CSS */
	.twitch-calendar .table-striped > thead > tr > th, .twitch-calendar .table-striped > tbody > tr > td { border-bottom: 0; border-top: 0; padding: 10px;}
	/* "tighten up" the line height on the descriptions in the twitch calendar */
	.twitch-calendar .table-striped > thead > tr > th > p, .twitch-calendar .table-striped > tbody > tr > td > p { line-height: 20px; }

	footer					{ background:#2B2D2B; padding:20px 0px; z-index:100; position:relative; }
	ul.footer-nav 			{ list-style: none; margin-top: 30px; text-align: right; }
	.footer-nav li 			{ display: inline-block; margin: 0 0 0 20px; }
	.footer-nav li a 		{ text-transform:uppercase; font-size:14px; font-weight:900; color:#fff; letter-spacing:1px; float:right;
	-webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; }
	.footer-nav li a:hover 	{ color:#ccc; -webkit-transition:all 0.3s ease-out; -moz-transition:all 0.3s ease-out; }
	.mw { max-width: 50%;}


/*  ---------------------------------------------------------------------------------------
    GRID 1200px
    --------------------------------------------------------------------------------------- */





/*  ---------------------------------------------------------------------------------------
    GRID 960px (DESKTOP)
    --------------------------------------------------------------------------------------- */

@media only screen and (min-width: 960px) and (max-width: 1199px) {

	.ipad-place				{ width:300px; height:426px;  background:url(../images/ipad.png) no-repeat transparent; position:absolute; bottom:130px; right:0px; z-index:1000; }
	.early-50				{ width:31.5% !important; padding-left:0px !important; padding-right:0px !important; margin:0px  5px!important; }
	.big p					{ width:75%; float:right; }
	.ylw					{ font-size:12px; color:#fbdd74; margin:5px 0 0 10px; }
	.blue.button			{ width:40%; margin:0 0 10px; }
	.space					{ display:block; }

	.product-block 			{ width: 30%; min-height: 245px; margin-right: 22px; float: left; }

	.tab-block 				{ margin-top: -93px !important; }
	ul.tabs li a 			{ min-height:90px !important; padding: 20px 2% 25px !important; font-size: 16px !important;  }
	ul.tabs li p 			{ font-size: 12px !important;  }
	.left-wing 				{ float: left; width: 66%; margin-bottom: 20px; }
	.right-wing 			{ float: left; width: 32%; }
	.right-wing .product-block { width: 100%; float: left; }
	.mw { max-width: 50%;}

	.thumbnail-img			{ max-width:90% !important; }

	.shorter-box			{ height:250px; }

	.border-box .boss-box			{ width:150px; }
	.border-box .description-box	{ width:300px; }
	.description-box				{ margin:20px 0px 0px; }

}


/*  ---------------------------------------------------------------------------------------
    GRID 720px (TABLET)
    --------------------------------------------------------------------------------------- */

@media only screen and (min-width: 720px) and (max-width: 959px) {

	.fix					{ display:none; }
	.fixit					{ display:none; }
	.early-100				{ width:100% !important; }
	.early-50				{ width:31.5% !important; padding-left:0px !important; padding-right:0px !important; margin:0px  5px!important; }
	.early-25				{ width:100% !important;}
	.text-center			{ text-align:center; float:none; }
	.yellow.button			{ margin:0px 10px 20px 0px; }
	.blue.button			{ margin:0 0 10px; }

	.late-show				{ display:block !important; }
	.later-show				{ display:none !important; }
	.earlier-show	    	{ display:none !important; }

	.product-block 			{ width: 46%; margin-right: 20px; float: left; }
	.product-block img 		{ max-width: 100%; margin-bottom: 10px; -webkit-filter: grayscale(0%) !important;  -webkit-transition: .5s ease-in-out; -moz-filter: ggrayscale(0%) !important;   -moz-transition: .5s ease-in-out; -o-filter: grayscale(100%);
	  -o-transition: .5s ease-in-out;  filter: grayscale(100%); }
	.book-block 			{ width: 46%; min-height: 256px; }
	ul.tabs li p 			{ display: none; }
	ul.tabs li a 			{ height: 66px !important; font-size: 14px !important; padding: 20px 2% 25px !important; }
	ul.tabs li i 			{ bottom: 1.5px !important; }
	.half					{ width:100%;}
	.tab-block 				{ margin-top: -66px !important; }


	.left-wing 				{ float: left; width: 100%; margin-bottom: 20px; }
	.right-wing 			{ float: right; width: 100%; }
	.right-wing .product-block { width: 47%; float: left; }


	ul.footer-nav 			{ text-align: center; }
	.footer-logo 			{ margin: 30px auto 0 !important; float: none !important; display: block; }
	.mw { max-width: 80%;}

	.thumbnail-img			{ max-width:100% !important; }
	.left-wing3				{ float: none; width: 100%; padding-right:0px; border-right:0px; }
	.right-wing3			{ float: none; width: 100%; margin-top:10px; }

	.option-box 			{ margin: 20px 0px; height: 195px; border:none; padding: 30px 20px; margin-bottom:70px; }
	.option-box2			{ margin: 10px 0px; height: 250px; border:none; padding: 50px 20px 20px; margin-bottom:20px; }
	.option-box3			{ margin: 20px 0px; height: 240px; border:none; padding: 30px 20px; margin-bottom:70px; }
	.option-box4			{ margin: 10px 0px; height: 270px; border:none; padding: 30px 20px; }

	.option-box p 			{ padding-bottom:10px; }

	.box-text				{ padding-bottom: 10px; }

	#fl4					{ min-width:100% !important; max-width:375px !important; }
	#fl5					{ min-width:100% !important; max-width:375px !important; }
	.option-box .button 	{ width: 50% !important; margin-top: 0px; }

/* GUIDE TO FILEMAKER CSS */
	.brown-box			{ display:block; position:absolute; width:375px; height:580px; left:0px; top:665px; }
	.brown-stripe		{ display:block; position:absolute; width:372px; height:50px; left:0px; top:910px; }

	.green-box			{ display:block; position:absolute; width:375px; height:515px; left:0px; top:65px; }
	.green-stripe		{ display:block; position:absolute; width:365px; height:50px; left:5px; top:280px; }

	.beginner			{ display:block; position:absolute; width:80px; height:auto; left:27px; top:875px; }
	.intermediate		{ display:block; position:absolute; width:80px; height:auto; left:147px; top:875px; }
	.senior				{ display:block; position:absolute; width:80px; height:auto; left:267px; top:875px; }

	.business			{ display:block; position:absolute; width:80px; height:auto; left:70px; top:250px; }
	.developer			{ display:block; position:absolute; width:80px; height:auto; left:225px; top:250px; }
/* END */

	.margin-left		{ margin-left:0px; }
	.margin-right		{ margin-right:0px; }


	.contact			{ padding:50px 0px 30px; }
	.contact h1			{ font-size:30px; margin-bottom:30px; }

	.contact-box		{ padding:10px; height:300px; }
	.contact-box h2		{ font-size:17px; line-height:25px; }
	.contact-box p 		{ font-size:13px; line-height:21px; }

	.shorter-box		{ height:200px; }

	.phone-bg			{ padding:30px 0px 30px; }

 }



/*  ---------------------------------------------------------------------------------------
    GRID (IT) 720px (MOBILE)
    --------------------------------------------------------------------------------------- */

@media only screen and (max-width: 719px) {

	.fix					{ display:block; }
	.fixit					{ display:none; }
	.early-100				{ width:100% !important; }
	.early-50				{ width:100% !important; }
	.early-25				{ width:100% !important;}
	.text-center			{ text-align:center; float:none; }
	.late-pad				{ margin-bottom:20px; }
	.yellow.button			{ margin:0px 0px 20px; }
	.blue.button, .maroon.button	{ margin:0px 0px 10px; }
	.mini					{ width:50%; }
	.mini2					{ display:none;}
	.hide					{ display:block; }
	.right-wing2 			{ width: 100% !important; margin: 20px 0 20px 20px !important; }
	.left-wing2				{ width: 100% !important; padding-right: 0 !important; }
	.full-wing				{ padding-right: 0 !important; }

	.description-box				{ margin:20px 0px 0px; }

	.late-show				{ display:block !important; }
	.later-show				{ display:block !important; }
	.early-show				{ display:none !important; }
	.earlier-show	    	{ display:none !important; }

	.logo-small				{ max-width:360px; width: 100%; margin:20px auto 20px; display: block; }
	.blue-bg				{ width:100%; min-width:100%; height: 300px; }
	.product-block 			{ width: 100%; margin-right: 22px; float: left; }
	.product-block img 		{ max-width: 100%; margin-bottom: 10px; -webkit-filter: grayscale(0%) !important;  -webkit-transition: .5s ease-in-out; -moz-filter: ggrayscale(0%) !important;   -moz-transition: .5s ease-in-out; -o-filter: grayscale(100%);
	  -o-transition: .5s ease-in-out;  filter: grayscale(100%); }
	.book-block 			{ width: 100%; min-height: 256px; }
	ul.tabs-content 		{ padding:40px 22px 20px 22px !important; }
	ul.tabs 				{ background: #fff; padding: 10px !important;}
	ul.tabs li p 			{ display: none; }
	ul.tabs li a 			{ width: 100%; padding: 15px 20px 15px !important;font-size: 14px !important; line-height: 22px !important; color: #036abf !important; }
	ul.tabs li a.active 	{ background: #dfe7ef !important; }
	.tab-block 				{ margin-top: 0px !important; }

	.nav-list li 			{ margin: 0 10px; }
	.nav-list li a 			{ font-size:12px; }

	.half					{ width:100%;}
	.left-wing 				{ float: left; width: 100%; margin-bottom: 20px; padding-right: 0px !important; }
	.right-wing 			{ float: right; width: 100%; }
	.right-wing .product-block { width: 100%; float: left; }

	.left-wing3				{ float: none; width: 100%; padding-right:0px; border-right:0px; }
	.right-wing3			{ float: none; width: 100%; margin-top:10px; }

	.option-box 			{ margin: 20px 0px; height: 195px; border:none; padding: 30px 20px; margin-bottom:70px; }
	.option-box2			{ margin: 10px 0px; height: 250px; border:none; padding: 50px 20px 20px; margin-bottom:20px; }
	.option-box3			{ margin: 20px 0px; height: 240px; border:none; padding: 30px 20px; margin-bottom:70px; }
	.option-box4			{ margin: 10px 0px; height: 270px; border:none; padding: 30px 20px; }

	.option-box p 			{ padding-bottom:10px; }

	.box-text				{ padding-bottom: 10px; }

	#fl4					{ min-width:100% !important; max-width:375px !important; }
	#fl5					{ min-width:100% !important; max-width:375px !important; }
	.option-box .button 	{ width: 50% !important; margin-top: 0px; }

	ul.footer-nav 			{ text-align: center; }
	.footer-logo 			{ margin: 30px auto 0 !important; float: none !important; display: block; }
	.mw { max-width: 100%;}

	.thumbnail-img			{ max-width:100% !important; }
	.mobile-pad				{ padding-top:1em; }

/* GUIDE TO FILEMAKER CSS */
	.brown-box			{ display:block; position:absolute; width:375px; height:580px; left:0px; top:665px; }
	.brown-stripe		{ display:block; position:absolute; width:372px; height:50px; left:0px; top:910px; }

	.green-box			{ display:block; position:absolute; width:375px; height:515px; left:0px; top:65px; }
	.green-stripe		{ display:block; position:absolute; width:365px; height:50px; left:5px; top:280px; }

	.beginner			{ display:block; position:absolute; width:80px; height:auto; left:27px; top:875px; }
	.intermediate		{ display:block; position:absolute; width:80px; height:auto; left:147px; top:875px; }
	.senior				{ display:block; position:absolute; width:80px; height:auto; left:267px; top:875px; }

	.business			{ display:block; position:absolute; width:80px; height:auto; left:70px; top:250px; }
	.developer			{ display:block; position:absolute; width:80px; height:auto; left:225px; top:250px; }
/* END */

	.img-control		{ width:100%; }

	.margin-left		{ margin-left:0px; }
	.margin-right		{ margin-right:0px; }

	.contact			{ padding:50px 0px 30px; }
	.contact h1			{ font-size:30px; margin-bottom:30px; }

	.contact-box		{ padding:20px; height:auto; }
	.contact-box h2		{ font-size:20px; line-height:30px; }
	.contact-box p 		{ font-size:16px; line-height:24px; }

	.shorter-box		{ height:auto; }

	.phone-bg			{ padding:30px 0px 30px; }

	.boss-img			{ width:50%; }

}


/* #RETINA
================================================== */

/* Jacob Taylor Additions */
@media(max-device-width:100mm) and (orientation:portrait), (max-device-width:160mm) and (orientation:landscape) {
	.blue-bg { background:url(../images/banner-1280px.jpg) right; }
}
@media (max-width: 1280px) and (min-device-width:200mm) {
	.blue-bg { background:url(../images/banner-1280px.jpg) right; }
}
@media (max-width: 1440px) and (min-device-width:200mm) {
	.blue-bg { background:url(../images/banner-1440px.jpg) right; }
}
@media (max-width: 1920px) and (min-device-width:200mm) {
	.blue-bg { background:url(../images/banner-1920px.jpg) right; }
}
@media(min-resolution: 192dpi) and (min-device-width:200mm) and (min-width: 1920px){
	.blue-bg { background:url(../images/banner.jpg) right; }
}

@media (max-width: 767px) {
	
}

 .mb {
	 margin-bottom: 1em;
 }
 .mt {
	 margin-top: 1em;
 }
 .ml {
	 margin-left: 1em;
 }
 .mr {
	 margin-right: 1em;
 }
 .pt {
	 padding-top: 1em;
 }
 .pb {
	 padding-bottom: 1em;
 }
 .pr {
	 padding-right: 1em;
 }
 .pl {
	 padding-left: 1em;
 }
 .bold {
 	 font-weight: bold !important;
	}
 .green {
	 color: green;
 }
 .red {
	 color: red;
 }
.black {
	color: black !important;
}
.white {
	color: white !important;
}
.va-middle {
	vertical-align: middle !important;
}
