/* ==================================================================================================== General HTML */
* {  
    -o-transition: all .4s ease-out; 
    -moz-transition: all .4s ease-out; 
    -webkit-transition: all .4s ease-out;
    transition: all .4s ease-out;
}
.no_transition {  
    -o-transition: none; 
    -moz-transition: none;
    -webkit-transition: none;
    transition: none;
}
html, body {
	width: 100%;
	height: 100%;
}
body,td,th {
	font-family: 'Raleway', sans-serif;
	color: #3f3f3f;
	font-size: 16px;
}
body {
	background: #FFFFFF;
	margin-left: 0px;
	margin-top: 0px;
	margin-right: 0px;
	margin-bottom: 0px;
}
a:link, a:hover, a:visited, a:active {
	color: inherit;
	text-decoration: none;
}
h1, h2, h3, h4, h5, h6 {
	margin: 0;
	padding: 0;
	font-weight: bold;
	letter-spacing: -0.05em;
}
h1 {
	font-size: 3em;
}
h2 {
	font-size: 2.5em;
}
h3 {
	font-size: 1.8em;
}
p {
	margin: 0;
	padding: 0;
	margin-top: 1em;
}
img {
	border: 0;
}
input, textarea, select {
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 1em;
	margin-top: 0.7em;
	border: solid 0.1em #ccc;
	-moz-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em; /* future proofing */
	-khtml-border-radius: 0.3em; /* for old Konqueror browsers */
	font-size: 0.8em;
	font-family: 'Raleway', sans-serif;
}
textarea {
	height: 10em;
}

/* ==================================================================================================== General Content */
.clear {
	clear: both;
}
.vertical_align {
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.master_wrap {
	position: relative;
	z-index: 1;
	padding-top: 3em;
}
.column {
	vertical-align: top;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	width: 80%;
	max-width: 1200px;
	margin: 0 auto;
}
.column.full {
	width: 60%;
	padding: 1em;
	/* background: red; /*show me */
}
.column.third {
	display: inline-block;
	width: 33%;
	padding-right: 1em;
}
.column.two_third {
	display: inline-block;
	width: 66%;
	padding-left: 1em;
}
.column.half {
	display: inline-block;
	width: 50%;
}
.column.half:nth-child(odd) {
	padding: 1em 1em 1em 0;
}
.column.half:nth-child(even) {
	padding: 1em 0 1em 1em;
}
.subsection {
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 5em 0;
}
.subsection.landing{
	background-color: rgba(0, 0, 0, 0.3);
	color: #FFF;
}
.subsection.dark{
	background-color: rgba(0, 0, 0, 0.8);
	color: #FFF;
}
.subsection.light{
	background-color: rgba(255, 255, 255, 0.9);
}
.subsection.white{
	background-color: #FFFFFF;
}
.subsection.no_padding{
	padding: 0;
}
.more {
	width: 100%;
	max-width: 210px;
	background: none;
	padding: 0.7em 0;
	margin-top: 2em;
	border: solid 0.2em #4db848;
	font-weight: bold;
	font-size: 0.8em;
	text-align: center;
	color: #4db848;
}
.more:hover {
	background: #4db848;
	color: #FFF;
}
.social_container {
	display: inline-block;
	width: 1.8em;
	height: 1.8em;
	text-align: center;
	color: #FFF;
	margin-top: 0.2em;
}
.social_container.facebook {
	background: #3b5998;
}
.social_container.facebook:hover {
	background: none;
	color: #3b5998;
}
.social_container.linkedin {
	background: #007bb6;
}
.social_container.linkedin:hover {
	background: none;
	color: #007bb6;
}
.social_container.pinterest {
	background: #cb2027;
}
.social_container.pinterest:hover {
	background: none;
	color: #cb2027;
}
.social_container.twitter {
	background: #00aced;
}
.social_container.twitter:hover {
	background: none;
	color: #00aced;
}
.social_container.google_plus {
	background: #dd4b39;
}
.social_container.google_plus:hover {
	background: none;
	color: #dd4b39;
}
.social_container i {
	margin: 0 auto;
	position: relative;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}
.video-container {
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.video-container iframe, .video-container object, .video-container embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ==================================================================================================== Overlay */
.overlay_wrap {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.9);
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 2em;
	display: none;
}
.overlay_container {
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	border: solid 0.5em #50b748;
	padding: 2em;
	color: #FFFFFF;
	overflow-y: auto;
}
.overlay_container .close {
	position: fixed;
	top: 2.5em;
	right: 2.5em;
	background: #50b748;
	padding: 0.5em 0.7em;
}
.overlay_container .close:hover {
	background: #ed1c24;
}

/* ==================================================================================================== Home */
.home .master_wrap {
	padding-top: 0; 
}
.full.slogan {
	width: 90%;
	max-width: 1440px;
	min-width: 1000px;
	height: 100%;
	margin: 0 auto;
	padding-left: 1em;
	/* background: red; /* show me */
}
.slogan h1 {
	width: 40%;
	font-size: 4.5em;
}
.scroll {
	position: fixed;
	bottom: 0.5em;
	left: 0;
	z-index: 2;
	width: 100%;
	text-align: center;
	color: #FFF;
	font-size: 4em;
}
.scroll.down {
	bottom: -1.5em;
}
.home .process_line_wrap {
	width: 100%;
	text-align: center;
	margin-top: 3em;
	letter-spacing: -5px;
}
.home .process_line {
	width:80px;
	height: 20px;
	display: inline-block;
	background: url(img_asset/home_process-normal.png) no-repeat;
	background-size: 100%;
}
.home .process_line:first-child {
	background: url(img_asset/home_process-first.png) no-repeat;
	background-size: 100%;
}
.home .process_line:last-child {
	background: url(img_asset/home_process-last.png) no-repeat;
	background-size: 100%;
}
.home .more.process {
	margin: 4em auto 0 auto;
}
.home .service .half {
	position: relative;
	top: -1em;
}
.home .service h3 {
	color: #ed1c24;
}
.home .more.showcase {
	margin: 0 auto;
}
.home .project_thumbnail_wrap {
	margin: 1.5em 0;
}
.home .project_thumbnail_container {
	width: 33%;
}

/* ==================================================================================================== Service */
.service .subsection.image {
	padding: 0;
}
.service .subsection.content {
	background: #3f3f3f;
	color: #FFF;
}
.service .subsection.content:hover {
	background: rgba(207, 44, 0, 0.85);
}
.accent {
	width: 50%;
	height: 1em;
	margin-bottom: 0.5em;
	background: #ec1c23; 
}
.service .subsection.content:hover .accent {
	background: #FFF;
}
.service .subsection.divider {
	display: none;
}
.service .subsection.people {
	padding: 0;
}
.service .subsection.people .column.third {
	background-color: rgba(255, 255, 255, 0.9);
	width: 33.33%;
	padding: 4em 2em;
}
.service .subsection.people .column.two_third {
	width: 66.66%;
	padding: 0 2em;
	overflow: hidden;
}
.service .people_info, .service .people_indicator {
	display: inline-block;
	margin-top: 1em;
	vertical-align: middle;
}
.service .people_info {
	width: 90%; /* fallback if needed */
	width: calc(100% - 1.5em);
}
.service .people_info img, .service .people_info p {
	display: inline-block;
	vertical-align: middle;
	margin: 0 1em 0 0;
}
.service .people_avatar {
	display: inline-block;
	vertical-align: middle;
	width: 100px;
	height: 100px;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	box-sizing:border-box;
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	-moz-border-radius: 10em;
	-webkit-border-radius: 10em;
	border-radius: 10em; /* future proofing */
	-khtml-border-radius: 10em; /* for old Konqueror browsers */
}
.service .people_info img {
	width: 100%;
	height: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
}
.service .people_wrap:hover .people_avatar, .selected .people_avatar {
	border: 0.3em solid #4db848;
}
.service .people_indicator {
	width: 1em;
	font-size: 1.5em;
}
.service .people_wrap:hover .people_indicator, .selected .people_indicator {
	color: #ec1c23;
}
.service .people_content {
	display: none;
	width: 100%;
	max-height: 80%;
	overflow-y: auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 1.5em;
	margin: 0;
	background: #4db848;
	font-size: 0.9em;
	color: #FFF;
}
.service .people_content.selected {
	display: block;
}

/* ==================================================================================================== Process */
.process .subsection.step_wrap {
	background: rgba(0, 0, 0, 0.8) url(img_asset/process-dot.png) repeat-y;
	background-position: center;
	color: #FFF;
}
.process .step_wrap .half:nth-child(odd) {
	padding: 0 2em 0 0;
}
.process .step_wrap .half:nth-child(even) {
	padding: 0 0 0 2em;
	position: relative;
	top: 5em;
	margin-bottom: 3em;
	float: right;
	min-height: 10.1em;
}
.process .step_wrap .half .step {
	padding: 1em;
	border: solid 0.4em #50b748;
	margin-bottom: 2em;
}
.process .step_wrap .half .step h3 {
	font-size: 1.2em;
	color: #50b748;
	font-weight: normal;
}
.process .step_wrap .half .step h2 {
	font-size: 1.8em;
	color: #50b748
}
.process .step_wrap .half:nth-child(odd) .step:nth-child(even) {
	display: none;
}
.process .step_wrap .half:nth-child(even) .step:nth-child(odd) {
	display: none;
}

/* ==================================================================================================== Showcase */
.project_thumbnail_wrap {
	line-height: 0;
	background-color: #1d1d1d;
	/* background-color: rgba(255, 255, 255, 0.9); */
}
.project_thumbnail_container {
    display: inline-block;
    position: relative;
    /* width: 33.33%; */
    width: 33%;
/*    margin-left: .33%;
    margin-top: .33%; */
    margin: .165%;
    overflow: hidden;
}
.project_thumbnail_ratio {
    margin-top: 66.66%; /* 4:3 aspect ratio */
}
.project_thumbnail_content {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
	height: 100%;
	background: none;
	overflow: hidden;
}
.project_thumbnail_content .more {
	margin: 0 auto;
	color: #FFF0;
	border: solid 0.2em #FFF0;
	background: #0000;
	width: 80%;
	padding: 1em 0;
}
.project_thumbnail_content:hover {
/*	background: rgba(0, 0, 0, 0.5); */
/*    outline: solid thick #000;    */
    transform:scale(1.1);
}
.project_thumbnail_content:hover .more {
/*	display: none;  */
    color: #FFF;
    background: #000;
    border: solid 0.2em #FFF;
}
.showcase.index .two_third p {
	margin: 0 0 1em 0;
}
.showcase.index .type i {
	float: right;
	font-size: 1.1em;
}
.showcase.index .type.wrap {
	position: relative;
	display: inline-block;
}
.showcase.index .type.current {
	min-width: 15em;
	background: #50b748;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 0.5em;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
.showcase.index .type.current:hover {
	color: #ed1c24;
}
.showcase.index .type.select {
	display: none;
	min-width: 15em;
	background: #50b748;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 2;
}
.showcase.index .type.select ul {
	padding: 0;
	margin: 0;
	list-style: none;
}
.showcase.index .type.select ul li {
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 0.5em;
}
.showcase.index .type.select ul li:hover, .showcase.index .type.select ul li.select:hover {
	background: #FFFFFF;
	color: #ed1c24;
}
.showcase.index .type.select ul li.select {
	background: #FFFFFF;
	color: #3f3f3f;
}
.showcase.content .master_wrap {
	z-index: 2;
}
.showcase.content .main_visual {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 100%;
}
.showcase.content .slogan h2 {
	width: 40%;
}
.showcase.content .intro .two_third p {
	margin: 0 0 1em 0;
}
.showcase.content .subsection.content {
	padding: 0;
	position: relative;
	top: 0;
	left: 0;
}
.showcase.content .subsection.content img {
	width: 75%;
}
.showcase.content .subsection.content.left img {
	float: right;
}
.showcase.content .subsection.content.right img {
	float: left;
}
.showcase.content .subsection.content .description_wrap {
	width: 25%;
	overflow: auto;
}
.showcase.content .subsection.content.left .description_wrap {
	float: left;
}
.showcase.content .subsection.content.right .description_wrap {
	float: right;
}
.showcase.content .subsection.content.s_dark .description_wrap {
	background: #3f3f3f;
	color: #FFFFFF;
}
.showcase.content .subsection.content.s_light .description_wrap {
	background: #FFFFFF;
}
.showcase.content .subsection.content.s_green .description_wrap {
	background: #00c14a;
	color: #FFFFFF;
}
.showcase.content .subsection.content.s_red .description_wrap {
	background: #ed1c24;
	color: #FFFFFF;
}
.showcase.content .subsection.content .description_wrap .description {
	padding: 2em;
}
.showcase.content .subsection.content.overlay {
	text-align: center;
}
.showcase.content .subsection.content.overlay .description {
	display: inline-block;
	width: 60%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 3em;
	margin: 20em 0;
	text-align: left
}
.showcase.content .subsection.content.overlay.s_light .description {
	background: rgba(255,255,255,0.9);
}
.showcase.content .subsection.content.overlay.s_dark .description {
	background: rgba(63,63,63,0.8);
	color: #FFFFFF;
}
.showcase.content .subsection.content.overlay.s_green .description {
	background: rgba(80,183,72,0.8);
	color: #FFFFFF;
}
.showcase.content .subsection.content.overlay.s_red .description {
	background: rgba(237,28,36,0.8);
	color: #FFFFFF;
}
.showcase.content .subsection.content.slideshow {
	background: #FFFFFF;
	margin-bottom: -0.5em;
	overflow: hidden;
}
.showcase.content .subsection.content.slideshow .slide {
	margin-bottom: -0.5em;
	overflow: hidden;
	position: static;
}
.showcase.content .subsection.content.slideshow .slide .container {
    display: inline-block;
    position: relative;
    width: 100%;
}
.showcase.content .subsection.content.slideshow .slide .container:after {
    content: '';
    display: block;
    margin-top: 50%; /* aspect ratio */
}
.showcase.content .subsection.content.slideshow .slide .container .element {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.showcase.content .subsection.content.slideshow .slide .container .element .caption{
	position: absolute;
	bottom: 0;
	font-size: 0.9em;
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 0.5em;
	background: rgba(255,255,255,0.8)
}

/* ==================================================================================================== Blog */
.blog .column {
	padding: 0 inherit;
}
.blog .column.search .more {
	margin-top: 1em;
}
.blog .dividers {
	width: 60%;
	height: 1px;
	background: #cfcfcf;
	margin: 3.5em auto;
}
.blog.index .subsection.white {
	font-size: 0.9em;
}
.blog .subsection.white a:hover {
	color: #ED1C24;
}
.blog.index .subsection.white .column.third {
	padding: 0 1em 0 0;
}
.blog.index .subsection.white .column.two_third {
	padding: 0 0 0 1em;
}
.blog.index .column.author {
	margin-top: 1em;
	vertical-align: middle;
	font-size: 0.9em;
}
.blog.index .subsection.white .column.third.author {
	width: 25%;
}
.blog.index .subsection.white .column.author:last-child {
	width: 75%;
	padding: 0;
}
.blog .column.author img {
	width: 100%;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	border: solid 0em #ED1C24;
	-moz-border-radius: 100em;
	-webkit-border-radius: 100m;
	border-radius: 100em; /* future proofing */
	-khtml-border-radius: 100em; /* for old Konqueror browsers */
}
.blog .column.author img:hover {
	border: solid 0.2em #ED1C24;
}
.blog.index .column.two_third.excerpt {
	padding-top: 0.3em;		
}
.blog.index .visual {
	width: 100%;
	margin-top: 1em;
}
.blog.index p {
	margin: 0 0 1em 0;
}
.blog a.continue {
	color: #ED1C24;
}
.blog a.continue:hover {
	color: #50B748 !important;
}
.blog.index .pagination a {
	font-weight: bold;
	color: #ED1C24;
}
.blog.index .pagination:hover a {
	color: #50B748 !important;
}
.blog.index .pagination:first-child {
	float: left;
	text-align: left;
}
.blog.index .pagination:last-child {
	float: right;
	text-align: right;
}
.blog h3 {
	font-style: italic;
	font-weight: normal;
	margin-bottom: 0.3em;
	font-size: 1.5em;
}
.blog.content h1 {
	font-size: 3em;
}
.blog.content h1, .blog.content h3 {
	margin: 0;
	display: block;
	text-align: center;
}
.blog.content img.author {
	display: block;
	width: 4em;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	border: solid 0em #ED1C24;
	-moz-border-radius: 100em;
	-webkit-border-radius: 100m;
	border-radius: 100em; /* future proofing */
	-khtml-border-radius: 100em; /* for old Konqueror browsers */
	margin: 1.5em auto 0 auto;
}
.blog.content img.author:hover {
	border: solid 0.3em #ED1C24;
}
.blog.content .visual {
	width: 100%;
	margin-top: 1.5em;
}
.blog.content .info.large {
	text-align: center;
	margin: 0.5em 0;
	font-weight: bold;
}
.blog.content .info.small {
	text-align: left;
	margin: 1em 0;
	font-weight: bold;
}
.blog.content .inline {
	width: 80%;
	font-size: 0.8em;
	margin: 1.2em auto 0 auto;
}
.blog.content .inline img {
	width: 100%;
	margin: 0;
}
.blog.content .inline p {
	margin-top: 0.5em;
}
.blog.content .content .column.half {
	margin: 1.5em 0;
	vertical-align: middle;
}
.blog.content .content .column.half:nth-child(even) {
	text-align: right;
}
.blog.content .content .column.half a {
	color: #ed1c24;
}
.blog.content .content .column.half a:hover {
	color: #50b748;
}
.blog.content .column.recent {
	font-size: 0.8em;
}
.blog.content .column.recent .column:nth-child(odd) {
	padding-right: 1em;
}
.blog.content .column.recent .column:nth-child(even) {
	padding-left: 1em;
}
.blog.content a.continue {
	display: block;
	margin-top: 1em;
}
.blog.content .column.recent .column.two_third h3 {
	text-align: left;
	font-size: 1.2em;
}
.blog.content .column.recent .column.two_third h2 {
	font-size: 1.8em;
}
.blog.content .column.recent .column.two_third a.continue {
	margin: 1em 0 2em 0;
}

/* ==================================================================================================== Contact */
.contact .column.half {
	padding: 0;
	margin-top: 1em;
}
.contact .column.half h3 {
	color: #ec1c23;
	font-size: 1.5em;
	margin-top: 1em;
}
.contact .column.half h3:first-child {
	margin-top: 0;
}
.more.contact {
	width: 6em;
	margin: 0.5em 0.5em 0 0;
	-moz-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em; /* future proofing */
	-khtml-border-radius: 0.3em; /* for old Konqueror browsers */
	float: left;
}
.contact .feedback {
	font-size: 0.8em;
}
.contact .feedback a {
	color: #ec1c23;
}
.contact .feedback a:hover {
	text-decoration: underline;
}

/* ==================================================================================================== Footer */
.footer_contact .column.full{
	width: 50%;
	margin: 0 auto;
	padding: 0;
}
.footer_contact .column.half {
	vertical-align: middle;
}
.footer_contact .column.half:nth-child(odd) {
	padding-right: 0.25em;
}
.footer_contact .column.half:nth-child(even) {
	padding-left: 0.25em;
}
.footer_contact {
	color: #FFF;
}
.footer_contact .more {
	margin: 0.5em 0;
	border: solid 0.2em #FFF;
	color: #FFF;
}
.footer_contact .more:hover {
	background: #FFF;
	color: #4db848;
}
.subsection.footer_contact {
	background-color: rgba(77, 184, 72, 0.7);
}
.subsection.footer {
	padding: 0em 0;
	background-color: rgba(0, 0, 0, 0.5);
	color: #FFF;
}
.footer .column.full {
	width: 90%;
	max-width: 1440px;
	min-width: 1000px;
	margin: 0 auto;
	padding: 0.5em;
}
.footer .column.third {
	padding: 0;
	margin: 0;
	color: #eaeaea;
	vertical-align: middle;
	zoom: 1;
	filter: alpha(opacity=50);
	opacity: 0.5;
	font-size: 0.8em;
}
.footer .column.third:nth-child(1) {
	text-align: left;
	font-size: 1.5em;
}
.footer .column.third:nth-child(2) {
	text-align: center;
}
.footer .column.third:nth-child(2):hover {
	zoom: 1;
	filter: alpha(opacity=100);
	opacity: 1;
}
.footer .column.third:nth-child(3) {
	text-align: right;
}
.footer .column.third i {
	margin-left: 0.5em;
}
.footer .fa-facebook-square:hover {
	color: #3b5998;
	zoom: 1;
	filter: alpha(opacity=100);
	opacity: 1;
}
.footer .fa-linkedin-square:hover {
	color: #007bb6;
	zoom: 1;
	filter: alpha(opacity=100);
	opacity: 1;
}
.footer .fa-pinterest-square:hover {
	color: #cb2027;
	zoom: 1;
	filter: alpha(opacity=100);
	opacity: 1;
}

/* ==================================================================================================== Header */
.header_wrap {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10;
	width: 100%;
	/* background: green; /* show me */
}
.header_wrap.landing {
	background: none;
}
.header_wrap.default {
	background: #4db848 !important;
}
.header_column {
	width: 90%;
	max-width: 1440px;
	min-width: 800px;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	margin: 0 auto;
	overflow: hidden;
	/* background: red; /* show me */
}
.landing .header_column {
	padding: 0.5em;
	color: #FFF;
	height: 7.8em;
}
.landing .nav li {
	font-size: 1.1em;
}
.landing .column {
	position: relative;
	top: 0;
	left: 0;
}
.default .header_column {
	color: #3f3f3f;
	height: 3em;
}
.default .column {
	position: relative;
	top: -3.2em;
	padding: 1em;
}
.default .column.third {
	top: -3.1em;
	left: -50px;
}
.default .nav li {
	font-size: 0.9em;
}
.header_column .column {
	vertical-align: middle;
}
.header_column .column.third {
	width: 20%;
}
.header_column .column.two_third {
	width: 80%;
	text-align: right;
}
ul.nav {
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.nav li {
	display: inline-block;
	margin-left: 2em;
	font-weight: lighter;
}
ul.nav li:hover {
	color: #ed1c24;
}
.header_indicator {
	position: fixed;
	top: 2.8em;
	left: 0;
	z-index: 9;
	width: 100%;
	/* background: red; /* show me */
}
.header_indicator .column {
	padding: 0 1em;
}
.header_indicator .column .nav li {
	font-size: 0.9em;
	text-align: center;
}
.header_indicator .column .nav li img {
	position: relative;
	left: -0.45em;
}
.overlay_container ul.nav li {
	display: block;
	margin: 1.7em 0;
	text-align: center;
}

/* ==================================================================================================== Request form */
.request_form h3 {
	color: #50b748;
}
.request_form .section {
	margin-top: 2em;
	width: 70%
}
.request_form .section input[type="text"], .request_form .section textarea, .request_form .section .select_wrap {
	background: #3e3e3e;
	padding: 0.7em;
	margin: 1em 1em 0 0;
	background: #3e3e3e;
	border: none;
	color: #d3d3d3;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.request_form .section input[type="text"] {
	width: 100%;
}
.request_form .section .field {
	width: calc(50% - 1em);
	display: inline-block;
	margin-right: 1em;
	vertical-align: top;
}
.request_form .section .select_wrap {
	width: calc(50% - 1em);
}
.request_form .section textarea {
	width: calc(100% - 1em);
}
.request_form .section .check_wrap {
	display: inline-block;
	width: auto;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	padding: 0.8em 2em 0 0;
	vertical-align: middle;
}
.request_form .section .check_wrap.acknowledgement {
	float: right;
	width: 80%;
}
.request_form .section.submit ul {
	float: left;
}
.request_form .section.service_check ul { /* for parsley */
	display: none;
}
.request_form .section .check_wrap input[type="checkbox"] {
	width: auto;
	display: none;
}
.request_form .section .check_wrap label {
	font-size: 0.8em ;
}
.request_form .section .check_wrap label i {
	color: #50b748;
	margin-right: 0.5em;
}
.request_form .section .check_wrap label i.fa-circle-o {
	display: inline-block;
}
.request_form .section .check_wrap label i.fa-circle {
	display: none;
}
.request_form .section .check_wrap input[type=checkbox]:checked + label i.fa-circle-o {
	display: none;
}
.request_form .section .check_wrap input[type=checkbox]:checked + label i.fa-circle {
	display: inline-block;
}
.request_form .section .select_wrap {
	display: inline-block;
	overflow: hidden;
	padding: 0.7em;
	-moz-border-radius: 0.3em;
	-webkit-border-radius: 0.3em;
	border-radius: 0.3em; /* future proofing */
	-khtml-border-radius: 0.3em; /* for old Konqueror browsers */
	background: url(img_asset/dropdown-arrow.png) no-repeat #3e3e3e;
	background-position: right center;
}
.request_form .section .select_wrap ul {
	display: none;
}
.request_form .section .select_wrap select {
	background: none;
	width: 110%;
	padding: 0;
	color: #ffffff;
	border: 0;
	appearance: none;
	-webkit-appearance: none;
	margin: 0;
}
.request_form .section .select_wrap select option {
	background: #3f3f3f;
}
.request_form .section input[type=submit] {
	display: inline-block;
	width: 15%;
	background: #50b748;
	color: #FFF;
	border: none;
}
.request_form .section input[type=submit]:hover {
	background: #FFF;
	color: #50b748;
}
.overlay_wrap.feedback {
	display: block;
}
.overlay_wrap.feedback p a {
	color: #50b748;
}
.overlay_wrap.feedback p a:hover {
	color: #ed1c24;
}

/* ==================================================================================================== Responsive Slides */
.rslides {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	list-style: none;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 0;
	margin: 0;
}
.rslides li {
	-webkit-backface-visibility: hidden;
	position: absolute;
	display: none;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
}
.rslides li:first-child {
	position: relative;
	display: block;
	float: left;
}

.rslides img {
	display: block;
	height: auto;
	float: left;
	width: 100%;
	border: 0;
}

/*++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Responsive */

@media all and (min-width: 800px) { /* Desktop */
	.mobile_only {
		display: none;
	}
}
@media all and (min-width: 800px) and (max-width: 1250px) { /* In between resolution to properly scale header font size */
	h1 {
		font-size: 2em;
	}
	h2 {
		font-size: 1.5em;
	}
	h3 {
		font-size: 1.3em;
	}
}
@media all and (max-width: 800px) { /* Mobile */
	h2 {
		font-size: 1.6em;
	}
	h3 {
		font-size: 1.2em;
	}
	.desktop_only {
		display: none;
	}
	.column.full, .column.third, .column.two_third, .column.half {
		width: 100%;
	}
	.column.two_third {
		padding: 1em 0 0 0;
	}
	.column.half:nth-child(odd) {
		padding: 0 1em 1em 0;
	}
	.column.half:nth-child(even) {
		padding: 0 0 1em 0;
	}
	.column.side {
		width: 80%;
		margin: 0 auto;
		text-align: center;
	}
	.more {
		width: 200px;
		background: none;
		padding: 0.5em 0;
		margin: 1.5em 0 0 0;
		font-size: 0.8em;
		text-align: center;
	}
	.social_container {
		font-size: 1.6em;
	}
	
	/* ==================================================================================================== Home */
	.full.slogan {
		width: 100%;
		min-width: 0;
		/* background: red; /* show me */
	}
	.slogan h1 {
		width: 80%;
		font-size: 2.5em;
		text-align: center;
		margin: 0 auto;
	}
	.scroll {
		bottom: 0.5em;
		font-size: 2.5em;
	}
	.home p {
		font-size: 0.8em;
	}
	.home .process_line_wrap {
		margin: 1.3em;
		text-align: center;
		position: relative;
		left: -20px;
	}
	.home .process_line {
		width:45px;
	}
	.home .more.process {
		margin: 2.5em auto 0 auto;
	}
	.home .subsection.service {
		text-align: center;
	}
	.home .service .half {
		width: 50%;
		top: 0;
	}
	.home .service .more {
		margin: 1.5em auto 0 auto;
	}
	.home .showcase {
		text-align: center;
	}
	.home .project_thumbnail_container {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	/* ==================================================================================================== Service */
	.service .subsection.content {
		background: rgba(207, 44, 0, 0.85);
		text-align: center;
	}
	.accent {
		display: none; 
	}
	.service .subsection.content .two_third {
		padding-top: 0;
	}
	.service .subsection.divider {
		display: block;
		margin: 0;
		padding: 0;
		height: 2em;
	}
	.service .subsection.people .column.third, .service .subsection.people .column.two_third {
		width: 100%;
	}
	.service .people_indicator, .service .people_info p {
		display: none;
	}
	.service .people_info img {
		width: 100%;
		margin: 0;
	}
	.service .people_info {
		width: 100%;
		padding: 0 0.5em;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
	}
	.service .people_wrap {
		display: inline-block;
		width: 33.33%
	}
	.service .people_indicator {
		width: 1em;
		font-size: 1.5em;
	}
	.service .people_wrap:hover .people_indicator, .selected .people_indicator {
		color: #ec1c23;
	}
	.service .people_content {
		display: none;
		width: 100%;
		max-height: 80%;
		overflow-y: auto;
		box-sizing: border-box;
		-moz-box-sizing: border-box;
		padding: 1.5em;
		margin: 0;
		background: #4db848;
		font-size: 0.9em;
		color: #FFF;
	}
	.service .people_content.selected {
		display: block;
	}
	
	/* ==================================================================================================== Process */
	.process .subsection.step_wrap {
		background-image: none;
	}
	.process .step_wrap .half:nth-child(odd) {
		padding: 0;
	}
	.process .step_wrap .half:nth-child(even) {
		display: none;
	}
	.process .step_wrap .half:nth-child(odd) .step:nth-child(even) {
		display: block;
	}
	
	/* ==================================================================================================== Showcase */	
	.project_thumbnail_container {
		width: 100%;
	}
	.showcase.content .slogan h2 {
		width: 80%;
		text-align: center;
		margin: 0 auto;
		font-size: 1.2em;
	}
	.showcase.content .subsection.content {
		padding: 0;
		position: relative;
		top: 0;
		left: 0;
		margin-bottom: -0.5em;
		overflow: hidden;
	}
	.showcase.content .subsection.content img {
		width: 100%;
	}
	.showcase.content .subsection.content.left img, .showcase.content .subsection.content.right img, .showcase.content .subsection.content.left .description_wrap, .showcase.content .subsection.content.right .description_wrap  {
		float: none;
	}
	.showcase.content .subsection.content .description_wrap {
		width: 100%;
	}
	.showcase.content .subsection.content .description_wrap .description {
		padding: 2em;
	}
	.showcase.content .content_indicator {
		position: absolute;
		text-align: center;
		width: 100%;
		font-size: 4em;
	}
	.showcase.content .s_light .content_indicator {
		color: #FFFFFF;
	}
	.showcase.content .s_dark .content_indicator {
		color: #3f3f3f;
	}
	.showcase.content .s_green .content_indicator {
		color: #50b748;
	}
	.showcase.content .s_red .content_indicator {
		color: #ed1c24;
	}
	.showcase.content .content_indicator i {
		position: relative;
		top: -0.5em;
	}
	.showcase.content .subsection.content.overlay .description {
		width: auto;
		padding: 2em;
		margin: 2em;
		text-align: left
	}
	.showcase.content .subsection.content.slideshow .slide .container:after {
		margin-top: 75%;
	}
	
	/* ==================================================================================================== Blog */	
	.blog.index .subsection.white {
		padding-left: 0.5em;
		padding-right: 0.5em;
	}
	.blog .dividers {
		width: auto;
		margin: 4em 0.5em
	}
	.blog.index .subsection.white .column.third {
		padding-right: 0;
	}
	.blog.index .subsection.white .column.two_third {
		padding: 0.5em 0 0 0;
	}
	.blog.index .subsection.white .column.author.third {
		width: 3em;
		margin-right: 1em;
	}
	.blog.content .column.full {
		padding: 0 1em;
	}
	.blog.content .content .column.half:nth-child(odd) {
		margin: 1.5em 0 0 0;
	}
	.blog.content .content .column.half:nth-child(even) {
		margin: 0 0 1.5em 0;
		text-align: left;
	}
	.blog.content .column.recent .third {
		margin-bottom: 2em;
	}
	.blog.content .column.recent .third h2 {
		font-size: 2.5em;
	}
	
	/* ==================================================================================================== Contact */
	.contact .column.side {
		width: 100%;
	}
	.contact .column.half {
		padding: 0;
	}
	.more.contact {
		margin: 0.5em auto;
		float: none;
	}

		
	/* ==================================================================================================== Overlay */
	.overlay_wrap {
		padding: 1em;
	}
	.overlay_container {
		padding: 1em;
	}
	.overlay_container .close {
		top: 1.5em;
		right: 1.5em;
	}

	/* ==================================================================================================== Footer */
	.footer_contact {
		text-align: center;
	}
	.footer_contact .column.half:nth-child(even) {
		padding: 0;
	}
	.footer_contact .more {
		max-width: 100%;
		min-width: 0;
	}
	.footer .column.full {
		min-width: 0;
	}
	.footer .column.third {
		display: block;
		text-align: center !important;
		padding: 0.5em 0;
	}

	/* ==================================================================================================== Header */
	.header_column {
		min-width: 0;
		width: 100%;
	}
	.header_column .column {
		top: -3.2em;
		padding: 1em;
	}
	.header_column .column.third {
		left: -3em;
	}
	.nav li {
		font-size: 1.5em !important;
	}
	.landing .header_column {
		padding-left: 0em;
		padding-right: 0em;
		height: 4.6em;
	}
	.default .header_column {
		padding-left: 0em;
		padding-right: 0em;
		height: 3em;
	}
	.default .column {
		position: relative;
		top: -3.2em;
	}
	.default .column.third {
		top: -3.1em;
		left: -50px;
	}
	
	/* ==================================================================================================== Request form */
	.request_form .section {
		width: 100%;
		margin-top: 1em;
	}
	.request_form .section input[type="text"], .request_form .section textarea, .request_form .section .select_wrap {
		width: 100%;
	}
	.request_form .section .field {
		width: 100%;
		display: inline-block;
		margin-right: 1em;
		vertical-align: top;
	}
	.request_form .section .check_wrap.acknowledgement {
		float: none;
		width: auto;
	}
	.request_form .section input[type=submit] {
		width: auto;
	}
}