/* /container/application/httpdocs/assets/css/sub.style.css */
/* STYLE: SUBDIVISION SOLUTIONS */

/* TEXT */
body, .font {
	font-family: 'Source Sans Pro', 'Century Gothic', CenturyGothic, Geneva, sans-serif;
    font-size: 1em;
    letter-spacing: 0px;
    line-height: 1.5em;
}
/*.fontInput, input, input.input, textarea, select, label*/

footer {
	font-size: 0.95em;
}
h1, .title, h2, .header, h3, h4, h5, h6 {
	line-height: normal;
	margin: 0;
	margin-bottom: 0.5em;
}
p, .paragraph {
	margin: 0;
    margin-bottom: 0.6em;
}
.text {
	margin-bottom: 0.1em;
}
.small {
	font-size: 0.85em;
	line-height: normal;
}

h1, .title {
    font-size: 2.8em;
}
h2, .header {
    font-size: 2.4em;
}
h2.book, h2.light {
	font-size: 2.2em;
}
h3 {
    font-size: 2em;
}
h3.book, h3.light {
    font-size: 1.8em;
}

h4 {
    font-size: 1.5em;
}
h5 {
	font-size: 1.3em;
}
h6 {
	font-size: 1em;
}



/* INPUT */
.input_form {
	padding: 18px 24px;
	border-radius: 12px;
}
.input_form.popup .popup_close {
	top: 16px;
	right: 24px;
}
.input_form .submit.button.block {
	padding: 8px 40px;
}
.input_form .input {
	box-shadow: inset 0px 1px 1px #f8f8f8;
	font-size: 1.1em;
	line-height: 1.4em;
	padding: 6px 12px;
	background-color: #ffffff;
	border: none;
	border-radius: 6px;
}
.input_form .input- {
	float: left;
	margin-top: 6px;
	margin-right: 6px;
}
.input_form .info, .input_form .error {
	margin-bottom: 20px;
}

::-webkit-input-placeholder {
   color: #6c7d90;
   font-style: italic;
}
::-moz-placeholder {
   color: #6c7d90;
   font-style: italic;
}

/* BUTTONS */
.button {
	margin: 0px;
	padding: 6px 24px;
	text-align: center;
	border-radius: 6px;
	font-size: 1.1em;
	transition: 0.1s all ease;
}
.button:hover {
	text-decoration: none;
}
.button.block {
	display: block;
}
h2 .button, h2.button {
	padding: 12px 36px;
	margin-bottom: 6px;
}

/* LINKS */
a, .submit {
	cursor: pointer;
    color: #3399cc;
	text-decoration: none;
}
a:hover, .hover:hover {
    color: #36b8e2;
	text-decoration: underline;
}
.colPrimary a:hover, .colPrimary-l a:hover, a.textPrimary-d:hover {
	color: #2c3d50;
}

/* CUSTOM */
#section-next {
	width: 28px;
	height: 28px;
	transition: 0.1s all ease;
}
#section-next img {
	opacity: 0.8;
	width: 100%;
	height: 100%;
	transition: 0.2s all ease;
}
#section-next:hover img {
	opacity: 1;
}

/* COLOURS: Base, Primary, Secondary, Tertiary (Text, Background, Borders) */
.textBase, body, .bgPrimary a:hover, .bgPrimary-l a:hover, .button.bgBase, ul#menu a /*, .textBase.button, ul#menu a, .service ul span, ul#common_issues li div, .button.colBase*/ {
	color: #2c3d50;
}
.textBase-l {
	color: #6c7d90;
}
.textBase-d {
	color: #0c1d30;
}
.textPrimary, ul#menu a:hover, footer li /*.service ul, ul#common_issues*/ {
	color: #3e95f3;
}
.textPrimary-l {
	color: #65aaf5;
}
.textPrimary-d, .bgPrimary-d .button:hover {
	color: #2c5dc0;
}
.textSecondary {
	color: #e44b3b;
}
.textSecondary-l {
	color: #ee5f61;
}
.textSecondary-d {
	color: #ab2d2a;
}
.textTertiary, .button, .button.bgBase:hover, footer li a, .started_step-hover {
	color: #ffffff;
}
.textTertiary-l, .button:hover {
	color: #dcedf0;
}
.textTertiary-d {
	color: #bccdd0;
}

.bgBase, body, .button.bgBase {
	background-color: #ffffff;
}
.bgBase-l, .bgPrimary-d .button:hover, .input_form {
	background-color: #f8f8f8;
}
.bgBase-d {
	background-color: #6d6e71;
}
.bgPrimary, .button {
	background-color: #3e95f3;
}
.bgPrimary-l {
	background-color: #65aaf5;
}
.bgPrimary-d, .button:hover, .started_step-hover {
	background-color: #2c3d50;
}
.bgSecondary {
	background-color: #e44b3b;
}
.bgSecondary-l {
	background-color: #ee5f61;
}
.bgSecondary-d {
	background-color: #ab2d2a;
}
.bgTertiary {
	background-color: #000000;
}
.bgTertiary-l {
	background-color: #2c3d50;
}
.bgTertiary-d {
	background-color: #0c1d30;
}

.borderBase, .border {
	border-color: #aaacaf;
}
.borderBase-l {
	border-color: #dadcdf;
}
.borderBase-d {
	border-color: #7a7c7f;
}
.borderPrimary {
	border-color: #3e95f3;
}
.borderPrimary-l {
	border-color: #65aaf5;
}
.borderPrimary-d {
	border-color: #2c3d50;
}
.borderSecondary {
	border-color: #e44b3b;
}
.borderSecondary-l {
	border-color: #ee5f61;
}
.borderSecondary-d {
	border-color: #ab2d2a;
}
.borderTertiary {
	border-color: #ffffff;
}
.borderTertiary-l {
	border-color: #dcedf0;
}
.borderTertiary-d {
	border-color: #bccdd0;
}

/* ALERTS */
.success, .error {
	padding: 0.5em 1em;
	margin: 0 0 1em 0;
	border: solid 1px;
}
.success, .textSuccess {
	color: #2e9a2e;
}
.success {
	background-color: #d6f6c6;
	border-color: #28b228;
}
.error, .errorText {
	color: #d42424;

}
.error {
	background-color: #fce4e4;
	border-color: #de8282;
}

/* /container/application/httpdocs/assets/css/sub.layout.css */
/* Layout: Sub */

/* Page */
html, body {
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}
body {
	overflow-y: scroll;
}
div#page_shell {
	min-width: 300px;
	position: relative;
	min-height: 100%;
	margin: 0 auto;
	text-align: center;
}
div#page {
	position: relative;
	zoom: 1;
}
footer {
	position: relative;
	overflow: visible;
	margin: 0 auto;
}
#error404 {
	text-align: center;
}

/* Header / Menu */
.vertical15 {
	clear: both;
	overflow: hidden;
	height: 15px;
}
header, header .container {
	position: relative;
	text-align: center;
}
#header_logo {
	float: left;
}
#header_contact {
	position: absolute;
	bottom: 0px;
	right: 20px;
	font-size: 1.2em;
	font-weight: bold;
}
#header_contact img {
	vertical-align: middle;
	margin-right: 2px;
}
#header_mobile {
	display: none;
	position: absolute;
	top: 26px;
	right: 20px;
	width: auto;
	height: 20px;
	padding-right: 34px;
	line-height: 18px;
	font-size: 1.2em;
	font-weight: bold;
}
#header_mobile img {
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: auto;
	height: 100%;
}
#header_contact a:hover, #header_mobile:hover {
	color: #2c3d50;
	text-decoration: none;
}

ul#menu {
	list-style: none;
	margin: 0px;
	padding: 0px;
	margin-top: 10px;
	margin-left: -20px;
	font-size: 1em;
	font-weight: 500;
}
ul#menu li {
	float: left;
	margin-left: 10px;
	margin-bottom: 2px;
	padding-left: 5px;
}
ul#menu a {
	padding: 4px 8px;
}
ul#menu li a:hover {
	text-decoration: none;
}


/* Header Image */
#hero {
	height: 460px;
}
body.root-blog #hero,
body.page-contact #hero {
	height: 230px;
}
.hero_text h2 {
	font-size: 2.6em;
	margin-bottom: 20px;
}


/* Content */
#content, .container {
	position: relative;
	text-align: left;
}


/* Footer */
div#page {
	padding-bottom: 130px;
}
footer {
	overflow: visible;
	height: 130px;
	margin-top: -130px;
	font-size: 0.95em;
}
div#footer_content {
	position: relative;
	height: 100%;
	text-align: center;
}
#footer_idesign {
	position: absolute;
	bottom: 2px;
	right: 12px;
}
footer .col {
	float: left;
	width: 25%;
	margin-top: 40px;
}
footer .col.col1 {
	margin-top: 12px;
	text-align: left;
}
footer ul {
	float: left;
	list-style: none;
	margin: 0px;
	margin-right: 20px;
	padding: 0px;
	font-size: 0.9em;
}
footer ul a {
	margin-left: 8px;
}

/* /container/application/httpdocs/assets/css/sub.content.css */
/* CSS Content */


/* General */
.logo {
	width: 380px;
	height: 65px;
}
.logo-reverse {
	width: 210px;
	height: 45px;
}

.divider-hr {
	background: url(images/bg/divider-hr.png) center center repeat-x;
}
.divider-vr {
	background: url(images/bg/divider-vr.png) center center repeat-y;
}
.divider-right {
	width: 40px;
	height: 220px;
	background: url(images/bg/divider-right.png) center center no-repeat;
}
.fade_bg {
	background: url(images/bg/fade_bg.png) top left repeat-x;
}

.spacer, .break {
	display: block;
	clear: both;
	height: 0px;
	overflow: hidden;
}
.spacer {
	height: 20px;
}
.spacer.small {
	height: 10px;
}
.spacer.big {
	height: 40px;
}
hr {
	display: block;
	clear: both;
	height: 0px;
	overflow: hidden;
	margin: 30px 0;
	border-width: 0;
	border-top-width: 1px;
	border-top-style: solid;
}

/* Template */
.border5 {
	border-width: 5px;
}
.borderTop.border5 {
	border-width: 0px;
	border-top-width: 5px;
}

.margin-left30 {
	margin-left: 30px;
}
.margin-right30 {
	margin-right: 30px;
}
.margin-left80 {
	margin-left: 80px;
}
.margin-right80 {
	margin-right: 80px;
}
.margin-top30 {
	margin-top: 30px;
}
.margin-top40 {
	margin-top: 40px;
}
.margin-top-50 {
	margin-top: -50px;
}

.col.padding-left0 {
	padding-left: 0px;
}
.col.padding-right0 {
	padding-right: 0px;
}

.icon24x {
	width: 24px;
	height: 24px;
}
.icon30x {
	width: 30px;
	height: 30px;
}
.icon45x {
	width: 45px;
	height: 45px;
}


/* Popup */
.popup {
	position: relative;
	width: 80%;
	max-width: 1000px;
	height: auto;
	margin: auto;
	margin-bottom: 20px;
	text-align: left;
	overflow: hidden;
	box-shadow: 4px 5px 7px rgba(0, 0, 0, 0.4);
}
.popup .popup_close {
	position: absolute;
	top: 4px;
	right: 6px;
}


/* Index */
#started_steps {
	position: relative;
	text-align: center;
}
.started_step, #started_steps .divider-right {
	float: left;
}
.started_step.started_step-appraisal {
	width: 26%;
}
.started_step.started_step-property {
	width: 28%;
}
.started_step.started_step-meeting {
	width: 34%;
}
#started_steps .divider-right {
	width: 6%;
}

.started_step-img {
	margin: auto;
	width: 215px;
	height: 145px;
	margin-top: 20px;
}
.started_step-number {
	vertical-align: sub;
	width: 30px;
	height: 30px;
}
.started_step-info {
	position: relative;
}
.started_step h5 span {
	margin-left: 6px;
}
.started_step-info {
	padding: 12px 0px;
}
.started_step-hover {
	padding: 12px;
}
.started_step-hover {
	position: absolute;
	z-index: 10;
	top: 0px;
	left: -12px;
	width: 100%;
	box-sizing: content-box;
	border-radius: 8px;
	box-shadow: 2px 2px 6px #8a8c8e;
}
.started_step-hover .vertical0.borderTop {
	height: 8px;
	width: 96%;
	margin: auto;
	margin-top: 8px;
}

#images-portfolio {
	position: relative;
	height: 220px;
}
#images-portfolio .row, #images-portfolio .col {
	position: relative;
	height: 100%;
}
#images-portfolio .col .img {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: top center;
	background-repeat: no-repeat;
}


/* Services */
.service-list {
	position: relative;
	padding: 0 50px;
}
.service {
	float: left;
	width: 33%;
}
.service:last-child {
	width: 34%;
}
.service h3.book img, .service h3.book span {
	display: block;
	float: left;
}
.service h3.book span {
	margin-top: 6px;
	margin-left: 4px;
}
.service ul {
	margin: 16px 0 0 0;
	padding: 0 0 0 20px;
}
.service-list2 .service ul {
	margin-top: 0;
}
.service ul li {
	padding-left: 4px;
}


/* Subdivision */
#subdivisions-what {
	position: relative;
}
#subdivisions-what .col1 {
	z-index: 1;
}
.subdivision_diagram {
	width: 100%;
	max-width: 350px;
	height: auto;/*200px*/
	margin-top: -70px;
}

#subdivision_steps {
	position: relative;
}
.subdivision_step {
	width: 30%;
	text-align: center;
}
.subdivision_step-box {
	height: 320px;
	overflow: hidden;
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	box-shadow: 2px 2px 6px #babcbe;
}
.subdivision_step.subdivision_step-planning {
	position: absolute;
	top: 0px;
	left: 0px;
}
.subdivision_step.subdivision_step-works {
	margin: auto;
}
.subdivision_step.subdivision_step-titles {
	position: absolute;
	top: 0px;
	right: 0px;
}
.subdivision_step-img {
	width: 100%;/*250px;*/
	height: 100px;/*100px;*/
	overflow: hidden;
}
.subdivision_step-img img {
	width: 100%;
}
.subdivision_step-info {
	position: relative;
	height: 100%;
}
.subdivision_step-hover {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}
.subdivision_step-padding {
	padding: 12px;
	padding-top: 2px;
}
.subdivision_step .vertical0.borderTop {
	height: 12px;
}


/* FAQs */
#faqs h4 {
	font-size: 1.45em;
	margin-bottom: 10px;
}
.faq {
	font-size: 0.95em;
}

#common_issues {
	margin-top: 20px;
	margin-bottom: 0px;
}
#common_issues h4 {
	font-weight: 300;
	margin-bottom: 2px;
}
#common_issues div {
	margin-bottom: 20px;
}


/* Portfolio */
#portfolio_items {
	position: relative;
}
.portfolio_item .margin-right {
	margin-right: 80px;
}

.portfolio_item {
	position: relative;
	width: 100%;
	height: auto;
	margin-bottom: 80px;
}
.portfolio_item-info {
	position: relative;
	float: left;
	width: 40%;
}
.portfolio_item-img {
	position: relative;
	float: left;
	width: 30%;
	height: 200px;
	overflow: hidden;
}
.portfolio_item-img .img {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.portfolio_item-details {
	position: absolute;
	clear: both;
	width: 100%;
	bottom: -45px;
	left: 0px;
	font-size: 0.95em;
}
.portfolio_item-details img.icon24x {
	vertical-align: text-bottom;
	margin-right: 6px;
}

#map-canvas {
	width: 100%;
	height: 500px;
}

#portfolio_list h4 {
	margin-bottom: 2px;
}
#portfolio_list .vertical0 {
	height: 12px;
}
#portfolio_list ul {
	margin: 0px;
}


/* CIA */
#page.page-cia {
	overflow-x: hidden;
}
#cia_pou {
	position: relative;
	width: 100%;
	overflow: visible;
}
#cia_pou .container {
	position: relative;
	overflow: visible;
}
#cia_pou .container img {
	position: absolute;
	bottom: 0px;
	right: -20px;
	height: 440px;
}
@media screen and (max-width: 992px) {
	#cia_pou .container img {
		right: -90px;
	}
}


/* Contact */
.contact-brochure img {
	margin-left: 12px;
	margin-right: 4px;
}
.contact-brochure p {
	margin-bottom: 0.3em;
}


/* Fixes */
input[type=submit].button {
	-webkit-appearance: none;
}

/* /container/application/httpdocs/assets/css/hero-image.css */
/* Hero Image */
.hero {
	position: relative;
	width: 100%;
}
.hero-image {
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	overflow: hidden;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* Background */
.hero-bg_shell {
	position: absolute;
	top: 0px;
	left: 50%;
	width: 50%;
	height: 100%;
}
.hero-bg_container {
	position: relative;
	width: 100%;
	height: 100%;
}
.hero-bg_diagonal {
	float: left;
	width: 160px;
	height: 100%;
	background: url(images/bg/header_blue_angle.png) bottom right no-repeat;
}
.hero-bg_bgshell {
	padding-left: 160px;
	height: 100%;
}
.hero-bg_bg {
	width: 100%;
	height: 100%;
	/* background: url(images/bg/header_blue_bg.png) repeat; *//* iOS rendering issue */
	background: url(images/bg/header_blue_strip.png) repeat;
}

/* Text */
.hero-text_shell {
	position: relative;
	height: 100%;
}
.hero-text_float {
	float: right;
	width: 50%;
	height: 100%;
}
.hero-text_padding {
	padding-left: 220px;
}
.hero-text_text {
	width: 120%;
	margin-left: -20%;
	margin-top: 25%;
	text-align: right;
}

