:root{
	--theme-royalblue: #002366;
	--theme-white: #ffffff;
	--theme-grey: #aaaaaa;
	--theme-light: #ACBBE8;
	--svg-royalblue: brightness(0) saturate(100%) invert(12%) sepia(30%) saturate(5572%) hue-rotate(209deg) brightness(96%) contrast(108%);
}
*{
	padding: 0;
	margin: 0;
	scroll-behavior: smooth;
	box-sizing: border-box;
}
html, body{
	height: 100%;
	font-family: open sans;
}
.overflow{
	height: fit-content;
	width: fit-content;
	overflow: hidden;
	margin: auto;
}
.contact{
	height: auto;
	width: 100%;
	background-color: var(--theme-royalblue);
}
h1{
	font-size: 2.2em;
	color: var(--theme-white);
	text-align: center;
	padding-top: 150px;
}
.contact-desc{
	color: var(--theme-white);
	font-size: 1em;
	text-align: center;
	margin-top: 5px;
}
.contact-flex{
	height: auto;
	width: 85%;
	margin: auto;
	margin-top: 20px;
	display: flex;
	padding-bottom: 80px;
}
.left-contact, .right-contact{
	width: 48%;
	height: auto;
	margin: auto;
}
.contact-details-box{
	padding: 15px;
	background-color: var(--theme-white);
	border-radius: 12px;
	height: auto;
	display: flex;
	margin-bottom: 20px;
}
.contact-icon-bx{
	width: 100px;
	height: 100%;
}
.contact-title{
	font-weight: bolder;
	color: var(--theme-royalblue);
	font-size: 1.1em;
	margin-bottom: 10px;
}
.contact-description{
	font-size: 1em;
}
.contact-icon{
	height: 50%;
	width: 50%;
}
.fill{
	height: 100%;
	width: 100%:;
}
.rb{
	filter: var(--svg-royalblue);
}
.link{
	text-decoration: none;
	color: var(--theme-royalblue);
}

/* Form */
.contact-form{
	padding: 30px 40px;
	border-radius: 12px;
	background-color: var(--theme-white);
}
.input{
	padding: 1em;
	font-size: 1em;
	margin-bottom: 20px;
	outline: none;
	width: 100%;
	font-family: open sans;
}
.input:focus ,.text-area:focus{
	border: 1px solid var(--theme-royalblue);
}
.provide{
	font-size: .8em;
	color: var(--theme-royalblue);
	margin-bottom: 7px;
}
.text-area{
	font-size: 1em;
	font-family: open sans;
	padding: 1em;
	outline: none;
	width: 100%;
}
.check{
	height: 20px;
	width: 20px;
	margin-right: 20px;
}
.agree-text{
	font-size: .9em
}
.con-sub{
	position: relative;
	padding: 20px 70px;
	background-color: var(--theme-royalblue);
	border-radius: 12px;
	border: none;
	display: block;
	margin: auto;
	margin-top: 20px;
	cursor: pointer;
}
.button--text{
	font-size: 1.2em;
	font-weight: bolder;
	color: var(--theme-white);
	transition: all 0.2s; 
}
.button--loading::after{
	content: "";
	position: absolute;
	width: 16px;
	height: 16px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border: 3px solid transparent;
	border-top-color: transparent;
	border-radius: 50%;
	animation: btn-loading-spinner 1s ease infinite;
}
.button--loadingf::after{
	content: "";
	position: absolute;
	width: 16px;
	height: 16px;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	border: 3px solid transparent;
	border-top-color: var(--theme-white);
	border-radius: 50%;
	animation: btn-loading-spinner 1s ease infinite;
}
.hide{
	display: none;
}

@keyframes btn-loading-spinner{
	from{
		transform: rotate(0turn);
	}
	to{
		transform: rotate(1turn);
	}
}
.sc-up{
	opacity: 0;
	position: fixed;
	z-index: 500;
	padding: 10px;
	background-color: var(--theme-white);
	font-size: 1.2em;
	text-align: center;
	height: 50px;
	width: 50px;
	border-radius: 200px;
	cursor: pointer;
	bottom: 25px;
    right: 25px;
    transition: .3s;

}
.sc-up:hover{
	background-color: var(--theme-royalblue);
	opacity: .8;
	color: var(--theme-white);
}

@media(max-width: 768px){
	.contact-flex{
		display: block;
	}
	.left-contact, .right-contact{
		width: 100%;
	}
	.contact-details-box{
		display: block;
	}
	.contact-icon-bx{
		width: 70px;
		height: auto;
	}
	.contact-icon{
		height: 90%;
		width: 90%;
	}
	.contact-form{
		padding: 17px 20px;
	}
	.input, .text-area{
		padding: .5em;
		font-size: .9em;
	}
	.agree-text{
		font-size: .7em;
	}
	.provide{
		font-size: .7em;
	}
	.con-sub{
		font-size: 1em;
		padding: 15px 30px;
	}
}
