* {
	margin: 0;
	box-sizing: inherit;
}
*:before, *:after {
	box-sizing: inherit;
}
html, body {
	height: 100%;
	box-sizing: border-box;
}
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, label, fieldset, input, textarea, p, blockquote, th, td {
	padding: 0;
	margin: 0;
}
body.maintenance {
	background:#243E93;
}
body.removeScrollBar {
	overflow:hidden !important;
}
fieldset, img {
	border: 0;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
ol, ul {
	list-style: none;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-weight: normal;
	font-style: normal;
}
strong {
	font-weight: bold;
}
em {
	font-style: italic;
}
caption, th {
	text-align: left;
}
h1, h2, h3, h4, h5, h6 {
	font-weight: normal;
	font-size: 100%;
}
q:before, q:after {
	content: '';
}
abbr, acronym {
	border: 0;
}
iframe {
	border: none;
	margin: 0;
	padding: 0;
}
body, td, th {
	font-family: 'avertaregular', sans-serif;
    font-size: 16px;
	color: #fff;
}
body {
	background:#243E93;
	margin: 0;
}
a:link, a:visited, a:active {
	color: #fff;
	text-decoration: none;
	outline: none;
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;    
}
a:hover {
	text-decoration: none;
	color: #68A2D7;
}
.clr {
	clear: both;
	font-size: 1px;
	height: 1px;
}
/* float clearing for IE6 */
* html .clearfix {
	height: 1%;
	overflow: visible;
}
/* float clearing for IE7 */
*+html .clearfix {
	min-height: 1%;
}
/* float clearing for everyone else */
.clearfix:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
	font-size: 0;
}
#wrapper {
	width: 100%;
	min-height: 100%;
	margin: 0 auto -100vh;
	padding: 0;
}
.container-fluid {
	max-width: calc(100% - 200px);
}
@media only screen and (max-width: 1400px) {
	.container-fluid {
		max-width: calc(100% - 140px);
		margin: 0 auto;
	}
}
@media only screen and (max-width: 991px) {
	.container-fluid {
		max-width: calc(100% - 80px);
		margin: 0 auto;
	}
}
@media only screen and (max-width: 575px) {
	.container-fluid {
		max-width: calc(100% - 40px);
		margin: 0 auto;
	}
	#projects .container-fluid {
		max-width: 100%;
	}
}
header {
    height: auto;
    /*
	background-color: rgba(36, 62, 147, .8);
    #243E93
	*/
}
header .navbar-brand svg {
    transition:all 0.2s ease-in-out;
    -moz-transition:all 0.2s ease-in-out;
    -webkit-transition:all 0.2s ease-in-out;
    -o-transition:all 0.2s ease-in-out;   
}
/*
header::after {
    content: '';
    display: block;
    transform: scaleX(0);  
    transition: transform 400ms ease-in-out;
    border-bottom: 1px solid #3450ad;
    position: relative;    
}
header.scrolled::after {
    transform: scaleX(1);
}
*/
header.scrolled {
    height: auto;
}
header.scrolled .navbar-brand svg {
    height: 70px;
}
header .hamburger {
	padding: 15px 0 15px 15px;
}
header .hamburger-inner:before {
    border-radius: 0;
    top: -7px;
}
header .hamburger-inner:after {
    border-radius: 0;
    bottom: -7px;
}
header .mm-categories .hamburger-box {
	width: 26px;
}
header .mm-categories .hamburger-inner,
header .mm-categories .hamburger-inner:after,
header .mm-categories .hamburger-inner:before {
	width:26px;
	height:2px;
	background-color:rgba(255,255,255,.7);
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;    
}
header .mm-categories:hover .hamburger-inner,
header .mm-categories:hover .hamburger-inner:after,
header .mm-categories:hover .hamburger-inner:before,
header .mm-categories .is-active .hamburger-inner,
header .mm-categories .is-active .hamburger-inner:after,
header .mm-categories .is-active .hamburger-inner:before {
	background-color:#fff;
}
header .mm-categories .hamburger.is-active:hover,
header .mm-categories .hamburger:hover {
	opacity:1;
	outline: none;
}
.mm-categories {
	display: none;
}
@media (max-width: 991px) {	
	.mm-categories {
		display: block;
	}
}
.breadcrumb-item+.breadcrumb-item::before {
	color:rgba(255,255,255,.6);
}
.breadcrumb-item.active {
	color: #fff;
	text-decoration: underline;
}
#main_navigation {
    margin: 0 auto;
	padding: 20px 0;
    background-color: rgba(36, 62, 147, .8);
	height: 140px;
}
@media only screen and (max-height: 600px) {
	#main_navigation {
		height: 120px;
	}
}
#main_navigation.xmas {
	background: rgb(36,62,147);
	background: -moz-linear-gradient(180deg, rgba(36,62,147,1) 0%, rgba(36,62,147,0) 100%);
	background: -webkit-linear-gradient(180deg, rgba(36,62,147,1) 0%, rgba(36,62,147,0) 100%);
	background: linear-gradient(180deg, rgba(36,62,147,1) 0%, rgba(36,62,147,0) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#243e93",endColorstr="#243e93",GradientType=1);
}
.scrolled #main_navigation {
    height: auto;
}
#main_navigation .navbar,
#main_navigation .navbar-brand {
	padding: 0;
}
#main_navigation .navbar .nav-item {
	font-size: 20px;
	font-family: 'avertalight', sans-serif;
	margin: 0 15px;
	position: relative;
}
#main_navigation .navbar-dark .navbar-nav .nav-link {
	color: rgba(255,255,255,1);
	padding-left: 0;
	padding-right: 0;
}
#main_navigation .navbar-dark .navbar-nav .nav-link:focus,
#main_navigation .navbar-dark .navbar-nav .nav-link:hover {
	color: rgba(255,255,255,1);
}
#main_navigation .navbar-dark .navbar-nav .nav-item::after {
	content: '';
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 2px;
	bottom: 0;
	left: 0;
	background-color: #fff;
	transform-origin: bottom right;
	transition: transform 0.25s ease-out;
}
#main_navigation .navbar-dark .navbar-nav .nav-item:hover::after {
	transform: scaleX(1);
	transform-origin: bottom left;
}
#mobile_menu {
	display: none !important;
	position: fixed;
	top:0;
	left:0;
	right: 0;
	margin: 0 auto;
	width: 100%;
	height: 100%;
	background-color: #243E93;
	color: #ffffff;
	z-index: 2;
}
#mobile_menu.open {
	display: flex !important;
}
#mobile_menu .navigation_container ul li {
	text-align: center;
	font-size: 30px;
	color: #fff;
	font-family: 'avertabold', sans-serif;
	margin: 20px auto;
	text-transform: uppercase;
}
#mobile_menu .navigation_container ul li a {
	position: relative;
}
#mobile_menu .navigation_container ul li a::after {
	content: '';
	position: absolute;
	width: 100%;
	transform: scaleX(0);
	height: 2px;
	bottom: -1px;
	left: 0;
	background-color: #fff;
	transform-origin: bottom right;
	transition: transform 0.25s ease-out;
}
#mobile_menu .navigation_container ul li a:hover::after {
	transform: scaleX(1);
	transform-origin: bottom left;
}
#mobile_menu .navigation_container ul li a:hover {
	color: #ffffff;
}
#mobile_menu .socials {
	margin-top: 80px;
}
.removeScrollBar {

}
.section h1, .section h2.large {
	font-size: 60px;
	font-weight: 600;
	color: #FFF;
	margin: 40px auto 20px;
	padding: 20px;
	/* text-shadow: .5rem .5rem #172e75; */
}
.section .title {
	font-size: 60px;
	font-weight: 600;
	color: #FFF;
	margin: 0 auto 20px;
}
.section p {
	font-size: 22px;
	font-family: 'avertaregular', sans-serif;
	margin-bottom: 20px;
	line-height: 1.2;
}
.section img.boxshadow {
	box-shadow: .6rem .6rem #172e75;
}
@media only screen and (max-width: 991px) {
	.section .title {
		font-size: 40px;
		margin: 0 auto;
	}
}
#landing {
    min-height: 100vh;
    height: auto;
    position: relative;
	z-index: 1;
    /*
	background-image: url("images/cubes-pattern.svg");
    background-position: center right;
    background-repeat: no-repeat;
	*/
}
#landing .cubes {
	position: absolute;
	width: 520px;
	right: 0;
	top: 150px;
	z-index: 0;
}
#landing h1 {
    font-weight: 700;
    font-size: 96px;
    line-height: 1.1;
    position: absolute;
    width: 60%;
    top: 50%;
    transform: translateY(-50%);
	z-index: 1;
    /*text-shadow: 0.3rem 0.3rem #172e75;*/
}
#moto {
	opacity: 1;
}
@media only screen and (min-width: 768px) {
	#moto {
		opacity: 0;
	}
}

@media only screen and (max-width: 1399px) {
	#landing h1 {
		font-size: 70px;
	}
}
@media only screen and (max-width: 991px) {
	#landing h1 {
		font-size: 50px;
	}
}
@media only screen and (max-width: 776px) {
	#landing h1 {
		font-size: 40px;
		width: 90%;
	}
}
@media only screen and (max-width: 567px) {
	#landing h1 {
		font-size: 32px;
	}
}
#design.section,
#development.section,
#hosting.section {
	margin:50px auto 0;
}
#what-we-do.page, #our-story.page, #our-story,
#design.page,
#development.page,
#hosting.page  {
	padding-top: 20px;
}
#what-we-do.page .services, #our-story.page .text,
#design.page .text,
#development.page .text,
#hosting.page .text {
	min-height: 600px;
}
#our-story.page .text,
#design.page .text,
#development.page .text,
#hosting.page .text {
	font-size: 24px;
	font-weight: 600;
}
#what-we-do .container-fluid,
#our-story .container-fluid,
#design .container-fluid,
#development .container-fluid,
#hosting .container-fluid{
	background-color: #FFF;
	color: #243E93;
	padding: 80px 0 60px;
	position: relative;
    margin-top: 70px;
}
#what-we-do .container-fluid::before, #our-story .container-fluid::before,
#design .container-fluid::before, #development .container-fluid::before, #hosting .container-fluid::before {
	content: '';
    position: absolute;
    top: 0; left: 0;
    border-top: 120px #243E93 solid;
    border-right: 120px solid #FFF;
    width: 0;
}
#what-we-do .container-fluid::after, #our-story .container-fluid::after,
#design .container-fluid::after, #development .container-fluid::after, #hosting .container-fluid::after{
	content: '';
    position: absolute;
    bottom: 0; right: 0;
    border-bottom: 120px #243E93 solid;
    border-left: 120px solid #FFF;
    width: 0;
}
#what-we-do.section .sec_title, #what-we-do.section h1,
#our-story.section h1, #design h1, #development h1,
#hosting h1 {
	font-size: 80px;
	font-weight: 600;
	color: #243E93;
    position: absolute;
    top: 50px;
    left: 100px;
    opacity: 1;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr; 
	text-shadow: none;
	text-transform: none;
}
#what-we-do.section h2, #our-story.section h2,
#design h2, #development h2, #hosting h2{
	font-size: 60px;
	font-family: 'avertasemibold', sans-serif;
}
#what-we-do .services,
#design .services, #development .services, #hosting .services{
	min-height: 800px;
}
#what-we-do .services .cover,
#design .services .cover, #development .services .cover, #hosting .services .cover{
	margin-bottom: 50px;
}

@media only screen and (max-width: 1399px) {
	#what-we-do.section h2, #our-story.section h2,
	#design h2, #development h2, #hosting h2{
		font-size: 40px;
	}
}
@media only screen and (max-width: 1199px) {
    #what-we-do .container-fluid, #our-story .container-fluid,
	#design .container-fluid, #development .container-fluid, #hosting .container-fluid{
        padding: 80px 30px;
    }
    #what-we-do.section h1, #our-story.section h1,
	#design h1, #development h1, #hosting.page h1{
        font-size: 40px;
    }
    .section h1 {
        font-size: 40px;
        font-weight: 600;
    }
    .section p {
        font-size: 20px;
    }
}
@media only screen and (max-width: 1199px) {
	#what-we-do.section .sec_title, 
	#what-we-do.section h1, #our-story.section h1,
	#design h1, #development h1, #hosting h1 {
		font-size: 40px;
		position: relative;
		text-align: center;
		top: inherit;
		left: inherit;
		opacity: 1;
		writing-mode: unset;
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
		padding-bottom: 20px;
	}	
}
@media only screen and (max-width: 991px) {
    #what-we-do .container-fluid, #our-story .container-fluid,
	#design .container-fluid, #development .container-fluid, #hosting .container-fluid{
        padding: 30px;
    }
    #what-we-do.section h1, #our-story.section h1,
	#design h1, #development h1, #hosting.page h1{
        font-size: 30px;
    }
    .section h1 {
        font-size: 30px;
    }
    .section p {
        font-size: 16px;
    }
	#what-we-do .container-fluid, #our-story .container-fluid,
	#design .container-fluid, #development .container-fluid, #hosting .container-fluid{
		padding: 30px;
		margin-top: 0;
	}

	#what-we-do .container-fluid::before, #our-story .container-fluid::before,
	#design .container-fluid::before, #development .container-fluid::before, #hosting .container-fluid::before {
		border-top: 60px #243E93 solid;
		border-right: 60px solid #FFF;
	}
	#what-we-do .container-fluid::after, #our-story .container-fluid::after,
	#design .container-fluid::after, #development .container-fluid::after, #hosting .container-fluid::after{
		border-bottom: 60px #243E93 solid;
		border-left: 60px solid #FFF;
	}
	#design.section,
	#development.section,
	#hosting.section {
		margin:120px auto 0;
	}
}

#what-we-do.section .services h2, #our-story.section h2,
#design.section .services h2, #development.section .services h2, #hosting.section .services h2{
	margin-bottom: 20px;
	position: relative;
}
#what-we-do.section .services h2::after, #our-story.section h2::after,
#design.section .services h2::after, #development.section .services h2::after, #hosting.section .services h2::after{
	content: '';
	position: absolute;
	left: 0;
	bottom: -10px;
	width: 100px;
	height: 5px;
	background-color: #243E93;
}
#what-we-do.section .services .development h2::after {
	left: inherit;
	right: 0;
}
.section .services .more a:link,
.section .services .more a:active,
.section .services .more a:visited {
	color: #575757;
	display: block;
	margin: 5px auto;
}
.section .services .more a:hover {
	color: #243E93;
}
.section .services .design_wrapper h2::after {
	left: 0;
	right: 0;
	margin: 0 auto;
}
.section .services .development_wrapper h2::after {
	left: auto;
	right: 0;
}
.services .item ul li {
	font-size: 24px;
	font-family: 'avertalight', sans-serif;
}
.cube .hosting {
	opacity: 0.26;
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;    
}
.cube .design {
	opacity: 0.26;
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;    
}
.cube .development {
	opacity: 0.26;
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;    
}
.cube .active {
	opacity: 1;
}
.services_header p {
	font-family: 'avertaregular', sans-serif;
}
.page .services h3 {
	font-size: 28px;
	font-family: 'avertasemibold', sans-serif;
}
.page p {
	margin-bottom: 30px;
}
.page strong {
	font-family: 'avertasemibold', sans-serif;
}
#work {
	min-height: 100vh;
}
.service_list h3 {
	font-size: 28px;
	font-family: 'avertasemibold', sans-serif;
	margin-bottom: 10px;
}
.service_list ul {
	padding-left: 30px;
}
@media only screen and (max-width: 991px) {
	.service_list ul {
		padding-left: 50px;
	}
}
.service_list ul li {
	display: block;
	margin-bottom: 5px;
	font-size: 20px;
	font-family: 'avertaregular', sans-serif;
	position: relative;
}
.service_list ul li::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background-image: url("images/square_small.svg");
	background-repeat: no-repeat;
	position: absolute;
	left: -30px;
	top: 4px;
}
.service_list .highlight {
	padding: 20px 40px;
	background-color: #243E93;
	color: #fff;
	font-size: 20px;
	font-family: 'avertalight', sans-serif;
	text-align: center;
	margin: 30px auto;
}
.services_list ul li {
	background-color: #243E93;
	color: #fff;
	padding: 10px 20px;
	margin-bottom: 10px;
	border-left: 7px solid #5E84FF;
	box-sizing: border-box;
}
#cube {
	max-width: 300px;
}
@media only screen and (max-width: 1600px) {
	#cube {
		max-width: 90%;
	}
}
@media only screen and (max-width: 1399px) {
	#what-we-do.section .services .development_wrapper h2::after {
		left: inherit;
		right: 0;
	}
}
@media only screen and (max-width: 991px) {
	#what-we-do.section .services h2::after,
	#what-we-do.section .services .development_wrapper h2::after {
		left: 0;
		right: inherit;
		width: 100%;
		height: 2px;
	}
	#what-we-do.section .services .stretched-link::after {
		position: relative;
	}
	#what-we-do.section .services .services_wrapper {
		width: 80%;
		margin: 0 auto;
	}
	.services .item ul {
		margin-bottom: 10px;
	}
	.services .item ul li {
		display: inline-block;
		position: relative;
		font-size: 20px;
	}
	.services .item ul li:not(:last-child) {
		margin-right: 15px;
	}
	.services .item ul li:not(:last-child)::after {
		content: '/';
		font-weight: 700;
		margin-left: 15px;
		display: inline-block;
	}
	.services .item .more {
		display: block;
		clear: both;
	}
	.services_list {
		padding: 0 20px;
		font-size: 18px;
		margin: 20px auto;
	}
	.service_list ul li {
		font-size: 16px;
	}
	.services_wrapper .item {
		text-align: left;
		margin-bottom: 30px !important; 
	}
	.section .services .item h2::after {
		left: 0;
		right: 0;
		margin: 0 auto;
	}
	.page p {
		padding: 0;
	}
	.cube {
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	#main_navigation .container-fluid {
		flex-wrap: initial;
	}
	.services .item ul li {
		font-size: 18px;
	}
	header .navbar-brand svg {
		max-width: 80%;
	}
}
@media only screen and (max-width: 567px){
	.services .item ul li {
		display: block;
	}
	.services .item ul li:not(:last-child) {
		margin-right: 0;
	}
	.services .item ul li:not(:last-child)::after {
		display: none;
	}
	#what-we-do.section .services .stretched-link::after {
		position: absolute;
	}
	#what-we-do.section .services .services_wrapper {
		width: 90%;
	}
	
}
.button-letsgo {
	position: relative;
}
.button-letsgo span {
	width: 240px;
	height: 240px;
	display: inline-block;
	border-radius: 50%;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border: 3px solid #243e93;
	color: #243e93;
	font-size: 32px;
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;  
	text-align: center;
	line-height: 1.1;
	padding: 0 15px;
}
.button-letsgo span:hover {
	background-color: #243e93;
	color: #fff;
	cursor: pointer;
}
.button-letsgo.error span {
	background-color: #d63239;
	color: #fff;
	border: 3px solid #d63239;
}
.button-letsgo.thanks span {
	background-color: #243e93;
	color: #fff;
}
#contact-us,
#contact-us .msg,
#contact-us .form {
	min-height: calc(100vh - 140px);
}
#contact-us.inside .msg,
#contact-us.inside .form {
	min-height: 130vh
}
#contact-us.section.inside {
	margin: 120px auto 0;
}
#contact-us.section.inside h1,
#contact-us.section.inside h2.large {
	text-align: center;
	text-transform: uppercase;
}
@media only screen and (max-width: 767px) {
	#contact-us.section.inside h1,
	#contact-us.section.inside h2.large {
		font-size: 40px;
	}
}
#contact-us .msg {
	background-color: #fff;
	color: #243E93;
	padding: 20px;
	position: relative;
}
@media only screen and (min-width:991px){
	#contact-us,
	#contact-us .msg,
	#contact-us .form {
		min-height: calc(120vh - 140px);
	}
	#contact-us .msg::before {
		content: '';
		position: absolute;
		top: 0;
		left: -50%;
		width: 50%;
		background-color: #fff;
		height: 100%;
	}
}
#contact-us .title {
	color: #243E93;
	font-size: 60px;
	line-height: 1.1;
	font-family: 'avertasemibold', sans-serif;
	text-align: left;
	font-weight: 400;
	margin: 0 auto;
	padding-bottom: 0;
	text-transform: none;
}
#contact-us .form {
	padding: 20px;
}
#contact-us .form-control,
#career .form-control {
	background-color: transparent !important;
	border: none;
	border-bottom: 1px solid #fff;
	border-radius: 0;
	color: #fff;
}
#contact-us .form-control:focus,
#career .form-control:focus{
	outline: none;
	box-shadow: none;
}
#contact-us textarea.form-control,
#career textarea.form-control{
	height: 160px;
	resize: none;
}
#contact-us .form-floating>label,
#career .form-floating>label{
	color: #EBEBEB;
}
#contact-us .form-floating>.form-control:focus,
#contact-us .form-floating>.form-control:not(:placeholder-shown),
#career .form-floating>.form-control:focus,
#career .form-floating>.form-control:not(:placeholder-shown) {
    padding-top: 2.2rem;
    padding-bottom: 1rem;
}
.form-floating > .form-control-plaintext ~ label::after,
.form-floating > .form-control:focus ~ label::after,
.form-floating > .form-control:not(:placeholder-shown) ~ label::after,
.form-floating > .form-select ~ label::after {
	background-color: transparent;
}
.form-select {
	--bs-form-select-bg-img: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23FFFFFF' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
	color: #fff;
	background-color: transparent !important;
	border: none;
	border-bottom: 1px solid #fff;
	border-radius: 0;
}
.form-select:focus {
	box-shadow: none;
	border-bottom: 1px solid #fff;
}
.form-select option {
	background: #243E93!important;
	color: #fff!important;
}
.form-select option[selected],
.form-select option:hover {
	background: #243E93!important;
	color: #fff!important;
}
@media only screen and (max-width: 767px) {
	#contact-us.inside {
		margin: 140px auto 0;
	}
	#contact-us .title {
		font-size: 40px;
	}
	#contact-us,
	#contact-us .msg,
	#contact-us .form {
		min-height: inherit;
	}
	#contact-us.inside .msg,
	#contact-us.inside .form {
		margin-top: inherit;
		min-height: inherit;
	}

}
#worked-with {
	padding: 50px 0;
	margin: 100px auto 0;
    background-color: #fff;
    color: #243E93;
}
#worked-with.section .title {
	color: #243E93;
	margin-bottom: 0;
}
#worked-with .client img {
	filter: grayscale(100%);
	transition:all 0.2s ease-in-out;
	-moz-transition:all 0.2s ease-in-out;
	-webkit-transition:all 0.2s ease-in-out;
	-o-transition:all 0.2s ease-in-out;
}
#worked-with .client:hover img {
	filter: grayscale(0%);
}
#projects .projects_wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    position: relative;
}
#projects .projects_wrapper.list_section p {
	font-family: 'avertalight', sans-serif;
    font-size: 20px;
	line-height: 1.1;
}
#projects .sp {
    font-size: 14px;
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
    -webkit-writing-mode: vertical-lr;
    -ms-writing-mode: tb-lr;
    writing-mode: vertical-lr;    
}
#projects.section.inside,
#what-we-do.section,
#our-story.section.inside {
    margin: 50px auto 0;
}
#projects.section.inside.landing {
    margin: 120px auto 0;
}
@media only screen and (max-width: 991px) {
	#what-we-do.section.page{
		margin: 120px auto 50px;
	}
	#projects.section.inside.landing {
		margin: 140px auto 0;
	}
	#projects .projects_wrapper.list_section p {
		font-size: 18px;
		line-height: 1.2;
	}
}
.list_section article {
    flex-basis: 35%;
    margin-bottom: 24px;
}
.list_section article:nth-child(2n) {
    margin-top: 150px;
}
.list_section article figure {
    margin: 0;
}
.list_section article h2 {
    font-size: 30px;
    font-weight: 300;
    margin: 15px auto;
}
@media only screen and (max-width: 991px) {
	.list_section article:nth-child(2n) {
		margin-top: 0;
	}
	.list_section article {
		flex-basis: 80%;
	}
	#projects.section.inside,
	#what-we-do.section.inside,
	#our-story.section.inside {
		margin: 120px auto 0;
	}
	.list_section article h2 {
		font-size: 26px;
	}
}
.title {
	font-size: 60px;
    text-align: center;
	color: #fff;
    font-family: 'avertabold', sans-serif;
    padding-bottom: 50px;
	margin: 0 auto;
    text-transform: uppercase;
}
#our_services {
    padding: 50px 0 100px;
    margin:50px auto;
    background-color: #fff;
    color: #243E93; 
}
#our_services .title {
    color: #243E93 !important;
    padding-bottom: 10px;
}
#our_services .description {
    font-size: 20px;
    font-family: 'avertalight', sans-serif;
    margin-bottom: 40px;
    text-align: center;    
}
#what-we-do .development_wrapper,
#what-we-do .design_wrapper,
#what-we-do .hosting_wrapper {
    position: relative;
}
#our_services .services_wrapper h2 {
    font-size: 46px;
    line-height: 1.1;
    font-family: 'avertabold', sans-serif;
    margin-bottom: 20px;
    position: relative;
}
#our_services .services_wrapper h2::before {
    font-family: 'Font Awesome 6 Pro', sans-serif;
    padding-right: 10px;
    font-size: 38px;
}
#our_services .services_wrapper .desing h2::before {
    content: '\f618';
}
#our_services .services_wrapper .development h2::before {
    content: '\f121';
}
#our_services .services_wrapper .hosting h2::before {
    content: '\f120';
}
#our_services .services_wrapper ul {
    margin-left: 2px;
}
#our_services .services_wrapper ul li {
    font-size: 20px;
    margin-bottom: 10px;
    padding-left: 20px;
    position: relative;
}
#our_services .services_wrapper ul li::before {
    content: '-';
    position: absolute;
    top: 0;
    left: 0;
}
.services_wrapper .item {
	margin: 0 auto;
}
.effects_scan, .effects_scan_timer, .effects_scan_callback { opacity: 0; }
@media only screen and ( max-width:767px) {
    .enllaxImages{
        opacity: 0;
    }
}
#project {
    margin: 150px auto 0;
}
#project .cover {
    position: relative;
}
#project .cover .click_to_view_site {
	width: 120px;
	position: absolute;
	right: -60px;
	top: calc(50% + 32px);
	transform: translateY(-50%);
}
@media  only screen and (max-width: 767px) {
	#project .cover .click_to_view_site {
		width: 100px;
		position: absolute;
		right: 0;
		left: 0;
		top: calc(50% + 32px);
		transform: translateY(-50%);
		margin: 0 auto;
	}
}
#project .cover picture img {
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    box-shadow: 10px 22px 47px 0 rgba(30,51,120,0.61);
    -webkit-box-shadow: 10px 22px 47px 0 rgba(30,51,120,0.61);
    -moz-box-shadow: 10px 22px 47px 0 rgba(30,51,120,0.61);
}
#project.section h1 {
    font-size: 60px;
	font-weight: 600;
	color: #FFF;
    margin: -7px auto !important;
    text-align: center;
    z-index: 10;
	padding: 0;
    position: relative;
	text-shadow: 0 3px 5px rgb(0 0 0 / 20%);
}
#project .tags {
    margin: 30px auto;
}
#project .tags ul li {
    display: inline-block;
    margin: 0 15px;
    font-size: 26px;
    font-family: 'avertalight', sans-serif;
}

#project .logo-services {
    margin: 100px auto;
}
#project .logo {
    text-align: center;
}
#project .logo img {
    max-width: 300px;
    margin: 0 auto;
}
#project .services {
    font-size: 60px;
    font-family: 'avertaregular', sans-serif;
    border-left: 1px solid #fff;
}
#project .text {
    margin: 100px auto;
}
#project .text h2 {
    font-size: 40px;
	font-weight: 600;
	color: #FFF;
    text-align: center;
    margin: 10px auto;
}
#project .box-photo-text {
	margin-bottom: 20px;
}
#project .box-photo-text .text {
	padding: 0 10%;
}
#project .box-photo-text .text h2 {
	text-align: left;
}
#project .box-photo-text:nth-child(even) .data {
	order: 1;
}
#project .box-photo-text:nth-child(even) .image {
	order: 2;
}
#project .text .description {
    margin: 20px auto;
}
#project .text .description p {
    text-align: center;
    margin-bottom: 20px;
}
#project .screen-container {
    position: relative;
    margin: 120px auto 180px;
}
#project .screen-container::before {
    content: '';
    width: 75%;
    height: calc(100% + 150px);
    position: absolute;
    top: -75px;
    left: -25%;
    background-color: #fff;
    z-index: 0;
}
#project .screen-container.dark::before {
    background-color: #082A5B;
}
#project .screen-container-half {
    position: relative;
}
#project .screen-container-half .image {
    width: 52%;
}
#project .screen-container-half .image.left {
    position: relative;
    z-index: 0;
}
#project .screen-container-half .image.right {
	position: absolute;
	top: 100px;
	transform: none;
	right: 0;
	z-index: 10;
}
#project .screen-container .desktop {
    width: 90%;
    position: relative;
    z-index: 10;
}
#project .screen-container .mobile {
    position: absolute;
    width: 20%;
    right: 0;
    bottom: -30px;
    z-index: 20;
}
#project .screen-container img,
#project .screen-container-half .image img{
    border-radius: 10px;
    -moz-border-radius: 10px;
    -webkit-border-radius: 10px;
    box-shadow: 10px 22px 47px 0 rgba(30,51,120,0.61);
    -webkit-box-shadow: 10px 22px 47px 0 rgba(30,51,120,0.61);
    -moz-box-shadow: 10px 22px 47px 0 rgba(30,51,120,0.61);
}

@media only screen and (max-width: 767px) {
    #project .logo-services{
        margin: 60px auto;
    }
    #project .logo img {
        max-width: 240px;
        margin: 0 auto;
    }
    #project .logo {
        padding: 0 0 30px;
    }
    #project .services {
        font-size: 36px;
        border-left: none;
        border-top: 1px solid rgba(255,255,255,.6);
        padding: 30px 0 0;
    }
    #project .services ul li {
        display: block;
        margin: 0 auto;
        text-align: center;
        font-family: 'avertalight', sans-serif;
    }
    #project .tags ul li {
        display: inline-block;
        margin: 0 5px;
        font-size: 16px;
        font-family: 'avertalight', sans-serif;
    }
	#projects.section .title {
		padding-bottom: 20px;
	}
	#projects .sp {
		position: relative;
		top: inherit;
		left: inherit;
		opacity: 1;
		writing-mode: unset;
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
		margin-bottom: 30px;
		display: block;
		text-align: center;		
	}
	#project.section h1 {
		font-size: 30px;
		z-index: 2;
	}
}

@media only screen and (max-width: 576px) {
    #project .text h2 {
        font-size: 32px;
    }
    #project .screen-container .desktop {
        width: 100%;
    }
    #project .screen-container .mobile {
        position: relative;
        width: 50%;
        margin: 20px auto;
        right: inherit;
        text-align: center;
    }
    #project .screen-container-half .image {
        width: 90%;
        text-align: center;
        margin: 0 auto;
    }
    #project .screen-container-half .image.right {
        position: relative;
        margin: 30px auto;
        top: 30px;
        transform: translateY(0);
    }
}
#career.section.inside {
	padding: 140px 0 80px;
}
#career.section.opportunity {
	padding: 140px 0 0;
}
#career.section.inside .container-fluid {
	background-color: rgb(255, 255, 255);
	color: rgb(36, 62, 147);
	position: relative;
	padding: 80px 0 60px;
}
#career.section.inside .container-fluid::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	border-top: 120px solid rgb(36, 62, 147);
	border-right: 120px solid rgb(255, 255, 255);
}
#career.section.inside .container-fluid::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	border-bottom: 120px solid rgb(36, 62, 147);
	border-left: 120px solid rgb(255, 255, 255);
}
#career .container-fluid,
#career .container-fluid p {
	font-family: 'avertaregular', sans-serif;
	font-size: 18px;
	line-height: 1.5;
}
#career .text {
	padding: 0 50px;
}
#career .container-fluid .msg {
	background-color: #fff;
	color:#243E93;
	padding: 40px 40px 10px 10px;
	position: relative;
}
#career .container-fluid ul {
	padding-left: 30px;
	margin-bottom: 20px;
}
#career .container-fluid ul li {
	position: relative;
	margin-bottom: 10px;
}
#career .container-fluid ul li::before {
	content: '';
	display: block;
	width: 20px;
	height: 20px;
	background-image: url("images/square_small.svg");
	background-repeat: no-repeat;
	position: absolute;
	left: -30px;
	top: 4px;
}
#career.section.opportunity h1 {
	padding: 0;
	text-align: center;
	margin: 20px auto;
}
#career.section.inside h1 {
	font-size: 80px;
	font-weight: 600;
	color: #243E93;
	position: absolute;
	top: 50px;
	left: 80px;
	opacity: 1;
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
	-webkit-writing-mode: vertical-lr;
	-ms-writing-mode: tb-lr;
	writing-mode: vertical-lr;
	text-shadow: none;
	text-transform: none;
}
#career.section.inside h2 {
	font-size: 32px;
	font-family: 'avertasemibold', sans-serif;
	margin-bottom: 30px;
	text-align: center;
}
#career .position {
	background-color: #243E93;
	font-size:22px;
	color: #fff;
	margin-bottom: 10px;
	border-left: 7px solid #5E84FF;
	box-sizing: border-box;
	position: relative;
	z-index: 1;
}
#career .position::after {
	content: '\f061';
	font-family: 'Font Awesome 6 Pro', sans-serif;
	font-size: 20px;
	font-weight: 300;
	color: #FFF;
	right: 15px;
	top: 50%;
	transform: translateY(-50%);
	position: absolute;
	z-index: 0;
}
#career .position:last-child {
	border-bottom: 1px solid #243E93;
}
@media only screen and (max-width: 767px) {
	#career .position h3 {
		font-size: 18px;
	}
}
#career .position a:link,
#career .position a:active,
#career .position a:visited {
	color: #FFF;
	display: block;
	padding: 10px 20px;
}
#career .position a:hover {
	color: #FFF;
	background-color: #082A5B;
}
#career .file-selection {
	padding: 1rem .75rem;
	border-bottom: 1px solid #fff;
	position: relative;
}
#career .browse-file::after {
	content: '\f1c1';
	font-family: 'Font Awesome 6 Pro', sans-serif;
	color:#fff;
	position: absolute;
	right: .75rem;
	bottom: 8px;
	font-size: 32px;
	font-weight: 200;
}
#career .selected-file {
	min-height: 46px;
	position: relative;
}
#career .selected-file .remove-file {
	padding: 0 10px;
}

@media only screen and (min-width: 992px) {
	#career .container-fluid .msg::before {
		content: '';
		position: absolute;
		top: 0;
		left: -50%;
		width: 50%;
		background-color: #fff;
		height: 100%;
	}
	#career.section.opportunity h1 {
		padding: 0;
		text-align: left;
	}
}
@media only screen and (max-width: 991px) {
	#career.opportunity .form {
		margin: 30px auto 0;
	}
	#career.section.opportunity h1 {
		margin: 0 auto 20px;
	}
	#career.section.opportunity {
		padding: 140px 0 0;
	}
	#career.section.opportunity h1 {
		margin: 20px auto;
	}
	#career .container-fluid .msg {
		padding: 30px;
	}
}
@media only screen and (max-width: 1199px) and (min-width: 991px) {
	#career .container-fluid .msg {
		padding: 40px 40px 40px 11px;
	}
	#career.section.opportunity h1 {
		padding: 0;
		text-align: left;
	}
}
@media only screen and (max-width: 1199px) {
	#career.section.inside {
		padding: 140px 0 0;
	}
	#career.section.inside h1 {
		font-size: 40px;
		position: relative;
		text-align: center;
		top: inherit;
		left: inherit;
		opacity: 1;
		writing-mode: unset;
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
		padding-bottom: 0;
		margin-top: 0;
		padding-top: 30px;
	}
	#career.section.inside .container-fluid {
		padding: 0 0 60px 0;
	}
	#career.section.inside .container-fluid::before {
		border-top: 60px solid rgb(36,62,147);
		border-right: 60px solid rgb(255,255,255);
	}
	#career.section.inside .container-fluid::after {
		border-bottom: 60px solid rgb(36,62,147);
		border-left: 60px solid rgb(255,255,255);
	}
}
/* CHECKBOX - RADIO */
.abc-checkbox-netstream label::before {
	background-color: transparent !important;
}
.abc-checkbox-netstream input[type="checkbox"]:checked + label::before, .abc-checkbox-netstream input[type="radio"]:checked + label::before {
    background-color: transparent !important;
    border-color: #fff;
}
.abc-checkbox-netstream input[type="checkbox"]:checked + label::after, .abc-checkbox-netstream input[type="radio"]:checked + label::after {
    color: #fff;
}
.abc-radio-netstream input[type="radio"]:checked + label::before {
    border-color: #fff;
}
.abc-radio-netstream input[type="radio"]:checked + label::after {
    background-color: transparent !important;
}
.abc-radio-netstream input[type="radio"] + label::after {
    background-color: transparent !important;
}

.btn-blue-outline {
    background-color: #243E93;
    color: #fff;
    border: 1px solid #fff;
    border-radius: 0;
}
.btn-blue-outline.large {
    padding: 10px 15px;
}
.btn-blue-outline:hover {
    background-color: #fff;
    color: #243E93;
}

.btn-blue {
    background-color: #FFF;
    color: #243E93;
    border: 1px solid #243E93;
    border-radius: 0;
}
.btn-blue:hover {
    background-color: #243E93;
    color: #FFF;
    border-color: #243E93;
}

.push {
	height: 100vh;
}
footer {
	position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
	width: 100%;
	height: auto;
	min-height:100vh;
    transition: opacity .3s ease-out,transform 1s ease-out;
    opacity: 0;
    will-change: transform;
    z-index: 100000;
    transform: translateY(100%);
	background-color:#fff;
	/*
	background-image: url("images/blue-cube-pattern.svg");
	background-repeat: no-repeat;
	background-position: top right;
	*/
	color: #243E93;
}
footer.open .cubes {
	position: absolute;
	width: 520px;
	right: 0;
	top: 0;
	z-index: 0;
}
footer.open {
	transform: translateY(0);
    opacity: 1;
	min-height:inherit !important;
}
footer.mobile {
    position: relative;
    min-height: inherit;
    transform: translateY(130%);
    opacity: 1;
    transition: none;
	padding-top: 15px;
}
footer.mobile .logo {
	display: none;
}
footer.mobile.open {
	transform: none;
}
footer a:link,
footer a:active,
footer a:visited {
	color: #243E93;
}
footer a:hover {
	color: #243E93;
	text-decoration: underline;
}
footer .contact-details {
	height: auto;
	min-height: 100vh;
}
footer .logo {
	padding: 60px 0;
}
footer .heading {
	margin-bottom: 60px;
	font-size: 52px;
	font-weight: 400;
}
footer .menu {
	margin-bottom: 60px;
	width: 100%;
}
footer .menu .item .icon {
	color: #68A2D7;
	font-size: 24px;
}
footer .menu .item .label {
	font-size: 18px;
	font-weight: 400;
}
footer .menu .item span {
	display: block;
}
footer .menu .value {
	font-size: 22px;
}
footer .menu .joinus {
    padding-top: 23px;
    font-weight: 800;
    font-size: 26px;
}
footer .copyrights {
	padding-bottom: 50px;
}
@media only screen and (max-width: 1399px) {
	footer .menu .item {
		display: block;
		margin-bottom: 20px;
	}
}

@media only screen and (max-width: 991px) {
	footer .cubes {
		display: none;
	}
	footer .contact-details {
		height: auto;
		min-height: inherit;
	}

}
@media only screen and (max-width: 767px) {
	footer {
		z-index: 1 !important;
	}
	footer .logo {
		padding: 20px 0;
	}
}
@media only screen and (max-width: 767px) {
	footer .logo img {
		max-width: 60%;
	}
	footer.open {
		overflow-y: scroll;
	}
	footer .heading {
		margin-bottom: 20px;
		font-size: 40px;
	}
	footer .menu {
		margin-bottom: 20px;
	}
	footer .menu .item span {
		display: inline-block;
	}
	footer .menu .value {
		font-size: 18px;
	}
	footer .menu .value a {
		display: block;
		margin: 10px auto;
	}
	footer .menu .joinus {
		padding-top: 10px;
	}
}
@media only screen and (max-width: 380px) {
	footer.mobile {
		transform:  translateY(110%);
	}
}
@media only screen and (min-width: 390px) {
	footer.mobile {
		transform:  translateY(140%);
	}
}
@media only screen and (min-width: 400px) {
	footer.mobile {
		transform:  translateY(160%);
	}
}

.container_error {
	position: absolute;
	top:50%;
	transform: translateY(-50%);
	left: 0;
	right: 0;
	margin: 0 auto;
}
.container_error h1 {
	font-size: 60px;
	text-align: center;
	color: #fff;
	font-family: 'avertabold', sans-serif;
}
.container_error p {
	text-align: center;
	font-size: 24px;
	font-family: 'avertaregular', sans-serif;
}
.maintenance_mode_wrapper {
	font-family: 'avertaregular', sans-serif;
	padding: 300px 0 0 0;
}
.maintenance_mode {
	width: 600px;
	margin: 0 auto;
	padding: 30px;
}
.maintenance_text {
	text-align: center;
	font-size: 24px;
	font-weight:700;
	color:#fff;
	line-height: 1.5em;
}
.maintenance_logo {
	margin:0 auto 30px auto;
	text-align:center;
}

/* BACK TO TOP */
.cd-top {
    display: inline-block;
    height: 40px;
    width: 40px;
    position: fixed;
    bottom: 20px;
    right: 10px;
    z-index: 10000;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    text-indent: 100%;
    white-space: nowrap;
    background: rgba(237, 28, 36, 0.8) url(images/cd-top-arrow.svg) no-repeat center 50%;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity .3s 0s, visibility 0s .3s;
    -moz-transition: opacity .3s 0s, visibility 0s .3s;
    transition: opacity .3s 0s, visibility 0s .3s;
}
.cd-top:hover {
    background-color: #c9262d;
    opacity: 1;
}
.cd-top.cd-is-visible, .cd-top.cd-fade-out, .no-touch .cd-top:hover {
    -webkit-transition: opacity .3s 0s, visibility 0s 0s;
    -moz-transition: opacity .3s 0s, visibility 0s 0s;
    transition: opacity .3s 0s, visibility 0s 0s;
}
.cd-top.cd-is-visible {
    visibility: visible;
    opacity: 1;
}
.cd-top.cd-fade-out {
    opacity: .5;
}
.no-touch .cd-top:hover,
.cd-top.cd-fade-out:hover {
    background-color: #c9262d;
    opacity: 1;
}
.reCAPTCHA_tos {
	font-size:11px !important;
	line-height: initial;
	order: 5;
}
.grecaptcha-badge {
  z-index:5050;
  visibility: hidden;
  opacity: 0;
  transition: linear opacity 1s;
}

.grecaptcha-badge.show {
  visibility: visible;
  opacity: 1;
  transition: linear opacity 1s;
}
em.error, label.error, span.error {
 	font-size: 13px;
    color: #ADF7FF;
}

label#custom-file-label.error_force,
span#custom-file-label.error_force{
    border: 1px solid #ADF7FF !important;
    color: inherit;
}

#contact-form label.error,
#career label.error{
    display:none;
}
#contact-form .form-control.error {
    border-bottom: 1px solid #ADF7FF;
}
input.error, input.error:focus {
    border: 1px solid #ADF7FF;
}
select.error, select.error:focus {
    border: 1px solid #ADF7FF;
}
textarea.error, textarea.error:focus {
    border: 1px solid red;
}

.mf-cursor.netstream:before {
	background-color: #243E93 !important;
}
figure img,
picture img {
	aspect-ratio: auto 640 / 360;
}
.title_sticky {
	display: none;
}
@media only screen and (max-width: 767px) {
	.title_sticky {
		display: block;
	}
}
/* XMAS */
@keyframes snow {
	0% {background-position: 0 0, 0 0, 0 0;}
	100% {background-position: 500px 1000px, 400px 400px, 300px 300px;}
}
@-moz-keyframes snow {
	0% {background-position: 0 0, 0 0, 0 0;}
	100% {background-position: 500px 1000px, 400px 400px, 300px 300px;}
}
@-webkit-keyframes snow {
	0% {background-position: 0 0, 0 0, 0 0;}
	100% {background-position: 500px 1000px, 400px 400px, 300px 300px;}
}
@-ms-keyframes snow {
	0% {background-position: 0 0, 0 0, 0 0;}
	100% {background-position: 500px 1000px, 400px 400px, 300px 300px;}
}
.xmas_snow {
	background-image: url(images/xmas/snow.png), url(images/xmas/snow3.png), url(images/xmas/snow2.png);
	-webkit-animation: snow 20s linear infinite;
	-moz-animation: snow 20s linear infinite;
	animation: snow 20s linear infinite;
}
