@charset "UTF-8";
/* CSS Document */

body {
	color: #525252;
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 18px;
}
a {
    color: #D71200;
}
a:hover {
    color: #525252;
	text-decoration: none;
}

/*----- Container styles -----*/
.container
{
	padding:0px;
	margin:0px;
	width:100%;
	overflow:hidden;
	}

/*----- CSS for full screen slider -----*/
.overlay
{
	/*background-color:rgba(0,0,0, 0.3);*/
	width:100%;
	/*height:100%;*/
	display:block;
	position:absolute;
	top:0;
	bottom:0;
	z-index:2;
	overflow:hidden;
	}
/*.logo
{
	max-width:900px;
	max-height:60%;
	margin-left:auto;
	margin-right:auto;
	margin-top:5%;
	}*/
.logo
{
	/*max-width:1200px;
	margin-left:auto;
	margin-right:auto;*/
	margin-left: 5%;
	margin-top:3%;
	}
.logo img
{
	max-width:100%;
	max-height:60%;
	width:auto;
	height:auto;
	}
.carousel-inner
{
	z-index:1;
	}
.arrowlink
{
	width:33px;
	height:26px;
	margin:auto;
	z-index:10;
	}
	
#mycarousel
{
	display:block;
	}
	
.carousel-caption
{
	width:100%;
	height:100%;
	}	
.carousel-caption h3 {
  display: inline-block;
  padding: 10px;
  background: #B9121B;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}

.full-screen {
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}

/*
inspired from http://codepen.io/Rowno/pen/Afykb 
*/
.carousel-fade .carousel-inner .item {
  opacity: 0;
  transition-property: opacity;
}

.carousel-fade .carousel-inner .active {
  opacity: 1;
}

.carousel-fade .carousel-inner .active.left,
.carousel-fade .carousel-inner .active.right {
  left: 0;
  opacity: 0;
  z-index: 1;
}

.carousel-fade .carousel-inner .next.left,
.carousel-fade .carousel-inner .prev.right {
  opacity: 1;
}

.carousel-fade .carousel-control {
  z-index: 2;
}

/*
WHAT IS NEW IN 3.3: "Added transforms to improve carousel performance in modern browsers."
now override the 3.3 new styles for modern browsers & apply opacity
*/
@media all and (transform-3d), (-webkit-transform-3d) {
    .carousel-fade .carousel-inner > .item.next,
    .carousel-fade .carousel-inner > .item.active.right {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.prev,
    .carousel-fade .carousel-inner > .item.active.left {
      opacity: 0;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
    .carousel-fade .carousel-inner > .item.next.left,
    .carousel-fade .carousel-inner > .item.prev.right,
    .carousel-fade .carousel-inner > .item.active {
      opacity: 1;
      -webkit-transform: translate3d(0, 0, 0);
              transform: translate3d(0, 0, 0);
    }
}

/*----- annimation styles -----*/
.fadeIn {
        /* CSS needed for animation
        ---------------------------------------------------- */
        -webkit-animation:fadeIn ease-in 1;
        -moz-animation:fadeIn ease-in 1;
        -o-animation:fadeIn ease-in 1;
        animation:fadeIn ease-in 1;
        -webkit-animation-fill-mode:forwards;
        -moz-animation-fill-mode:forwards;
        -o-animation-fill-mode:forwards;
        animation-fill-mode:forwards;
}
/* Animation Times - Time for image to fade in
---------------------------------------------------- */
.fadeIn-3s {
        -webkit-animation-duration:3s;
        -moz-animation-duration:3s;
        -o-animation-duration:3s;
        animation-duration:3s;
}
/* Animation Delay - Time for image to be delayed
---------------------------------------------------- */
.fadeIn-Delay-4s {
        -webkit-animation-delay:4s;
        -moz-animation-delay:4s;
        -o-animation-delay:4s;
        animation-delay:4s;
}

.content
{
	max-width:1200px;
	width:96%;
	height:100%;
	margin:auto;
	}
.restricted
{
	max-width:900px;
	padding-left:20px;/*was 40px*/
	padding-right:20px;/*was 40px*/
	margin:auto;
	}
	
/*----- menu styles -----*/
.top-menu
{
	width:100%;
	margin-top:-10px;
	}
.bottom-menu
{
	width:100%;
	}
	
/*----- nav styles -----*/
#nav ul, #nav ul li
{
	list-style:none;
	padding:0;
	margin:0;
	}
#nav li
{
	float:left;
	}
#nav ul
{
	margin:0px;
	}
#nav {
    color:#6D7175;
    overflow:hidden;
    padding:0 0px 0 0px;
	/*float:right;
	text-align:right;
	font-weight:100;*/
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
}
#nav a {
    font-size:14px;
    color:#ffffff;
    display:block;
    padding:0px 0px 0px 38px;
	text-transform: uppercase;
}
#nav a:hover {
    text-decoration:none;
	color: #D51700;
}	

/*----- Main nav styles -----*/
/*-----------------nav styles-------------------*/
.bottom-menu #nav ul, .bottom-menu #nav ul li
{
		list-style:none;
		padding:0;
		margin:0;
		}
.bottom-menu #nav li
{
		float:left;
		}
.bottom-menu #nav ul
{
		margin:0px;
		}
.bottom-menu #nav {
        color:#6D7175;
        overflow:hidden;
        padding:0 0px 0 0px;
		text-transform:lowercase;
		float:right;
		text-align:right;
		margin-top:20px;
}
.bottom-menu #nav a {
        font-size:16px;
        color:#ffffff;
        text-decoration:none;
        display:block;
        float:left;
		font-weight:300;
        padding:5px 0px 10px 20px;
		padding-bottom:10px;
}
.bottom-menu #nav a:hover {
        text-decoration:none;
}	

.bottom-menu #nav ul li ul li a{
	display: block;
	color: #ffffff;
	text-decoration: none;
	text-align: left;
	padding: 5px 15px 3px 15px;
	border: none;
	float: none;
	background-color:#000000;
	border-bottom:1px solid #ffffff;
}

.bottom-menu #nav ul li ul li a:hover {
        text-decoration:underline;
}

.bottom-menu #nav ul li ul li {
	float:none;
	display: block;
	margin: 0;
	padding: 0;
}

.bottom-menu #nav ul li ul {
	position:absolute;
	left:-999em;
	z-index:100;
	margin:30px 0 0 5px;
	border-top:1px solid #ffffff;
}
.bottom-menu #nav ul li:hover ul, .bottom-menu #menu ul li ul:hover {
	left:auto;
}
/** Menu arrows **/
.menu li.has-children > a:after {
 color: #fff;
 content: ' ▼';
 font-size: 10px;
 vertical-align: 1px;
 margin-left:10px;
}
.menu li li.has-children > a:after {
 color: #222;
 content: ' ►';
 font-size: 10px;
 vertical-align: 1px;
}
	
		
/*----- buffer classes -----*/
.padding-topsml
{
	padding-top:20px;
	}
.padding-btmsml
{
	padding-bottom:20px;
	}
.padding-toplrg
{
	padding-top:30px;
	}
.padding-btmlrg
{
	padding-bottom:60px;
	}
.side-buffers
{
	padding-left:20px;
	padding-right:20px;
	}
	
/*----- general classes -----*/
/*----- bg styles -----*/
.redbg {
	background-color: #D51700;
}
.greybg
{
	background-color:#525252;
	}
.blackbg
{
	background-color:#000;
	}
.text_right {
	text-align: right;
}
/*----- border styles ------*/
.borderBtm
{
	border-bottom:5px solid #EEEEEE;
	}
.border_shadow {
	box-shadow: 0 0px 5px 0 rgba(0, 0, 0, 0.2), 0 0px 5px 0 rgba(0, 0, 0, 0.19);
}

/*----- home page styles ------*/
.key_message {
	color: #fff;
}
.key_message p {
	display: block;
	float: left;
	font-weight: 300;
	line-height: 20px;
}
.key_message img {
	margin-right: 20px;
	margin-left: 30px;
	margin-top: 6px;
	display:block;
	float: left;
}
.prod_box {
	width: 31%;
	margin-right: 2%;
	margin-bottom: 25px;
	float:left;
	padding: 1%;
}
.prod_box p {
	color:#525252;
	text-align: center;
}
.prod_box_image {
	max-height: 218px;
	overflow: hidden;
}
.prod_title {
	font-size: 24px;
	text-align: center;
}
.cta_box {
	width: 48%;
	float: left;
	padding-right: 15px;
	padding-left: 15px;
}
.cta_box_inner {
	width: 90%;
	float: right;
	padding-right: 15px;
	padding-left: 15px;
}
.news_box {
	width: 48%;
	float: right;
	padding-right: 15px;
	padding-left: 15px;
}

.restricthght
{
	max-height:500px;
	overflow:hidden;
	}
img.fullwidthimg
{  
	width:100%;
	height:auto;
	}
img.wp-post-image
{ 	
	width:100%;
	height: auto;
    /*transform: translate(-0%, -50%);*/
}

/*----- inner page styles ------*/
.pageImage {
    height: 240px;
	width: 22%;
	float: left;
    overflow: hidden !important;
    position: relative;
	margin-left: 1.5%;
	margin-right: 1.5%;
}
.pageImage img {
    height: 100%;
    width: auto;
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}

/*----- positioning classes -----*/
.pos-rel
{
	position:relative;
	}
.pos-abs
{
	position:absolute;
	top:0;
	left:0;
	}
/*----- breadcrumbs styles -----*/
#breadcrumbs
{
	padding-left:15px;
	margin-bottom: 30px;
	text-align:left;
	}
/*----- category styles -----*/
.hovereffect {
  width: 100%;
  height: 100%;
  float: left;
  overflow: hidden;
  position: relative;
  text-align: center;
  cursor: default;
  background: #174699;
}

.hovereffect .overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  overflow: hidden;
  top: 0;
  left: 0;
  padding: 20px 20px;
}

.hovereffect img {
  display: block;
  position: relative;
  max-width: none;
  width: calc(100% + 20px);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(-10px,0,0);
  transform: translate3d(-10px,0,0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.hovereffect:hover img {
  opacity: 0.4;
  filter: alpha(opacity=40);
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

.hovereffect h2 {
  text-transform: uppercase;
  color: #fff;
  text-align: center;
  position: relative;
  font-size: 17px;
  overflow: hidden;
  padding: 0.5em 0;
  background-color: transparent;
}

.hovereffect h2:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fff;
  content: '';
  -webkit-transition: -webkit-transform 0.35s;
  transition: transform 0.35s;
  -webkit-transform: translate3d(-100%,0,0);
  transform: translate3d(-100%,0,0);
}

.hovereffect:hover h2:after {
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}

.hovereffect a, .hovereffect p {
  color: #FFF;
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(100%,0,0);
  transform: translate3d(100%,0,0);
}

.hovereffect:hover a, .hovereffect:hover p {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: translate3d(0,0,0);
  transform: translate3d(0,0,0);
}
.blogtabimage {
    height: 270px;
    overflow: hidden;
    position: relative;
}
.blogtabimage img {
    position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}
/*----- single styles -----*/
.grey-box {
	background-color: #EEEEEE;
	padding: 12px;
	margin-top: 20px;
}
.blue-box {
	background-color: #174699;
	padding: 12px;
	margin-top: 20px;
	color: #fff;
}
.blue-box p {
	color: #fff;
}

/*----- text styles ------*/
h1, h2, h3, h4 {
	color: #D71200;
}
h1 {
	font-size: 30px;
	font-weight: bold;
}
h2 {
	font-size: 25px;
}

.white-text h1, .white-text h2, .white-text h3, .white-text h4, .white-text h5, .white-text h6, .white-text p
{
	color:#ffffff;
	font-weight:300;
	}
.white-text p
{
	font-size:16px;
	}
a[href^=tel] { color: inherit; text-decoration: none; }

.vertparent 
{
	position: relative;
	}
.vertchild {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 120px; /* was 0 */
    right: 0;
    width: 40%;
    height: 60%;
    margin: auto;
	margin-left:20px;
	padding-top: 40px;
}
.vertchildrght {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 120px; /* was 0 */
    width: 40%;
    height: 60%;
    margin: auto;
	margin-right:20px;
	padding-top: 40px;
}
.content-full-width h1, .content-full-width h2, .content-full-width h3, .content-full-width h4, .content-full-width h5, .content-full-width h6, .content-full-width p
{
	text-align:center;
	}
blockquote {
    padding: 0;
    margin: 0 0 20px;
    font-size: 17.5px;
    border-left: none;
	font-family: Constantia, "Lucida Bright", "DejaVu Serif", Georgia, serif;
	font-style: italic;
}
blockquote p {
	font-size: 35px;
	color: #174699;
}
/*-------------image styles---------------*/
.alignright
{
	float:right;
	margin-left:10px;
	margin-bottom:10px;
	}
.alignleft
{
	float:left;
	margin-right:10px;
	margin-bottom:10px;
	}
.aligncenter
{
	clear: both;
	display: block; 
	margin-left: auto; 
	margin-right: auto;
	}
	
/*----- lets talk section -----*/
.sm-link
{
	width:30px;
	float:left;
	margin-left:5px;
	margin-right:5px;
	}
.thrdcol
{
	width:31.333333%;
	margin-left:1%;
	margin-right:1%;
	float:left;
	}
input, textarea
{
	width:100%;
	margin-bottom:20px;
	padding:10px;
	background-color:#EEEEEE;
	color:#999999;
	border:none;
	}
textarea
{
	height:160px;
	}
label {
	width:100%;
}
/*----- over written bootstrap styles -----*/
.btn-primary {
    color: #fff;
    background-color: #14459B;
    border-color: #194DA8;
}
.btn-primary:focus,
.btn-primary.focus {
  color: #fff;
  background-color: #194DA8;
  border-color: #14459B;
}
.btn-primary:hover {
  color: #fff;
  background-color: #194DA8;
  border-color: #14459B;
}
.btn-primary:active,
.btn-primary.active,
.open > .dropdown-toggle.btn-primary {
  color: #fff;
  background-color: #194DA8;
  border-color: #14459B;
}

/*----- footer styles -----*/
.footer
{
	background-color:#525252;
	color:#fff;
	}
.footer a
{
	color:#fff;
	}

/*----- hidden template styles -----*/
.imageMax img
{
	max-width:100%;
	height:auto;
	}

/*----- HIDDEN FROM DESKTOP -----*/
.hiddenDesktop
{
	display:none;
	}

/* ==========================================================================
   EXAMPLE Media Queries for Responsive Design.
   These examples override the primary ('mobile first') styles.
   Modify as content requires.
   ========================================================================== */
/* Bigger than 2000px ----------- */
@media only screen and (min-width : 2200px) {
.arrow-down
{
	margin-top: 1100px;
	}
}
/* Smaller than 2200px ----------- */
@media only screen and (max-width : 2200px) {
.arrow-down
{
	margin-top: 1000px;
	}
}
/* Smaller than 1800px ----------- */
@media only screen and (max-width : 1800px) {
.arrow-down
{
	margin-top: 900px;
	}
}
/* Smaller than 1650px ----------- */
@media only screen and (max-width : 1650px) {
.arrow-down
{
	margin-top: 800px;
	}
}
/* Smaller than 1450px ----------- */
@media only screen and (max-width : 1450px) {
.arrow-down
{
	margin-top: 700px;
	}
.vertchild {
    width: 34%;
	padding-top: 25px;
}
.vertchildrght {
    width: 34%;
	padding-top: 25px;
}
}
/* Smaller than 1250px ----------- */
@media only screen and (max-width : 1250px) {
.arrow-down
{
	margin-top: 600px;
	}
}
/* Smaller than 1125px ----------- */
@media only screen and (max-width : 1125px) {
.hideme-blue, .hideme-green, .hideme-orange
{
	background-image: none !important;
	}
.arrow-down {
    margin-top: 500px;
}
.vertchild {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 90%;
    height: 60%;
    margin: auto;
	margin-left:auto;
	margin-top:0px;
}
.vertchildrght {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 90%;
    height: 60%;
    margin: auto;
	margin-right:auto;
	margin-top:0px;
}
}
/* Smaller than 1000px ----------- */
@media only screen and (max-width : 1000px) {

}
/* Smaller than 991px ----------- */
@media only screen and (max-width : 991px) {
.tab
{
	width:100%;
	max-width:307px;
	margin-bottom:20px;
	margin-right:auto !important;
	margin-left:auto;
	padding:0px;
	}
.tlkinfo p
{
	text-align:center !important;
	padding:0px !important;
	margin-bottom:0px;
	}
.social
{
	width:120px;
	margin:auto;
	}

}

/* Smaller than 800px ----------- */
@media only screen and (max-width : 800px) {
.logo
{
	max-width:25%;
	/*margin-left:5%;
	margin-right:5%;*/
	}	
.prod_box {
    width: 98%;
    float: none;
}
.cta_box, .news_box {
    width: 98%;
    float: none;
}
.text_left_mobile {
	text-align: left;
	margin-top: 15px;
}
.prod_box_image {
    max-height: 300px;
}
.pageImage {
	width: 62%;
	float: none;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
}
.gallery-item {
	float: none !important;
	width: 98% !important;
}
#click-menu
{
	margin-top:5px !important;
	height:45px !important;
	width:45px !important;
	float:right !important;
	}
#mainnav
{
	display:none;
	}

.vertchild {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 90%;
    height: 60%;
    margin: auto;
	margin-left:auto;
	margin-top:0px;
}
.vertchildrght {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 90%;
    height: 60%;
    margin: auto;
	margin-right:auto;
	margin-top:0px;
}
.key_message p {
	width: 98%;
	float: none;
}
}
/* Smaller than 767px ----------- */
@media only screen and (max-width : 767px) {
.icon-bar
{
	background-color:#ffffff;
	height:5px;
	}
.navbar-toggle
{
	margin-right:0px;
	border:1px solid #ffffff;
	margin-top:0px;
	}
.bottom-menu, .menu_title, .navbar-header, .navbar-collapse
{
	display:none !important;
}
/*----- Main nav styles -----*/
.navbar-header
{
	position:relative;
	}
.blackbox
{
	position:absolute;
	bottom:0px;
	background-color:#000000;
	width:110%;
	height:2px;
	margin-bottom:-2px;
	z-index:9999;
	}
.navbar-collapse.collapse
{
	padding-right:15px;
	margin-right:0px;
	border-top:none !important;
	}
.navbar-default div.navbar-collapse
{
    border-top:none !important;
    box-shadow:none !important;
}
.bottom-menu ul, .bottom-menu ul li
{
		list-style:none;
		padding:0;
		margin:0;
		/*background-color:#000000;*/
		}
.bottom-menu li
{
		float:none;
		text-align:right;
		}
.bottom-menu ul
{
	float:none;
	}
.bottom-menu ul
{
		margin:0px;
		width:auto;
		/*float:right;*/
		margin-right:-15px;
		}
.bottom-menu {
        color:#ffffff;
        padding:0 0px 0 0px;
		float:right;
		text-align:right;
		margin-top:30px;
		font-weight:100;
}
.bottom-menu a {
        font-size:16px;
        color:#ffffff;
        text-decoration:none;
        display:block;
		text-align:right;
        float:none;
		font-weight:300;
        padding:5px 0px 0px 10px !important;
		line-height:20px;
}
.bottom-menu a:hover {
        text-decoration:underline !important;
		background-color:#000000 !important;
}	

.bottom-menu ul li ul li a{
	display: block;
	color: #ffffff;
	text-decoration: none;
	text-align: right;
    padding:5px 0px 0px 10px;
	font-size:14px;
	border: none;
	float: none;
	padding-right:15px;
		background-color:#000000 !important;
}

.bottom-menu ul li ul li a:hover {
        text-decoration:underline;
		background-color:#000000 !important;
}

.bottom-menu ul li ul li {
	float:none;
	margin: 0;
	padding: 0;
}
.bottom-menu ul li ul {
	position:relative;
}
.bottom-menu ul li ul a{
	text-align:right;
	margin-right:10px;
}
.bottom-menu ul li.dropdown-toggle ul:after
{
	position:relative;
	}
.bottom-menu ul li ul {
	position:relative;
	left:0;
	z-index:100;
	margin:0px 0 0 5px;
}

/*--- bootstrap col adjustments ---*/


/*--- fix for drop down ---*/
.dropdown-menu
{
	float:none;
	}
	
/*.bottom-menu ul li:hover ul, .bottom-menu ul li ul:hover {
	left:auto;
}*/
.hiddenDesktop
{
	display:block;
	}
}
/* Smaller than 700px ----------- */
@media only screen and (max-width : 700px) {
.carousel {
	border-top: solid 70px #000;
}
.overlay {
	top:-50px;
}
.ft-links
{
	float:none;
	width:90%;
	margin-right:5%;
	margin-left:5%;
	}
.ft-info
{
	float:none;
	width:90%;
	margin-right:5%;
	margin-left:5%;
	}
.ft-info p, .ft-links p
{
	text-align:center;
	}
#ftnav
{
	width:100%;
	margin-bottom:20px;
	}
#ftnav a {
    font-size:13px;
    color:#ffffff;
    display:block;
    float:none;
	font-weight:300;
	padding-bottom:5px;
	text-align:center;
}
.fullwidthimg
{
	min-height:260px;
	width:700px !important;
	}
}

/* Smaller than 540px ----------- */
@media only screen and (max-width : 540px) {	
.arrow-down {
    margin-bottom: 20px;
	width:90%;
}
.arrow-down h1
{
	font-size:24px;
	margin-bottom:10px !important;
	}
.arrowlink {
    width: 33px;
    height: 26px;
    margin: auto;
    z-index: 10;
}
/*----- header quote styles adjustments -----*/
.header-quote h1
{
	font-size:24px;
	}
/*----- read more link on the coloured sections -----*/
.read-more-link
{
	position:absolute;
	bottom:0;
	right:0;
    margin-bottom: -70px;
	}
}

/* Smaller than 500px ----------- */
@media only screen and (max-width : 500px) {
.thrdcol
{
	width:90% !important;
	margin-left:5% !important;
	margin-right:5% !important;
	float:none !important;
	}
input.submitbtn
{
	width:90% !important;
	margin-left:5% !important;
	margin-right:5% !important;
	float:none !important;
	}
.fullwidthimg
{
	margin-left:-20%;
	}
}