@charset "utf-8";

@import url(https://fonts.googleapis.com/css?family=Lato:400,900);

/*--main--*/
* {
	box-sizing:border-box;
	-webkit-transition:all .4s ease;
	-moz-transition:all .4s ease;
	-o-transition:all .4s ease;
	transition:all .4s ease;
	-webkit-appearance:none;
	outline:none;
	border-radius:0;
	border:none;
}

input[type=submit] {
	background: transparent;
	cursor: pointer;
}

body {
	width:100%;
	height:100%;
	margin:0;
	padding:0;
	letter-spacing:1px;
}
.h1,.h2,.h3,.h4,.h5,.h6,p,ul,li,ol {
	font-family: 'Lato', sans-serif;
	font-weight:400;
	color:#333;
}
.h1,.h2,.h3,.h4 {
	font-weight:900;
	line-height:100%;
}

p,ul,li,ol { font-size:16px; }
.h1 { font-size:60px; }
.h2 { font-size:48px; }
.h3 { font-size:36px; }
.h4 { font-size:24px; }
.h5 { font-size:21px; }
.h6 { font-size:12px; }

a:link,a:visited,a:hover,a:active {
	font-family:inherit;
	text-decoration:none;
	color:inherit;
}
a:hover {
	color:#ED1C24;
}


/*--header/navigation--*/
header {
	width:100%;
	height:110px;
	margin:0;
	padding:0;
	position:absolute;
	z-index:600;
	overflow:hidden;
}
header .logo {
	height:70px;
	width:auto;
	position:absolute;
	top:15px;
}
header .contact {
	position:absolute;
	top:10px;
	right:0;
	color:#fff;
}
header nav {
	width:80%;
	position:absolute;
	top:60px;
	right:0;
	margin:0;
	padding:0;
}
header nav ul {
	list-style:none;
	padding:0;
	margin:0;
	text-align:right;
}
header nav li {
	font-family: 'Lato', sans-serif;
	letter-spacing:3px;
	font-size:12px;
	display:inline;
	padding:0 0 0 40px;
	margin:0;
	color:#fff;
}
header nav li:hover {
	color:#ED1C24;
}
header button {
	width:40px;
	height:40px;
	padding:0;
	margin:0;
	background:#ED1C24;
	position:absolute;
	right:5%;
	top:50%;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	display:none;
	z-index:1000;
}
header button:hover {
	cursor:pointer;
}
header .btn-menu {
	width:40px;
	height:40px;
	padding:5px;
	margin:0;
	background:#ED1C24;
}
#menu1 {
	display:block;
}
.current {
	color:#ED1C24;
    font-weight: 900;
}


/*--containers--*/
.content {
	width:90%;
	max-width:1200px;
	height:auto;
	padding:0;
	margin:0 auto;
	position:relative;
}

.container-home {
	width:100%;
	height:100vh;
	margin:0;
	padding:inherit;
	position:relative;
    background: #000;
    overflow: hidden;
}
.slogan {
	width:60%;
	position:absolute;
	top:40%;
	right:0;
	left:0;
	margin:0 auto;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
	color:#fff;
	text-align:center;
	padding:25px;
	font-size:36px;
    z-index: 100;
}
.welcome {
	width:100%;
	height:auto;
	padding:20px 0;
	position:absolute;
	bottom:1px;
	right:0;
	left:0;
	background:rgba(0,0,0,0.7);
}
.video {
    width: 100%;
    opacity: 0.15;
}

.container-capabilities {
	width:100%;
	height:auto;
	margin:0;
	padding:100px 0;
	background:url(../images/banners/capabilities.jpg) no-repeat left bottom;
	background-size:contain;
}
.container-grey {
	width:100%;
	height:auto;
	margin:0;
	padding:100px 0;
	background:#f4f4f4;
}
.container-white {
	width:100%;
	height:auto;
	margin:0;
	padding:100px 0;
	background:#fff;
}
.container-black {
    width: 100%;
    height: auto;
    padding: 100px 0;
    background: #111;
}

/*.overlay {
	background:transparent;
	position:relative;
	width:100%;*/
	/*height:400px;/* your iframe height */
	/*top:400px;  /* your iframe height */
	/*margin-top:-400px; /* your iframe height */
	/*margin-bottom: 400px;
}*/
.map {
	pointer-events: none;
	width:100%;
	height:400px;
	margin:0;
}

footer {
	width:100%;
	height:auto;
	margin:0;
	padding:100px 0;
	background:#111;
}
footer .logo {
	width:150px;
	display:inline-block;
}
footer .h6 {
	color:#fff;
}

/*--cells--*/
.cell-1-3,.cell-1-2,.cell-2-3,.cell-1-4,.cell-1-5 {
	float:left;
	margin:2px;
	padding:0;
	height:auto;
}
.cell-1-2 {
	width:calc(50% - 4px);
}
.cell-1-3 {
	width:calc(33.33% - 4px);
}
.cell-2-3 {
	width:calc(66.66% - 4px);
}
.cell-1-4 {
	width:calc(25% - 4px);
}
.cell-1-4 img {
	width:100%;
}
.cell-1-4:hover img {
	opacity:0.6;
}
.cell-1-4:hover p {
	color:#ED1C24;
}

.cell-1-5 {
	width:calc(20% - 4px);
}

.cell-capabilities {
	width:50%;
	height:auto;
	float:left;
	margin:0;
	padding:0;
}


/*--objects--*/
.rule {
	width:100%;
	max-width:1200px;
	height:10px;
	display:block;
	background:#eee;
	margin:25px auto;
	padding:0;
}

.btn-red {
	width:auto;
	height:auto;
	padding:10px 20px;
	display:inline-block;
	font-weight:900;
	font-size:12px;
	color:#ED1C24;
	border:2px solid #ED1C24;
}
.btn-red:hover {
	background:#ED1C24;
	color:#fff;
}

.btn-back {
	width:auto;
	height:auto;
    margin-top: -90px;
	padding:10px 20px;
	display:inline-block;
	font-weight:900;
	font-size:12px;
	color:#ED1C24;
	border:2px solid #ED1C24;
    float: right;
}
.btn-back:hover {
	background:#ED1C24;
	color:#fff;
}

.btn-black {
	width:auto;
	height:auto;
	padding:10px 20px;
	display:inline-block;
	font-weight:900;
	font-size:12px;
	color:#111;
	border:2px solid #111;
}
.btn-black:hover {
	background:#111;
	color:#fff;
}

.logo-large {
	width:80%;
	max-width:500px;
	display:inline-block;
}

.capability-red,.capability-red-medium,.capability-red-dark {
	width:auto;
	height:auto;
	display:compact;
	padding:20px 60% 20px 20px;
	margin:0 auto;
	color:#fff;
	text-align:right;
	font-weight:900;
	float:right;
}
.capability-red {
	background:#c1272d;
}
.capability-red-medium {
	background:#911d22;
}
.capability-red-dark {
	background:#300a0b;
}
.capability-red:hover,.capability-red-medium:hover,.capability-red-dark:hover {
	padding:20px 55% 20px 30px;
}
.capability-red img,.capability-red-medium img,.capability-red-dark img {
	width:20px;
	height:20px;
	vertical-align:middle;
	margin-right:10px;
	-webkit-transform:rotate(0deg);
	transform:rotate(0deg);
}
.capability-red:hover img,.capability-red-medium:hover img,.capability-red-dark:hover img {
	-webkit-transform:rotate(360deg);
	transform:rotate(360deg);
}

.icon {
	width:40px;
	height:40px;
	background:#ED1C24;
	display: inline-block;
    margin: 25px 3px 10px 3px;
}
.icon:hover {
	background:#333;
}

.beard {
    width: 40px;
    height: 40px;
    background: #000;
    border-radius: 40px;
    margin: 20px auto;
    border: 2px solid #222;
}
.beard:hover {
    border: 2px solid #ED1C24;
}

.page-thumb {
	width:300px;
	float:left;
	margin:auto 25px 20px 0;
}


/*--forms--*/
label {
	display:none;
}
.textbox,.textarea {
	width:100%;
	height:auto;
	padding:10px;
	margin:3px 0;
	border:2px solid #DBDBDB;
}
.textarea {
	height:100px;
}
.textbox:hover,.textarea:hover {
	border-bottom:2px solid #ED1C24;
}


/*--modifiers--*/
.page-heading {
	font-size:36px;
	color:#fff;
	letter-spacing:3px;
	margin:0;
	position:absolute;
	top:50%;
	right:0;
	left:0;
	text-align:center;
	-webkit-transform:translateY(-50%);
	transform:translateY(-50%);
}
.cell-heading {
	font-family: 'Lato', sans-serif;
	font-weight:900;
	color:#ED1C24;
	line-height:100%;
	font-size:24px;
}
.contact-heading {
	text-align:center;
	padding:10px 0;
	margin:0;
	background:#111;
	color:#fff;
}

strong {
	font-weight:900;
}

.red {
	color:#ED1C24;
}
.red-medium {
	color:#911d22;
}
.red-dark {
	color:#300a0b;
}
.white {
	color:#fff;
}
.grey {
	color:#999;
}
.black {
	color:#222;
}

.ftlt {
	float:left;
}
.ftrt {
	float:right;
}
.inline {
	display:inline-block;
}
.clear {
	clear:both;
}

.left {
	text-align:left;
}
.right {
	text-align:right;
}
.center {
	text-align:center;
}
.justify {
	text-align:justify;
}

.pdg-r {
	padding-right:25px;
}
.pdg-l {
	padding-left:25px;
}
.pdg-c {
	padding:inherit 25px;
}

.underline {
	border-bottom:1px solid #999;
}

#service-btn {
	display:none;
}

#RecaptchaField1,#RecaptchaField2,.g-recaptcha {
    -webkit-transform: scaleX(.9);
    transform: scaleX(.9);
    -webkit-transform-origin: left;
    transform-origin: left;
}

.item {
    text-align: center;
}


/*--media queries--*/
@media (max-width:1200px)
{
	.capability-red,.capability-red-medium,.capability-red-dark {
		padding:15px 45% 15px 15px;
	}
	.capability-red:hover,.capability-red-medium:hover,.capability-red-dark:hover {
		padding:15px 35% 15px 15px;
	}
}

@media (max-width:1024px)
{
	#menu1 {
		display:none;
	}
	header button {
		display:block;
	}
	.contact {
		display:none;
	}

    .video {
        display: none;
    }
    .container-home {
        background: url(../images/banners/home.jpg) no-repeat center;
        background-size: cover;
    }
}

@media (max-width:960px)
{
	.cell-capabilities {
		width:100%;
	}
	.capability-red,.capability-red-medium,.capability-red-dark {
		padding:15px 50% 15px 15px;
	}
	.capability-red:hover,.capability-red-medium:hover,.capability-red-dark:hover {
		padding:15px 40% 15px 15px;
	}

	#services {
		padding-left:0;
	}

	.cell-1-4 {
		width:calc(25% - 4px);
	}
}

@media (max-width:768px)
{
	header {
		height:100px;
	}
	header .logo {
		height:70px;
	}
	.icon-facebook {
		float:none;
	}

	.logo-large {
		width: 200px;
	}
    .welcome {
        display: none;
    }

	.slogan {
		font-size:21px;
		padding:10px;
	}

	.cell-1-2 {
		width:100%;
		padding:0;
	}
	.cell-1-4 {
		width:calc(33.33% - 4px);
	}

	#services {
		display:none;
	}
	#service-btn {
		display:inline-block;
	}
}

@media (max-width:600px)
{
	p,ul,li,ol { font-size:16px; }
	.h1 { font-size:48px; }
	.h2 { font-size:36px; }
	.h3,.page-heading { font-size:24px; }
	.h4,.cell-heading { font-size:21px; }
	.h5 { font-size:18px; }
	.h6 { font-size:14px; }

	.page-thumb {
		width:100%;
		margin:0;
		float:none;
	}

    .btn-back {
        float: none;
        margin-top: 0;
    }

	.cell-1-4 {
		width:calc(50% - 4px);
	}
	.cell-1-4 p {
		font-size:14px;
	}
}

@media (max-width:414px)
{
	header {
		height:80px;
	}
	header .logo {
		height:50px;
	}
}
