/*
Client Name:
Last Modified by:
Last Modified:

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.

 ticktock is based on Underscores http://underscores.me/, (C) 2012-2014 Automattic, Inc.

Resetting and rebuilding styles have been helped along thanks to the fine work of
Eric Meyer http://meyerweb.com/eric/tools/css/reset/index.html
along with Nicolas Gallagher and Jonathan Neal http://necolas.github.com/normalize.css/
and Blueprint http://www.blueprintcss.org/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

1.0 General
	1.1 Sidebar
2.0 Header
	2.1 Navigation
3.0 Standard Page
4.0 Photo Gallery
5.0 Blog / Posts / Categories
6.0 Page Builder
7.0 Home Page
8.0 Page-specific
10.0 Forms
11.0 Footer



/*--------------------------------------------------------------
1.0 - Reset
--------------------------------------------------------------*/

	*,
	*:before,
	*:after { /* apply a natural box layout model to all elements; see http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
		-webkit-box-sizing: border-box; /* Not needed for modern webkit but still used by Blackberry Browser 7.0; see http://caniuse.com/#search=box-sizing */
		-moz-box-sizing:    border-box; /* Still needed for Firefox 28; see http://caniuse.com/#search=box-sizing */
		box-sizing:         border-box;
	}
	
	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-size: 100%;
		font: inherit;
		vertical-align: baseline;
	}
	/* HTML5 display-role reset for older browsers */
	article, aside, details, figcaption, figure, 
	footer, header, hgroup, menu, nav, section {
		display: block;
	}
	
	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;
	}
		
	caption, th, td {
		font-weight: normal;
		text-align: left;
	}
	
	hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
	}
	
	ul, ol {
		margin: 0 0 1.5em 3em;
	}
	
	ul {
		list-style: disc;
	}
	
	ol {
		list-style: decimal;
	}
	
	li > ul,
	li > ol {
		margin-bottom: 0;
		margin-left: 1.5em;
	}
	
	dt {
		font-weight: bold;
	}
	
	dd {
		margin: 0 1.5em 1.5em;
	}
	
	figure {
		margin: 0;
	}
	
	table {
		margin: 0 0 1.5em;
		width: 100%;
	}
	
	th {
		font-weight: bold;
	}


/*--------------------------------------------------------------
1.0 General
--------------------------------------------------------------*/
	
	body {
		background: #ffffff;	
		-webkit-font-smoothing: antialiased;
	}

	body {
		font-size: 1em;
		color: #747474;
		font-family: "open-sans",sans-serif;
		font-style: normal;
		font-weight: 500;
	}
	
	h1, h2, h3, h4, h5, h6 {
		font-weight: 700;
		font-family: "ff-enzo-web",sans-serif;
		margin-bottom: 0.5em;
		color: #99c53b;
	}

	h1 { 
		font-size: 3.5em;
		font-weight: 300;
		color: #ffffff;
	}
	
	h2 { 
		font-size: 2em; 
	}
	
	h3 {
		font-size: 1.6em;
	}
	
	h4 {
		font-size: 1.4em;	
	}
	
	h5 {
		font-size: 1.2em;	
	}
	
	h6 {
		font-size: 1em;	
	}
	
	p {
		margin-bottom: 1.5em;	
	}

	a {
		color: #99c53b;	
		text-decoration: none;
	}
	
	a:hover,
	a:focus,
	a:active {
		color: #666666;
	}
	
	a:focus {
	/*outline: thin dotted;*/
	outline: 0;
	}

	a:hover,
	a:active {
		outline: 0;
	}

	.col img {
		height: auto;
		max-width: 100%;
	}

	a img {
		border: 0;
	}
	
	b, strong {
		font-weight: 700;
	}
	
	dfn, cite, em, i {
		font-style: italic;
	}


	
	.btn, 
	.button,
	input[type="button"],
	input[type="reset"],
	input[type="submit"] {
		background: #66666c;
		border: none;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
		color: #ffffff;
		display: inline-block;
		padding: 10px;
		text-decoration: none;
		font-size: 1.2em;
		width: auto;
	}

	.btn:hover, .button:hover,
	button:hover,
	input[type="button"]:hover,
	input[type="reset"]:hover,
	input[type="submit"]:hover {
		color: #ffffff;
		background: #55555c;
	}

	.desktopOnly {
		display: none;	
	}
	
	.mobileOnly {
		display: block;	
	}
	
	@media all and ( min-width : 768px ) {
		.desktopOnly {
			display: block;	
		}
		
		.mobileOnly {
			display: none;	
		}
	}

	/*---- 1.1 - Sidebar ----*/
	.sidebar-widget {
		margin: 0 0 20px 0;
	}
	
	.sidebar h3 {

	}
	
	ul.side-menu {
		padding: 0;
		margin: 0;	
		font-family: "ff-enzo-web",sans-serif;
		font-weight: 700;
		font-size: 1.2em;
	}
	
	ul.side-menu li a:hover:before, ul.side-menu li.current_page_item a:before {
		font-family: FontAwesome;
        top:12px;
        left:-5px;
		font-size: 16px;
        content: "\f138";
		position: absolute;
	}
	
	ul.side-menu li {
		list-style: none;	
		border-bottom: 1px solid #eeeeee;
	}
	
	ul.side-menu li a {
		position: relative;
		display: block;
		padding: 10px 0;
		text-decoration: none;	
	}
	
	ul.side-menu li a:hover, ul.side-menu li.current_page_item a {
		padding-left: 15px;
	}
	
	ul.side-menu li.current_page_item a {
		color: #373446;
	}

	.marquee { overflow: hidden; height: 200px; }

/*--------------------------------------------------------------
2.0 - Header
--------------------------------------------------------------*/
	
	header.site-header {
		width: 100%;
		margin: 0;
		padding:  0;
		z-index: 2;
		height: 50px;
		background: #353534;
	}
	
	header.site-header .container {
		position: relative;	
	}
	
	.logoMain {
		float: left;	
		width: 170px;
		padding: 13px 0 0 0;
	}
	
	.logoMain img {
		width: 100%;	
	}

	.site-header .phone-mobile {
		position: absolute;
		right: 125px;
		top: 12px;
	}

	.site-header .phone-mobile a {
		color: #fff;
		display: block;
		font-size: 2em;
		padding: 5px;
	}

	.site-header .phone-mobile img {
		width: 20px;
	}

	@media all and ( min-width : 768px ) {
		
		header.site-header {
			height: 78px;
		}
		
		.logoMain {
			padding: 20px 0 0 0;
			width: 230px;
		}

		.site-header .contact {
			position: absolute;
			right: 10px;
			top: 0;
		}

		.site-header .contact h2 {
			color: #fff;
			float: right;
			font-weight: 600;
			margin: 8px 0 0 0;
		}

		.site-header .contact h2 a {
			color: #fff;
		}

	}
	
/*---- 2.1 - Navigation ----*/
	
	.main-navigation {
		float: right;
		padding: 0;
		font-family: "ff-enzo-web",sans-serif;
		font-weight: 700;
	}

	.main-navigation ul {
		background: #444449;
		border-top: 1px solid #66666c;
	}

	.main-navigation li { 
		border-bottom: 1px solid #66666c;
	}
	
	.main-navigation a {
		color: #ffffff;
		display: block;
		font-size: 1.2em;
		padding: 27px 12px;	
		text-decoration: none;
		cursor: pointer;
	}

	.main-navigation li.menu-item-has-children:hover a,
	.main-navigation a:hover {
		color: #99c53b;
	}

	/* Current */
	.main-navigation li.current-menu-item a,
	.main-navigation li.current-menu-ancestor a {
		color: #99c53b;
	}

	/* Current hover */
	.main-navigation li.current-menu-item a:hover,
	.main-navigation li.current-menu-ancestor a:hover {
		/*background: #88888c;*/
		/*color: #ffffff;*/
		
	}
	
	/* Dropdown */
	.main-navigation ul.sub-menu {
		left: 0;
		top: 78px;
	}

	.main-navigation li.menu-item-has-children:hover ul.sub-menu li a {
		background: #4b4b4a;
		color: #fff;
		padding: 10px 15px;
	}

	.main-navigation li.menu-item-has-children:hover ul.sub-menu li a:hover {
		background: #99c53b;
		color: #fff;
	}

	/* Dropdown - Active */
	.main-navigation li.menu-item-has-children:hover ul.sub-menu li.current-menu-item a {
		background: #77777c;
		color: #fff;
	}

	/* Dropdown - Active hover */
	.main-navigation li.menu-item-has-children:hover ul.sub-menu li.current-menu-item a:hover {
		background: #88888c;
		color: #fff;
	}

	/* Mobile-only */
	@media all and ( max-width : 945px ) {
		.menu-toggle,
		.main-navigation.toggled .nav-menu {
			display: block;
			z-index: 5002;
		}

		.menu-toggle {
			color: #fff;
			float: right;
			font-weight: 800;
			margin: 9px 0 0 0;
			padding: 0 0 0 0;
			text-transform: uppercase;
			vertical-align: top;
			font-size: 1.4em;
			line-height: 1.4em;
		}
		
		.menu-toggle .label {
			display: inline-block;
			vertical-align: top;
			margin: 0;
			padding: 0;
		}

		.menu-toggle .fa {
			padding-left: 5px;
			font-size: 1.6em;
		}

		.main-navigation ul {
			display: block;
			position: absolute;
			left: 0; 
			opacity: 0;
			top: -1000%;
			width: 100%;
			/*transition: opacity 0.25s ease; *//* Fade in. */
			transition: top 0.2s ease-in; /* Slide down */
		}

		.main-navigation.toggled .nav-menu {
			opacity: 1;
			top: 50px;
		}

		.main-navigation li {
			float: none;
		}
		
		.main-navigation li a {
			padding: 10px 10px;	
		}
		
		.main-navigation ul ul {
			display: none; /* Hide sub-pages from nav */
		}
		
		.main-navigation ul li:hover > ul {
			display: none;
		}
	}
	
	@media all and ( min-width: 768px ) {
		
		.main-navigation {	
			float: right;	
			padding: 0;
			margin: 0;
		}

		.main-navigation ul {
			border-top: none;
		}

		.main-navigation li {
			padding: 0;
			margin: 0;
			border-bottom: none;
			border-right: 1px solid #575757;
		}
		
		.main-navigation a {
			width: auto;	
			padding: 27px 12px 28px 12px;
			
		}

		
	}


/*--------------------------------------------------------------
3.0 Standard Page
--------------------------------------------------------------*/
	
	.page-header {
		padding: 40px 5%;
		background-color: #99c53b;
	}
	
	body.parent-pageid-678 .page-header,
	body.page-id-678 .page-header,
	body.page-id-740 .page-header,
	body.page-id-722 .page-header,
	body.page-id-727 .page-header,
	body.page-id-731 .page-header,
	body.page-id-746 .page-header
	 {
		background: #99c53b url(../images/banner-residential.jpg) center top no-repeat;
		background-size: cover;
	}
	
	body.page-id-688 .page-header,
	body.parent-pageid-688 .page-header,
	body.page-id-744 .page-header,
	body.page-id-733 .page-header,
	body.page-id-720 .page-header {
		background: #99c53b url(../images/banner-comm.jpg) center top no-repeat;
		background-size: cover;
	}
	
	body.page-id-702 .page-header,
	body.page-id-736 .page-header,
	body.parent-pageid-702 .page-header {
		background: #99c53b url(../images/banner-asset.jpg) center top no-repeat;
		background-size: cover;
	}
	
	body.page-id-714 .page-header,
	body.parent-pageid-714 .page-header {
		background: #99c53b url(../images/banner-resources.jpg) center top no-repeat;
		background-size: cover;
	}
	
	.page-header h1 {
		margin-bottom: 0;
	}
	
	.page-content {
	}
	
	@media all and ( min-width : 768px ) {
		.page-header {
			padding: 70px 0;
		}
		
		.page-content {
			padding-top: 20px;	
		}
	}


/*--------------------------------------------------------------
6.0 - Page Builder
--------------------------------------------------------------*/
	
	.page-builder {
		padding: 2% 0;
	}

	/* Slider */
	

	/* Widgets */
	.widgets {
		padding: 30px 0 0 0;
		text-align: center
	}
	
	.widgets h2 {
		padding: 0;
		margin: 10px 0 5px 0;
	}
	
	.widgets .widget-repeater img {
		max-width: 100%;
		height: auto;
	}

	.widgets .widget-repeater:hover img {
		position: relative;  
	}
	
	.widgets .widget-repeater a.btn:hover {
		color: #ffffff;	
	}

	/* Image (full width). */
	.image-full-width img {
		height: auto;
		max-width: 100%;
	}

	/* Image (left and right) */
	.image-aligned-left .image img, .image-aligned-right .image img {
		height: auto;
		max-width: 100%;
	}

	/* Pull out quote */
	.pull-out-quote {
		border-left: 10px solid #444;
		margin: 0 50px;
		font-size: 1.4em;
		font-weight: bold;
	}

	.pull-out-quote p {
		margin-bottom: 0;
		padding: 0 20px;
	}

	/* Call to action */
	.page-builder.call-to-action {
		text-align: center;
	}

	@media all and ( max-width : 767px ) {
		.gutters .col .page-builder .col {
			padding: 0;
		}
	}


/*--------------------------------------------------------------
7.0 Home Page
--------------------------------------------------------------*/
		
		.slider {
			position: relative;	
		}
		
		.cycle-gallery {
			width: 100%;	
		}
		
		.slide-container {
			height: 640px;
			width: 100%;
			text-align: center;
			background-position: center top;
			background-repeat: no-repeat;
			-webkit-background-size: cover;
			-moz-background-size: cover;
			-o-background-size: cover;
		 	background-size: cover;
			padding: 80px 0;	
		}
		
		.slide-content {
			position: absolute;
			width: 100%;
			text-align: center;	
			z-index: 5001;
			padding: 80px 0;	
		}
		
		.slider p {
			font-size: 1.5em;
			color: #ffffff;	
		}
		
		.slider h1 {
			font-size: 2em;
		}	
		
		.slider .menu {
			margin: 0;
			padding: 0;
		}
		
		.slider .menu li {
			width: 100%;
			text-align: center;	
			padding: 0;
			margin: 0 0 20px 0;
			list-style: none;	
		}
		
		.slider .menu li a {
			display: block;
			padding: 40px 0;
			color: #ffffff;
			font-size: 1.3em;
			-webkit-border-radius: 4px;
			-moz-border-radius: 4px;
			border-radius: 4px;	
			background: url(../images/common/transparent-grey.png);	
		}
		
		.slider .menu li a:hover {
			background: #99c53b;
		}
		

		.slider ul li > ul {
			display: none;	
		}
		
		
		
		.slider .menu li ul li {
			width: 100%;	
			margin: 0;
			padding: 0;
		}
		
		
		
		.slider .menu li ul li a {
			font-size: 0.9em;
			padding: 20px 0;
			-webkit-border-radius: 0;
			-moz-border-radius: 0;
			border-radius: 0;		
		}
		
		.if {
			display: inline-block;
			width: 40px;
			height: 41px;
			text-indent: -9999px;
			background: url(../images/if.png) center 0 no-repeat;	
			  -webkit-background-size: cover;
			  -moz-background-size: cover;
			  -o-background-size: cover;
			  background-size: cover;
		}
		
		
	
		.waterfall-odd, .waterfall-even {
			float: left;
			width: 100%;
			clear: both;
			padding: 80px 0;
			text-align: center;	
		}
		
		.waterfall-even {
			background: #f1f1f1;	
		}
		
	
		
		.row-image {
			text-align: center;
			width: 100%;	
		}
		
		.row-image img {
			max-width: 200px;
			-webkit-border-radius: 50%;
			-moz-border-radius: 50%;
			border-radius: 50%;	
		}
		
		
	
	@media all and ( min-width : 768px ) {
		
		.slide-container {
			height: 600px;
			padding: 150px 0;
		}
		
		.slider h1 {
			font-size: 2.8em;
		}	
		
		.slider .menu li {
			float: left;
			width: 32%;	
			margin: 0 0 0 2%;
		}
		
		.slider ul li:hover > ul {
			display: block;
			margin: 0;
			padding: 0;
		}
		
		.slider .menu li ul li {
			width: 100%;
			margin: 0;	
		}
		
		.if {
			display: inline-block;
			width: 60px;
			height: 61px;
			text-indent: -9999px;
			background: url(../images/if.png) center 0 no-repeat;	
			  -webkit-background-size: cover;
			  -moz-background-size: cover;
			  -o-background-size: cover;
			  background-size: cover;
		}
		
		
		.slider li.menu-item-778 {
			margin: 0 0 0 0;
		}
		
		.waterfall-odd, .waterfall-even {
			text-align: left;
		}
		
		.waterfall-odd .row-image, .waterfall-even .row-content {
			float: left;	
		}
		
		.waterfall-even .row-image, .waterfall-odd .row-content {
			float: right;	
		}
		
		.row-image {
			width: 32%;	
		}
		
		.row-content {
			width: 66%;	
		}
		
	}


/*--------------------------------------------------------------
8.0 - Page-specific
--------------------------------------------------------------*/
	
	.excerpt-container {
		margin-bottom: 15px;
		border-bottom: 1px dashed #cccccc;	
	}
	
	.table-difference td {
		width: 33%;
		padding: 10px 10px 10px 0;
		border-bottom: 1px dashed #cccccc;	
	}
	
	
	/* Contact */
	
	.contact-content {
		padding-top: 20px;	
	}
	
	#map-canvas {
        height: 300px;
	}
	


/*--------------------------------------------------------------
10.0 -  Forms
--------------------------------------------------------------*/	

	.enquiry {
		margin-top: 50px;
		padding: 50px 0;
		background: #f1f1f1;	
	}
	
	.enquiry h3 {
		font-size: 1.75em;
		text-align: center;
		font-weight: 600;	
	}
	
	.enquiry h3 a {
		color: #666666;
	}	
	
	.start-now {
		font-weight: 700;
		color: #99c53b;	
	}
	
	#enquiry-form {
		
	}
	
	
	.validation_message {
		display: none !important;	
	}	
	
	.gform_wrapper {
		max-width: 100%	 !important;
	}
	
	.gform_wrapper label {
		font-weight: normal !important;
	}

	.gform_wrapper .top_label li.gfield.gfield_error.gf_left_half,
	.gform_wrapper .top_label li.gfield.gfield_error.gf_right_half {
		width: 49% !important;
	}
	
	.validation_error, .gfield_error label {
		color: #d32552;	
	}	
	
	.validation_error {
		padding: 0 0 10px 0;
	}
	
	.sidebar-enquiry {
		padding: 20px;
		border: none !important;
		-webkit-border-radius: 5px;
		-moz-border-radius: 5px;
		border-radius: 5px;
		border: 1px solid #cccccc !important;
		background: #eeeeee;
	}
	
	.sidebar-enquiry h3 {
		color: #333333;	
	}
	
	.sidebar-enquiry label {
		color: #ffffff !important;	
	}
	
	.sidebar-enquiry 	.validation_message {
		display: block !important;
		color: #d32552;
		margin: 0 !important;
		padding: 0 !important;
	}	
	
	.sidebar-enquiry .gfield_error input {
		border: 1px solid #d32552;	
	}
	
	.gplaceholder li {
		padding: 3px 0;	
	}
	
	input#input_3_7, input#input_1_7 {
		border: 1px solid #cccccc;
		-webkit-border-radius: 3px;
		-moz-border-radius: 3px;
		border-radius: 3px;
	}
	
	.gform_confirmation_message {
		font-size: 1.4em;
	}
	
	.sidebar-enquiry .gform_confirmation_message {
		padding: 15px 0;	
	}
	

/*--------------------------------------------------------------
11.0 - Footer
--------------------------------------------------------------*/
	
	footer.site-footer {
		background: #353534;
		color: #515151;
		min-height: 240px;
		padding: 70px 0;
		text-align: center;
	}
	
	.logo-footer {
		max-width: 280px;
		margin: 0 0 40px 0;	
	}
	
	
	.logo-footer img {
		width: 100%;
		height: auto;
		margin: 0 0 10px 0;
	}

	/* Footer Menu */
	.site-footer .menu {
		margin: 15px auto 40px auto;
	}

	.site-footer .menu ul {
		display: none;
	}

	.site-footer .menu li {
		display: inline-block;
		font-weight: 700;
		padding: 0 5px;
		font-family: "ff-enzo-web",sans-serif;
		
	}
	
	.site-footer .menu li a {
		color: #ffffff;
	}


	/* Social Icons */
	.social-icons {
		margin: 0 auto;
		margin-top: 4%;
		width: 100%;
		background: #000;	
	}
	
	.social {
		float: left;
		width: 44px;
		height: 44px;
		margin: 0 3px;	
	}

	.social a {
		-webkit-border-radius: 50%;
		-moz-border-radius: 50%;
		border-radius: 50%;
		color: #fff;
		display: block;
		height: 44px;
		text-align: center;
		width: 44px;
	}

	.social a .fa {
		font-size: 2em;
		line-height: 1.8em;
	}

	.social .facebook {
		background: #3b579d;
	}

	.social .twitter {
		background: #5ea9dd;
	}

	.social .linkedin {
		background: #00649a;
	}

	.social .linkedin .fa {
		line-height: 1.6em;
	}

	.social .google-plus {
		background: #de4a32;
	}

	.social .google-plus .fa {
		margin: 0 0 0 3px;
	}

	.social .pinterest {
		background: #fff;
	}

	.social .pinterest .fa {
		color: #cd1d1f;
		font-size: 3.8em;
		line-height: 0.89em;
	}

	.social .youtube {
		background: #d12122;
	}

	.social .youtube .fa {
		line-height: 1.6em;
	}

	.social .soundcloud {
		background: #ff5500;
	}

	.social .soundcloud .fa {
		line-height: 1.6em;
	}

	.social .instagram {
		background: #447297;
	}

	.social .instagram .fa {
		line-height: 1.6em;
		margin: 0 0 0 1px;
	}

	.site-footer .ticktock {
		text-align: center;
		padding-top: 4%;
	}
	
	@media all and ( min-width : 768px ) {
		
		.logoFooter {
			width: 40px;
			margin: 0 10px 0 0;	
		}
		
		footer.site-footer {
			text-align: left;
		}

		.site-footer .ticktock {
			padding: 0;
			text-align: right;
		}

	}