﻿/*
Theme Name: Willis Constructions
Author: Netwizard Design & Hosting
Author URI: http://www.netwizarddesign.com.au
Version: 1.0
*/
@import url('font-awesome/css/font-awesome.min.css');
@import url('reset.css');
@import url('slicknav.css');
@font-face { font-family: 'Barlow'; font-style: normal; font-weight: 300; font-display: swap; src: url('../fonts/barlow-300.ttf') format('truetype'); }
@font-face { font-family: 'Barlow'; font-style: normal; font-weight: 400; font-display: swap; src: url('../fonts/barlow-400.ttf') format('truetype'); }
@font-face { font-family: 'Barlow'; font-style: normal; font-weight: 700; font-display: swap; src: url('../fonts/barlow-700.ttf') format('truetype'); }

html {
	width:100%;
	height:100%;
	position:relative;
}
body {
	overflow-x:hidden;
	margin:0;
	width:100%;
	height:100%;
	font-size: 22px;
	line-height: 1.5em;
	font-family: 'Barlow', sans-serif;
	color: #333;
	background:#fff;
	position:relative;
	-webkit-font-smoothing: antialiased; /* Fix for webkit rendering */
	-webkit-text-size-adjust: 100%;
}
h1 {
	font-size:70px;
	font-weight:700;
	margin:0 0 30px 0;
	line-height:80px;
}
h2 {
	font-size:50px;
	font-weight:400;
	margin:0 0 30px 0;
	line-height:60px;
}
h3 {
	font-size:24px;
	font-weight:700;
	margin:0 0 20px 0;
	line-height:34px;
}
h4 {
	font-size:20px;
	margin:0 0 20px 0;
	line-height:30px;
	font-weight:700;
}
p {
	font-size:22px;
	margin:0 0 20px 0;
	line-height:32px;
}
ul, ol {
	margin:0 0 20px 25px;
}
a {
	color:#386b9f;
	text-decoration:none;
}
img {
	max-width:100%;
	height:auto;
}
.clear {
	clear:both;
}
.container {
	width:96%;
	margin:0 auto;
	position:relative;
	max-width:1600px;
}
.slicknav_menu {
	display:none;
}
#header {
	position:fixed;
	top:0;
	left:0;
	width:100%;
	z-index:999;
	height:100px;
}
#header .container {
	position:relative;
}
.logo {
	float:left;
	position:relative;
	margin:30px 0 0 0;
}
#header .menu {
	list-style-type:none;
	margin:35px 0 0 0;
	position:relative;
	float:right;
}
#header .menu li {
	display:inline-block;
	position:relative;
	margin:0 0 0 30px;
}
#header .menu li a {
	color:#fff;
	text-decoration:none;
	font-size:24px;
}
#header .menu li.current-menu-item a {
	font-weight:700;
}
.scroll {
	background: #444 !important;
}
#slider {
	position:relative;
	width:100%;
	height:100%;
	z-index:0;
	overflow:hidden;
	top:0;
	margin:0;
}
#prev, #next {
	width:80px;
	height:80px;
	line-height:80px;
	text-align:center;
	color:#ccc;
	font-size:50px;
	position:absolute;
	z-index:50;
	bottom:50px;
	opacity:0.75;
	transition:all .5s;
	cursor:pointer;
}
#next:hover, #prev:hover {
	opacity:1;
}
#next {
	left:110px;
}
#prev {
	left:50px;
}
.banner {
	position:absolute;
	bottom:20px;
	right:40px;
	z-index:10;
}
.banner h2 {
	display:inline-block;
	color:#fff;
	font-size:35px;
	line-height:50px;
	margin:0 0 0 0;
/* 	margin-right:50px; */
	font-weight:400;
	position:relative;
	z-index:0;
}
#slider .cycle-slideshow {
	position:relative;
	width:100%;
	height:100%;
	z-index:0;
}
#slider .cycle-slideshow > div {
	display:none;
	position:absolute !important;
	top:0;
	left:0;
}
#slider .cycle-slideshow > div:first-child {
	display:block;
}
#slider .cycle-slideshow #slide1 {
	width:100%;
	height:100%;
	position:relative;
	background:url(../images/slide1.jpg) no-repeat left center fixed;
	background-size:cover;
}
#slider .cycle-slideshow #slide2 {
	width:100%;
	height:100%;
	position:relative;
	background:url(../images/slide2.jpg) no-repeat center center fixed;
	background-size:cover;
}
#slider .cycle-slideshow #slide3 {
	width:100%;
	height:100%;
	position:relative;
	background:url(../images/slide3.jpg) no-repeat center center fixed;
	background-size:cover;
}
#slider .cycle-slideshow #slide4 {
	width:100%;
	height:100%;
	position:relative;
	background:url(../images/slide4.jpg) no-repeat center center fixed;
	background-size:cover;
}
#slider .cycle-slideshow #slide5 {
	width:100%;
	height:100%;
	position:relative;
	background:url(../images/slide5.jpg) no-repeat center center fixed;
	background-size:cover;
}
#inner {
	text-align:center;
	width:100%;
	clear:both;
	height:50px;
	background:#f3f3f3;
	padding:20px 0 0 0;
	color:#fff;
	position:relative;
	z-index:0;
	margin:100px 0 0 0;
}
.inner h1, .inner h3 {
	color:#333;
	font-size:30px;
	line-height:1em;
	display:block;
	font-weight:400;
	margin:0;
}
#content {
	padding:50px 0;
	position:relative;
	z-index:300;
}
#welcome {
	padding:150px 0;
	position:relative;
	z-index:0;
}
.welcome-image {
	width:50%;
	height:700px;
	float:left;
	background:url(../images/welcome.jpg) no-repeat center center;
	background-size:cover;
}
.welcome {
	width:38%;
	float:right;
	margin:0 6% 0 6%;
	padding:100px 0 0 0;
}
.welcome h2  {
	font-size:75px;
	line-height:85px;
	font-weight:400;
}
#projects {
	padding:100px 0;
	position:relative;
	background:#f3f3f3;
	z-index:100;
}
#projects h2 {
	font-size:75px;
	line-height:85px;
	font-weight:400;
	text-align:center;
	margin:0 0 50px 0;
}
.project {
	width:30.33%;
	float:left;
	margin:0 1.5% 40px 1.5%;
	position:relative;
	overflow:hidden;
}
.project img {
	position:relative;
	z-index:0;
	transition:all .5s;
}
.project:hover img {
	transform: scale(1.1);
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
	filter: grayscale(100%);
}
.project h3 {
	position:absolute;
	bottom:30px;
	left:30px;
	z-index:100;
	display:inline-block;
	margin:0;
	padding:10px;
	font-weight:400;
	font-size:28px;
	background:rgba(34,34,34,0.75);
	transition:all .5s;
}
.project:hover h3 {
	background:rgba(34,34,34,0.25);
}
.project a {
	color:#fff;
}
.project-two {
	width:46%;
	float:left;
	margin:0 2% 60px 2%;
	position:relative;
	overflow:hidden;
}
.project-two img {
	position:relative;
	z-index:0;
	transition:all .5s;
	width:100%;
}
.project-two:hover img {
	transform: scale(1.1);
	-webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
	filter: grayscale(100%);
}
.project-two h3 {
	position:absolute;
	bottom:30px;
	left:30px;
	z-index:100;
	display:inline-block;
	margin:0;
	padding:10px;
	font-weight:400;
	font-size:28px;
	background:rgba(34,34,34,0.75);
	transition:all .5s;
}
.project-two:hover h3 {
	background:rgba(34,34,34,0.25);
}
.project-two a {
	color:#fff;
}
#capabilities {
	padding:100px 0;
	position:relative;
	z-index:100;	
}
#capabilities h2 {
	font-size:75px;
	line-height:85px;
	font-weight:400;
	text-align:center;
	margin:0 0 50px 0;
}
.serv {
	width:30.33%;
	float:left;
	margin:0 1.5% 0 1.5%;
	position:relative;
	text-align:center;
}
.serv img {
	position:relative;
	z-index:0;
	margin:0 0 20px 0;
}
.serv h3 {
	position:relative;
	z-index:100;
	width:100%;
	text-align:center;
	margin:0;
	padding:15px 0;
	font-weight:700;
	font-size:30px;
}
.serv a {
	color:#333;
}
.serv p {
	padding:0 40px;
}
#grey {
	padding:100px 0;
	position:relative;
	background:#f3f3f3;
	z-index:100;
}
#white {
	padding:100px 0;
	position:relative;
	z-index:100;
}
.about-padded {
	padding:50px 0 0 0;
	font-size:27px;
	line-height:37px;
}
.about-padded p {
	font-size:27px;
	line-height:37px;
}

.alignright, .wp-post-image {
	float:right;
	margin:0 0 50px 100px;
}
.alignleft {
	float:left;
	margin:0 100px 50px 0;
}
#top-footer {
	padding:40px 0 0 0;
	background:#f4f0f5;
}
#top-footer h3 {
	font-size:26px;
	line-height:36px;
	margin:0 0 20px 0;
	font-weight:700;
}
.fcol-1 {
	width:33.33%;
	float:left;
	margin:0 0 0 0;
	text-align:center;
}
.fcol-3 {
	width:33.33%;
	float:right;
	margin:0 0 0 0;
	text-align:center;
}
.fcol-3 p {
	line-height:30px;
	font-size:20px;
}
.fcol-1 ul {
	list-style-type:none;
	margin:0 0 20px 0;
}
.fcol-1 ul li {
	width:100%;
	padding:0;
	margin:0 0 2px 0;
	text-align:center;
	font-size:20px;
	line-height:30px;
}
.fcol-1 ul li a {
	color:#333;
	text-decoration:none;
}
.fcol-2 {
	width:33.33%;
	float:left;
	margin:0 0;
	text-align:center;
}
.fcol-2 img {
	max-width:80%;
	height:auto;
	margin:25px 0 0 0;
}
.fcol-3 a {
	color:#333;
	text-decoration:none;
}
#footer {
	padding:0 0 15px 0;
	background:#f4f0f5;
	color:#333;
}
#footer .container {
	border-top:1px solid #999;
	padding:25px 0 0 0;
}
#footer p {
	font-size:15px;
	text-align:center;
	width:100%;
	margin:0 0 0 0;
}
#footer p a {
	color:#333;
	text-decoration:none;
}
#form {
	width:47%;
	float:left;
	margin:0 0 30px 0;
}
#details {
	width:47%;
	float:right;
	margin:40px 0 30px 0;
}
.map {
	float:none;
	width:100% !important;
	height:300px;
	margin:15px 0 0 0;
	border: none !important;
}
.form-col {
    width: 47%;
	float:left;
	margin:0 3% 0 0;
}
.form-col-full {
    width: 97%;
	float:left;
	margin:0 3% 0 0;
}
.wpcf7 {
    width: 100%;
	margin:0 0 0 0;
}
.wpcf7 textarea {
	background: #f9f9f9;
    border: 1px solid #ccc;
    color: #555;
    font-size: 16px;
	width:96%;
	padding:12px 2%;
    height:150px;
	margin:0 0 10px 0;
	font-family: inherit !important;  
}
.wpcf7 p {
    color: #333;
	text-align:left !important;
}
.wpcf7 .req {
    color: red;
	font-weight:bold;
	font-size:1.3em;
}
.wpcf7 {
    margin: 30px 0 0 0;
}
.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="password"]{
    background: #f9f9f9;
    border: 1px solid #ccc;
    color: #555;
    font-size: 16px;
	width:96%;
	padding:12px 2%;
	margin:0 0 10px 0;
}
.wpcf7 select {
    background: #f9f9f9;
    border: 1px solid #ccc;
    color: #555;
    font-size: 16px;
	width:100%;
	padding:10px 5px;
	margin:0 0 0 0;
	height:44px;
}
.wpcf7 input[type="submit"] {
    cursor: pointer;
    height: 50px;
    padding: 0;
    width: 100%;
    position: relative;
	text-align:center;
	transition:all .5s;
	border: none;
	text-decoration:none;
	color:#fff;
	background:#00297c;
	font-size:16px;
	display:block;
	margin:0;
}
.wpcf7 input[type="submit"]:hover {

}

.grecaptcha-badge { visibility: hidden; !important}

.main {
	width:65%;
	float:left;
}
.main .post h2 {
	font-size:26px;
	line-height:36px;
	margin:0 0 20px 0;
}
.sidebar {
	width:27%;
	padding:30px 1.5%;
	background:#f3f3f3;
	float:right;
	border: 1px solid #ccc;
}
.sidebar h3 {
	font-size:32px;
}
.sidebar ul li {
	margin:0 0 20px 0;
	line-height:20px;
}
.post {
	margin:0 0 30px 0;
}
.share {
	display:block;
	margin:15px 0;
}
.page-numbers {
	padding:20px;
	font-size:18px;
	text-decoration:none;
	background:#eee;
	border:1px solid #ccc;
	display:inline-block;
	margin:20px 0;
}
.more {
	background:#00297c;
	color:#fff;
	padding:10px 20px;
	display:inline-block;
	margin:15px 0;
	text-decoration:none;
}
.date {
	color:#999;
	font-size:13px;
	display:block;
	margin:0 0 0 0;
	padding:0 0 0 0;
}
@media only screen and (max-width: 1300px) {

	.logo {
		max-width:400px;
	}
	#header .menu {
		list-style-type:none;
		margin:45px 0 0 0;
		position:relative;
		float:right;
	}
	#header .menu li {
		display:inline-block;
		position:relative;
		margin:0 0 0 20px;
	}
	#header .menu li a {
		color:#fff;
		text-decoration:none;
		font-size:22px;
	}
}

@media only screen and (max-width: 1024px) {
	#header .menu {
		display:none;
	}
	.slicknav_menu {
		display:block;
		position:fixed;
		top:0;
		left:0;
		width:100%;
		z-index:999;
	}
	#header {
		text-align:center;
		margin:50px 0 0 0;
		height:auto;
		z-index:900;
		background-image:none;
	}
	.logo {
		float:none;
		position:relative;
		margin:35px 0 0 0;
		width:300px;
	}	
	#footer span.mhide {
		display:none;
	}
	#footer span.mblock {
		display:block;
	}
	.alignright, .alignleft {
		max-width:100%;
		height:auto;
		float:none;
		margin:0 0 30px 0;
	}
	
	#welcome, #content {
		text-align:center;
	}
	#inner {
		height:70px;
		padding:100px 0 0 0;
	}
	.inner h1, .inner h3 {
		font-size:40px;
	}
	.banner {
		width:100%;
		margin:0;
		right:30px;
		bottom:30px;
		text-align:right;
	}
	.banner h2 {
		display:inline-block;
		color:#fff;
		font-size:28px;
		line-height:38px;
		margin:0 0 0 0;
	}	
	#top-footer {
		padding:50px 0;
	}
	#welcome {
		padding:60px 0;
	}
	.welcome-image {
		display:none;
	}
	.welcome {
		width:90%;
		float:none;
		text-align:center;
		margin:0 5% 0 5%;
		padding:0;
	}
	.welcome h2 {
		font-size:40px;
		line-height:50px;
	}
	#projects, #capabilities {
		padding:50px 0;
	}
	#projects h2 {
		font-size:40px;
		line-height:50px;
		margin:0 0 20px 0;
	}
	#capabilities h2 {
		font-size:40px;
		line-height:50px;
		margin:0 0 20px 0;
	}
	.about-padded {
		padding: 25px 0;
		font-size: 20px;
		line-height: 30px;
	}
	.about-padded p {
		font-size: 20px;
		line-height: 30px;
	}

@media only screen and (max-width: 800px) {
	#top-footer {
		padding:50px 0;
	}
	.fcol {
		width:96%;
		float:left;
		margin:0 2% 25px 2%;
		text-align:center;
	}
	.fcol ul {
		margin:0;
		list-style-type:none;
	}
	.fcol ul li {
		width:100%;
		float:none;
		text-align:center;
		padding:0;
		margin:0 0 5px 0;
	}
	.main, #form, #details {
		width:100%;
		float:none;
		margin:0 0 40px 0;
	}
	.sidebar {
		width:100%;
		padding:0;
		background:#fff;
		float:none;
		border: none;
	}
	.sidebar ul {
		list-style-type:none;
		margin:0 0 20px 0;
	}
	.sidebar ul li {
		width:100%;
		padding:0;
		margin:0 0 5px 0;
		text-align:center;
	}
	#slider {		
		height:600px;
	}
	#slider .cycle-slideshow {
		height:600px;
	}
	#slider .cycle-slideshow #slide1 {
		height:600px;
		background:url(../images/slide1.jpg) no-repeat right center scroll;
		background-size:1064px 600px;
	}
	#slider .cycle-slideshow #slide2 {
		height:600px;
		background:url(../images/slide2.jpg) no-repeat left center scroll;
		background-size:1064px 600px;
	}
	#slider .cycle-slideshow #slide3 {
		height:600px;
		background:url(../images/slide3.jpg) no-repeat center center scroll;
		background-size:1064px 600px;
	}
	#slider .cycle-slideshow #slide4 {
		height:600px;
		background:url(../images/slide4.jpg) no-repeat center center scroll;
		background-size:1064px 600px;
	}
	#slider .cycle-slideshow #slide5 {
		height:600px;
		background:url(../images/slide5.jpg) no-repeat center center scroll;
		background-size:1064px 600px;
	}
	.share {
		display:inline-block;
		margin:0 auto;
	}
	.inner h1, .inner h3 {
		text-align:center;
	}	
	#welcome h1 {
		padding:0;
	}
	#welcome {
		padding:40px 0;
	}
	#welcome img {
		display:none;
	}
	.fcol-2 img {
		max-width: 250px;
		height: auto;
		margin: 0 0 0 0;
	}	
	#inner {
		text-align:center;
	}
	#prev, #next {
		width:40px;
		height:40px;
		line-height:40px;
		font-size:20px;
		bottom:30px;
	}
	#next {
		left:75px;
	}
	#prev {
		left:30px;
	}
	.project {
		width:96%;
		float:left;
		margin:0 2% 0 2%;
	}
	.project h3 {
		padding:10px 0;
		font-size:20px;
	}
	.serv {
		width:96%;
		float:left;
		margin:0 2% 0 2%;
	}
	.serv h3 {
		padding:10px 0;
		font-size:20px;
	}
	.serv p {
		padding:0;
	}
	#white, #grey {
		text-align:center;
	}
	.project-two {
		width: 96%;
		float: none;
		margin: 0 2% 60px 2%;
	}
}
@media only screen and (max-width: 600px) {

}
	.grecaptcha-badge { visibility: hidden; !important}
	


