
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;500&display=swap');
@import url('https://maxst.icons8.com/vue-static/landings/line-awesome/line-awesome/1.3.0/css/line-awesome.min.css');




*:after,
*:before {
  box-sizing: inherit;
}

html {
  box-sizing: border-box;
  font-size: 62.5%;
}

body {
  color: #606c76;
  font-family: 'Poppins', sans-serif;
  font-size: 1.4em;
  font-weight: 300;
  letter-spacing: .01em;
  line-height: 1.6;
  margin:0;
  padding:0;
}

button, input, select, textarea {
	font-family: 'Poppins', sans-serif;
}

blockquote {
  border-left: 0.3rem solid #d1d1d1;
  margin-left: 0;
  margin-right: 0;
  padding: 1rem 1.5rem;
}

blockquote *:last-child {
  margin-bottom: 0;
}

.button,
button,
input[type='button'],
input[type='reset'],
input[type='submit'] {
  background-color: #004e98;
  border: 0.1rem solid #004e98;
  border-radius: .4rem;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 1.1rem;
  font-weight: 700;
  height: 3.8rem;
  letter-spacing: .1rem;
  line-height: 3.8rem;
  padding: 0 3.0rem;
  text-align: center;
  text-decoration: none;
  text-transform: uppercase;
  white-space: nowrap;
}

.button:focus, .button:hover,
button:focus,
button:hover,
input[type='button']:focus,
input[type='button']:hover,
input[type='reset']:focus,
input[type='reset']:hover,
input[type='submit']:focus,
input[type='submit']:hover {
  background-color: #606c76;
  border-color: #606c76;
  color: #fff;
  outline: 0;
}

.button[disabled],
button[disabled],
input[type='button'][disabled],
input[type='reset'][disabled],
input[type='submit'][disabled] {
  cursor: default;
  opacity: .5;
}

.button[disabled]:focus, .button[disabled]:hover,
button[disabled]:focus,
button[disabled]:hover,
input[type='button'][disabled]:focus,
input[type='button'][disabled]:hover,
input[type='reset'][disabled]:focus,
input[type='reset'][disabled]:hover,
input[type='submit'][disabled]:focus,
input[type='submit'][disabled]:hover {
  background-color: #9b4dca;
  border-color: #9b4dca;
}

.button.button-outline,
button.button-outline,
input[type='button'].button-outline,
input[type='reset'].button-outline,
input[type='submit'].button-outline {
  background-color: transparent;
  color: #9b4dca;
}

.button.button-outline:focus, .button.button-outline:hover,
button.button-outline:focus,
button.button-outline:hover,
input[type='button'].button-outline:focus,
input[type='button'].button-outline:hover,
input[type='reset'].button-outline:focus,
input[type='reset'].button-outline:hover,
input[type='submit'].button-outline:focus,
input[type='submit'].button-outline:hover {
  background-color: transparent;
  border-color: #606c76;
  color: #606c76;
}

.button.button-outline[disabled]:focus, .button.button-outline[disabled]:hover,
button.button-outline[disabled]:focus,
button.button-outline[disabled]:hover,
input[type='button'].button-outline[disabled]:focus,
input[type='button'].button-outline[disabled]:hover,
input[type='reset'].button-outline[disabled]:focus,
input[type='reset'].button-outline[disabled]:hover,
input[type='submit'].button-outline[disabled]:focus,
input[type='submit'].button-outline[disabled]:hover {
  border-color: inherit;
  color: #9b4dca;
}

.button.button-clear,
button.button-clear,
input[type='button'].button-clear,
input[type='reset'].button-clear,
input[type='submit'].button-clear {
  background-color: transparent;
  border-color: transparent;
  color: #9b4dca;
}

.button.button-clear:focus, .button.button-clear:hover,
button.button-clear:focus,
button.button-clear:hover,
input[type='button'].button-clear:focus,
input[type='button'].button-clear:hover,
input[type='reset'].button-clear:focus,
input[type='reset'].button-clear:hover,
input[type='submit'].button-clear:focus,
input[type='submit'].button-clear:hover {
  background-color: transparent;
  border-color: transparent;
  color: #606c76;
}

.button.button-clear[disabled]:focus, .button.button-clear[disabled]:hover,
button.button-clear[disabled]:focus,
button.button-clear[disabled]:hover,
input[type='button'].button-clear[disabled]:focus,
input[type='button'].button-clear[disabled]:hover,
input[type='reset'].button-clear[disabled]:focus,
input[type='reset'].button-clear[disabled]:hover,
input[type='submit'].button-clear[disabled]:focus,
input[type='submit'].button-clear[disabled]:hover {
  color: #9b4dca;
}

code {
  background: #f4f5f6;
  border-radius: .4rem;
  font-size: 86%;
  margin: 0 .2rem;
  padding: .2rem .5rem;
  white-space: nowrap;
}

pre {
  background: #f4f5f6;
  border-left: 0.3rem solid #9b4dca;
  overflow-y: hidden;
}

pre > code {
  border-radius: 0;
  display: block;
  padding: 1rem 1.5rem;
  white-space: pre;
}

hr {
  border: 0;
  border-top: 0.1rem solid #f4f5f6;
  margin: 3.0rem 0;
}

input[type='color'],
input[type='date'],
input[type='datetime'],
input[type='datetime-local'],
input[type='email'],
input[type='month'],
input[type='number'],
input[type='password'],
input[type='search'],
input[type='tel'],
input[type='text'],
input[type='url'],
input[type='week'],
input:not([type]),
textarea,
select {
  -webkit-appearance: none;
  background-color: #fff;
  border: 0.1rem solid #d1d1d1;
  border-radius: .4rem;
  box-shadow: none;
  box-sizing: inherit;
  height: 4.5rem;
  padding: .6rem 1.0rem .7rem;
  width: 100%;
}

input[type='color']:focus,
input[type='date']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input[type='email']:focus,
input[type='month']:focus,
input[type='number']:focus,
input[type='password']:focus,
input[type='search']:focus,
input[type='tel']:focus,
input[type='text']:focus,
input[type='url']:focus,
input[type='week']:focus,
input:not([type]):focus,
textarea:focus,
select:focus {
  border-color: #004e98;
  outline: 0;
}

select {
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 8" width="30"><path fill="%23d1d1d1" d="M0,0l6,8l6-8"/></svg>') center right no-repeat #fff;
  padding-right: 3.0rem;
}

select:focus {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 8" width="30"><path fill="%239b4dca" d="M0,0l6,8l6-8"/></svg>');
}

select[multiple] {
  background: none;
  height: auto;
}

textarea {
  min-height: 6.5rem;
}

label,
legend {
  display: block;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: .5rem;
}

fieldset {
  border-width: 0;
  padding: 0;
}

input[type='checkbox'],
input[type='radio'] {
  display: inline;
}
.center {
	text-align:center;
}
.left {
	text-align:left;
}
.right {
	text-align:right;
}

a {
	text-decoration:none;
}


/*--------------------------------------------------------------
# Responsive Grid
--------------------------------------------------------------*/
.grid{
max-width:1220px;
margin:0 auto;
}

.grid.flex{
width:100%;
max-width:100%;

}

.row{
display:block;
/*overflow:hidden;*/
clear:both;
}

.row:before,
.row:after {
  content: "";
  display: table;
}

.row:after {
  clear: both;
}

.row {
  zoom: 1; /* ie 6/7 */
}


.{ width:95%; margin:0 auto;}

*[class*="col_"].alpha{margin-left:0;}
*[class*="col_"].omega{margin-right:0;}
 
.col_1  { width: 6.6666666666667%; }
.col_2  { width: 15%; }
.col_3  { width: 23.333333333333%; }
.col_4  { width: 31.666666666667%; }
.col_5  { width: 40%; }
.col_6  { width: 48.333333333333%; }
.col_7  { width: 56.666666666667%; }
.col_8  { width: 65%; }
.col_9  { width: 73.333333333333%; }
.col_10 { width: 81.666666666667%; }
.col_11 { width: 90%; }
.col_12 { width: 98.333333333333%; }

*[class*="col_"]{
margin-left: 0.83333333333333%;
margin-right: 0.83333333333333%;
margin-top:0.5em;
margin-bottom:0.5em;
float: left;
display: block;
}

.grid img{
max-width: 100%;
height:auto;
}

.clear{clear:both;display:block;overflow:hidden;visibility:hidden;width:0;height:0}
.clearfix:after{clear:both;content:' ';display:block;font-size:0;line-height:0;visibility:hidden;width:0;height:0}
* html .clearfix, *:first-child+html .clearfix{zoom:1}

/* Viewable Grids 
	To view your grids, add the class .visible to any grid container.
	This will add a background color so you can see the layout of your grids. 
*/
*[class*="col_"].visible{
background:#eee;
border:1px dotted #ccc;
}


/*---------------------------------
	Responsive Grid Media Queries - 1280, 1024, 768, 480
	1280-1024 	- desktop (default grid)
	1024-768 	- tablet landscape
	768-480 	- tablet 
	480-less 	- phone landscape & smaller
-----------------------------------*/
@media all and (min-width: 1024px) and (max-width: 1280px) {
	
	.grid *[class*="col_"]{}
	.grid{max-width: 1024px;}
	.show-desktop	{display:block;}
	.hide-desktop	{display:none;}
	.show-tablet	{display:none;}
	.hide-tablet	{display:block;}
	.show-phone		{display:none;}
	.hide-phone		{display:block;}
	
}

@media all and (min-width: 768px) and (max-width: 1024px) {
	
	.grid *[class*="col_"]{}
	.grid{max-width: 768px;}
	.show-desktop	{display:none;}
	.hide-desktop	{display:block;}
	.show-tablet	{display:block;}
	.hide-tablet	{display:none;}
	.show-phone		{display:none;}
	.hide-phone		{display:block;}
	
}


@media all and (min-width: 480px) and (max-width: 768px) {

	.grid *[class*="col_"]{
	float:none;
	width:auto;
	clear:both;
	display:block;
	}
	
	/* columns inside of columns */
	.grid *[class*="col_"] [class*="col_"]{
	margin-left:0;
	margin-right:0;
	width:100%;
	}
	
	.grid{max-width: 480px;}
	.show-desktop	{display:none;}
	.hide-desktop	{display:block;}
	.show-tablet	{display:block;}
	.hide-tablet	{display:none;}
	.show-phone		{display:none;}
	.hide-phone		{display:block;}
	
}

@media all and (max-width: 480px) {
	
	.grid *[class*="col_"]{
	float:none;
	width:auto;
	clear:both;
	display:block;
	}
	
	/* columns inside of columns */
	.grid *[class*="col_"] [class*="col_"]{
	margin-left:0;
	margin-right:0;
	width:100%;
	}
	
	.grid{max-width: 100%;/*320*/}
	.show-desktop	{display:none;}
	.hide-desktop	{display:block;}
	.show-tablet	{display:none;}
	.hide-tablet	{display:block;}
	.show-phone		{display:block;}
	.hide-phone		{display:none;}
	
}


/*--------------------------------------------------------------
# Responsive Navigation
--------------------------------------------------------------*/
nav {
	margin-top:20px;
}

nav ul {
	list-style:none;
	margin:0;
	padding:0;
}
nav ul li {
	display:inline-block;
	margin:0 3px;
}

nav ul li a {
	color:#333;
	font-weight:500;
	font-size:15px;
	padding:10px 15px;
	border-radius:3px;
	transition: background-color 1000ms;
}

nav ul li a:hover {
	color:#fff;
	background-color:#ff6700;
}

.mobile-nav-icon {
	display:none;
}

 /* The Overlay (background) */
.overlay {
  /* Height & width depends on how you want to reveal the overlay (see JS below) */   
  height: 100%;
  width: 0;
  position: fixed; /* Stay in place */
  z-index: 200; /* Sit on top */
  left: 0;
  top: 0;
  background-color: rgb(0,0,0); /* Black fallback color */
  background-color: rgba(0,0,0, 0.9); /* Black w/opacity */
  overflow-x: hidden; /* Disable horizontal scroll */
  transition: 0.5s; /* 0.5 second transition effect to slide in or slide down the overlay (height or width, depending on reveal) */
}

/* Position the content inside the overlay */
.overlay-content {
  position: relative;
  top: 15%; /* 25% from the top */
  width: 100%; /* 100% width */
  text-align: center; /* Centered text/links */
  margin-top: 30px; /* 30px top margin to avoid conflict with the close button on smaller screens */
}

.overlay-content ul {
	list-style:none;
}

/* The navigation links inside the overlay */
.overlay a {
  padding: 8px;
  text-decoration: none;
  font-size: 20px;
  color: #fff;
  display: block; /* Display block instead of inline */
  transition: 0.3s; /* Transition effects on hover (color) */
}

/* When you mouse over the navigation links, change their color */
.overlay a:hover, .overlay a:focus {
  color: #ff6700;
}

/* Position the close button (top right corner) */
.overlay .closebtn {
  position: absolute;
  top: 20px;
  right: 45px;
  font-size: 50px;
  color:#ff6700;
}

/* When the height of the screen is less than 450 pixels, change the font-size of the links and position the close button again, so they don't overlap */
@media screen and (max-height: 450px) {
  .overlay a {font-size: 20px}
  .overlay .closebtn {
    font-size: 40px;
    top: 15px;
    right: 35px;
  }
} 

@media all and (max-width: 800px) { 

nav {
	display:none;
}

.mobile-nav-icon {
	display:block;
	font-size: 30px;
    padding: 15px 5px 5px 5px;
    line-height: 100%;
}
}


/*--------------------------------------------------------------
# Home Banner Text Rotator
--------------------------------------------------------------*/



/*Vertical Sliding*/
.slidingVertical{
	display: inline;
	text-indent: 8px;
}
.slidingVertical span{
	animation: topToBottom 12.5s linear infinite 0s;
	-ms-animation: topToBottom 12.5s linear infinite 0s;
	-webkit-animation: topToBottom 12.5s linear infinite 0s;
	color: #ff6700;
	opacity: 0;
	overflow: hidden;
	position: absolute;
	font-weight:500;
}
.slidingVertical span:nth-child(2){
	animation-delay: 2.5s;
	-ms-animation-delay: 2.5s;
	-webkit-animation-delay: 2.5s;
}
.slidingVertical span:nth-child(3){
	animation-delay: 5s;
	-ms-animation-delay: 5s;
	-webkit-animation-delay: 5s;
}
.slidingVertical span:nth-child(4){
	animation-delay: 7.5s;
	-ms-animation-delay: 7.5s;
	-webkit-animation-delay: 7.5s;
}
.slidingVertical span:nth-child(5){
	animation-delay: 10s;
	-ms-animation-delay: 10s;
	-webkit-animation-delay: 10s;
}

/*topToBottom Animation*/
@-moz-keyframes topToBottom{
	0% { opacity: 0; }
	5% { opacity: 0; -moz-transform: translateY(-50px); }
	10% { opacity: 1; -moz-transform: translateY(0px); }
	25% { opacity: 1; -moz-transform: translateY(0px); }
	30% { opacity: 0; -moz-transform: translateY(50px); }
	80% { opacity: 0; }
	100% { opacity: 0; }
}
@-webkit-keyframes topToBottom{
	0% { opacity: 0; }
	5% { opacity: 0; -webkit-transform: translateY(-50px); }
	10% { opacity: 1; -webkit-transform: translateY(0px); }
	25% { opacity: 1; -webkit-transform: translateY(0px); }
	30% { opacity: 0; -webkit-transform: translateY(50px); }
	80% { opacity: 0; }
	100% { opacity: 0; }
}
@-ms-keyframes topToBottom{
	0% { opacity: 0; }
	5% { opacity: 0; -ms-transform: translateY(-50px); }
	10% { opacity: 1; -ms-transform: translateY(0px); }
	25% { opacity: 1; -ms-transform: translateY(0px); }
	30% { opacity: 0; -ms-transform: translateY(50px); }
	80% { opacity: 0; }
	100% { opacity: 0; }
}


/* ----------------
		tabs
---------------- */
@media all {
	* {	box-sizing: border-box;	}
	.tabs {
		display: flex;
		flex-direction: row;
		row-wrap: nowrap;
		justify-content: flex-start;
		align-content: flex-start;
		align-items: flex-start;
    box-sizing: border-box;
	font-family: 'Poppins', sans-serif;
	}
	.tabs * { box-sizing: inherit; }
	.tabs :focus {
		box-shadow: none;
		outline: none;
		}
	.tabs .button-list {
		flex: 1 1 auto;
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
		align-content: stretch;
		align-items: stretch;
	}

	.tabs button {
		margin: 0;
		font-size: 1.5rem;
		padding: .75em .5em;
		border: 1px solid transparent;
		background: none;
		color: #666;
		/*transition: all .6s ease-in-out;*/
		height:auto;
		text-transform:none;
		text-align:left;
		display:flex;
		align-items:center;
		font-weight:500;
	}
	
	.tabs button i {
		font-size:25px;
		margin:0 7px;
	}
.tabs button:hover {
	color: #333;
}
	.tabs button:not(:first-of-type) {
		/*border-top-color: #aaa;*/
	}
	.tabs button.active {
		background: #fff;
		background: rgba(255,255,255,.6);
		color: #004e98;
		border-top-left-radius: 5px;
border-bottom-left-radius: 5px;
	}
	
	.tabs button.active i {
		color:#004e98;
	}

	.tabs section {
		flex: 2 1 auto;
		display: none;
		background: #fff;
		background: rgba(255,255,255,.6);
		padding: 1.5rem;
		min-height:300px;
	}
	
	.tabs section h3 {
		font-weight:500;
		color:#000;
		margin-bottom:-5px;
	}
	.tabs section p {
		margin-top:5px;
	}
  .tabs section.active {
		display: block;
		border-top-right-radius: 5px;
border-bottom-right-radius: 5px;
	}

.tabs img {
	display: block;
	margin: 0 auto;
	width: 100%;
	min-width: 180px;
	max-width: 600px;
}
} /* / @media all */

@media (max-width: 900px) {
	.tabs {
		flex-direction: column;
	}
	.tabs .button-list {
		flex-direction: row;
		min-width: 100%;
	}
	.tabs button:first-child:not(.active) {
		/*border-top: 1px solid #aaa;
		border-left: 1px solid #aaa;*/
	}
	.tabs button.active {
		/*border-right: 1px solid #aaa;*/
		border-radius:0;
		border-bottom:solid 3px #004e98;
		background:transparent;
	}
	
	.tabs button {
		max-width: 40%;
    line-height: normal;
	white-space: break-spaces;
	text-align:center;
	font-size: 1.39rem;
	border-bottom:solid 3px transparent;
	border-radius:0;
	}
	
	.tabs button i {
		display:none;
	}
} /* / @media (max-width: 900px) */



/*--------------------------------------------------------------
# Custom Styles
--------------------------------------------------------------*/

header {
	position:fixed;
	width:100%;
	top:0;
	z-index:100;
	padding-top:5px;
	background:#fff;
}

header img {
	max-width:200px!important;
}

.site-header.header-scroll {
	background:#fff;
	box-shadow: 0px 15px 10px -15px #ddd;
}
.site-header.header-scroll img {
	max-width:150px!important;
}
.site-header.header-scroll nav {
	margin-top:10px;
}


.logo {
	width:25%;
	float:left;
}
.main-navigation {
	width:70%;
	float:right;
	text-align:right;
}

.home-page-banner {
	background:url(images/home-banner-bg-new.jpg) no-repeat top center;
	background-size:cover;
	min-height:90vh;
	padding:150px 0 150px 0;
	box-sizing:border-box;
	/*text-align:center;*/
	position:relative;
	
}
.rotating-text-slider {
	position:relative;
}

.home-page-banner h1 {
	font-size:35px;
	font-weight:500;
	color:#fff;
	margin:50px 0 20px 0;
	padding:0;
	line-height: 130%;
}
.home-page-banner h1 span {
	display:block;
	font-size:45px;
}

.home-page-banner h2 {
	color:#fff;
	font-weight:300;
	font-size:30px;
	margin:0;
}

.home-banner-bg {
	position:absolute;
	width:50%;
	height:75%;
bottom:0;
	right:0;
	background:url(images/home-banner-image-2.png) no-repeat;
	background-size:cover;
}

.home-page-services {
	background:#f8f8f8;
	text-align:center;
	padding:80px 0 80px 0;
}
.home-service-block {
	padding:15px;
	box-sizing:border-box;
	
}
.home-service-block-inner {
	min-height:370px;
	background:#fff;
	padding:25px 10px;
	box-shadow: 0 0 8px #f1f1f1;
}

.home-service-block img {
	width:120px;
}
.home-page-services h2, .grey-section h2, .white-section h2  {
	font-weight:300;
	letter-spacing:1px;
	font-size:35px;
	color:#000;
	text-align:center;
}
.home-page-services h2:after, .grey-section h2:after, .white-section h2:after {
	content:'';
	display:block;
	width:80px;
	height:5px;
	background:#ff6700;
	margin:15px auto;
}
.home-service-block-inner h3 {
    color: #000;
    font-size: 20px;
    margin: 0;
    letter-spacing: 1px;
	font-weight:300;
}

footer {
	background: rgb(24,103,178);
background: linear-gradient(180deg, rgba(24,103,178,1) 0%, rgba(0,78,152,1) 100%);
padding:30px 0;
color:#fff;
}

footer img {
	max-width:100px!important;
}
footer a {
	color:#fff;
	font-weight:bold;
}

.footer-contact-info {
	padding-bottom:10px;
	margin-bottom:10px;
	border-bottom:solid 1px #cfc3f5;
}

.footer-contact-info ul {
	margin:0;
	padding:0;
	list-style:none;
	display: flex;
    justify-content: space-between;
}

.footer-contact-info ul li {
	display:inline-flex;
	margin:0 15px;
	align-items:center;
}

.footer-contact-info ul li i {
	font-size:30px;
	margin-right:5px;
}

.footer-sitemap ul {
	margin:0;
	padding:0;
	list-style:none;
}
.footer-sitemap ul li {
		display:inline-flex;
	margin:0 15px;
	align-items:center;
}
.innerpage-heading {
	padding:150px 0 60px 0;
	text-align:center;
	background:url(images/innerpage-heading-bg.jpg) right center no-repeat;
	background-size:cover;
}

.innerpage-heading h2 {
	font-weight:600;
	letter-spacing:1px;
	font-size:35px;
	color:#fff;
	margin:0;
	padding:0;
}
.innerpage-heading h2:after {
/*	content:'';
	display:block;
	width:80px;
	height:5px;
	background:#ff6700;
	margin:15px auto;*/
}

.grey-section {
	background:#f8f8f8;
	padding:50px 0;
}

.white-section {
	background:#fffff;
	padding:50px 0;
}

.development-process-section {
	padding:15px 0;
/*	text-align:center;*/
position:relative;
}

.development-process-section i {
	font-size:45px;
	color:#ff6700;
}

.development-process-section ul {
	padding:0;
	text-align:left;
	list-style:none;
}

.development-process-section ul li {
	padding-left:15px;
	position:relative;
}

.development-process-section ul li:before {
	content:'-';
	position:absolute;
	left:0;
	/*padding-right:5px;*/
}

.development-process-section h3 {
	font-weight:500;
}


.development-process-section h3 span {
	padding:5px 10px;
	margin-right:5px;
	color:#fff;
	background:#004e98;
	
}

.about-intro {
	font-size:1.3em;
	text-align:center;
	margin-top:25px;
}

.formfield {
	margin:10px 0;
}

.contact-us-form h3 {
	font-weight:300;
}

.contact-us-form h3 strong {
	font-weight:500;
}
#successMessage {
	text-align:center;
	font-weight:500;
	font-size:25px;
	line-height:150%;
	padding:80px 0;
}
@media all and (max-width: 800px) {
	.home-page-banner {
		padding:50px 0 50px 10px;
	}
	.home-page-banner h2 {
		font-size:20px;
	}
	.home-banner-bg {
		display:none;
	}
	.home-page-services {
		padding:40px 0;
	}
	
	footer, footer .right {
		text-align:center;
	}
	
	.footer-contact-info ul {
		display:block;
	}
	.footer-contact-info ul li {
		display:block;
		width:90%;
	}
	
	 }
