/*
	Theme Name: RocketPress
	Theme URI: http://rockethouse.com.au
	Description: RocketPress Theme WordPress Theme
	Version: 1.0
	Author: Rockethouse
	Author URI: http://rockethouse.com.au

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/

/*------------------------------------*\
    MAIN
\*------------------------------------*/

textarea, input,
input[type="text"],
input[type="button"],
input[type="submit"],
input[type="search"] {
     -webkit-appearance: none;
     border-radius: 0;
}

fieldset {
	border: none;
}

/* global box-sizing */
*,
*:after,
*:before {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	-webkit-font-smoothing:antialiased;
	font-smoothing:antialiased;
	text-rendering:optimizeLegibility;
}
/* html element 62.5% font-size for REM use */
html {
	font-size:62.5%;
}
body {
	font:300 18px/1.3 'Merriweather Sans', Helvetica, Arial, sans-serif;
	color:#444;
}
/* clear */
.clear:before,
.clear:after {
    content:' ';
    display:table;
}

.clear:after {
    clear:both;
}
.clear {
    *zoom:1;
}
img {
	max-width:100%;
	vertical-align:bottom;
}
a {
	color:#444;
	text-decoration:none;
}
a:hover {
	color:#444;
}
a:focus {
	outline:0;
}
a:hover,
a:active {
	outline:0;
}
input:focus {
	outline:0;
	border:1px solid #04A4CC;
}

ul {
	margin: 0;
	padding: 0;
}

ul li {
	padding: 0;
	margin: 0;
	list-style-type: none;
}

article {
	padding-bottom: 180px;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/


.wrapper {
	width:100%;
	min-height: 100vh;
	margin:0 auto;
	position:relative;
}

.header {
	top:0;
	left: 0;
	right: 0;
	width: 100%;
}

.logo {
	position: absolute;
	top: 19px;
	left: 30px;
	width: 190px;
	z-index: 99;
	transition: all 0.2s ease-in-out;

}
.logo-img {
	height: 40px;
 	display: inline-block;
}

.logo span.tagline {
	display: inline-block;
	height: 40px;
	color: #0B1666;
	width: 100px;
}

.nav {
	color: #0B1666;
	position: absolute;
	top: 30px;
	right: 20px;
	z-index: 50;
	transition: all 0.2s ease-in-out;
}

.nav li {
	float: left;
	margin: 0 20px;
}

.nav li a {
	color: #0B1666;
	text-transform: uppercase;
	font-weight: 700;
}

.nav li a:hover {
	color: #000;
	transition: all 0.2s ease-in-out;
}

.nav-open {
	height: 50px;
	color: #23285D;
	font-size: 25px;
	height:30px;
	width:30px;
	position: absolute;
	right: 0;
	top: 0;
	margin: 20px;
	cursor: pointer;
	display: none;
	transition: all 0.2s ease-in-out;
}


.mobile-nav {
	width:100%;
	position: fixed;
	top:0;
	right:0;
	background:rgba(255,255,255,0.8);
	color:#23285D;
	z-index: 998;
	padding:79px 20px 10px 20px;
	margin-top: -100%;
	transition: all 0.2s ease-in-out;
	-webkit-backface-visibility: hidden;
	-webkit-transform: translateZ(0);
}

.mobile-nav.open {
	transition: all 0.2s ease-in-out;
	margin-top:0;
}

.mobile-nav li {
	margin:0 0 10px 0;
	text-align: center;
}

.mobile-nav li a {color:#23285D;
text-transform: uppercase;
font-size:20px;}

.top {
	background: white;
}

.top {
	height: 80px;
	top:0;
	position: fixed;
	z-index: 999;
	right: 0;
	width: 100%;
	transition: all 0.2s ease-in-out;
	-webkit-backface-visibility: hidden;
	-webkit-transform: translateZ(0);
}

.top.background .nav {
	font-size: 14px;
	top: 21px;
}

.top.background {
	height: 60px;
}



.top.background .logo {
	width:65px;
	top:12px;
	left:16px;
}

.top.nav-up {
	/*top:-80px;*/
}

.top a {
	color: #757575
}

.sidebar {

}


.footer {
	background: #0B1666;
	padding:30px;
	color:#FFF;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	text-align: center;
}

.footer a.facebook  {
    color: #FFF;
    text-transform: uppercase;
    font-weight: 200;
    letter-spacing: 0px;
    font-size: 13px;
    text-decoration: none;
}


.footer .logo {
	margin: 0 auto;
}

.footer .copyright {
	font-size: .8em;
}

/*------------------------------------*\
    GENERAL
\*------------------------------------*/

.half {width:50%;}
.third {width:33%;}

.left {float:left;}
.right {float:right;}


/*------------------------------------*\
    HOME PAGE
\*------------------------------------*/

body.home {
	background: url('img/test.jpg');
	background-size: cover;
	position:relative;
}

body.home .down {
	margin: 0 auto;
	margin-top: 50px;
	width: 100%;
	text-align: center;
	color: #0B1666;
	text-transform: uppercase;
	font-weight: bold;
	display: block;
}

section.home article {
	max-width: 600px;
	margin: 18% auto 0 auto;
	color: #23285D;
	text-align: center;
	font-size: 22px;
	top: 20%;
	left: 0;
	right: 0;
}


section a.down i {
	color: #23285D;
	border: 2px solid #23285D;
	margin-bottom: 100px;
	border-radius: 50%;
	width: 40px;
	height: 40px;
	line-height: 39px;
	padding-left: 3px;
	margin-left: 13px;
}


/*------------------------------------*\
    ABOUT PAGE
\*------------------------------------*/

section.about {
	background: #fff;
	padding:100px 0;
	width:100%;
}

section.about article {
	max-width: 1020px;
	margin: 0 auto;
	color: #222324;
	text-align: center;
}

section.about .half.right, section.about .half.left {
	padding:0 30px;
}

section.about .content {
	padding:0 20px;
	width:80%;
	margin:0 auto;
}

/*------------------------------------*\
    SERVICES PAGE
\*------------------------------------*/


section.services {
	background:#EAEAEA;
	padding:100px 0;
	width:100%;
	text-align: left;
}

section.services article {
	max-width: 1020px;
	margin: 0 auto;
	color: #222324;
	text-align: center;
	position: relative;
	min-height:400px;
}


section.services .page-heading h4 {
     color: #333;
}

div.service {
	text-align: left;
}
div.service h4 {
	margin: 20px 0 20px;
}

div.service p {
    margin-bottom: 20px;
}

div.service ul li {
    width:160px;
    height:160px;
    display: inline-block;
    margin-bottom: 5px;
}
div.service ul li img {
    padding:3px;
    background:rgba(0,0,0,0.15);
    border:1px solid rgba(255, 255, 255, 0.5);
    display:block;
    cursor: pointer;
}

/*------------------------------------*\
    RENTALS PAGE
\*------------------------------------*/

body.rental-properties {
	background: url(img/rental.jpg);
	background-position: center center;
	background-size: cover;
}

section.rental-properties {
	padding:100px 0;
	width:100%;
	position:relative;
	min-height: 750px;
}

section.rental-properties article {
	max-width: 1020px;
	margin: 0 auto;
	color: #222324;
	text-align: center;
}

section.rental-properties .page-heading h4 {
	color:#333;
}

section.rental-properties p {
	color:#333;
	font-size: 18px;
	line-height:1.5em;
	padding:0 5%;
}

section.rental-properties .address {
	color:#222324;
	font-style: italic;
	font-weight: bold;
	font-size: 18px;
	display:block;
	margin:10px 0 20px 0;
}
.rental-property-section .item a {padding:6px; background:rgba(0,0,0,0.15); border:1px solid rgba(255, 255, 255, 0.5); display:block;}
.rental-property-section .item a:hover {border:1px solid rgba(255, 255, 255, 1); transition: all 0.2s ease;}

ul.rental-property-section li ul {
	margin:10px 0 0 0;
}

ul.rental-property-section li ul li {
	width:160px;
	height:160px;
}
ul.rental-property-section {
	padding: 15%;
}

/*------------------------------------*\
    PROJECTS PAGE
\*------------------------------------*/

section.projects {
	background:#EAEAEA;
	padding: 100px 0;
	width: 100%;
	position: relative;
}
section.projects article {
	max-width: 1020px;
	margin: 0 auto;
	color: #222324;
	text-align: center;
}
ul.project-section li ul {
	margin:40px 0 0 0;
}

ul.project-section li ul li {
	width:160px;
	height:160px;
    display: inline-block;
    margin-bottom: 5px;
}
.projects li ul li img {
    padding:3px;
    background:rgba(0,0,0,0.15);
    border:1px solid rgba(255, 255, 255, 0.5);
    display:block;
    cursor: pointer;
}

a.short-link {
    display: inline-block;
    background: rgba(255,255,255,0.5);
    padding: 5px;
}

/*------------------------------------*\
    CONTACT PAGE
\*------------------------------------*/

section.contact {
	background: #EAEAEA;
	padding:100px 0;
	width:100%;
	position: relative;
}

.feature.map {
	position: absolute;
	top:0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	opacity: 0.15;
	z-index: 0;
    filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 10+ */
    filter: gray; /* IE6-9 */
	  -webkit-filter: grayscale(99%); /* Chrome 19+ & Safari 6+ */
	  -webkit-backface-visibility: hidden;  /* Fix for transition flickering */
}

#map-canvas {
	height: 100%;
	margin: 0px;
	padding: 0px
}

section.contact article {
	max-width: 1020px;
	margin: 0 auto;
	color: #222324;
	text-align: center;
	position: relative;
	z-index: 1
}

section.contact form {
	max-width:550px;
	margin:0 auto;
	text-align: left;
	padding:0 20px;
}

section.contact form input, section.contact form textarea {
	width: 100%;
	background: #FFFFFF;
	font-size: 24px;
	border:0;
	margin:0px 0px 30px 0;
	padding: 10px 15px;

}

section.contact form textarea {
	height:282px;
}

section.contact form input.button {
	background:#0B1666;
	width:200px;
	font-weight: bold;
	color:#fff;
}


section.contact form ul li {
	position:relative;
}


section.contact form ul li.gfield_error input, section.contact form ul li.gfield_error textarea {
	border:2px solid #f7495d;
}

section.contact form  .validation_error {
	margin:0 0 40px 0;
	font-size: 14px;

	text-transform: uppercase;
}

section.contact form .gform_confirmation_message {
	font-size: 14px;
	text-transform: uppercase;
}

section.contact form .gfield_description.validation_message {
	position: absolute;
	z-index: 3;
	top:0;
	margin:-22px 0 0 0;
	background:#f7495d;
	color:#fff;
	font-size: 12px;
	font-weight: bold;
	text-transform: uppercase;
	padding:3px 10px ;
}


.gform_validation_container {display:none;}


/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/

h1, h2, h3, h4 {
	text-transform: uppercase;
}

p {
	font-size: 18px;
	line-height:1.3em;
	margin:10px 0 0 0;
}

.page-heading {
	margin:0 0 68px 0;
	display: block;
}

.page-heading h2, .page-heading  h3, .page-heading h4 {
	color:#0B1666;
	font-size:42px;
	text-transform: uppercase;
	font-weight:normal;
	margin:0;
	line-height: 40px;
}

.page-heading h3 {
	font-weight: bold;
	margin:11px 0 0 0;
}

.page-heading h4 {
	font-size: 30px;
	line-height: 1em;
	font-weight: bold;
}


h4 {
	font-size: 30px;
	line-height: 1em;
	font-weight: bold;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/

@media only screen and (min-width:320px) {

}
@media only screen and (min-width:480px) {

}
@media only screen and (min-width:768px) {

}
@media only screen and (min-width:1024px) {

}
@media only screen and (min-width:1140px) {

}
@media only screen and (min-width:1280px) {
	body.home .top {
		height: 140px;
		border-bottom: 2px solid #0B1666;
	}
	body.home .top .logo {
		width: 100%;
		text-align: center;
		left: 0;
	}
	body.home .logo-img {
		height: 46px;
	}
	body.home .logo span {
		width: 100%; clear: both;
	}
	body.home .top nav {
		right: auto;
		width: 100%;
		text-align: center;
		top: 100px;
		left: auto;
	}
	body.home .top nav ul li {
		display: inline-block;
		float: none;
	}
}

/*------------------------------------*\
    MISC
\*------------------------------------*/

::selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-webkit-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}
::-moz-selection {
	background:#04A4CC;
	color:#FFF;
	text-shadow:none;
}


/*------------------------------------*\
    ANIMATION
\*------------------------------------*/

/****** MEDIA QUERIES ******/


@media all and (max-width: 1200px) {

	.fa.fa-chevron-left {
		left: 10%;
	}

	.fa.fa-chevron-right {
		right: 10%;
	}


}


@media all and (max-width: 899px) {

	.nav-open {
		display:block;
	}

	.nav {display:none;}

	.fa.fa-chevron-left {
		left: 5%;
	}

	.fa.fa-chevron-right {
		right: 5%;
	}

	.top {height:60px;}

	.logo {
		width:190px;
		top: 8px;
		left: 16px;
	}

}



@media all and (max-width: 699px) {

	.left, .right, .half {
		float:none; width:100%; margin:0;
	}

	section.about .half.right {
		margin:20px 0 0 0;
	}

	.page-heading h2, .page-heading  h3, .page-heading h4 {
		font-size:30px;
		line-height: 25px;
	}

	.page-heading {
		margin: 0 0 38px 0;
		display: block;
	}


	h4 {
		font-size: 30px;
	}


	.fa.fa-chevron-left {
		left: 1%;
	}

	.fa.fa-chevron-right {
		right: 1%;
	}


	.services .fa.fa-chevron-right  { right:-10%;}
	.services .fa.fa-chevron-left {left:-10%;}

	.gallery .fa.fa-chevron-right  { right:10%;}
	.gallery .fa.fa-chevron-left {left:10%;}


	ul.services-section li {
	width:40%;
	}

	section.services {
		padding:60px 20px 30px 20px;
	}

	section.gallery {
		paddig:60px 0 30px 0;
	}
	ul.project-section li ul li {
		width: auto;
		height: auto;
	}
    a.short-link {
        display: block;
        margin: 2px auto;
    }
}

body.gallery article .fa {
     position: absolute;
     bottom: 10%;
     left: 50%;
     color: #0B1666;
     width: 50px;
     height: 50px;
     border: 2px solid #1C2670;
     border-radius: 50px;
     text-align: center;
     vertical-align: middle;
     display: block;
     line-height: 46px;
     font-size: 24px;
     padding-left: 2px;
     margin-left: -25px;
}
.clearfix:after {
     visibility: hidden;
     display: block;
     font-size: 0;
     content: " ";
     clear: both;
     height: 0;
     }
.clearfix { display: inline-block; }
/* start commented backslash hack \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* close commented backslash hack */