/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */html{font-family:sans-serif;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,details,figcaption,figure,footer,header,hgroup,main,menu,nav,section,summary{display:block}audio,canvas,progress,video{display:inline-block;vertical-align:baseline}audio:not([controls]){display:none;height:0}[hidden],template{display:none}a{background-color:transparent}a:active,a:hover{outline:0}abbr[title]{border-bottom:1px dotted}b,strong{font-weight:bold}dfn{font-style:italic}h1{font-size:2em;margin:.67em 0}mark{background:#ff0;color:#000}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{border:0}svg:not(:root){overflow:hidden}figure{margin:1em 40px}hr{box-sizing:content-box;height:0}pre{overflow:auto}code,kbd,pre,samp{font-family:monospace,monospace;font-size:1em}button,input,optgroup,select,textarea{color:inherit;font:inherit;margin:0}button{overflow:visible}button,select{text-transform:none}button,html input[type="button"],input[type="reset"],input[type="submit"]{-webkit-appearance:button;cursor:pointer}button[disabled],html input[disabled]{cursor:default}button::-moz-focus-inner,input::-moz-focus-inner{border:0;padding:0}input{line-height:normal}input[type="checkbox"],input[type="radio"]{box-sizing:border-box;padding:0}input[type="number"]::-webkit-inner-spin-button,input[type="number"]::-webkit-outer-spin-button{height:auto}input[type="search"]{-webkit-appearance:textfield;box-sizing:content-box}input[type="search"]::-webkit-search-cancel-button,input[type="search"]::-webkit-search-decoration{-webkit-appearance:none}fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}legend{border:0;padding:0}textarea{overflow:auto}optgroup{font-weight:bold}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}
@charset "utf-8";

body { margin:0; padding:0; background-color:#fff; font-family: 'Open Sans', sans-serif; color:#555; font-size:1vw; line-height:1.2em; text-align: center;}
button, input, textarea {font-family: 'Open Sans', sans-serif; }
h1, h2, h3, h4, h5, h6 { color: #ce2d22; margin:0; font-family: 'Montserrat', serif; font-weight: 600; font-style: normal; line-height: 1.2em; text-align: center; }
h1 { color: #fff; font-size: 3.5vw; }
.headingLine1b h1 {font-size: 2vw;}
h1 span {display: block;}
h2 { font-size: 2.5vw; margin-bottom: 0.5em; text-transform: uppercase; }
h3 { font-size: 1.2vw; }
h4 { font-size: 1.1vw; }
.white {color: #fff; } 

a {display:inline-block; color:#333; cursor:pointer; transition: all linear 200ms; text-decoration: underline;}
a:hover {color:#ce2d22;}

.redButton, input[type=submit], #thankyouMsg a { 
	text-decoration: none; border:solid 2px #ed1c24; background-color: #ed1c24; display: inline-block; color: #fff; transition: all .3s ease-in-out; padding: 0.4em 0.7em 0.6em 0.7em; border-radius: 0.2em; font-weight: 700;
}
input[type=submit], #thankyouMsg a {
	outline: 0; border:none; padding: 0.8em 1em; border:solid 1px #820005;
}
.redButton:hover, input[type=submit]:hover { 
	color: #fff; border:solid 2px #820005; background-color: #820005; 
}
input[type=submit]:hover, #thankyouMsg a:hover { 
	border:solid 1px #fff; 
}

img {border:0; height:auto;}

.menuLink {display: none;}
.sidenav {display: none;}

/*modal box .jquery-modal.blocker {z-index: 999;}*/

.scrollToTop{ padding:10px 15px; text-align:center; background: rgba(215, 26, 33, 0.6); font-weight: bold; color: #fff; text-decoration: none; position:fixed; bottom:15px; right:15px; display:none; z-index: 10;}
.scrollToTop:hover { background: rgba(215, 26, 33, 1); color: #fff;}

.wrapper { margin:auto; box-sizing: border-box; width: 95%;}

header {padding: 0.8em 0;}
header .wrapper {width: 95vw;} 
header .wrapper > div {display: inline-block; vertical-align: middle;}
header .wrapper .logo { width: 17vw; text-align: left; }
header .wrapper .logo a {display: block;}
header .wrapper .logo img { width: 100%;}
header .wrapper .menu { width: 77vw; text-align: right; }
header .wrapper .menu > ul {list-style: none; margin: 0; padding: 0; }
header .wrapper .menu > ul > li {display: inline-block; position: relative;}

header .wrapper .menu > ul > li a {color: #333; text-decoration: none; font-size: 1vw; line-height: 1em; }
header .wrapper .menu > ul > li a:hover {color:#ce2d22;}

header .wrapper .menu > ul > li > a { font-weight: 700; display:inline-block; text-transform: uppercase; vertical-align: middle; margin: 0 0.6em; padding: 0.2em 0; border-bottom: #fff solid 4px; }
header .wrapper .menu > ul > li > a.active { color:#ce2d22; border-bottom-color: #ce2d22; }
header .wrapper .menu > ul > li > ul { position: absolute; z-index: 5; text-align: left; background-color: #fff; margin: 0; padding: 0; width:230px; border: #555 solid 1px; box-shadow: 2px 2px 3px rgba(0,0,0,0.4); opacity: 0; transition: all .3s ease-in-out;}
header .wrapper .menu > ul > li:hover > ul { opacity: 1; }
header .wrapper .menu > ul > li > ul > li { display:block; }
header .wrapper .menu > ul > li > ul > li a { display: block; border-bottom: #555 solid 1px; padding: 0.5em;}
header .wrapper .menu > ul > li > ul > li a:hover {}

.slider { position: relative; color: #fff; display: flex; flex-wrap: wrap; justify-content:center; align-items:center;}
.slider .writeup {position: absolute; width: 60%;  }
.slider .headingLine {margin: 0.3em 0;}
.slider .headingLine3 {margin-bottom: 1em;}
.slider .bg {width:100%;}
.slider .bg img {width:100%; display: block; }

.titleDiv { position: relative; color: #fff; display: flex; flex-wrap: wrap; justify-content:center; align-items:center;}
.titleDiv .title {position: absolute; width: 100%; }
.titleDiv .title h1 {text-transform: uppercase;}
.titleDiv .bg {width:100%;}
.titleDiv .bg img {width:100%; display: block; }

section {background-size: cover; background-repeat: no-repeat; padding: 2em 0 3em 0;}
section.removeTopPadd {padding-top: 0;}

.threeColContent {}
.threeColContent .contentRow {display:flex; width: 80%; margin: auto;}
.threeColContent .contentRow .contentCol { width: 33.33%; margin: 1px; }
.threeColContent .contentRow .contentCol div:first-child {position: relative;}
.threeColContent .contentRow .contentCol div:first-child img {width: 100%;}
.threeColContent .contentRow .contentCol div:first-child h3 {position: absolute; bottom: 0; width: 84%; margin-left: 8%; background-color: #fff; }
.threeColContent .contentRow .contentCol div:first-child h3 span {color:#555; display: inline-block; padding:0.6em 0.8em; }
.threeColContent.withDescription .contentRow .contentCol {border:#bbb solid 1px; }
.threeColContent.withDescription .contentRow .contentCol div:last-child { padding: 0.5em 1em 2em 1em; }

.fourColContent {}
.fourColContent .description p {width: 50%; margin-left: auto; margin-right: auto;}
.fourColContent .solutionsList {display:flex; flex-wrap: wrap; justify-content:center; width: 85%; margin:auto; }
.fourColContent .solutionsList div { width: 25%; padding: 10px; box-sizing: border-box; }
.fourColContent .solutionsList div img {width: 100%;}
.fourColContent .solutionsList div h3 {color:#555; font-family: 'Open Sans', sans-serif; font-size: 0.85vw; }

#enquiry {color: #fff; padding:6em 0 7em 0; background-image: url(images/bg-contact.jpg); background-position: center center;}
#enquiry h2 {color: #fff;}
#enquiry .formDiv {background-color: rgba(0,0,0,0.7); padding:3.5em; width: 35%; box-sizing: border-box; margin: auto; margin-top: 3em;}
#enquiry .fields > div {display: flex; }

input[type="text"] { display:inline-block; box-sizing: border-box; color:#555; border: none; width:100%; padding:1em; background-color: #fff; margin-bottom: 1em; }
textarea { display:inline-block; box-sizing: border-box; color:#555; border: none; width:100%; padding:1em; background-color: #fff; margin-bottom: 1em; }
#thankyouMsg { font-weight: bold; padding-bottom: 2em; color:#fff;}
#thankyouMsg p { text-align: center; }
/*#thankyouMsg a {background-color: #187353; -webkit-border-radius:5px; -moz-border-radius: 5px; border-radius: 5px; line-height: 2em; padding: 0.2em 5em; color:#fff; font-weight: 700; border:#fcb040 solid 2px; text-decoration: none; }
#thankyouMsg a:hover { box-shadow: 0 0 3px 3px rgba(0,0,0,0.1);}*/

#why {}
#why .whyList {display:flex; justify-content: center; }
#why .whyItem { border:#bbb solid 1px; margin: 1px; padding: 1em 1.5em;}
#why .whyItem h3 { font-weight: 800; color: #89b1e5; }
#why .whyItem p {margin:0;}

#services {padding-top:0; padding-bottom: 0; background-image: url(images/bg-services.jpg); background-size: cover; background-repeat: no-repeat;}
#services .contentDiv {background-color: rgba(0,0,0,0.7); color: #fff; width: 65%; margin: auto; padding: 4em 5em; box-sizing: border-box;}
#services .contentDiv h3 {color: #fff; margin-bottom: 1em;}
#services .contentDiv ul {list-style: none; margin: 0; padding: 0;}
#services .contentDiv ul li {display: block; margin-bottom:1.5em; }
#services .contentDiv ul li:after {content:""; display:block; margin:1.5em auto auto auto; width:120px; border-bottom: solid 1px #f55f00;}

footer {background-color: #f1f1f1; text-align: center; padding-top:2em;}
footer .footermenu { text-align: center; }
footer .footermenu ul {list-style: none; margin: 0; padding: 0; }
footer .footermenu ul li {display: inline-block; margin: 0 0.2em;}
footer .footermenu ul li a { color: #333; vertical-align: middle; text-decoration: none; border:solid 1px #555; font-size: 0.85vw; line-height: 1em; padding: 0.5em 0.6em; }
footer .footermenu ul li a:hover {border-color:#ce2d22; color: #ce2d22;}
footer .footerLogo { margin: 2em auto 1em auto; width: 12vw; }
footer .footerLogo img {width: 100%;}
footer .contact {padding-bottom: 2em;}
footer .contact .company {font-weight: 700; margin-bottom: 1em;}
footer .contact .address {margin-bottom: 1em;}
footer .contact .address span {display: block;}
footer .copyright {background-color: #fff; padding: 0.6em 0;}
footer .social {margin-top: 0.7em;}
footer .social a {margin: 0 0.1em;}
footer .social img {display:inline-block; width: 2vw;}

/*
@media screen and (min-width: 1800px) {}
@media screen and (min-width: 1600px) {}
@media screen and (min-width: 480px) {}
@media screen and (orientation:portrait){}
@media screen and (orientation:landscape){}
*/

@media screen and (min-width: 768px) {
	.homeThreeColButton {margin-top: 1.2em;}
}

@media screen and (max-width: 1279px) {
	body {font-size: 1.3vw;}
	h1 {font-size: 3.8vw;}
	.headingLine1b h1 {font-size: 2.3vw;}
	h2 {font-size: 2.8vw;}
	h3 {font-size: 1.6vw;}
	header .wrapper .logo {width: 20vw;}
	header .wrapper .menu {width: 74vw;}
	header .wrapper .menu > ul > li a {font-size: 1.25vw;}
	#services .contentDiv {width: 75%;}
	.fourColContent .solutionsList {width: 100%;}
	.fourColContent .solutionsList div h3 {font-size: 1.25vw;}
	.fourColContent .description p {width: 65%;}
	#enquiry .formDiv {padding: 3em; width: 50%;}
	footer .footerLogo {width: 18vw;}
	footer .footermenu ul li a {font-size: 1.25vw;}
	.slider .writeup {width: 70%;  }
}
@media screen and (max-width: 1023px) {
	body {font-size: 1.6vw;}
	h1 {font-size: 4.1vw;}
	.headingLine1b h1 {font-size: 2.6vw;}
	h2 {font-size: 3.1vw;}
	h3 {font-size: 1.9vw;}
	header .wrapper .logo {width: 27vw;}
	header .wrapper .menu {width: 67vw;}
	.threeColContent .contentRow {width: 90%;}
	header .wrapper .menu > ul > li a {font-size: 1.5vw;}
	#services .contentDiv {width: 85%; padding:3em 4em;}
	.fourColContent .solutionsList div {width: 33.33%;}
	.fourColContent .solutionsList div h3 {font-size: 1.5vw;}
	.fourColContent .description p {width: 80%;}
	#enquiry .formDiv {width: 60%;}
	footer .footerLogo {width: 19vw;}
	footer .footermenu ul li a {font-size: 1.5vw;}
	.slider .writeup {width: 80%;  }
}
@media screen and (max-width: 767px) {
	body {font-size: 13px;}
	h1 {font-size: 27px;}
	.headingLine1b h1 {font-size: 18px;}
	h1 span { display: inline; }
	h2 {font-size: 23px;}
	h3 {font-size: 16px;}
	.scrollToTop {padding:7px 11px; bottom: 5px; right: 5px;}
	header .wrapper { width: 95%; text-align: left;}
	header .wrapper .menu {display: none;}
	header .wrapper .menu > ul > li a {font-size: 13px;}
	header .wrapper .logo {width: 180px;}
	.slider { overflow: hidden; height: 300px;}
	.slider .writeup { padding: 0 20px; box-sizing: border-box; width:90%;}
	.slider .bg img { width: 180%; margin-left: -42%;}
	.titleDiv {overflow: hidden; height: 130px;}
	.titleDiv .title h1 {padding: 0 15px;}
	.titleDiv .bg img {width:auto;}
	.threeColContent .contentRow {flex-wrap: wrap; justify-content:center; }
	.threeColContent .contentRow .contentCol {width: 80%;}
	.fourColContent .solutionsList div {width: 50%;}
	#why .whyList {flex-wrap: wrap;}
	#why .whyItem {width: 40%;}
	.fourColContent .solutionsList div h3 {font-size: 13px;}
	#enquiry {padding: 3em 0 4em 0;}
	#enquiry .formDiv {width: 80%; margin-top: 2em;}
	footer .footerLogo {width: 160px;}
	footer .footermenu ul li {margin: 3px;}
	footer .footermenu ul li a {font-size: 13px;}

	.menuLink {display: block;}
	.menuLink {position: fixed; z-index: 8; right: 8px; top:11px; color: #fff; }
	.menuLink span {display: inline-block; vertical-align: middle;}
	.menuLink span div {border-top: #fff solid 2px; width:1em; margin-bottom: 0.2em;}
	.menuLink a {color: #fff; text-decoration: none; background-color: #ff2703; padding: 8px 15px; border:solid 2px #fff; border-radius: 2em;}
	.menuLink a:hover {color: #fff; background-color: #000; border-color: #fff;}
	#blocker { position: fixed; width: 100%; height: 100%; z-index: 9; background-color: rgba(0,0,0,0.6); opacity: 0; transition: 0.2s; display: none; cursor: pointer;}
	/* The side navigation menu */
	.sidenav {
		display: block;
	    height: 100%; width: 0; padding:0; box-sizing: border-box; position: fixed; z-index: 10; top: 0; right: 0; text-align: center; background-color: #eee; transition: 0.2s; overflow-x: hidden; padding-top: 60px;     
	}
	.sidenav .closebtnWrapper { text-align: right; }
	.sidenav .closebtn {font-size: 30px; margin-bottom:20px; }
	.sidenav a {text-decoration: none; display: inline-block; font-weight: bold; }
	.sidenav a:hover { color: #000; }
	.sidenav ul {list-style: none; margin: 0; padding: 0;}
	.sidenav ul a { margin-bottom:15px; font-size:13px; border-bottom: transparent solid 2px; }
	.sidenav > ul > li:nth-child(2) > a {margin-bottom: 3px;}
	.sidenav ul a.active {color:#ce2d22; border-bottom-color: #ce2d22; }
	.sidenav ul a:hover {color:#ce2d22;}
	.sidenav ul ul { border:solid 1px #ccc; padding: 1em; margin-bottom:15px;}
	.sidenav ul > li ul li:last-child a {margin-bottom: 0;}
}
@media screen and (max-width: 479px) { 
	body {font-size: 12px;}
	h1 {font-size: 25px;}
	.headingLine1b h1 {font-size: 16px;}
	h2 {font-size: 21px;}
	h3 {font-size: 14px;}
	.slider .bg img { width: 230%; margin-left: -60%;}
}