#entrance {
	position: relative;
	width: 100%;
	height: 900px;
	background: #000;
	transition: all .2s;
	-webkit-transition: all .2s;
	overflow: hidden !important;
}
	#entrance .vid {
		position: absolute;
		z-index: 0;
	  top: 50%;
	  left: 50%;
		opacity: .3;
		min-width: 100%;
	  min-height: 100%;
	  width: auto;
	  height: auto;
  	transform: translateX(-50%) translateY(-50%);
	  background: url('../img/constr.jpg') no-repeat;
	  background-size: cover;
		overflow: hidden !important;
	}

	#entrance .text {
		position: relative;
		z-index: 10;
		display: table;
		width: 100% !important;
		height: inherit;
		text-align: center;
		box-sizing: border-box;
		padding: 0;
		margin: 0 auto;
	}
		#entrance .text .tc {
			display: table-cell;
			vertical-align: middle;
			height: inherit;
			box-sizing: border-box;
			padding: 0;
			margin: 0;
		}
			#entrance .text .tc > h1 {
				width: 100%;
				font-size: 4em;
				font-weight: 400;
				color: #fff;
				letter-spacing: -.01em;
				line-height: 1.3em;
				box-sizing: border-box;
				padding: 0;
				margin: 0 auto 30px;
			}
			#entrance .text .tc > p {
				width: 100%;
				max-width: 900px;
				font-size: 1.3em;
				font-weight: 300;
				color: #fff;
				box-sizing: border-box;
				margin: 0 auto 40px;
			}

			#entrance .text .tc > .actions {
				text-align: center;
			}
				#entrance .text .tc > .actions > a {
					font-size: 1.1em;
					margin: 0 20px 0 0;
				}
				#entrance .text .tc > .actions > a:last-child {
					margin: 0;
				}
				#entrance .text .tc > .actions > a.btn-inv {
					border-color: #e5e5e5;
				}
				#entrance .text .tc > .actions > a.btn-inv:hover {
					border-color: #555;
				}

	#entrance a#arw {
	    opacity: .2;
	    position: absolute;
			z-index: 1000;
	    bottom: 40px;
	    left: 0;
	    right: 0;
	    display: inline-block;
	    width: 36px;
	    height: auto;
	    color: #fff;
	    cursor: pointer;
	    margin: 0 auto;
	    animation: MoveUpDown 2s infinite;
	  }
	    @keyframes MoveUpDown {
	      0%, 20%, 50%, 80%, 100% {
	        bottom: 40px;
	      }
	      40% {
	        bottom: 50px;
	      }
	      60% {
	        bottom: 45px;
	      }
	    }
	  #entrance a#arw:hover {
	    opacity: 1;
	  }
	    #entrance #arw svg {
	      display: block;
				width: 100%;
				height: auto;
	      fill: currentColor;
	    }


section#intro {
	background: #0077a2;
}
	#intro p {
		font-size: 1em;
		color: #fff;
		margin: 0 0 130px;
	}
	#intro #staff {
		margin: 0 0 -200px;
	}
		#staff .card {
			position: relative;
			display: inline-block;
			vertical-align: top;
			width: calc(50% - 30px);
			background: #fff;
			text-align: center;
			box-shadow: 0 0 15px rgba(0,0,0, .15);
			border-radius: 5px;
			-webkit-border-radius: 5px;
			box-sizing: border-box;
			padding: 0 20px 40px;
			margin: 0 60px 0 0;
		}
		#staff .card:nth-child(2n){
			margin: 0;
		}
			#staff .img {
				display: inline-block;
				width: 200px;
				height: 200px;
				background: #fff;
				border-radius: 100%;
				-webkit-border-radius: 100%;
				border: 18px solid #fff;
				margin: -50px 0 10px;
			}
				#staff .img div {
					width: inherit;
					height: inherit;
					background-position: top center;
					background-size: 100%;
					background-repeat: no-repeat;
					border-radius: 100%;
					-webkit-border-radius: 100%;
					transition: all 1s;
					-webkit-transition: all 1s;
				}
					#staff .img.profile:hover div {
						background-size: 115%;
					}
					#staff .img.svg div {
						opacity: .05;
						background-size: 130%;
					}
			#staff .name {
				font-size: 1.2em;
				font-weight: 400;
				color: #333;
				letter-spacing: -.02em;
				margin: 0;
			}
			#staff .company {
				font-size: .9em;
				color: #aaa;
				margin: 0 0 20px;
			}
			#staff .contact {
			}
				#staff .contact a {
					display: block;
					font-size: .85em;
					font-weight: 400;
					color: #666;
					line-height: 1.6em;
				}
			#staff .logo {
				position: absolute;
				bottom: 15px;
				right: 15px;
				width: 80px;
				height: 40px;
				background-position: center center;
				background-size: contain;
				background-repeat: no-repeat;
			}



section#services {
	padding: 220px 0 120px;
}
	#services h1 {
		font-size: 2.6em;
		letter-spacing: -.02em;
		text-align: center;
		margin: 0 0 30px;
	}
	#services p.preamble {
		font-size: 1.1em;
		font-weight: 300;
		line-height: 1.6em;
	}
	#services .services {
		margin: 0 0 35px;
	}
		#services .services .card {
			position: relative;
			display: inline-block;
			vertical-align: top;
			width: calc(33.3333% - 26.666667px);
			background: #fff;
			box-shadow: 0 0 15px rgba(0,0,0, .15);
			border-radius: 5px;
			-webkit-border-radius: 5px;
			box-sizing: border-box;
			padding: 25px 28px 20px 28px;
			margin: 0 40px 0 0;
		}
		#services .services .card:nth-child(3n){
			margin: 0;
		}
			#services .services .card .tab {
				position: absolute;
				top: 15px;
				left: -10px;
				width: 45px;
				height: 45px;
				background: #0077a2;
				border-radius: 4px 4px 4px 0;
				-webkit-border-radius: 4px 4px 4px 0;
			}
				#services .services .card.c2 .tab {
					background: #517a36;
				}
				#services .services .card.c3 .tab {
					background: #bc5364;
				}
					#services .services .card .tab def {
						position: absolute;
						bottom: -10px;
						left: 0;
						width: 0;
			      height: 0;
			      border-top: 10px solid #005473;
			      border-left: 10px solid transparent;
					}
						#services .services .card.c2 .tab def {
							border-top: 10px solid #3a5d23;
						}
						#services .services .card.c3 .tab def {
							border-top: 10px solid #8c3140;
						}
					#services .services .card .tab .icon {
						position: absolute;
						width: inherit;
						height: inherit;
						text-align: center;
						box-sizing: border-box;
						padding: 12px 0 0 0;
					}
						#services .services .card .tab .icon svg {
							width: 75%;
							height: 75%;
							color: #fff;
							fill: currentColor;
						}
			#services .services .card .title {
				font-size: 1em;
				font-weight: 500;
				color: #666;
				box-sizing: border-box;
				padding: 0 0 0 20px;
				margin: 0 0 25px;
			}
			#services .services .card .descr {
				font-size: .8em;
				font-weight: 400;
				font-style: normal;
				line-height: 1.65em;
			}


#testimonials {
	background-color: #0075a2;
	cursor: pointer;
	padding: 110px 0 100px;
}
	#testimonials-slides {
		margin: 0;
	}
		#testimonials-slides ul {
			list-style: none;
			text-align: left;
			padding: 0;
			margin: 0;
		}
			#testimonials-slides .qt {
				display: inline-block;
				vertical-align: top;
				width: 120px;
				margin: -11px 15px 0 0;
			}
				#testimonials-slides .qt svg {
					width: 100%;
					height: auto;
					color: #fff;
					fill: currentColor;
				}
			#testimonials-slides .content {
				display: inline-block;
				vertical-align: top;
				width: calc(100% - (120px + 15px));
				margin: 0;
			}
				#testimonials-slides .testimonial {
					font-size: 1.2em;
					font-weight: 200;
					font-style: italic;
					color: #fff;
					line-height: 1.6em;
					margin: 0 0 25px;
				}
				#testimonials-slides .name,
				#testimonials-slides .company {
					font-size: 1em;
					font-weight: 400;
					color: #74bdd8;
				}






@media screen and (max-width: 1200px){
	#entrance .text .tc > h1 {
		font-size: 3.5em;
		line-height: 1.1em;
		margin: 0 auto 20px;
	}
	#entrance .text .tc > p {
		font-size: 1.2em;
		margin: 0 auto 35px;
	}

	#intro #staff {
		margin: 0 0 -150px;
	}
		#staff .card {
			width: calc(50% - 15px);
			margin: 0 30px 0 0;
		}
		#staff .card:nth-child(2n){
			margin: 0;
		}
			#staff .img {
				width: 140px;
				height: 140px;
				border: 12px solid #fff;
				margin: -50px 0 10px;
			}
}






@media screen and (max-width: 961px){
	#entrance .text .tc > h1 {
		font-size: 3em;
		line-height: 1.1em;
		padding: 0 30px;
		margin: 0 auto 20px;
	}
	#entrance .text .tc > p {
		padding: 0 30px;
		margin: 0 auto 30px;
	}

	#entrance .text .tc > .actions {
		text-align: center;
	}
		#entrance .text .tc > .actions > a {
			font-size: .9em;
			padding: 12px 20px 10px;
			margin: 0 10px;
		}
		#entrance .text .tc > .actions > a.btn-inv {
			border-color: #e5e5e5;
			padding: 10px 20px 8px;
		}
		#entrance .text .tc > .actions > a.btn-inv:hover {
			border-color: #555;
		}

	#intro p {
		font-size: .9em;
		margin: 0 0 100px;
	}

	#services h1 {
		font-size: 2.2em;
	}
	#services p.preamble {
		font-size: 1em;
	}
	#services .services .card,
	#services .services .card:nth-child(3n) {
		display: block;
		width: 100%;
		padding: 25px 28px 20px 28px;
		margin: 0 0 20px;
	}
	#services .services .card:nth-child(3n){
		margin: 0;
	}

	#testimonials-slides .qt {
		width: 80px;
		margin: -8px 15px 0 0;
	}
	#testimonials-slides .content {
		width: calc(100% - (80px + 15px));
	}
		#testimonials-slides .testimonial {
			font-size: 1.1em;
			line-height: 1.5em;
			margin: 0 0 25px;
		}
		#testimonials-slides .name,
		#testimonials-slides .company {
			font-size: 1em;
			font-weight: 400;
			color: #74bdd8;
		}
}





@media screen and (max-width: 768px){
	#business-hours .hours {
		display: block;
		width: 100%;
		margin: 0 0 25px;
	}
	#business-hours .info {
		display: block;
		width: 100%;
	}

	section#boxes > div > a {
		height: 350px;
		margin: 0 0 30px 0;
	}

	section#inquiry > section:first-child {
		padding: 450px 0 180px 0;
	}

	#intro #staff {
		margin: 0 0 -200px;
	}
		#staff .card,
		#staff .card:nth-child(2n) {
			display: block;
			width: 100%;
			margin: 0 0 70px 0;
		}
		#staff .card:nth-child(2n) {
			margin: 0;
		}
			#staff .img {
				width: 150px;
				height: 150px;
				margin: -30px 0 10px;
			}

	section#services {
		padding: 160px 0 70px;
	}

	#testimonials {
		padding: 50px 0 40px;
	}
		#testimonials-slides .qt {
			width: 50px;
			margin: -4px 12px 0 0;
		}
		#testimonials-slides .content {
			width: calc(100% - (50px + 12px));
		}
			#testimonials-slides .testimonial {
				font-size: 1em;
				line-height: 1.4em;
				margin: 0 0 20px;
			}
			#testimonials-slides .name,
			#testimonials-slides .company {
				font-size: .9em;
			}
}



 @media screen and (max-width: 500px){
	 #entrance .text .tc > .actions {
		 width: 100%;
		 max-width: 250px;
		 margin: 0 auto;
 	}
 		#entrance .text .tc > .actions > a {
			display: block;
			width: 100%;
 			font-size: .9em;
 			padding: 12px 20px 10px;
 			margin: 0 0 8px;
 		}
		#entrance .text .tc > .actions > a:last-child {
			margin: 0;
		}
 }
