html{height:100%;width:100%;-ms-text-size-adjust:none;}
div,dl,dt,dd,ul,ol,li,nav,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,button,textarea,p,blockquote,th,td,a,header,footer,main,span{margin:0px;padding:0px;border-width:0px;border-style:solid;border-color:transparent;-webkit-transform-origin:left top;-ms-transform-origin:left top;-o-transform-origin:left top;transform-origin:left top;background-repeat:no-repeat;box-sizing: border-box;}
body {
    margin: 0;
	padding: 0;
    background-color: #FFF;
	color: #1f3181;
	font-family: 'Assistant', sans-serif;
	font-weight: 400;
	font-size: 20px;
	line-height: 1.2;
	width: 100%;
	height: 100%;
	text-align: center;
}
.nowrap {
	white-space: nowrap;
	font-style: normal;
}
.wrapper {
	margin: 0 auto;
	position: relative;
	direction: rtl;
	min-height: 100%;
}
.header {
	position: relative;
	width: 100%;
	height: 760px;
	background: url(../images/topbg.jpg) no-repeat center center;
	overflow: hidden;
}
.torch_wrapper {
	position: absolute;
	top: 132px;
	right: 50%;
	margin-right: -1140px;
	z-index: 100;
}
.torch {
	background: rgb(255,255,255);
	background: linear-gradient(90deg, rgba(255,255,255,0.85) 0%, rgba(255,255,255,0.65) 100%);
	width: 700px;
	height: 30px;
	border-radius: 50px 0 0 50px;
	transform-origin: left;
	animation: rotate 7s infinite ease-in-out;
	display: flex;
	justify-content: flex-end;
	transform: perspective(70px) rotateY(200deg);
	-webkit-transform: perspective(70px) rotateY(200deg);
	-moz-transform: perspective(70px) rotateY(200deg);
	-ms-transform: perspective(70px) rotateY(200deg);
	-o-transform: perspective(70px) rotateY(200deg);
	box-shadow: 0px 0px 5px 1px white;
	opacity: 1;
	outline: 1px solid transparent; /* fixes pixelation on stupid ms edge */
}
.glow {
	width: 200px;
    height: 200px;
	background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 63%);
    position: absolute;
    left: -100px;
    top: -90px;
	border-radius: 100px;
	animation: glowing 7s infinite ease-in-out;
	transform-origin: center center;
}
.glow2 {
	width: 1800px;
    height: 1800px;
	background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(255,255,255,0) 63%);
    position: absolute;
    left: -900px;
    top: -900px;
	border-radius: 50%;
	animation: bright 7s infinite ease-in-out;
}
@keyframes rotate {
	0% {
		transform: perspective(70px) rotateY(-270deg);
		-webkit-transform: perspective(70px) rotateY(-270deg);
        -moz-transform: perspective(70px) rotateY(-270deg);
        -ms-transform: perspective(70px) rotateY(-270deg);
        -o-transform: perspective(70px) rotateY(-270deg);
		opacity: 0.2;
	}
	75% {
		opacity: 1;
	}
	95% {
		opacity: 0.2;
	}
	100% {
		transform: perspective(70px) rotateY(90deg);
		-webkit-transform: perspective(70px) rotateY(90deg);
        -moz-transform: perspective(70px) rotateY(90deg);
        -ms-transform: perspective(70px) rotateY(90deg);
        -o-transform: perspective(70px) rotateY(90deg);
		opacity: 0;
	}
}
@keyframes glowing {
	0% {
		transform: scale(0.3);
		opacity: 0.3;
	}
	30% {
		transform: scale(0.3);
		opacity: 0.6;
	}
	50% {
		transform: scale(1);
		opacity: 1;
	}
	70% {
		transform: scale(0.3);
		opacity: 0.6;
	}
	100% {
		transform: scale(0.3);
		opacity: 0.3;
	}
}
@keyframes bright {
	0% {
		opacity: 0;
	}
	42% {
		opacity: 0.3;
	}
	50% {
		opacity: 0.8;
	}
	58% {
		opacity: 0.3;
	}
	100% {
		opacity: 0;
	}
}
.max_width {
	max-width: 900px;
	position: relative;
	margin: auto;
	text-align: right;
}
p { margin: 10px 0; display: inline-block; }
h1,h2,h3,h4 { color: #1480c4; line-height: 1; padding: 0; }
h1 {
	font-size: 72px;
	font-weight: 700;
	margin-bottom: 8px;
	letter-spacing: -1px;
}
h2 {
	font-size: 38px;
	font-weight: 400;
}
h3 {
	font-size: 34px;
	font-weight: 600;
	margin-bottom: 15px;
}
#services h3 {
	margin-bottom: 30px;
}
.darker { color: #1f3181; }
.link1 {
	color: #1f3181;
	text-decoration: none;
}
.link1:hover { text-decoration: underline; }
.sep { margin: 0 10px; }
.top_wrapper { position: relative; z-index: 210;}
.top_logo {
	float: right;
	margin: 20px 25px 0 0;
}
.top_phone {
	float: left;
	padding: 10px 15px 10px 25px;
	background: #3692cd;
	color: #FFF;
	font-weight: 600;
	line-height: 22px;
	font-size: 22px;
	margin-top: 25px;
}
.top_phone a {
	text-decoration: none;
	color: #FFF;
}
.top_menu {
	float: left;
	font-size: 22px;
	margin-top: 25px;
	padding: 0;
}
.top_menu li {
	list-style-type: none;
	float: left;
	padding: 10px 0;
}
.top_menu li a {
	display: block;
	color: #3692cd;
	text-decoration: none;
	line-height: 22px;
	padding: 0 15px;
	border-right: 2px solid #FFF;
}
.top_menu li a:hover { color: #1f3181; }
.top_menu li:last-child a { border-right: none; }
#mobile_menu_button {
	position: absolute;
	top: 25px;
	left: 10px;
	width: 30px;
	height: 30px;
	background: url(../images/burger.png) no-repeat center center;
	border: none;
	outline: none;
	display: none;
}
#mobile_menu_button.open {
	background-image: url(../images/close.png);
}
.top_title { margin-top: 215px; position: relative; z-index: 200; }
.top_form {
	position: absolute;
	bottom: 75px;
	text-align: center;
	width: 100%;
	z-index: 250;
}
.top_form_holder {
	text-align: right;
	padding: 35px 60px;
	background: #ffffffd0;
	background: linear-gradient(0deg, rgba(255,255,255,0.35) 0%, rgba(255,255,255,1) 100%);
	display: inline-block;
	margin: auto;
}
.form_title {
	font-size: 27px;
	font-weight: 600;
	margin-bottom: 16px;
}
.form {	width: 900px; }
.form label { margin-left: 5px; }
.field {
	float: right;
	padding: 5px 0 5px 15px;
	position: relative;
}
.text_box {
	font-family: 'Assistant', sans-serif;
	font-size: 18px;
	color: #252525;
	background: #FFF;
	border: none;
	height: 32px;
	width: 204px;
	line-height: 32px;
	padding: 0 8px;
	vertical-align: middle;
	margin: 0;
	outline: none;
}
.top_form .text_box { border: 1px solid #07134a; }
.send {
	font-family: 'Assistant', sans-serif;
	font-size: 18px;
	font-weight: 700;
	color: #FFF;
	background: #ee7f00;
	height: 32px;
	width: 100px;
	line-height: 32px;
	padding: 0 30px;
	cursor: pointer;
	-webkit-transition: all 200ms;
	transition: all 200ms;
	outline: none;
	float: left;
	margin: 5px 0;
}
.send:hover {background: #082a5c;}
.errmsg {
	font-size: 16px;
	line-height: 16px;
	color: #FFF;
	font-weight: 600;
	display: none;
	position: absolute;
	top: 5px;
	left: 5px;
	background: red;
	padding: 8px 6px;
}
.errtext {
	border: 1px solid red !important;
}
.senderr {
	position: relative;
	float: right;
}
.sending {
	margin-top: 8px;
	display: none;
	float: left;
}
.sending img { display: inline-block; vertical-align: middle; }
.thankyoudiv{
	position: absolute;
	left: 0;
	top: 0;
	text-align: center;
	padding: 30px;
	background: #FFF;
	color: #082a5c;
	border-radius: 6px;
	width: 90%;
    height: 100%;
    margin: 0 5%;
	display: none;
	box-shadow: 1px 2px 2px #0000002a;
}
.thankyoudiv div {
	position: absolute;
	width: 100%;
	left: 0;
	top: 50%;
	margin-top: -40px;
}
.close_thankyou {
	position: absolute;
	left: 16px;
	top: 8px;
	font-size: 22px;
	font-weight: 600;
	color:#1480c4;
	cursor: pointer;
}
.close_thankyou:hover {	color: #082a5c; }
section {
	position: relative;
	padding: 70px 0 90px 0;
	margin-bottom: 6px;
}
.header::before, .header::after, #methodology::before, #methodology::after {
    content:'';
    position:absolute;
    height:0;
    border-bottom: 26px solid white;
    bottom:0;
}
header::before, #methodology::before {
    left:0;
	width:50%;
	margin-left:-40px;
    border-right:40px solid transparent;
}
header::after, #methodology::after {
	left:50%;
    right:0;
    border-left:40px solid transparent;
}
.bg1 { background: #FFF; }
.bg2 { background: url(../images/bg2.jpg) no-repeat center center; }
.bg3 { background: url(../images/bg3.jpg) no-repeat center center; }
#bottom_form {
	background-position-y: -30px;
	padding-bottom: 50px;
	overflow: auto;
}
.whitearrow, .bluearrow0, .bluearrow1, .bluearrow2 {
	display: block;
	width: 84px;
	height: 57px;
	position: absolute;
	left: 50%;
	margin-left: -42px;
	bottom: -29px;
	z-index: 100;
}
.bluearrow1 { background: url(../images/bluearrow1.png) no-repeat center center; }
.bluearrow2 { background: url(../images/bluearrow2.png) no-repeat center center; }
.whitearrow { background: url(../images/whitearrow.png) no-repeat center center; }
.list1 li {
	list-style-type: disc;
	display: inline-block;
	margin-left: 15px;
}
.list1 li:before {
	content: '\25CF';
	margin-left: 5px;
}
.list3_holder { margin-top: 30px; }
.list2, .list3 {
	display: inline-block;
	width: 48%;
	vertical-align: top;
}
.list2.first, .list3.first { margin-left: 2%; }
.list2 li, .list3 li {
	list-style-type: none;
	position: relative;
	padding-top: 10px;
	padding-right: 55px;
	margin-bottom: 15px;
}
.list2 li {	min-height: 80px; }
.list3 li { min-height: 60px; }
.list2 li strong { display: block; }
.li_number {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	width: 50px;
	height: 50px;
	background: url(../images/smallHex.png) no-repeat right bottom;
	text-align: center;
	font-weight: 600;
	line-height: 45px;
	padding: 1px 3px 3px 3px;
}
.sectors {
	text-align: center;
	margin-top: 15px;
}
.sector {
	display: inline-block;
	vertical-align: top;
	width: 221px;
	height: 236px;
	background: url(../images/sector_bg.png) no-repeat center center;
	transition: all 1s;
	opacity: 0;
	transform: translateY(80px);
}
.sector:first-child { transition-delay: 0.2s;}
.sector:nth-child(2) { transition-delay: 0.4s;}
.sector:nth-child(3) { transition-delay: 0.6s;}
.sector:nth-child(4) { transition-delay: 0.8s;}
.sector:nth-child(5) { transition-delay: 1s;}
.sector:nth-child(6) { transition-delay: 1.2s;}
.sector:nth-child(7) { transition-delay: 1.4s;}
.triggeredCSS3 { opacity: 1; transform: none; }
.sector img {
	margin-top: 36px;
}
.sector_name {
	height: 50px;
	line-height: 50px;
	padding: 0 47px;
}
.sector_name span {
	font-size: 22px;
	display: inline-block;
	line-height: 24px;
	height: 50px;
}
.bottom_sector {
	margin-top: -40px;
}
.quotes_slides {
	direction: ltr;
}
q {
	position: relative;
	direction: rtl;
	padding: 40px;
	display: block;
}
q::before,q::after {
	font-family: 'Assistant', sans-serif;
	font-size: 66px;
	font-weight: 700;
	color: #1480c4;
	position: absolute;
}
q::before {
	content: '”';
	top: 10px;
	right: 0;
}
q::after {
	content: '“';
	bottom: -5px;
	left: 0;
}
.quote_name {
	text-align: left;
	font-weight: 600;
	margin-top: 15px;
}
.slick-arrow {
	width: 29px;
	height: 53px;
	cursor: pointer;
	outline: none;
	position: absolute;
	top: 50%;
	margin-top: -55px;
	font-size: 0;
    line-height: 0;
}
.slick-next { background: url(../images/arrow_right.png) no-repeat center center; right: -80px; }
.slick-prev { background: url(../images/arrow_left.png) no-repeat center center; left: -80px; }
.slick-dots {
    display: block;
    width: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
	text-align: center;
	margin-top: 30px;
}
.slick-dots li {
    position: relative;
    display: inline-block;
    width: 20px;
    height: 20px;
    margin: 0 2px;
    padding: 0;
    cursor: pointer;
}
.slick-dots li button {
    font-size: 0;
    line-height: 0;
    display: block;
    width: 10px;
    height: 10px;
	border-radius: 10px;
    cursor: pointer;
    color: #FFF;
    border: 0;
    outline: none;
	background: #FFF;
	margin-left: 10px;
}
.slick-dots li.slick-active button {
	background-color: #ee7f00;
}
.customer_logos { margin-top: 40px; }
.customer_logos img { margin: 0 40px; }
.footer {
	padding: 30px 30px 35px 270px;
	font-size: 18px;
	text-align: right;
	position: relative;
	min-height: 130px;
}
.footer span { float: right; }
.bottom_logo {
	position: absolute;
	left: 110px;
	top: 30px;
	margin-right: 20px;
	float: none;
}
.back_to_top {
	display: none;
	position: fixed;
	bottom: 30px;
	left: 30px;
	transition: all 0.3s;
	z-index: 1000;
}
.back_to_top:hover { bottom: 35px; }
@media (max-width: 1080px) {
	.quotes_slides { padding: 0 100px; }
	.slick-next { right: 10px; }
	.slick-prev { left: 10px; }
	.max_width { padding: 0 30px; }
	.header {
		background-position-x: 60%;
		background-position-y: -70px;
	}
	h1 {
		font-size: 63px;
	}
	h2 {
		font-size: 33px;
	}
	.top_form_holder {
		padding: 35px;
		margin: 0 30px;
	}
	.form {
		width: auto;
	}
	.field {
		width: 33.333%;
		padding-right: 60px;
	}
	.form label {
		position: absolute;
		margin: 0;
		top: 8px;
		right: 0;
	}
	.phone_label { padding-left: 0; }
	.text_box { width: 100%; }
	.phone_label .errmsg { left: 0; }
	.send { float: left;}
	.bottom_sector { margin-top: 0; }
	#speciality { background-size: cover; }
	.torch_wrapper {
		margin-right: auto;
		right: auto;
		left: 50%;
		margin-left: 340px;
	}
}
@media (max-width: 740px) {
	.top_logo { margin-right: 10px; margin-top: 10px; }
	#mobile_menu_button { display: block; }
	.top_menu {
		position: absolute;
		left: 10px;
		top: 64px;
		margin: 0;
		display: none;
	}
	.top_menu li {
		float: none;
		padding: 0;
		margin: 3px 0;
		box-shadow: 1px 2px 2px #0000002a;
	}
	.top_menu li a {
		background: #3692cd;
		color: #FFF;
		border-right: 0;
		padding: 10px 20px;
		width: 177px;
		margin: 0;
	}
	.top_phone {
		float: none;
		position: absolute;
		margin: 0;
		top: 20px;
		left: 50px;
		padding-left: 15px;
	}
	#services, #methodology { background-size: cover; }
	#quotes { padding-bottom: 70px; }
	#bottom_form { padding-bottom: 60px; }
	.header { height: auto; padding-bottom: 60px; }
	.top_title { margin-top: 125px; margin-bottom: 40px; }
	.top_form {
		position: relative;
		bottom: auto;
	}
	.field {
		width: 100%;
		padding-left: 0;
	}
	.send { width: 100%; padding: 6px; height: auto; }
	.quotes_slides { padding: 0 28px; }
	.slick-next { right: -10px; }
	.slick-prev { left: -10px; }
	.list2, .list3 {
		display: block;
		width: 100%;
	}
	.list2 li, .list3 li { min-height: 0; margin-bottom: 30px; }
	.errmsg { left: 0; }
	.torch_wrapper { margin-left: 310px; }	
}
@media (max-width: 540px) {
	body { font-size: 18px; }
	.header { background-position-y: -70px; }
	.max_width { padding: 0 20px; }
	.top_logo {
		margin-right: 10px;
		margin-top: 15px;
		height: 40px;
	}
	.top_phone { top: 15px; }
	#mobile_menu_button { top: 20px; }
	section, #quotes, #bottom_form { padding-bottom: 50px; }
	.bg1 { padding-top: 40px; }
	h1 { font-size: 10.5vw; }
	h2 { font-size: 5.5vw; }
	/*h1 { font-size: 19vw; }
	h2 { font-size: 10vw; }*/
	h3 { font-size: 26px; }
	/*h4 { font-size: 5.5vw; }*/
	.form_title { font-size: 24px; margin-bottom: 10px; }
	.top_form_holder {
		padding: 20px;
		margin: 0 20px;
	}
	.back_to_top {
		left: 14px;
		bottom: 10px;
	}
	.back_to_top img {
		width: 55px;
	}
	.footer {
		text-align: right;
		padding: 20px 20px 20px 10px;
		font-size: 16px;
	}
	.bottom_logo {
		position: relative;
		left: auto;
		top: auto;
		margin-right: 0;
		margin-top: 15px;
		display: block;
		width: 100%;
	}
	.sector:first-child { transition-delay: 0s; }
	.sector:nth-child(2) { transition-delay: 0.2s; }
	.sector:nth-child(3) { transition-delay: 0s; }
	.sector:nth-child(4) { transition-delay: 0.2s; }
	.sector:nth-child(5) { transition-delay: 0s; }
	.sector:nth-child(6) { transition-delay: 0.2s; }
	.sector:nth-child(7) { transition-delay: 0s; }
	.torch_wrapper { display: none; }
}
@media (max-width: 500px) {
	#quotes { background-size: cover; }
	h1 {
		letter-spacing: 0;
		font-size: 12.5vw;
		line-height: 0.9;
		margin-bottom: 15px;
	}
	h2 {
		font-size: 26px;
		padding: 0 20px;
	}
	.footer { min-height: 150px; }
	.sector:first-child ,.sector:nth-child(2) ,.sector:nth-child(3) ,.sector:nth-child(4) ,.sector:nth-child(5) ,.sector:nth-child(6) ,.sector:nth-child(7) { transition-delay: 0s; }
	.top_title { margin-top: 105px; margin-bottom: 40px; }
}
@media (max-width: 400px) {
	.top_logo { height: 36px; margin-top: 17px; }
	.top_phone { padding: 6px 10px; font-size: 17px; top:20px;}
}