/* ---------------------------------------------------------
	1. General reset
	2. Common site styles
   ---------------------------------------------------------*/
/* ---------------------------------------------------------
   1. General reset
   ---------------------------------------------------------*/
/*
 * set default text color
 * set default font size, line height and font family
 * set default background
 */
html{height:100%;}
body {
	margin:0;
	font: 16px/21px "pragmatica-web", Arial, Helvetica, sans-serif;
	color:#3a3a3a;
	height:100%;
	background:#fff;
	min-width:1003px;
}
img {border-style:none;}
/* set styles for default page links */
a {
	text-decoration:none;
	color:#4ec4d2;
	outline:none;
}
a:hover {
	text-decoration:underline;
}
/* set default styles in all browsers */
input,
textarea,
select {
	font:100% Arial, Helvetica, sans-serif;
	vertical-align:middle;
	color:#000;
}
form, fieldset {
	margin:0;
	padding:0;
	border-style:none;
}
button::-moz-focus-inner{
	padding:0;
	border:0;
}
input[type=submit],
input[type=button],
input[type=submit]:hover,
input[type=button]:hover{cursor:pointer;}
header, footer, article, section, nav, figure, aside, main {display: block;}
figure { margin:0; padding:0; }
/* placeholder input styles */
::-webkit-input-placeholder { /* WebKit browsers */
	color: #616161;
}
:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	color: #616161;
}
::-moz-placeholder { /* Mozilla Firefox 19+ */
	color: #616161;
	opacity: 1;
}
:-ms-input-placeholder { /* Internet Explorer 10+ */
	color: #616161;
}
/* ---------------------------------------------------------
   2. Common site styles
   ---------------------------------------------------------*/
/* main container styles */
#wrapper{
	width:100%;
	height:100%;
	display:table;
	margin:0 auto;
}
.w1{
	width:100%;
	display:table-row;
}
/* header styles */
#header{
	position:relative;
}
#header .holder{
	width:994px;
	margin:0 auto;
}
#header .holder:after{
	content:'';
	display:block;
	clear:both;
}
/* top-panel styles */
.top-panel{
	border-bottom:1px solid #ababac;
}
#header .phone{
	float:left;
	margin:8px 10px 0 0;
	font-weight:bold;
	text-transform:uppercase;
	font-size:25px;
	line-height:28px;
	color:#4ec4d2;
}
#header .phone span{
	letter-spacing:-1px;
}
#header .right-box{
	float:right;
	border-right:1px solid #ababac;
}
/* social-networks styles */
.social-networks{
	float:right;
	padding:0;
	margin:8px 9px 10px 0;
	list-style:none;
}
.social-networks li{
	float:left;
	margin:0 6px 0 0;
}
.social-networks a{
	display:block;
	background:url(../images/sprite.png) no-repeat;
	width: 24px;
	height: 24px;
	text-indent:-9999px;
	overflow:hidden;
}
.social-networks .twitter{
	background-position:0 0;
}
.social-networks .twitter:hover{
	background-position:-70px 0;
}
.social-networks .facebook{
	background-position:-30px 0;
}
.social-networks .facebook:hover{
	background-position:-100px 0;
}
.nav-top-holder{
	float:right;
}
/* nav-top styles */
.nav-top{
	padding:0;
	margin:0 1px 0 0;
	font-size:13px;
	line-height:16px;
	list-style:none;
	overflow:hidden;
}
.nav-top li{
	float:left;
	border-left:1px solid #ababac;
}
.nav-top a{
	display:block;
	padding:12px 14px 14px;
	color:#616161;
}
.nav-top a:hover{
	color:#4ec4d2;
	text-decoration:none;
}
/* page logo styles */
.logo{
	float:right;
	margin: 18px 21px 0 0;
	background: url(../images/logo.png) no-repeat;
	width:260px;
	height:62px;
	text-indent:-9999px;
	overflow:hidden;
}
.logo a{
	display:block;
	height:100%;
}
/* menuNavDiv styles */
#menuNavDiv{
	float:left;
}
/* menuNavRoot styles */
#menuNavRoot{
	padding:29px 0 0;
	margin:0;
	text-align:center;
	font-weight:bold;
	list-style:none;
}
#menuNavRoot:after{
	content:'';
	display:block;
	clear:both;
}
#menuNavRoot > li{
	float:left;
	position:relative;
	margin:0 1px 0 0;
}
.menuNavTopLevel > a{
	display:block;
	width:152px;
	padding:10px 21px 11px;
	font-size:17px;
	font-weight: normal;
	line-height:20px;
	color:#fff;
	text-transform:uppercase;
	background:#4ec4d2;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
#menuNavRoot li:hover > a,
#menuNavRoot > li > a:hover{
	opacity:0.8;
	text-decoration:none;
}

/* Middle Menu Item */
#menuNavItem32474 > a{
	background:#a1a6b4;
}

/* Last Menu Item */
#menuNavItem32481 > a{
	background:#3a3548;
}

#menuNavRoot li:hover ul{
	display:block;
}
#menuNavRoot ul{
	display:none;
	position:absolute;
	top:100%;
	left:0;
	width: 565px;
	min-height: 158px;
	padding:22px 20px 16px;
	margin:0;
	list-style:none;
	font:bold 15px/18px Arial, Helvetica, sans-serif;
	text-align:left;
	background:#fff;
	background:rgba(255, 255, 255, .75);
	box-shadow: 1px 5px 3px rgba(7,8,8,.4);
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	z-index:1000;
}
#menuNavRoot ul:after{
	content:'';
	display:block;
	clear:both;
}
#menuNavRoot ul li{
	float:left;
	width:50%;
	margin:0 0 12px;
}
#menuNavRoot ul li:first-child{
	margin:0;
}
#menuNavRoot ul a{
	color:#4f4f4f;
}
#menuNavRoot ul a:hover{
	color:#2a93a6;
	text-decoration:none;
}
/* main styles */
#main{
	position:relative;
}
/* open-close styles */
.open-close{
	position:absolute;
	top:124px;
	left:0;
	z-index:1000;
}
.open-close .opener{
	position:relative;
	display:block;
	padding:25px 5px 5px 5px;
	text-align:center;
	text-transform:uppercase;
	color:#fff;
	width: 53px;
	height: 221px;
	font-size:20px;
	line-height:23px;
	background:#58585a;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	overflow:hidden;
	z-index: 1;
}
.open-close .opener:after{
	content:'';
	position:absolute;
	top:16px;
	right:17px;
	background:url(../images/sprite.png) no-repeat -140px 0;
	width: 22px;
	height: 23px;
}
.open-close .opener span{
	display:block;
	width: 168px;
	height: 28px;
	margin: 83px 0 0 -61px;
	-moz-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	transform: rotate(-90deg);
}
.open-close .opener:hover{
	text-decoration:none;
	color:#efefef;
}
.open-close .slide{
	/* display:none; */
	/* position:absolute;
	top:0;
	left:0; */
	position:relative;
	top:0;
	left:0;
	width:301px;
}
.open-close.active .slide{
	position:absolute;
	top:0 !important;
	left:100% !important;
	box-shadow: 2px 9px 16px rgba(7,8,8,.39);
}
/* news-form styles */
.news-form{
	font-size:16px;
	line-height:21px;
	color:#fff;
	padding: 23px 27px 31px;
	width: 301px;
	background:#575759;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.news-form h1{
	font-size:24px;
	line-height:28px;
	margin:0 0 18px;
	color:#4ec4d2;
	text-transform:uppercase;
}
.news-form p{
	margin:0 0 19px;
}
.news-form .row{
	padding:21px 2px 0 1px;
}
.enquiry-form .dataformContainer input[type="text"],
.enquiry-form .dataformContainer input[type="email"],
.news-form .dataformContainer input[type="text"],
.news-form .dataformContainer input[type="email"]{
	display:block;
	width:100%;
	height:34px;
	font-size:14px;
	line-height:17px;
	margin:0 0 8px;
	padding:7px 6px 8px;
	color:#616161;
	border:1px solid #231f20;
	background:none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.enquiry-form .dataformContainer textarea,
.news-form .dataformContainer textarea{
	display:block;
	width:100% !important;
	min-height:89px;
	max-height:260px;
	height:89px;
	font-size:14px;
	line-height:17px;
	margin:0 0 12px;
	padding:5px;
	color:#616161;
	border:1px solid #231f20;
	background:none;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	overflow:auto;
}
.enquiry-form textarea{
	max-height:133px;
}
.news-form .dataformContainer input[type="text"],
.news-form .dataformContainer input[type="email"],
.news-form .dataformContainer textarea{
	background:#fff;
}
.enquiry-form .dataformContainer input[type="submit"],
.news-form .dataformContainer input[type="submit"]{
	display:block;
	margin:0 0 5px;
	padding:6px 35px 7px 5px;
	width:100%;
	height:34px;
	line-height:22px;
	text-align:left;
	background:#4ec4d2 url(../images/bg-submit.png) no-repeat 95% 50%;
}

.enquiry-form .dataformContainer li,
.news-form .dataformContainer li {
	margin: 0;
}

/* form-holder styles */
.form-holder{
	width:994px;
	margin:0 auto;
	position:relative;
	right:0;
	top:0;
	z-index:101;
}
/* enquiry-form styles */
.enquiry-form{
	position:absolute;
	right:0;
	top:0;
	width: 301px;
	padding:25px 26px 33px;
	font-size:14px;
	line-height:18px;
	background:#fff;
	background:rgba(255, 255, 255, .7);
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.enquiry-form .row{
	padding:15px 5px 0 0;
}
.enquiry-form .row:after{
	content:'';
	display:block;
	clear:both;
}
.enquiry-form h1{
	font-family: 'jbt-annabelle', "pragmatica-web", Arial, Helvetica, sans-serif;
	font-size: 34px;
	line-height:43px;
	margin:0 0 16px;
	color:#3a3a3a;
}
.enquiry-form p{
	margin:0 0 15px;
}

#dataform_1047 .dataformHeading1,
#dataform_1048 .dataformHeading1,
#dataform_1047 label,
#dataform_1048 label,
.dataformValSumaryMainText,
.dataformRequired,
#liImageButtons {
	display: none;
}

.dataForm_fieldSet ul,
#dataformErrorMessage ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#dataformErrorMessage ul  {
	background-color: #F2DEDE;
	border: 1px solid #FF5252;
	border-radius: 4px;
	color: #A94442;
	margin-bottom: 0;
	padding: 10px;
}

.dataForm_fieldSet li {
	position: relative;
}

#dataformErrorMessage ul {
	color: #f00;
	margin-bottom: 20px;
}

.errorMessage {
	color: #f00;
	position: absolute;
	right: 10px;
	top: 9px;
}

.enquiry-form .errorMessage,
.news-form .errorMessage {
	top: 12px;
}

.dataformContainer > p {
	background-color: #DFF0D8;
	border: 1px solid #ABC497;
	border-radius: 4px;
	color: #3C763D;
	margin-bottom: 0;
	padding: 10px;
}

#main .holder{
	position:relative;
	width:994px;
	margin:0 auto;
	overflow:hidden;
}
/* container styles */
.page-home .container{
	min-height:505px;
	overflow:hidden;
}
/* feature banner */
.feature-banner li,
.page-banner {
	background-position: center top;
	background-repeat: no-repeat;
}

/* flexslider styles */
.flexslider, .banner {
	position:relative;
	overflow:hidden;
}
.flexslider .slides{
	padding:0;
	margin:0;
	list-style:none;
}
.flexslider .slides:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	line-height: 0;
	visibility: hidden;
}
.flexslider .slides > li{
	display:none;
	position:relative;
	height:505px;
}
.flexslider .slides .flex-active-slide{
	display:block;
}
.flexslider .slides .img-holder{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.flexslider .slides img{
	display: none;
	height:auto;
	margin: 0 auto;
}
.flex-direction-holder{
	position:absolute;
	width:100%;
	top:50%;
	left:0;
	z-index:2;
}
.flex-direction-nav{
	width:994px;
	padding:0;
	margin:0 auto;
	list-style:none;
	position:relative;
}
.flex-direction-nav .flex-prev,
.flex-direction-nav .flex-next{
	position: absolute;
	display:none;
	top: 50%;
	left:-85px;
	background:url(../images/sprite.png) no-repeat -96px -32px;
	width: 70px;
	height: 70px;
	margin: -35px 0 0;
	text-indent: -9999px;
	overflow:hidden;
}
.banner:hover .flex-direction-nav a{
	display:block;
}
.flex-direction-nav .flex-next{
	left:auto;
	right:-85px;
	background-position:0 -32px;
}
.flex-direction-nav a:hover{
	opacity:0.8;
}

/* page banner */
.page-banner {
	height: 368px;
}
.page-banner img {
	display: none;
}

/* grey-block styles */
.grey-block{
	background:#d1d2d4;
}
.grey-block .holder{
	padding:14px 0 11px 39px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
/* button styles */
.button{
	min-width:300px;
	padding:9px 25px 9px 20px;
	position:relative;
	display:inline-block;
	vertical-align:top;
	color:#fff;
	font-size:17px;
	line-height:21px;
	background:#3a3548;
	text-transform:uppercase;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.button:hover{
	opacity:0.8;
	text-decoration:none;
}
.button:after{
	content:'';
	position:absolute;
	top:50%;
	right:12px;
	margin:-12px 0 0;
	background:url(../images/sprite.png) no-repeat -140px 0;
	width: 22px;
	height: 23px;
}
.grey-block .button{
	float:right;
	margin: -3px 0 0;
}
.grey-block .mark{
	float:left;
	max-width:67%;
	font-size:33px;
	line-height:37px;
	font-weight:300;
	color:#4ec4d2;
	text-transform:capitalize;
}
/* key-block styles */
.key-block{
	/*background:url(../images/bg-key.png);*/
}
.key-block .holder{
	background:#fff;
}
.text-col-holder{
	padding:29px 0 48px;
	margin:0 -4% 0 0;
	overflow:hidden;
}
/* text-col-holder col styles */
.text-col-holder .col{
	float:left;
	margin: 0 3.3% 0 0;
	width: 30%;
	font-size:16px;
	line-height:21px;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
}
.text-col-holder .col-1{
	padding:0 0 0 42px;
}
.text-col-holder .col-2{
	padding:0 10px 0 0;
}
.text-col-holder .col .text-box{
	font-weight:300;
	overflow:hidden;
}
.page-home h4 {
	font-size:24px;
	line-height:27px;
	margin:0 0 33px;
	color:#4ec4d2;
	font-weight:400;
}

.copy, .col-2 p {
	font-weight: 300;
}

.copy h1 {
	font-family: 'jbt-annabelle', "pragmatica-web", Arial, Helvetica, sans-serif;
	font-size: 38px;
	font-weight: normal;
	line-height:44px;
	color:#000;
	margin: 0 0 16px;
}

.page-standard .copy h1 {
	padding:0 0 10px;
	overflow:hidden;
}
.text-col-holder .col p{
	margin:0 0 17px;
}
.text-col-holder .col .text-box p{
	margin: 0 0 8px;
}
.text-col-holder .col .img{
	display:block;
	margin:0 0 26px;
}
/*a.more{
	font-size:14px;
	line-height:17px;
	text-transform:capitalize;
}*/
.text-col-holder .col .link-list{
	padding:0;
	margin:0;
	list-style:none;
	overflow:hidden;
}
.text-col-holder .col .link-list li{
	margin:0 0 6px;
}
.text-col-holder .col .link-list a{
	text-decoration:underline;
}
.text-col-holder .col .link-list a:hover{
	text-decoration:none;
}
/* bg-stretch styles */
.bg-stretch{
	position:relative;
	height:505px;
	overflow:hidden;
}
.bg-stretch .img-holder{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
.bg-stretch img{
	display:block;
	width:100%;
	height:auto;
}
.text-block {
	padding:47px 10px 30px 43px;
	overflow:hidden;
}
.copy h2 {
	font-size: 21px;
	font-weight: 300;
	line-height: 28px;
	margin-top: 0;
}
.copy h3 {
	font-size:20px;
	line-height:25px;
	margin: 0 0 5px;
	color:#4ec4d2;
	font-weight:normal;
}
.copy h4 {
	font-weight: bold;
	margin: 0 0 6px;
	text-transform: uppercase;
}
.text-block .col-holder{
	overflow:hidden;
}
.text-block .col{
	float:left;
	width:47%;
	margin:0 0 0 4.3%;
}
.text-block .col-1-3 {
	width: 289px;
}
.text-block .col-2-3 {
	width: 611px;
}
.text-block .col:first-child{
	margin:0;
}
.text-block .text{
	font-size:16px;
	line-height:21px;
	margin:0 0 20px;
	overflow:hidden;
}
.text-block p{
	margin:0 0 27px;
}
.text-block .text p{
	margin:0 0 12px;
}
/* footer styles */
#footer{
	width:100%;
	background:#58585a;
	display:table-footer-group;
	overflow:hidden;
}
.f1{
	height:1%;
	display:table-row;
}
.f2{
	display:table-cell;
}
#footer .holder{
	width:994px;
	padding:27px 41px 42px 32px;
	margin:0 auto;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	overflow:hidden;
}
#footer .box{
	float:right;
	max-width: 40%;
	padding: 18px 0 0;
}
#footer .box .frame:after{
	content:'';
	display:block;
	clear:both;
}
#footer .contact-text{
	float:left;
	font-size:26px;
	line-height:35px;
	color:#4ec4d2;
	text-transform:capitalize;
}
/* footer social-networks styles */
#footer .social-networks{
	float:right;
	margin: 0 -12px 19px 0;
	padding: 38px 0 0;
}
#footer .social-networks .twitter{
	background-position:-70px 0;
}
#footer .social-networks .twitter:hover{
	background-position:0 0;
}
#footer .social-networks .facebook{
	background-position:-100px 0;
}
#footer .social-networks .facebook:hover{
	background-position:-30px 0;
}
#footer a.email{
	color:#fff;
	text-decoration:none;
}
#footer a.email:hover{
	color:#4ec4d2;
}
/* panel styles */
#footer .panel{
	overflow:hidden;
}
#footer h3{
	font-size:16px;
	line-height:20px;
	margin:0 0 12px;
	text-transform:uppercase;
	font-weight:400;
	color:#4ec4d2;
	letter-spacing: -1px;
}
#footer .list{
	padding:0;
	margin:0;
	font-size:14px;
	line-height:17px;
	font-family:"Trebuchet MS", Helvetica, sans-serif;
	list-style:none;
	overflow:hidden;
}
#footer .list li{
	float: left;
	width: 28.4%;
	margin: 0 3% 7px 0;
	padding: 0 0 6px;
	border-bottom:1px solid #8a8a8c;
}
#footer .list a{
	color:#fff;
	text-decoration:none;
}
#footer .list a:hover{
	color:#4ec4d2;
}

/* .open-close {overflow:hidden;} */
.open-close .slide{display:block;}
.open-close .opener,
.slide-wrapper{
	float:left;
}
.slide-wrapper{
	overflow:hidden;
	position:absolute;
	left:100%;
	top:0;
}

/* Page - Contact Us */
.page-contact-us .copy ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.page-contact-us .copy li {
	clear: both;
	padding-top: 4px;
}

.page-contact-us .copy li strong {
	color: #4ec4d2;
	display: block;
	float: left;
	font-weight: normal;
	width: 100px;
}

.page-contact-us .copy li em {
	display: block;
	float: left;
	font-style: normal;
}

.page-contact-us .dataForm_fieldSet li {
	padding: 0;
}

/* Generic Dataform */

.dataForm_fieldSet li {
	margin-bottom: 8px;
}
.dataForm_fieldSet li:after {
	content:'';
	display:block;
	clear:both;
}

.dataformContainer label {
	color: #4ec4d2;
	display: block;
	float: left;
	font-weight: bold;
}

.dataformContainer input[type="text"],
.dataformContainer textarea {
	border: 1px solid #000;
	height: 23px;
	float: right;
	padding: 3px 8px;
	width: 237px;
}

.dataformContainer textarea {
	height: 100px;
}

.dataformContainer input[type="submit"] {
	background:#4ec4d2;
	border:1px solid #231f20;
	color:#fff;
	cursor:pointer;
	font-size:14px;
	float: right;
	padding:6px 10px 7px;
	text-transform:uppercase;
}

.dataformContainer input[type="submit"]:hover{
	cursor:pointer;
	background-color:#6bcfdb;
}