/*

	
*/

@import url('https://fonts.googleapis.com/css?family=Oswald:400,600,700|Roboto:400,500,900');
@import url('https://cdnjs.cloudflare.com/ajax/libs/foundicons/3.0.0/foundation-icons.css');
	

.uppercase {text-transform: uppercase !important;}
.bg_grey {background: rgba(0, 0, 0, 0.1);}
.nopoint {cursor: default;}
iframe {width: 100%;}
.font {font-family: Oswald, Arial, sans-serif;}
.bg_cover {background-size: cover !important; height: 100%; background-position: 50% 50%; background-repeat: no-repeat;}
.required {font-style: italic !important; color: #cc0000 !important;}

.padding0 {padding: inherit;}
.padding1 {padding:1rem !important;}
.padding2 {padding:2rem !important;}
.padding3 {padding:3rem !important;}
.padding4 {padding:4rem !important;}
.margin0 {margin:auto;}
.margin1 {margin:1rem 0 !important;}
.margin1top {margin-top: 1rem !important;}
.margin1bottom {margin-bottom: 1rem !important;}
.margin2 {margin:2rem 0 !important;}
.margin3 {margin:3rem 0 !important;}
.margin4 {margin:4rem 0 !important;}

/* VALIDATION */
.error[style*=inline] + input,
.error[style*=inline] ~ input[type="email"],
.error[style*=inline] + input[type="password"],
.error[style*=inline] + select,
.error[style*=inline] + span,
.error[style*=inline] + .RadPicker .RadInput > input,
.error[style*=inline] + textarea {
	background-color: #FBE3E4;
	border: 1px solid #ff0000;
	color: #000;
}
span.error, small.error {display: block; padding: 0.375rem 0.5625rem 0.5625rem; margin-top: -1px; margin-bottom: 1rem; font-size: 0.75rem; font-weight: normal; font-style: italic; background: #f04124; color: #fff;}
span.error[style*="inline"] {display:block !important;}
span.error {margin: 0; text-align: left;}



header{position: fixed; top: 0; z-index: 5; width: 100%}


.admin {position: relative; background: rgba(0, 0, 0, 0.9);}
.admin i {font-size: 1.5rem;}
.admin span {display: inline-block; margin-left: 0.5rem; font-size: 1rem;}
.admin .menu.submenu {text-align: left;}
.admin a, a.edit {color: #f66c05}

#navtop {
	position: fixed;
	z-index: 9999;
	display: block;
	bottom: 1rem;
	right: 1rem;
	border: solid 1px #000;
	background: rgba(255, 255, 255, 0.7);
	padding: 0.5rem;
	text-align: center;
	font-size: 0.6rem;
	text-transform: uppercase;
	font-weight: bold;
}

	#navtop i {
		display: block;
		width: 0;
		height: 0;
		border-left: 1rem solid transparent;
		border-right: 1rem solid transparent;
		border-bottom: 1rem solid #000;
		margin: 0 auto 0.25rem;
	}

	#navtop:hover {
		background: rgba(255, 255, 255, 1.0);
	}

.top-nav {
	background-color: #000;
	text-align: center;
	padding: 0.5rem;
}

	.top-nav h3 {
		color: #d02027;
		line-height: 120%;
		text-transform: uppercase;
		font-size: 1.2rem;
	}

		.top-nav h3 i {
			color: #555;
			margin: 0 0.3rem;
		}

		.top-nav h3 a {
			color: #ccc;
			font-style: italic;
			font-weight: 500;
		}



.top-bar {
	background: none;
	background-color: rgba(0, 0, 0, 0.0);
	padding: 1.5rem 3rem;
	transition: all 0.5s ease;
}

	.top-bar img.logo {
		-webkit-transform: scale(0.99);
		height: 70px;
	}


	.top-bar.darker {
		padding: 0.75rem 2rem;
		background-color: rgba(0, 0, 0, 0.7);
	}


		.top-bar.darker img.logo {
			-webkit-transform: scale(0.99);
			height: 50px;
		}


		.top-bar.darker h2 {
			font-size: 2.0rem;
			color: #fff;
		}

.top-bar ul {
    background: none;
}

/*
.top-bar .top-bar-left {
    -webkit-box-flex: 0;
    flex: 0 1 auto;
}

.top-bar .top-bar-right {
    -webkit-box-flex: 1;
    flex: 1 1 auto;
}
*/


.top-bar li a {
    font-family: Oswald, Arial, sans-serif;
    font-weight: 500;
    color: #fff;
    text-shadow: 0 0 5px #333;
    text-transform: uppercase;
    font-size: 1.3rem;
		letter-spacing: 1px;
    transform: scaleY(1.2);
    border: solid 1px transparent;
    padding: 0.5rem 1.5rem;
}


	.top-bar li a:hover {
		color: #ddd;
		text-shadow: 0 0 3px #000;
		border: solid 1px #fff;
	}


.hero {
	position: relative;
	max-height: 100vh;
	min-height: 60vh;
	overflow: hidden;
}

	.hero img {
		max-width: 100%;
		width: 100%;
		min-height: 60vh;
	}

		.hero::before {
			content: "";
			display: block;
			width: 100%;
			height: 100%;
			position: absolute;
			top: 0;
			left: 0;
			background-image: radial-gradient(ellipse at center, rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.75) 100%), url(/images/bg_square.png);
		}

    .hero .cta {
        position: absolute;
        bottom: 10vh;
        width: 100%;
    }

	.hero h1 {
		color: #fff;
		font-size: 50px;
		text-shadow: 2px 1px 3px #000;
		font-weight: 900;
		text-align: center;
	}

	.hero h3 {
		color: #fff;
		font-size: 40px;
		font-weight: 500;
	}



.secondary {
	position: relative;
}

			.secondary img {
				max-width: 100%;
				width: 100%;
				min-height: 40vh;
				max-height: 100vh;
			}

	.secondary .heading {
		position: absolute;
		bottom: 80px;
		width: 100%;
		text-align: center;
	}

	.secondary h1, .secondary h2 {
		font-size: 90px;
		line-height: 100%;
		color: #fff;
		letter-spacing: -3px;
		font-weight: 500;
		font-style: italic;
		text-transform: uppercase;
		margin: 0;
		text-shadow: 2px 1px 3px #000;
	}

	.secondary h2 {
		font-size: 36px;
		letter-spacing: -1px
	}

			.secondary::before {
				content: "";
				display: block;
				width: 100%;
				height: 100%;
				position: absolute;
				top: 0;
				left: 0;
				background-color: rgba(0, 0, 0, 0.5);
			}


.content {
	position: relative;
}

.content p, .content li {
	font-size: 1.5rem;
}


.btn {
	display: inline-block;
	background-color: transparent;
	border: solid 1px #fff;
	font-weight: 300;
	font-size: 1.3rem;
	line-height: 100%;
	padding: 0.75rem 1.5rem;
	outline: none;
	text-decoration: none;
	font-family: Oswald, sans-serif;
	text-transform: uppercase;
	color: #fff;
	letter-spacing: 0.5px;
	margin-top: 1rem;
}

	.btn:hover {
		color: #fff;
		background-color: #0855a5;
	}

	.btn.alt {
		border-color: #0855a5;
		color: #0855a5;
	}

	.btn.alt:hover {
		color: #fff;
	}




/*.grad {
    position: relative;
}

    .grad::before {
        content: "";
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0.85) 80%);
    }*/



.pscroll {
    background-attachment: fixed !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
}


h1.heading {
	text-align: center;
	margin: 1rem auto 0;
	padding: 1rem;
	border-bottom: solid 1px #ccc;
	font-size: 80px;
	display: block;
	font-weight: 500;
}

.bucket h3 {
	color: #666;
	margin: 0.5rem auto;
}


.project {
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
	height: 100%;
	min-height: 45vh;
}

	.project::before {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
		background: -moz-radial-gradient(center, ellipse cover, rgba(0,0,0,0.15) 0%, rgba(0,0,0,0.5) 100%);
		background: -webkit-radial-gradient(center, ellipse cover, rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.5) 100%);
		background: radial-gradient(ellipse at center, rgba(0,0,0,0.15) 0%,rgba(0,0,0,0.5) 100%);
		filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1a000000', endColorstr='#b3000000',GradientType=1 );
	}

	.project:hover article, .project:hover div.info {
		display: none;
	}

		.project:hover section {
			display: block;
		}

	.project article {
		display: block;
		padding: 1rem 2rem;
		position: absolute;
		bottom: 0;
		width: 100%;
	}

	.project div.info {
		display: block;
		padding: 1rem 2rem;
		position: absolute;
		bottom: 0;
		width: 100%;
		color: #fff;
		z-index: 200;
	}

		.project div.info h3 {
			color: #fff;
		}

		.project div.info h4 {
			color: #fff;
		}

	.project article::before {
		content: "";
		display: block;
		background-color: #0855a5;
		mix-blend-mode: hard-light;
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}

	.project section {
		display: none;
		background-color: #0855a5;
		mix-blend-mode: hard-light;
		padding: 2rem 2rem 0;
		color: #fff;
		width: 100%;
		height: 100%;
		min-height: 45vh;
	}

		.project section p {
			padding: 1rem 0;
			font-size: 1.3rem;
		}


	.project .btn:hover {
		color: #0855a5;
		background-color: #fff;
		/*mix-blend-mode: hard-light;*/
	}



.box {
	font-size: 1.25rem;
	color: #000;
}

.box h1 {
	font-size: 80px;
	color: #000;
	font-weight: 700;
}



.start {
	background: #0058A2 url(/images/bg_start.jpg) no-repeat 100% 0%;
	background-size: cover;
	padding: 2rem 0;
	text-align: center;
}

.start .cell {
	width: 60%;
}

	.start h2 {
		font-size: 32px;
		color: #fff;
		font-weight: 900;
		text-transform: uppercase;
		margin-right: 1rem;
	}

	.start .btn {
		margin: 0;
	}

		.start .btn:hover {
			color: #0058A2;
			background-color: #fff;
		}

footer {
	padding-top: 5vh;
	background: #000 url(/images/bg_footer.jpg) no-repeat bottom center;
    background-size: cover;
		color: #fff;
}

    footer .cta {
        position: relative;
        text-align: center;
        padding: 50px;
    }

    footer h1 {
        font-size: 80px;
        line-height: 100%;
        color: #fff;
        font-weight: 500;
        text-transform: uppercase;
    }


		.social {
			text-align: right;
		}

			.social a {
				font-size: 2rem;
				line-height: 2rem;
				color: #0855a5;
				margin: 0 0.5rem;
			}

			.social a:hover {
				color: #ddd;
			}






	
	footer .copyright {
		padding-bottom: 1rem;
	}

	footer .copyright div:last-child {
		text-align: right;
	}

	footer .copyright img {
		max-height: 40px;
	}

	.credit {
		font-size: 0.75rem;
		color: #666;
		padding: 0.25rem 0;
		display: block;
	}

		.credit a {
			font-size: 0.7rem;
			color: #666;
		}

	#ContentPlaceHolder_Row1_rptRows_ctl01_3_pnlContent_3 h1 {
		background-color: #999;
		display: inline;
	}



/* small */
@media only screen and (max-width: 46.875em) {

	.padding30 {padding: 0 !important;}

	.content p, .content li {font-size: 1.0rem;}

	.top-nav {
		padding: 0.1rem;
	}

	.top-nav h3 {
		font-size: 0.75rem;
	}

	.top-nav h3 a {
		font-size: 1rem;
		display: block;
	}

	.top-bar, .top-bar.darker {
		padding: 0;
		background-color: rgba(0, 0, 0, 0.8);
	}

        .top-bar img.logo {
            display: none;
        }

	.top-bar.darker img.logo {
		-webkit-transform: scale(1);
	}



        .top-bar{
            padding: 0;
        }

        .title-bar {background: none;}

    .title-bar img.logo, .top-bar.darker .title-bar img.logo {
        height: 40px;
        display: block;
    }

	.hero {
		padding-top: 2rem;
	}

    .hero .cta {
        bottom: 10px;
    }

    .hero h1 {
        font-size: 40px;
    }

    .hero h2 {
        font-size: 20px;
    }

    .hero .cta .btn {
        margin-top: 10px;
        font-size: 1rem;
    }

	.secondary {
		padding-top: 5.5rem;
	}

	.secondary img {
		min-height: 100px;
	}

	.secondary .heading {
		bottom: 5px;
	}

	.secondary h1, .secondary h2 {
		letter-spacing: normal;
	}

		.secondary h1 {
		font-size: 32px;
	}

	.secondary h2 {
		font-size: 14px;
	}


    .talk {
        padding: 20px;
        max-width: 100%;
    }

		.box h1 {
			font-size: 50px;
		}

		.start .cell {
			width: 80%;
		}

		.start h2 {
			font-size: 24px;
			margin-right: 0;
			margin-bottom: 1rem;
		}

	.hiring {
		padding: 1rem;
		height: auto;
	}

		.hiring h1 {
			font-size: 30px;
			margin: 0 0 0.5rem;
		}

		.hiring .btn {
			font-size: 1.5rem;
			margin-top: 0;
		}

    footer .cta {
        padding: 2rem 1rem;
    }

    footer .cta h1 {
        font-size: 2.5rem;
        margin: 0;
    }

        footer .cta h2 {
            font-size: 1.4rem;
            margin: 0;
        }

        .saying{
            padding: 1rem 0;
						margin-top: 1rem;
        }
        .saying h1 {
            font-size: 1.5rem;
        }

	footer hr {
		max-width: 100%;
		margin: 1rem auto;
	}

	footer .copyright .cell {
		text-align: center;
		font-size: 0.8rem;
	}

	footer .copyright div:last-child {
		text-align: center;
	}

	footer .copyright img {
		max-height: 40px;
	}


    .pscroll {
        background-attachment: scroll !important;
    }


.padding0 {padding: inherit;}
.padding1 {padding:0.5rem !important;}
.padding2 {padding:1rem !important;}
.padding3 {padding:1.5rem !important;}
.padding4 {padding:2rem !important;}
.margin0 {margin:auto;}
.margin1 {margin:0.5rem 0 !important;}
.margin1top {margin-top: 0.5rem !important;}
.margin1bottom {margin-bottom: 0.5rem !important;}
.margin2 {margin:1rem 0 !important;}
.margin3 {margin:1.5rem 0 !important;}
.margin4 {margin:2rem 0 !important;}

}

/* small landscape */
@media only screen and (min-width: 26.063em) and (max-width: 46.875em) {
	.top-nav h3 a {
		display: inline;
	}
	.hero {
		padding-top: 1rem;
	}
	.secondary {
		padding-top: 1rem;
	}



}


	/* medium */
	@media only screen and (min-width: 46.9em) and (max-width: 63.999em) {


		.top-nav h3 {
			font-size: 1.5rem;
		}

		.top-bar {
			padding: 0.5rem 0.5rem;
		}

			.top-bar img.logo {
				height: 60px;
			}


			.top-bar.darker {
				padding: 0.5rem 0.5rem;
			}


				.top-bar.darker img.logo {
					height: 40px;
				}

			.top-bar li a {
				font-size: 0.9rem;
				padding: 0.7rem;
				border-bottom: solid 4px transparent;
			}

				.top-bar li a:hover {
					border-bottom-width: 4px;
				}


		.hero .cta {
			bottom: 30px;
		}

		.hero h1 {
			font-size: 60px;
		}

		.hero h2 {
			font-size: 40px;
		}

		.secondary .heading {
			bottom: 10px;
		}

		.secondary h1 {
			font-size: 60px;
		}
		.secondary h2 {
			font-size: 24px;
		}


		.talk {
			max-width: 80%;
		}

		.hiring h1 {
			font-size: 40px;
		}

		.hiring {
			height: 15vh;
		}

		.hiring .btn {
			font-size: 2.0rem;
			margin-top: 0;
		}

		.box h1 {
			font-size: 50px;
		}

		.start .cell {
			width: 80%;
		}

		footer {
			background-position: top center;
			min-height: 50vh
		}

			footer h1 {
				font-size: 60px;
			}

			footer h2 {
				font-size: 28px;
			}

		.saying h1 {
			font-size: 1.75rem;
		}

		footer .copyright img {
			max-height: 50px;
		}


.padding0 {padding: inherit;}
.padding1 {padding:0.75rem !important;}
.padding2 {padding:1.25rem !important;}
.padding3 {padding:1.75rem !important;}
.padding4 {padding:2rem !important;}
.margin0 {margin:auto;}
.margin1 {margin:0.75rem 0 !important;}
.margin1top {margin-top: 0.75rem !important;}
.margin1bottom {margin-bottom: 0.75rem !important;}
.margin2 {margin:1.25rem 0 !important;}
.margin3 {margin:1.75rem 0 !important;}
.margin4 {margin:2rem 0 !important;}


	}
	/* large */
		@media screen and (min-width: 64em) and (max-width: 74.999em) {

			.top-bar {
				padding: 1rem 1.5rem;
			}

				.top-bar img.logo {
					height: 80px;
				}

				.top-bar.darker {
					padding: 0.5rem 1rem;
				}


					.top-bar.darker img.logo {
						height: 60px;
					}


				.top-bar li a {
					font-size: 1.15rem;
					border-bottom: solid 4px transparent;
					padding: 0.7rem 0.9rem;
				}

					.top-bar li a:hover {
						border-bottom-width: 4px;
					}


			.hero h1 {
				font-size: 70px;
			}

			.hero h2 {
				font-size: 48px;
			}

			.secondary .heading {
				bottom: 30px;
			}

			.secondary .heading h1 {
				font-size: 70px;
			}

			.hiring h1 {
				font-size: 60px;
			}

			.hiring .btn {
				font-size: 2.2rem;
				margin-top: 0.75rem;
			}

			.saying h1 {
				font-size: 2.4rem;
			}

			.box h1 {
				font-size: 60px;
			}

			.start .cell {
				width: 75%;
			}

			footer .copyright img {
				max-height: 60px;
			}
		}

/* xlarge */
@media screen and (min-width: 75em) and (max-width: 89.999em) {

	.top-bar li a {
		font-size: 1.3rem;
		padding: 0.7rem;
	}

	.secondary .heading {
		bottom: 30px;
	}

}


	/* xxlarge */
	@media screen and (min-width: 90em) and (max-width: 112em) {

		.top-bar li a {
			font-size: 1.5rem;
			padding: 0.7rem 1rem;
		}

	}
