@charset "utf-8";
/* CSS Document */

@font-face{
	font-family: 'Exo 2';
	src: url("webfonts/Exo2-VariableFont_wght.ttf");
}

@font-face{
	font-family: 'Montserrat Regular';
	src: url("webfonts/Montserrat-Regular.ttf");
}

html{
	scroll-behavior: smooth;
}

*{
	box-sizing: border-box;
	font-family: "Exo 2", "Montserrat Regular","Sans Serif";
	color: #f2f2f2;
	margin: 0;
	padding: 0;
	text-decoration: none;
}

body{
	background-color: #35363A;
	/* overflow-x: hidden; */
}

a{
	color: #27a9f8;
}

/* width */
::-webkit-scrollbar {
  width: 14px;
}

/* Track */
::-webkit-scrollbar-track {
    background: #333;
	border: none;
	border-radius: 5px;
	padding-right: 10px;
}

/* Handle */
::-webkit-scrollbar-thumb {
  	background-color: #000;
	border-radius: 2px;
}

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #27a9f8;
}

.expand{
	display: block;
}

.allContainer{
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
}

.shadeTop{
	position: fixed;
	top: 0;
	width: 100%;
	height: 400px;
	background-image: linear-gradient(#000, transparent);
}

.topBar{
	position: fixed;
	max-width: 1300px;
	width: 100%;
	max-height: 120px;
	height: 10vw;
	margin: 40px 60px;
	background-color: transparent;
	border-radius: 20px;
	z-index: 100 !important;
}

.topBar.scrolled{
  background-color: rgba(30, 30, 30, 0.99) !important;
  transition: background-color 160ms linear;
}

.logoBox{
	float: left;
	height: 100%;
	width: 30%;
	padding: 12px;
	background-image: url("images/logo_transparent_background.png");
	background-size: cover;
}

#itLogo{
	background-color: rgba(9,9,9,0.90);
}

.logo{
	height: 100%;
}

.mobileNav{
	display: none;
}

.burgerIcon{
	color: #27a9f8;
	font-size: 70px;
}

.burgerIcon:hover{
	cursor: pointer;
}

.desktopNav{
	position: relative;
	float: right;
	padding: 40px 20px;
	margin: 0px 10px 0px 10px;
	max-width: 800px;
	z-index: 100;
}

.navLink{
	color: #27a9f8;
	font-size: 24px;
	margin-right: 16px;
	float: right;
	text-decoration: none;
}

#itNavLink{
	background-color: rgba(9,9,9,0.70);
}

.navlink, .far, .fas, .fa-regular{
	color: #27a9f8;
}

.navLink:hover{
	cursor: pointer;
	color: #f2f2f2;
}

.scrollPrompt{
	position: fixed;
	bottom: 100px;
	width: 80px;
	text-align: center;
	margin: auto;
	display: none;
}

.scrollPromptText{
	color: #f2f2f2;
}

.first-chevron{
	color: #afafaf;
	-webkit-animation: breathingC1 3s ease-out infinite normal;
    animation: breathingC1 3s ease-out infinite normal;
}

@-webkit-keyframes breathingC1 {
	0% {
	  color: #afafaf;
	}
  
	20% {
	  color: #fff;
	}
  
	60% {
	  color: #fff;
	}
  
	100% {
	  color: #afafaf;
	}
  }
  
  @keyframes breathingC1 {
	0% {
	  color: #afafaf;
	}
  
	20% {
	  color:#fff;
	}
  
	60% {
	  color:#fff
	}
  
	100% {
	  color:#afafaf
	}
  }

  .second-chevron{
	color: #fff;
	-webkit-animation: breathingC2 3s ease-out infinite normal;
    animation: breathingC2 3s ease-out infinite normal;
}

@-webkit-keyframes breathingC2 {
	0% {
	  color: #fff;
	}
  
	20% {
	  color: #afafaf;
	}
  
	60% {
	  color: #afafaf;
	}
  
	100% {
	  color: #fff;
	}
  }
  
  @keyframes breathingC2 {
	0% {
	  color: #fff;
	}
  
	20% {
	  color:#afafaf;
	}
  
	60% {
	  color:#afafaf
	}
  
	100% {
	  color:#fff
	}
  }

.heroBox{
	position: fixed;
	width: 100%;
	max-width: 1920px;
	height: 1080px;
	z-index: -5;
}

.heroImage{
	object-fit: cover;
	height: 100%
}

.heroText{
	display: none;
	position: absolute;
	color: #27a9f8;
	font-size: 38px;
	top: 300px;
	left: 100px;
	z-index: 1;
}

.infoHeroText{
	position: absolute;
	color: #27a9f8;
	font-size: 38px;
	top: 300px;
	left: 100px;
	z-index: 1;
}

.darken{
	background-color: #000000e0;
	border-radius: 5px;
	box-shadow: 0px 0px 3px 4px #050505;
}

.flexContainer{
	display: flex;
	flex-flow: column nowrap;
	justify-content: center;
	width: 100%;
	margin-top: 1080px;
}

.textBox{
	display: none;
	max-width: 1200px;
	width: 100%;
	margin: 0 auto 50px auto;
	padding: 40px;
	background-color: #333;
	border-radius: 30px;
	box-shadow: 0px 0px 4px #808080;
}

.textBox h2{
	color: #27a9f8;
	font-size: 38px;
	text-shadow: 1px 1px 2px #000;
}

.textBox h3{
	color: #00ED33;
	font-weight: 100;
	font-size: 26px;
	font-style: italic;
}

.textBox p{
	font-family: Montserrat Regular;
	font-size: 20px;
	color: #f2f2f2;
}

.textBox.pp-textBox h1{
	color: #27a9f8;
	font-size: 24px;
}

.textBox.pp-textBox h2{
	color: #f2f2f2;
	font-size: 20px;
}

.textBox.pp-textBox h3{
	color: #f2f2f2;
	font-size: 18px;
}

.textBox.pp-textBox p{
	font-family: Montserrat Regular;
	font-size: 16px;
	color: #f2f2f2;
}

.sideText{
	max-width: 55%;
	float: left;
}

.sidePhoto{
	float: right;
	margin: -8px 20px;
}

.sidePhoto img{
	height: 500px;
	border-radius: 40px;
}

.clear{
	clear: both;
}

.projectBox{
	width: 100%;
}

.projectBox img{
	width: 100%;
}

.inputBox{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 660px;
	height: auto;
	margin-top: 20px;
	background-color: #333;
	padding: 40px;
	transform: translate(-50%, -50%);
	border-radius: 30px;
	z-index: 0;
}

/*#backButton{
	position: absolute;
	top: 40px;
	left: 35px;
	width: 40px;
	height: 40px;
	padding: 0;
	z-index: 10;
}

#backButton i{
	font-size: 40px;
}

#backButton:hover{
	cursor: pointer;
}*/

.inputBox h1{
	color: #27a9f8;
	text-align: center;
	margin-bottom: 40px;
}

.inputBox h2{
	color: #f2f2f2;
	margin-bottom: 20px;
}

.selectBox{
	display: flex;
	flex-direction: row;
	width: 100%;
	justify-content: center;
	align-items: center;
}

.contactButton{
	color: #fff;
	font-size: 18px;
	text-align: center;
	text-shadow: #111 1px 1px 1px;
	background-image: linear-gradient(120deg, #273ff8, #27a9f8, #273ff8);
	background-size: 200%;
	width: 185px;
	margin: 2px;
	padding: 10px;
	border: none;
	border-radius: 4px;
	box-shadow: #000 1px 1px 2px;
	outline: none;
	cursor: pointer;
	transition: 0.5s;
}

.contactButton i{
	color: #fff;
}

.contactButton:hover{
	background-position: right;
}

/*f127f8*/

.contactFormBox{
	position: relative;
	width: 100%;
	padding: 0;
}

.input{
	border-bottom: 2px solid #adadad;
	position: relative;
	margin: 30px 0;
}

.input input{
	font-size: 15px;
	color: #f2f2f2;
	border: none;
	width: 100%;
	outline: none;
	background: none;
	padding: 0 5px;
	height: 40px;
}

.input textarea{
	font-size: 15px;
	color: #f2f2f2;
	border: none;
	width: 100%;
	outline: none;
	background: none;
	padding: 10px 5px;
	resize: none;
	min-height: 40px;
	overflow-y: auto;
}

.input span::before{
	content: attr(data-placeholder);
	position: absolute;
	top: 50%;
	left: 5px;
	color: #adadad;
	transform: translateY(-50%);
	z-index: -1;
	transition: .5s;
}

.input span::after{
	content: '';
	position: absolute;
	top: 100%;
	left: 0;
	width: 0%;
	height: 2px;
	background: linear-gradient(120deg, #273ff8, #27a9f8);
	transition: .5s;
}

.focus + span::before{
	top: -5px;
}

.focus + span::after{
	width: 100%;

}

.alertBox{
	position: absolute;
	top: 0;
	width: 100%;
	height: 30px;
	text-align: center;
}

.alertBox span{
	position: relative;
	top: 50%;
	transform: translateY(-50%);
	font-size: 20px;
	font-weight: bold;
}

.successMessage{
	color: rgb(27, 255, 27);
}

.errorMessage{
	color: rgb(255, 66, 66);
}

.footer{
	height: 200px;
	width: 100%;
	padding: 50px;
	background-color: rgba(30, 30, 30, 0.99);
}

.footer a{
	color: #f2f2f2;
}

.footer .leftSection{
	float: left;
	width: 50%;
	height: 100%;
	margin: 0;
	padding: 20px;
	border-right: solid 3px #f2f2f2;
}

.footer .rightSection{
	float: right;
	width: 50%;
	height: 100%;
	margin: 0;
	padding: 20px;
}

@media (max-width: 1000px){
	
	.topBar{
		max-height: 120px;
		height: 120px;
		margin: 0px;
		padding: 20px 20px 0px 20px;
		border-radius: 0px;
		background-color: #000;
	}

	.topBar.scrolled{
		background-color: #000 !important;
	}

	.logoBox{
		float: left;
		height: 100%;
		width: 100px;
		padding: 12px;
		background-image: url("images/simple_logo_transparent.png");
		background-size: cover;
	}

	.burgerIcon{
		font-size: 50px;
	}

	.mobileNav{
		display: flex;
		float: right;
		align-items: center;
		height: 100%;
		margin: 0px 20px;
	}

	.desktopNav{
		display: none;
		flex-direction: column;
		align-items: center;
		position: absolute;
		top: 120px;
		right: 0;
		width: 400px;
		height: auto;
		float: none;
		padding: 0px;
		margin: 0;
		background-color: rgba(30, 30, 30, 0.99);
		border-top: #27a9f8 solid 3px;
	}

	.expand-flex{
		display: flex;
	}

	.navLink{
		position: relative;
		float: none;
		padding: 20px;
		margin: 0;
		width: 100%;
		border: solid 1px #333;
		text-align: center;
	}

	.heroText{
		margin-right: 100px;
	}
	
	.infoHeroText{
		font-family: "Exo 2";
		font-size: 34px;
		top: 90px;
		left: 40px;
	}

	.textBox{
		max-width: 100%;
		width: 100%;
		margin: 0 auto 50px auto;
		padding: 20px;
		background-color: #333;
		border-radius: 0px;
		box-shadow: none;
	}

	.textBox h2{
		color: #27a9f8;
		font-size: 46px;
		text-align: center;
		text-shadow: 2px 2px 3px #000;
	}

	.sideText{
		max-width: 100%;
		padding: 30px;
		float: none;
	}
	
	.sidePhoto{
		float: left;
		margin: 30px;
	}
	
	.sidePhoto img{
		height: 200px;
		border-radius: 40px;
	}

	.inputBox{
		position: relative;
		margin-top: 160px;
		top: 0;
		left: 0;
		transform: translate(0%, 0%);
		width: 95%;
		padding: 20px;
		border-radius: 10px;
		-webkit-overflow-scrolling: touch;
	}

	.inputBox h1{
		font-size: 50px;
		text-shadow: 2px 2px 3px #000;
	}
	
	.inputBox h2{
		text-align: center;
		font-size: 34px;
	}
	
	.selectBox{
		flex-direction: column;
	}
	
	.contactButton{
		font-size: 28px;
		width: 100%;
		max-width: 300px;
		margin: 10px;
		padding: 30px;
		border-radius: 10px;
	}

	.formContent{
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
	}

	.input{
		width: 100%;
	}

	.input input{
		font-size: 26px;
		height: 50px;
		float: left;
	}
	
	.input textarea{
		font-size: 26px;
		padding: 10px 5px;
		min-height: 50px;
		width: 100%;
		float: left;
	}
}