/*	--------------------------------------------------
	:: Global Reset & Standards
	-------------------------------------------------- */

	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, img, ins, kbd, q, s, samp,
	small, strike, strong, sub, sup, tt, var,
	b, u, i, center,
	dl, dt, dd, ol, ul, li,
	fieldset, form, label, legend,
	table, caption, tbody, tfoot, thead, tr, th, td,
	article, aside, canvas, details, embed, 
	figure, figcaption, footer, header, hgroup, 
	menu, nav, output, ruby, section, summary,
	time, mark, audio, video {
		margin: 0;
		padding: 0;
		border: 0;
		font: inherit;
		vertical-align: baseline;
	}
	html {
		font-size: 62.5%; 
	}
	/* HTML5 display-role reset for older browsers */
	article, aside, details, figcaption, figure, 
	footer, header, hgroup, menu, nav, section {
		display: block;
	}
	body {
		line-height: 1;
	}
	ol, ul {
		list-style: none;
	}
	blockquote, q {
		quotes: none;
	}
	blockquote:before, blockquote:after,
	q:before, q:after {
		content: '';
		content: none;
	}
	table {
		border-collapse: collapse;
		border-spacing: 0;
	}
	
	
	
	body { background: url(../images/bg_dark.jpg) repeat; font-family: Helvetica, "Helvetica Neue", "HelveticaNeue", Arial, "Lucida Grande", sans-serif; font-size: 13px; line-height: 18px; color: #555; position: relative; -webkit-font-smoothing: antialiased; }


	


/*	--------------------------------------------------
	:: Links
	-------------------------------------------------- */
	a { color: #2a85e8; text-decoration: none; line-height: inherit; }
	a:hover { color: #11639d; }
	a:focus { color: #cc4714; outline: none; }
	p a, p a:visited { line-height: inherit; }
	

/*	--------------------------------------------------
	:: Lists
	-------------------------------------------------- */
	ul, ol { margin-bottom: 18px; }
	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; }
	li { margin-bottom: 12px; }
	ul.large li { line-height: 21px; }
	
/*  -------------------------------------------------
    :: Navigation
	------------------------------------------------- */
	nav#primary_nav { width:100%; margin:0 auto; background:url(../images/nav_bg.png) repeat-x; }
	nav#primary_nav ul { list-style-type:none; margin:0; }
	nav#primary_nav ul li { margin:0; float:left;  }
	nav#primary_nav ul li a { margin:0; display: block; padding:10px 40px 10px 0; color:#535353; text-transform:uppercase; }
	nav#primary_nav ul li a:hover { color:#000000; }

	/**** BLOG - FACEBOOK *****/
	#primary_nav ul { width:800px; float:left; }
	#primary_nav ul#media { float:right; width:80px; margin:0; padding:0; }
	#primary_nav ul#media li { float:left; margin:6px 10px 0 0; padding:0; }

	ul#media li a { float:left; margin:0; padding:0; text-indent:-999em; padding:10px 0 0 0 }
	a#blog { background:url(../images/blog-icon.png) no-repeat; border:0; margin:0; padding:0!important; width:25px; height:25px; cursor:pointer; }
	a#facebook { background:url(../images/facebook-icon.png) no-repeat; border:0; margin:0; padding:0!important; width:25px; height:25px;  cursor:pointer; }

/*  -------------------------------------------------
    :: header
	------------------------------------------------- */
	header#primary_header {  width:auto; padding:0 20px; background:url(../images/blue_print_pattern.jpg) repeat; }
	header#primary_header .row { padding-top:15px; padding-bottom:15px; }
	h1#logo { margin:10px 0 0 0; float:left; width:397px; height:42px; color:#ffffff; background:url(../images/logo.png) no-repeat; }
	h1#logo a { display: block; cursor: pointer; text-indent:-999em; }
	div#utilities { text-align:right; }
	div#utilities p, div#utilities a { color:#ffffff; margin:0; }

/*  -------------------------------------------------
    :: BANNER
	------------------------------------------------- */
	section#banner { width:auto; background:url(../images/gray_dot_pattern.jpg) repeat; }
	#banner .row { padding:50px 0; position: relative; background:url(../images/banner_bg.png) no-repeat top right; }
	#banner h1, #banner h2, #banner h3, #banner h4 { color:#ffffff; margin:0 0 .8em 0; width:43%; }
	.ribbon { background:url(../images/color_border.jpg) repeat; height:3px; }
	#contractor { background:url(../images/contractor.png) no-repeat; text-indent:-999em; width:357px; height:222px; position: absolute; top:61px; right:40px; }
	#banner p { margin:0 0 .5em 0!important; }

/*	-------------------------------------------------
	:: INSIDE
	------------------------------------------------- */
	section.inside .row { padding:30px 0!important; background:none!important; }
	section.inside h3 { float:left; margin: .3em 0 0 0!important; }
	section.inside a { float:right; }

	#testimonial { min-height:70px; }
	div#testimonial p { margin:0!important; padding: 0 0 10px 0; color:#bbbbbb; background:url(../images/gray_dot_pattern.jpg) repeat; display: block; }
/*  -------------------------------------------------
    :: footer
	------------------------------------------------- */
	footer#primary_footer { padding:20px; }

/* -------------------------------------------------- 
	:: Misc
---------------------------------------------------*/
	.left        { float: left; }
	.right       { float: right; }
	.text-left   { text-align: left; }
	.text-right  { text-align: right; }
	.text-center { text-align: center; }
	.hide        { display: none; }
	.highlight   { background: #ff0; }
	
/* Artfully Masterminded by ZURB */

/*	--------------------------------------------------
    :: Typography
	-------------------------------------------------- */
	h1, h2, h3, h4, h5, h6 { color: #181818; font-weight: 100; line-height: 1.25; }
	h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { font-weight: inherit; }
	h1 { font-size: 46px; font-size: 4.6rem; margin-bottom: 12px; font-weight:bold; }
	h2 { font-size: 35px; font-size: 3.5rem; margin-bottom: 9px; }
	h3 { font-size: 28px; font-size: 2.8rem; margin-bottom: 9px; }
	h4 { font-size: 21px; font-size: 2.1rem; margin-bottom: 6px; }
	h5 { font-size: 18px; font-size: 1.8rem; font-weight: normal; margin-bottom: 3px;  }
	h6 { font-size: 15px; font-size: 1.5rem; font-weight: normal; margin-bottom: 20px; }

	.subheader { color: #777; font-weight: 300; margin-bottom: 24px; }

	p { font-size: 13px; font-size: 1.3rem; line-height: 1.5; margin: 0 0 18px; }
	p img { margin: 0; }
	p.lead { font-size: 18px; font-size: 1.8rem; line-height: 1.5;  }
	
	em, i { font-style: italic; line-height: inherit; }
	strong, b { font-weight: bold; line-height: inherit; }
	small { font-size: 60%; line-height: inherit; }
	.small { font-size: 80%; }
	h1 small, h2 small, h3 small, h4 small, h5 small { color: #777; }
	
	/*	Blockquotes  */
	blockquote, blockquote p { line-height: 20px; color: #777; }
	blockquote { margin: 0 0 18px; padding: 9px 20px 0 19px; border-left: 1px solid #ddd; }
	blockquote cite { display: block; font-size: 12px; font-size: 1.2rem; color: #555; }
	blockquote cite:before { content: "\2014 \0020"; }
	blockquote cite a, blockquote cite a:visited { color: #555; }
	
	hr { border: solid #ddd; border-width: 1px 0 0; clear: both; margin: 12px 0 18px; height: 0; }
	
	abbr, acronym { text-transform: uppercase; font-size: 90%; color: #222; border-bottom: 1px solid #ddd; cursor: help; }
	abbr { text-transform: none; }

	/**
 	 * Print styles.
	 *
	 * Inlined to avoid required HTTP connection: www.phpied.com/delay-loading-your-print-css/
	 * Credit to Paul Irish and HTML5 Boilerplate (html5boilerplate.com)
	 */
	.print-only { display: none !important; }
	@media print {
		* { background: transparent !important; color: black !important; text-shadow: none !important; filter:none !important;
		-ms-filter: none !important; } /* Black prints faster: sanbeiji.com/archives/953 */
		p a, p a:visited { color: #444 !important; text-decoration: underline; }
		p 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; } /* css-discuss.incutio.com/wiki/Printing_Tables */
		tr, img { page-break-inside: avoid; }
		@page { margin: 0.5cm; }
		p, h2, h3 { orphans: 3; widows: 3; }
		h2, h3{ page-break-after: avoid; }
		.hide-on-print { display: none !important; }
		.print-only { display: block !important; }
	}
/* Artfully Masterminded by ZURB */

/* --------------------------------------------------
	:: Grid
	
	This is the mobile-friendly, responsive grid that
	lets Foundation work much of its magic.
	
	-------------------------------------------------- */

	.container { padding: 35px 20px; background: url(../images/bg.jpg) repeat; }

	.row { width: 100%; max-width: 980px; min-width: 727px; margin: 0 auto; }
	/* To fix the grid into a certain size, set max-width to width */
	.row .row { min-width: 0; }
	
	.column, .columns { margin-left: 4.4%; float: left; min-height: 1px; position: relative; }
	.column:first-child, .columns:first-child { margin-left: 0; }
	
	.row .one.columns 		{ width: 4.3%; }
	.row .two.columns 		{ width: 13%; }
	.row .three.columns 	{ width: 21.68%; }
	.row .four.columns 		{ width: 30.37%; }
	.row .five.columns 		{ width: 39.1%; }
	.row .six.columns 		{ width: 47.8%; }
	.row .seven.columns 	{ width: 56.5%; }
	.row .eight.columns 	{ width: 65.2%; }
	.row .nine.columns 		{ width: 73.9%; }
	.row .ten.columns 		{ width: 82.6%; }
	.row .eleven.columns 	{ width: 91.3%; }
	.row .twelve.columns 	{ width: 100%; }
	
	.row .offset-by-one 	{ margin-left: 13.1%;  }
	.row .offset-by-two 	{ margin-left: 21.8%;  }
	.row .offset-by-three 	{ margin-left: 30.5%;  }
	.row .offset-by-four 	{ margin-left: 39.2%;  }
	.row .offset-by-five 	{ margin-left: 47.9%;  }
	.row .offset-by-six 	{ margin-left: 56.6%;  }
	.row .offset-by-seven 	{ margin-left: 65.3%;  }
	.row .offset-by-eight 	{ margin-left: 74.0%;  }
	.row .offset-by-nine 	{ margin-left: 82.7%;  }
	.row .offset-by-ten 	{ margin-left: 91.4%;  }
	
	.row .centered { float: none; margin: 0 auto; }

	.row .offset-by-one:first-child 	{ margin-left: 8.7%;  }
	.row .offset-by-two:first-child 	{ margin-left: 17.4%;  }
	.row .offset-by-three:first-child 	{ margin-left: 26.1%;  }
	.row .offset-by-four:first-child 	{ margin-left: 34.8%;  }
	.row .offset-by-five:first-child 	{ margin-left: 43.5%;  }
	.row .offset-by-six:first-child 	{ margin-left: 52.2%;  }
	.row .offset-by-seven:first-child 	{ margin-left: 60.9%;  }
	.row .offset-by-eight:first-child 	{ margin-left: 69.6%;  }
	.row .offset-by-nine:first-child 	{ margin-left: 78.3%;  }
	.row .offset-by-ten:first-child 	{ margin-left: 87%;  }
	.row .offset-by-eleven:first-child 	{ margin-left: 95.7%;  }
	
	/* Source Ordering */
	.push-two 		{ left: 17.4% }
	.push-three 	{ left: 26.1%; }
	.push-four 		{ left: 34.8%; }
	.push-five 		{ left: 43.5%; }
	.push-six 		{ left: 52.2%; }
	.push-seven 	{ left: 60.9%; }
	.push-eight 	{ left: 69.6%; }
	.push-nine 		{ left: 78.3%; }
	.push-ten 		{ left: 87%; }
	
	.pull-two 		{ right: 17.4% }
	.pull-three 	{ right: 26.1%; }
	.pull-four 		{ right: 34.8%; }
	.pull-five 		{ right: 43.5%; }
	.pull-six 		{ right: 52.2%; }
	.pull-seven 	{ right: 60.9%; }
	.pull-eight 	{ right: 69.6%; }
	.pull-nine 		{ right: 78.3%; }
	.pull-ten 		{ right: 87%; }
	
	
	
	img, object, embed { max-width: 100%; height: auto; }
	img { -ms-interpolation-mode: bicubic; }
	#map_canvas img, .map_canvas img {max-width: none!important;}
	 
	.trabajos img
	{
	    border: 8px solid #FFFFFF;
	    height: auto;
	    margin: 0 0 40px 0;
	    max-width: 100%;
	}
	 /* Nicolas Gallagher's micro clearfix */
	 .row:before, .row:after, .clearfix:before, .clearfix:after { content:""; display:table; }
	 .row:after, .clearfix:after { clear: both; }
	 .row, .clearfix { zoom: 1; }
	 
	 
	



/* --------------------------------------------------
   Table of Contents
-----------------------------------------------------
:: Buttons
:: Alerts
:: Labels
:: Tabs
:: Pagination
:: Lists
:: Panels
:: Nav
:: Video
:: Microformats
*/




/*	--------------------------------------------------
	Buttons
	-------------------------------------------------- */

	.button {
		background: #00a6fc;
		display: inline-block;
		text-align: center;
		padding: 9px 34px 11px;
		color: #fff;
		text-decoration: none;
		font-weight: bold;
		line-height: 1;
		font-family: "Helvetica Neue", "Helvetica", Arial, Verdana, sans-serif;
		position: relative;
		cursor: pointer;
		border: none;
	}
	
  	/* Don't use native buttons on iOS */
	input[type=submit].button, button.button { -webkit-appearance: none; }
	
	.button.nice { 
		background: #00a6fc url(../images/misc/button-gloss.png) repeat-x 0 -34px;
		-moz-box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
		-webkit-box-shadow: inset 0 1px 0 rgba(255,255,255,.5);
		text-shadow: 0 -1px 1px rgba(0,0,0,0.28);
		background: #00a6fc url(../images/misc/button-gloss.png) repeat-x 0 -34px, -moz-linear-gradient(top, rgba(255,255,255,.4) 0%, transparent 100%);
		background: #00a6fc url(../images/misc/button-gloss.png) repeat-x 0 -34px, -webkit-gradient(linear, left top, left bottom, color-stop(0%,rgba(255,255,255,.4)), color-stop(100%,transparent));
		border: 1px solid #0593dc;
		-webkit-transition: background-color .15s ease-in-out;
		-moz-transition: background-color .15s ease-in-out;
		-o-transition: background-color .15s ease-in-out;
	}

	.button.radius {
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		border-radius: 3px;
	}
	.button.round {
		-moz-border-radius: 1000px;
		-webkit-border-radius: 1000px;
		border-radius: 1000px;
	}

	.button.full-width {
		width: 100%;
		padding-left: 0 !important;
		padding-right: 0 !important;
		text-align: center;
	}

	.button.left-align {
		text-align: left;
		text-indent: 12px;
	}
	
	/* Sizes ---------- */
	.small.button 			{ font-size: 11px; padding: 8px 20px 10px; width: auto; }
	.medium.button 			{ font-size: 13px; width: auto; }
	.large.button 			{ font-size: 18px; padding: 11px 48px 13px; width: auto; }

	/* Nice Sizes ---------- */
	.nice.small.button 		{ background-position: 0 -36px; }
	.nice.large.button 		{ background-position: 0 -30px; }

	/* Colors ---------- */
	.blue.button			{ background-color: #00a6fc;  }
	.red.button				{ background-color: #e91c21; }
	.white.button			{ background-color: #e9e9e9; color: #333; }
	.black.button			{ background-color: #141414; }
	
	/* Nice Colors ---------- */
	.nice.blue.button		{ border: 1px solid #0593dc;  }
	.nice.red.button		{ border: 1px solid #b90b0b;  }
	.nice.white.button		{ border: 1px solid #cacaca; text-shadow: none !important; }
	.nice.black.button		{ border: 1px solid #000; }
	
	/* Hovers ---------- */
	.button:hover, .button:focus 				{ background-color: #0192dd; color: #fff; }
	.blue.button:hover, .blue.button:focus		{ background-color: #0192dd; 	}
	.red.button:hover, .red.button:focus 		{ background-color: #d01217; 	}
	.white.button:hover, .white.button:focus	{ background-color: #dadada; color: #333; }
	.black.button:hover, .black.button:focus	{ background-color: #000; }
	
	/* Disabled ---------- */
	.button.disabled, .button[disabled] { opacity: 0.6; cursor: default; }

/*  --------------------------------------------------
    Lists
    -------------------------------------------------- */
    ul.nice, ol.nice { list-style: none; margin: 0; }
    ul.nice li, ol.nice li { padding-left: 13px; position: relative }
    ul.nice li span.bullet, ol.nice li span.number { position: absolute; left: 0; top: 0; color: #ccc; }

/*	--------------------------------------------------
	Panels
	-------------------------------------------------- */
	div.panel {
		padding: 15px;
	/*	background: #F7F7F7;
		border:1px solid #DDDDDD;
	background: -moz-linear-gradient(top, #FFFFFF 0%, #F4F4F4 100%);
		background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#FFFFFF), color-stop(100%,#F4F4F4));
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#FFFFFF', endColorstr='#F4F4F4',GradientType=0 );
		box-shadow: 0 2px 5px rgba(0,0,0,0.15);
		-webkit-box-shadow: 0 2px 5px rgba(0,0,0,0.15);
		-moz-box-shadow: 0 2px 5px rgba(0,0,0,0.25);
	*/	margin: 0 0 20px 0;
	}

/* -----------------------------------------
   Standard Forms
----------------------------------------- */

	form { margin: 0 0 18px; }
	form label { display: block; font-size: 13px; line-height: 18px; cursor: pointer; margin-bottom: 9px; }

	input.input-text, textarea { border-right: 1px solid #bbb; border-bottom: 1px solid #bbb; }
	input.input-text, textarea, select { display: block; margin-bottom: 9px; }
	label + input.input-text, label + textarea, label + select, label + div.dropdown, select + div.dropdown { margin-top: -9px; }

	/* Text input and textarea font and padding */
	input.input-text, textarea { font-size: 13px; padding: 4px 3px 2px; background: #fff; }
	input.input-text:focus, textarea:focus { outline: none !important; }
	input.input-text.oversize, textarea.oversize { font-size: 18px !important; padding: 4px 5px !important; }
	input.input-text:focus, textarea:focus { background: #f9f9f9; }

	/* Text input and textarea, disabled */
	input.input-text[disabled], textarea[disabled] { background-color: #ddd; }

	/* Inlined Label Style */
	input.placeholder, textarea.placeholder { color: #888; }

	/* Text input and textarea sizes */
	input.input-text, textarea { width: 95%; }
	input.small, textarea.small { width: 95%; }
	input.medium, textarea.medium { width: 95%; }
	input.large, textarea.large { width: 95%; }

	/* Fieldsets */
	form fieldset { padding: 9px 9px 2px 9px; border: solid 1px #ddd; margin: 18px 0; }

	/* Inlined Radio & Checkbox */
	.form-field input[type=radio], div.form-field input[type=checkbox] { display: inline; width:auto; margin-bottom:0; }

	/* Errors */
	.form-field.error input, input.input-text.red { border-color: #C00000; background-color: rgba(255,0,0,0.15); }
	.form-field.error label, label.red { color: #C00000; }
	.form-field.error small, small.error { margin-top: -6px; display: block; margin-bottom: 9px; font-size: 11px; color: #C00000; width: 260px; }

	.small + small.error { width: 140px; }
	.medium + small.error { width: 260px; }
	.large + small.error { width: 440px; }

	h4.error { color:#c00000!important; padding:20px 0 0 0; font-size:16px; }

	/* -----------------------------------------
	   Nicer Forms
	----------------------------------------- */
	form.nice div.form-field input, form.nice input.input-text, form.nice textarea { border: solid 1px #bbb; border-radius: 2px; -webkit-border-radius: 2px; -moz-border-radius: 2px; }
	form.nice div.form-field input, form.nice input.input-text, form.nice textarea { font-size: 13px; padding: 6px 3px 4px; outline: none !important; background: url(../images/misc/input-bg.png) #fff; }
	form.nice div.form-field input:focus, form.nice input.input-text:focus, form.nice textarea:focus { background-color: #f9f9f9; }

	/* Text input and textarea, disabled */
	form.nice div.form-field input[disabled], form.nice input.input-text[disabled], form.nice textarea[disabled] { background-color: #ddd; }

	form.nice fieldset { border-radius: 3px; -webkit-border-radius: 3px; -moz-border-radius: 3px; }

	form.nice div.form-field input[type=radio], form.nice div.form-field input[type=checkbox] { display: inline; width:auto; margin-bottom:0; }

	form.nice div.form-field.error small, form.nice small.error { padding: 6px 4px; border: solid 0 #C00000; border-width: 0 1px 1px 1px; margin-top: -10px; background: #C00000; color: #fff; font-size: 12px; font-weight: bold; border-bottom-left-radius: 2px; border-bottom-right-radius: 2px; -webkit-border-bottom-left-radius: 2px; -webkit-border-bottom-right-radius: 2px; -moz-border-radius-bottomleft: 2px; -moz-border-radius-bottomright: 2px; }

 	form.nice div.form-field.error .small + small, form.nice .small + small.error { width: 132px; }
	form.nice div.form-field.error .medium + small, form.nice .medium + small.error { width: 252px; }
	form.nice div.form-field.error .large + small, form.nice .large + small.error { width: 432px; }

 	/*    --------------------------------------------------
    Tabs
    -------------------------------------------------- */
    ul.tabs-content { margin: 0; display: block; }
    ul.tabs-content>li { display:none; }
    ul.tabs-content>li.active { display: block; }
    


	
	/* Mobile */
		
		@media handheld, only screen and (max-width: 1023px) {
			.reveal-modal-bg { position: absolute; }
			
			.reveal-modal,
			.reveal-modal.small,
			.reveal-modal.medium,
			.reveal-modal.large,
			.reveal-modal.xlarge { width: 60%; top: 60px; left: 15%; margin-left: 0; padding: 20px; height: auto; }
		}
		
		@media handheld, only screen and (max-width: 767px) {
			.reveal-modal-bg { position: absolute; }
			
			.reveal-modal,
			.reveal-modal.small,
			.reveal-modal.medium,
			.reveal-modal.large,
			.reveal-modal.xlarge { width: 80%; top: 15px; left: 5%; margin-left: 0; padding: 20px; height: auto; }
		}
	
	
	/*
			
	NOTES
	
	Close button entity is &#215;
	
	Example markup
	
	<div id="myModal" class="reveal-modal">
		<h2>Awesome. I have it.</h2>
		<p class="lead">Your couch.  I it's mine.</p>
		<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. In ultrices aliquet placerat. Duis pulvinar orci et nisi euismod vitae tempus lorem consectetur. Duis at magna quis turpis mattis venenatis eget id diam. </p>
		<a class="close-reveal-modal">&#215;</a>
	</div>
	
	*/
/* --------------------------------------------------
	:: Typography
	-------------------------------------------------- */
	
	@media handheld, only screen and (max-width: 767px) {
		h1 { font-size: 32px; font-size: 3.2rem; line-height: 1.3; }
		h2 { font-size: 28px; font-size: 2.8rem; line-height: 1.3; }
		h3 { font-size: 21px; font-size: 2.1rem; line-height: 1.3; }
		h4 { font-size: 18px; font-size: 1.8rem; line-height: 1.2; }
		h5 { font-size: 16px; font-size: 1.6rem; line-height: 1.2; }
		h6 { font-size: 15px; font-size: 1.5rem; line-height: 1.2; }
		body, p {  font-size: 15px; font-size: 1.5rem; line-height: 1.4; }
	}


/* --------------------------------------------------
	:: Grid
	-------------------------------------------------- */
	
	/* Mobile */
	@media only screen and (max-width: 767px) {		
		body { -webkit-text-size-adjust: none; -ms-text-size-adjust: none; width: 100%; min-width: 0; margin-left: 0; margin-right: 0; padding-left: 0; padding-right: 0; }
		.container { min-width: 0; margin-left: 0; margin-right: 0; }
		.row { width: 100%; min-width: 0; margin-left: 0; margin-right: 0; }
		.row .row .column, .row .row .columns { padding: 0; }
		.column, .columns { width: auto !important; float: none; margin-left: 0; margin-right: 0; }
		.column:last-child, .columns:last-child { margin-right: 0; }
		
		.offset-by-one, .offset-by-two, .offset-by-three, .offset-by-four, .offset-by-five, .offset-by-six, .offset-by-seven, .offset-by-eight, .offset-by-nine, .offset-by-ten, .offset-by-eleven, .centered { margin-left: 0 !important; }
		
		.push-two, .push-three, .push-four, .push-five, .push-six, .push-seven, .push-eight, .push-nine, .push-ten { left: auto; }
		.pull-two, .pull-three, .pull-four, .pull-five, .pull-six, .pull-seven, .pull-eight, .pull-nine, .pull-ten { right: auto; }
		
		/* Mobile 4-column Grid */
		.row .phone-one.column:first-child, .row .phone-two.column:first-child, .row .phone-three.column:first-child, .row .phone-four.column:first-child, .row .phone-one.columns:first-child, .row .phone-two.columns:first-child, .row .phone-three.columns:first-child, .row .phone-four.columns:first-child { margin-left: 0; }
		
		.row .phone-one.column, .row .phone-two.column, .row .phone-three.column, .row .phone-four.column,
		.row .phone-one.columns, .row .phone-two.columns, .row .phone-three.columns, .row .phone-four.columns { margin-left: 4.4%; float: left; min-height: 1px; position: relative; padding: 0; }
		
		.row .phone-one.columns 	{ width: 21.68% !important; }
		.row .phone-two.columns 	{ width: 47.8% !important; }
		.row .phone-three.columns 	{ width: 73.9% !important; }
		.row .phone-four.columns 	{ width: 100% !important; }
		
		.row .columns.push-one-phone { left: 26.08%; }
		.row .columns.push-two-phone { left: 52.2% }
		.row .columns.push-three-phone { left: 78.3% }
		
		.row .columns.pull-one-phone { right: 26.08% }
		.row .columns.pull-two-phone { right: 52.2% }
		.row .columns.pull-three-phone { right: 78.3%; }
		
		
	}
	
	
/* --------------------------------------------------
	:: Block Grids
	-------------------------------------------------- */	
	
	@media only screen and (max-width: 767px) {
		.block-grid.mobile { margin-left: 0; }
		.block-grid.mobile > li { float: none; width: 100%; margin-left: 0; }
	}
	
	

/* -------------------------------------------------- 
	:: Mobile Visibility Affordances
---------------------------------------------------*/
	
	
	.show-on-phones { display: none !important; }	
	.show-on-tablets { display: none !important; }
	.show-on-desktops { display: block !important; }
	
	.hide-on-phones { display: block !important; }	
	.hide-on-tablets { display: block !important; }
	.hide-on-desktops { display: none !important; }
	
	@media only screen and (max-device-width: 800px), only screen and (device-width: 1024px) and (device-height: 600px), only screen and (width: 1280px) and (orientation: landscape), only screen and (device-width: 800px) {
		.hide-on-phones { display: block !important; }
		.hide-on-tablets { display: none !important; }
		.hide-on-desktops { display: block !important; }
		
		.show-on-phones { display: none !important; }
		.show-on-tablets { display: block !important; }
		.show-on-desktops { display: none !important; }
	}
	
	/* Modernizr-enabled tablet targeting */
	@media only screen and (max-width: 1280px) and (min-width: 768px) {
		.touch .hide-on-phones { display: block !important; }
		.touch .hide-on-tablets { display: none !important; }
		.touch .hide-on-desktops { display: block !important; }
		
		.touch .show-on-phones { display: none !important; }
		.touch .show-on-tablets { display: block !important; }
		.touch .show-on-desktops { display: none !important; }
	}
	
		
	@media only screen and (max-width: 767px) {
		div.logo { padding:0 0 .5em 0!important; }
		div#utilities { text-align:left!important; }
		#banner { padding:0 20px; }
		#banner .row { background:none !important; padding:30px 0!important; }
		#banner h3 { width:95%!important; } 
		.hide-on-phones { display: none !important; }
		.hide-on-tablets { display: block !important; }
		.hide-on-desktops { display: block !important; }
		
		.show-on-phones { display: block !important; }
		.show-on-tablets { display: none !important; }
		.show-on-desktops { display: none !important; }
	}
	
	/* only screen and (device-width: 1280px), only screen and (max-device-width: 1280px),  /*
	/* Keeping this in as a reminder to address support for other tablet devices like the Xoom in the future */
	
	/* Specific overrides for elements that require something other than display: block */
	
	table.show-on-desktops { display: table !important; }
	table.hide-on-phones { display: table !important; }	
	table.hide-on-tablets { display: table !important; }
	
	@media only screen and (max-device-width: 800px), only screen and (device-width: 1024px) and (device-height: 600px), only screen and (width: 1280px) and (orientation: landscape), only screen and (device-width: 800px) {
		section#banner { padding:0 20px !important; }
		table.hide-on-phones { display: block !important; }
		table.hide-on-desktops { display: block !important; }
		table.show-on-tablets { display: block !important; }

	}
	
	@media only screen and (max-width: 767px) {
		table.hide-on-tablets { display: block !important; }
		table.hide-on-desktops { display: block !important; }
		table.show-on-phones { display: block !important; }
	}
	
	
/* -------------------------------------------------- 
	:: Forms
---------------------------------------------------*/	


	@media only screen and (max-width: 767px) {
		div.form-field input, div.form-field input.small, div.form-field input.medium, div.form-field input.large, div.form-field input.oversize, input.input-text, input.input-text.oversize, textarea,
		form.nice div.form-field input, form.nice div.form-field input.oversize, form.nice input.input-text, form.nice input.input-text.oversize, form.nice textarea { display: block; width: 96%; padding: 6px 2% 4px; font-size: 18px; }
		form.nice div.form-field input, form.nice div.form-field input.oversize, form.nice input.input-text, form.nice input.input-text.oversize, form.nice textarea { -webkit-border-radius: 2px; -moz-border-radius: 2px; border-radius: 2px; }
		form.nice div.form-field.error small, form.nice small.error { padding: 6px 2%; display: block; }
		form.nice div.form-field.error .small + small, form.nice .small + .error { width: auto; }
		form.nice div.form-field.error .medium + small, form.nice .medium + .error { width: auto; }
		form.nice div.form-field.error .large + small, form.nice .large + .error { width: auto; }
	}
	
	
/* -------------------------------------------------- 
	:: UI
---------------------------------------------------*/	
	
	/* Nav Bar */

	@media only screen and (max-width: 960px) {
		#contractor { top:96px !important; }
		nav#primary_nav { padding:0 20px !important; }
		section#banner { padding:0 20px !important; }
	}	

	/* Buttons */
	@media only screen and (max-width: 767px) {
		.button { display: block; }
		button.button { width: 100%; padding-left: 0; padding-right: 0; }
	}
	
	/* Tabs */
	
	@media only screen and (max-width: 767px) {
		dl.tabs.mobile, dl.nice.tabs.mobile { width: auto; margin: 0; height: auto; }
		dl.tabs.mobile dt, dl.tabs.mobile dd, dl.nice.tabs.mobile dt, dl.nice.tabs.mobile dd { float: none; height: auto; }

		dl.tabs.mobile dd a { display: block; width: auto; height: auto; padding: 15px 20px; line-height: 1; border: solid 0 #ccc; border-width: 1px 0 0; margin: 0; color: #555; background: #eee; font-size: 15px; font-size: 1.5rem; }
		dl.tabs.mobile dd a.active { height: auto; margin: 0; border-width: 1px 0 0; }
	
		.nice.tabs.mobile { border-bottom: solid 1px #ccc; height: auto; }
		.nice.tabs.mobile dd a { padding: 18px 20px; border: none; border-left: none; border-right: none; border-top: 1px solid #ccc; background: #fff; }
		.nice.tabs.mobile dd a.active { border: none; background: #00a6fc; color: #fff; margin: 0; position: static; top: 0; height: auto; }
		.nice.tabs.mobile dd:first-child a.active { margin: 0; }
		
		dl.contained.mobile, dl.nice.contained.mobile { margin-bottom: 0; }
		dl.contained.tabs.mobile dd a { padding: 18px 20px; }
		dl.nice.contained.tabs.mobile dd a { padding: 18px 20px; }
	}
	
	/* Nav Bar */

	@media only screen and (max-width: 767px) {
		.nav-bar { height: auto; }
		.nav-bar>li { float: none; display: block; border-right: none; }
		.nav-bar>li>a.main { text-align: left; border-top: 1px solid #ddd; border-right: none; }
		.nav-bar>li:first-child>a.main { border-top: none; }
		.nav-bar>li.has-flyout>a.flyout-toggle { position: absolute; right: 0; top: 0; padding: 22px; z-index: 2; border-left: 1px dashed #eee; display: block; }
		.nav-bar>li.has-flyout>a.flyout-toggle span { content: ""; width: 0; height: 0; border-left: 4px solid transparent;border-right: 4px solid transparent; border-top: 4px solid #2a85e8; display: block; }
		.nav-bar>li.has-flyout>a.flyout-toggle:hover span { border-top-color: #141414; }
		
		.flyout { position: relative; width: auto; top: auto; margin-right: -2px; border-width: 1px 1px 0px 1px; }
		.flyout.right { float: none; right: auto; left: -1px; }
		.flyout.small, .flyout.large { width: auto; }
		.flyout p:last-child { margin-bottom: 18px; }
		nav#primary_nav { padding:0 !important; }

	}

.whatsapp {position: fixed;
    bottom: 0px;
    right: 6px;
    z-index: 99;
    width: 71px;}