/* =INITIAL 
   v2.1, by Faruk Ates - www.kurafire.net
   Addendum by Robert Nyman - www.robertnyman.com
   altered to tastes of Joel Birch */

/* Neutralize styling: 
   Elements we want to clean out entirely: */
html, body, form, fieldset {
	margin: 0;
	padding: 0;
	font: 100%/150% 'Trebuchet MS', Verdana, Arial, Helvetica, sans-serif;
}

/* Neutralize styling: 
   Elements with a vertical margin: */
h1, h2, h3, h4, h5, h6, p, pre,
blockquote, ul, ol, dl, address {
	margin: 1em 0;
	padding: 0;

}

/* Apply left margin:
   Only to the few elements that need it: */
li, dd, blockquote {
	margin-left: 1em;
}

/* Miscellaneous conveniences: */
form label {
	cursor: pointer;
}
fieldset {
	border: none;
}

/* Form field text-scaling */
input, select, textarea {
	font-size: 100%;
}

/* Remove borders on linked img tags */
a img {
	border: none;
}

.aid, hr {
	position: absolute;
	text-indent: -999em;
	}
hr {
	top: -999em;
	}body {
		background:			#0053BC url(../i/body.png) repeat-x 0 -23px;
		color: 				#fff;
		font: 				small/1.4 "Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", sans-serif;
		-moz-opacity:		.999;
	}
h1, h2, h3 {
		line-height: 		1.2;
}
h1, h2 {
		font-family: 		"Trebuchet MS", "Lucida Grande", "Lucida Sans Unicode", "Lucida Sans", sans-serif;
	}
h1 {
		background: 		#EB1419;
		border: 			2px solid #fff;
		color: 				#fff;
		font-size: 			24px;
		font-weight: 		bold;
		letter-spacing: 	-1px;
		margin: 			-1px -18px .5em;
		padding: 			12px 15px 15px;
		width: 				510px;
	}
h2, .products h3 {
		border-bottom: 		2px solid #ddd;
		color: 				#222;
		font-size: 			20px;
		letter-spacing: 	-1px;
		margin-bottom: 		0;
		padding-bottom: 	.2em;
	}
h2 small, h3 small {
		color:				#555;
		font-style:			italic;
		font-weight:		normal;
}
h3, h4 {
		color: 				#0053BC;
		margin-bottom: 		-.75em;
	}
p {
		clear: 				left;
	}
	
em	{
	font-weight:			bold;
	}
	
	
address {
		font-style: 		normal;
	}
#contact h2 {
		border:  			none;
		color: 				#fff;
	}
#main a {
		text-decoration: 	none;
	}
a:link, a:visited {
		border-bottom: 		1px solid #7FA9DD;
		color: 				#0053BC;
	}
a:focus, a:hover {
		border-bottom: 		1px solid #0053BC;
		color: 				#002172;
		outline:			none;
	}
a:active {
		border-bottom: 		1px solid #EB1419;
		color: 				#EB1419;
	}
#top, #branding, #intro, #content, #contact {
		margin: 			0 auto;
		padding: 			1px 0;
		width: 				760px;
	}
#banner, #contour {
		position: 			absolute;
		top: 				86px;
		left: 				187px;
	}
#top {
		left: 				50%;
		top: 				0;
		margin-left: 		-380px;
	}
#contour {
		background: 		transparent url(../i/test-contour.png) no-repeat 0 0;
		display: 			block;
		top: 				0;
		width: 				573px;
		height: 			86px;
	}
#call-now  {
		background: 		transparent url(../i/call.png) no-repeat 0 0;
		right: 				-30px;
		top: 				13px;
		width: 				108px;
		height: 			107px;
		position: 			absolute;
		z-index: 			3;
	}
#content {
		padding-bottom: 	30px;
	}
#contact {
		padding: 			20px 18px 30px;
		width: 				724px;
	}
#branding {
		height: 			256px;
		position: 			relative;
		z-index: 			0;
	}
#sitename a {
		background: 		transparent url(../i/logo.png) no-repeat 0 0;
		border: 			none;
		display: 			block;
		margin: 			0;
		outline: 			none;
		position: 			absolute;
		text-indent: 		-999em;
		top: 				86px;
		left: 				0;
		width: 				187px;
		height: 			161px;
	}
#intro {
		background: 		#1964C2;
		border:				2px solid #3375C9;
		border-bottom: 		none;
		-moz-border-radius:	10px 10px 0 0;
		-webkit-border-top-left-radius: 10px;
		-webkit-border-top-right-radius: 10px;
		color:				#B2CBEA;
		font-size:			17px;
		font-style: 		italic;
		padding: 			1px 0;
		margin: 			0 auto;
		width: 				756px;
	}
#intro p {
		margin: 			14px 16px 16px;
	}
#intro a {
		border:				none;
		color:				#fff;
}
#content {
		background: 		#fff;
		color: 				#4d4d4d;
		overflow: 			hidden;
	}
#main {
		padding: 			0 18px;
	}
#aside {
		float:				right;
		position: 			relative;
		width: 				216px;
	}
#footer {
		background: 		#EB1419 url(../i/foot.png) repeat-x 0 0;
		border-top:			3px solid #fff;
		clear: 				both;
		position:			relative;
	}
#up {
		text-indent:		0;
		top:				-4em;
		left:				50%;
		margin-left:		-362px;
}
#up a { border:				none; }
#contact {	
		position: 			relative;
	}
#contact a:link, #contact a:visited {
		border: 			none;
		color: 				#fff;
		font-weight: 		bold;
		text-decoration: 	underline;
	}
#contact a:focus, #contact a:hover, #contact a:active {
		text-decoration: 	none;
	}
.email {
		font-size: 			large;
		font-weight: 		bold;
		text-shadow: 		1px 1px 7px #555;
	}
#map {
		position: 			absolute;
		text-align: 		center;
		top: 				42px;
		right: 				20px;
		width: 				407px;
	}
.col-list {
		float: 				left;
		width:				169px;
	}
.col-list li ul {
		color:				#777;
		font-size: 			11px;
		list-style-type:	none;
		margin-top:			0;
}
.col-list li li {
		margin:				0 1em 0 0;
		padding:			0;
}
.products li .col-list {
		margin-top:			-1em;
}
.pic:link, #content .pic:visited {
		border: 			2px solid #ddd;
	}
#content .pic:focus, #content .pic:hover {
		border: 			2px solid #4C86D0;
	}
#content .pic:active {
		border: 			2px solid #EB1419;
	}
.pic img, .gallery, .gallery img {
		display: 			block;
	}
.pic {
		display: 			inline;
		float: 				right;
		margin: 			1px 2px 1em 1em;
		width: 				210px;
		height: 			154px;
		position: 			relative;
	}
.gallery {
		background-image: url(../i/needapic.jpg);
		width: 				214px;
	}
.gallery:link, .gallery:visited {
		border-bottom: 		3px solid #6697D6;
		margin-top: 		10px;
	}
.gallery:focus, .gallery:hover {
		border-bottom: 		3px solid #0053BC;
	}
.gallery:active {
		border-bottom: 		3px solid #EB1419;
	}
.two-col #main {
		float: 				left;
		width: 				508px;
	}
.two-col .pic {
		margin:				1px 2px 0 0;
	}
.note {
		font-size: 			11px;
		font-style: 		italic;
	}
.aid ul {
		list-style: 		none;
	}
.products {
		list-style:			none;
		margin: 1em -10px;
}
.products li {
		background:			#EAF1F9;
		clear:				left;
		min-height:			166px;
		margin:				0 0 10px;
		overflow:			hidden;
		padding:			1px 218px 1px 10px;
		position:			relative;
}
.products li ul {
		list-style:			disc;
}
.products li li {
		background:			transparent;
		min-height:			0;
		margin:				0 0 0 1em;
		overflow:			visible;
		padding:			0;
		position:			static;
}
.products h3 {
		border-color:		#fff;
		color:				#1964C2;
		font-size:			18px;
		margin-top:			.6em;
}
.products a.pic {
		border:				2px solid #fff;
		display:			block;
		height:				126px;
		width:				186px;
		position:			absolute;
		right:				16px;
		top:				18px;
}
.products .even {
		background:			#FCF4DE;
}
.videos {
		overflow:			hidden;
		list-style:			none;
		padding:			1em 0;
		float:				left;
}
.videos li {
		float:				left;
		margin-left:		30px;
}
.videos a, .videos span {
		display:			block;
		text-align:			center;
		border:				none;
		text-decoration:	underline;
}
.videos span {
		position:			relative;
		top:				-20px;
}/* @group main nav styles */
.nav, .nav * {
		margin:				0;
		padding:			0;
}                       	
.nav {
		font-size: 			12px;
		height: 			5.5em;
		line-height:		1.0;
		margin: 			0 auto;
		position: 			relative;
		width: 				760px;
}

.nav ul {               	
		float: 				left;
		position:			relative;
}
.nav li {
		background:			#E0EAF6 url(../i/tabs.png) no-repeat 0 -120px;
		margin-right:		2px;
		float: 				left;
		list-style:			none;
		z-index:			1;
}
.nav li.current ul {
		z-index: 			1;
}
.nav li.sfHover ul,
ul.nav li:hover ul {
		z-index: 			2;
}
.nav li li {
		background:			transparent;
		margin-left:		0;
}
.nav a {
		background:			transparent url(../i/tabs.png) no-repeat 100% -60px;
		border-bottom: 		none;
		color: 				#666;
		display:			block;
		padding: 			9px 10px 9px;
		text-decoration:	none;
		font-weight: 		bold;
}
#nav .nav a {
		background:			transparent url(../i/tabs.png) no-repeat 100% -60px;
}
.nav li ul {
		background:			#0053BC;
		left:				0;
		top:				-999em;
		position:			absolute;
		width:				760px;
}
.nav li:hover,
.nav li.sfHover {
		background:			#F2F6FB url(../i/tabs.png) no-repeat 0 -60px;
}
.nav li li.sfHover {
		background:			transparent;
}

.nav li.current,
.nav li.sfbreadcrumb {
		background:			#0053BC url(../i/tabs.png) no-repeat 0 0;
		color:				#fff;
}

.nav li.sfHover a,
.nav li:hover a,
.nav a:focus, .nav a:hover, .nav a:active {
		color: 				#0053BC;
}
.nav li.current a,
.nav li.sfbreadcrumb a,
.nav li.current a:focus, .nav li.current a:hover, .nav li.current a:active,
.nav li.sfbreadcrumb a:focus, .nav li.sfbreadcrumb a:hover, .nav li.sfbreadcrumb a:active {
		background:			transparent url(../i/tabs.png) no-repeat 100% -60px;
		color: 				#fff;
}

#nav .nav li li a {
		background:			transparent;
		float: 				left;
}
.nav li.current li.current,
.nav li.sfbreadcrumb li.sfbreadcrumb,
.nav li li a:focus, .nav li li a:active {
		background: 		transparent;
}
/*
.nav li li:after {
		color:				#4C86D0;
    	content:			" | ";
		display:			block;
		float:				left;
		padding: 			10px 0 9px;
}
.nav li li:last-child:after {
    	content:			"";
}
*/
.nav li li a {
		padding-top: 		11px;
	}
.nav li li a,
.nav li:hover li a,
.nav li.sfHover li a,
.nav li.current li a,
.nav li.sfbreadcrumb li a {
		background:			transparent;
		border-bottom: 		none;
		color:				#99BAE4;
		text-decoration:	underline;
}
.nav li.current li.current a,
.nav li.sfbreadcrumb li.sfbreadcrumb a,
.nav li:hover li a:focus, .nav li:hover li a:hover, .nav li:hover li a:active,
.nav li.sfHover li a:focus, .nav li.sfHover li a:hover, .nav li.sfHover li a:active {
		background:			transparent;
		color:				#fff;
}

#nav .nav li.current li.current a,
#nav .nav li.sfbreadcrumb li.sfbreadcrumb a {
		text-decoration:	none;
}
.nav li li:hover,
.nav li li a:focus, .nav li li a:hover, .nav li li a:active {
		background:			#0053BC;
}
.nav li:hover ul, /* pure CSS hover is removed below */
body .nav li.current ul, /* this must be more specific than the .superfish override below */
ul.nav li.sfHover ul {
		margin-top:			18px;
		top:				1em;
}

.nav li:hover li ul,
.nav li.sfHover li ul {
		margin-top:			18px;
		top:				-999em;
}
.nav li li:hover ul, /* pure CSS hover is removed below */
ul.nav li li.sfHover ul {
		top:				1em;
}
/*following rule negates pure CSS hovers
so submenu remains hidden and JS controls
when and how it appears*/
.superfish li:hover ul,
.superfish li li:hover ul {
		top:				-999em;
}
/* @end */

table p {
	text-align:center;
	}		

table a,
table a:link,
table a:visited {
	border:none;
	}		
table img {
	border:0;
	margin-top:.5em;
	}	
table {
	width:100%;
	border-top:1px solid #E5EDF8;
	border-right:1px solid #D1E0F2;
	border-top: 1px solid #BFD4EE;
	margin:1em auto;
	border-collapse:collapse;
	}
caption {
	color:#7FA9DD;
	font-size:.914em;
	letter-spacing:.1em;
	padding:0;
	margin:1em 0 0 0;
	margin-bottom:0;
	caption-side:top;
	text-align:center;
	}	
tr.odd td,
tr.odd .column1 {
	background: #F4F8FC;
	/*background:#f4f9fe url(../i/row.gif) no-repeat;*/
	}	
.column1	{
	background: #F4F8FC;
	color: #0053BC;
	}
td {
	color:#3375C9;
	border-bottom: 1px solid #D1E0F2;
	border-left:1px solid #E5EDF8;
	padding:.3em 1em;
	text-align:center;
	}				
th {
	font-weight:bold;
	color:#0053BC;
	text-align:left;
	border-bottom: 1px solid #D1E0F2;
	border-left:1px solid #E5EDF8;
	padding:.3em 1em;
	}	
thead th {
	background: #E2ECF7;
	text-align:center;
	font-weight:bold;
	font-size:1em;
	color:#0053BC;
	padding:.6em 1em;
	}	
tr:last-child {	
	border-bottom: 2px solid #D1E0F2;
}			
tfoot th {
	background: #DBE6F5;
	text-align:center;
	}/* Uni-Form by Dragan Babic  - http://dnevnikeklektika.com/ , http://draganbabic.com/ */ 
/* Some rights reserved - http://creativecommons.org/licenses/by-sa/2.5/ */
/* It is suggested not to edit this file directly, but rather the uni-form.css provided in the Uni-Form zip archive */

.uniForm{
  margin:0; padding:0;
  position:relative;
  width:100%;
  overflow:hidden;
}

  /* Some generals */
  .uniForm fieldset{
    border:none;
    margin:0; padding:0;
  }
    .uniForm fieldset legend{
      margin:0; padding:0;
    }

    .uniForm .ctrlHolder{ /* This is the main unit that contains our form elements */
      overflow:hidden;
      margin:0; padding:0;
      clear:both;
    }

    .uniForm .buttonHolder{
      overflow:hidden;
      clear:both;
    }
      .uniForm .resetButton{
      }
      .uniForm .submitButton{
      }

    .uniForm .inlineLabel,
    .uniForm .inlineLabels .inlineLabel,
    .uniForm .blockLabels .inlineLabel{
      width:auto;
      float:none;
      margin:0 1em 0 0;
      display:inline;
    }
      .uniForm .inlineLabel input{
      }
    
    .uniForm .focused{ /* For highlighting the rows on input focus */
    }

    /* ########################################################################## */

    /* Styles for form controls where labels are in line with the input elements */
    /* Set the class of the parent (preferably to a fieldset) to .inlineLabels */
    .uniForm .inlineLabels .ctrlHolder{
    }
        .uniForm .inlineLabels label,
        .uniForm .inlineLabels .label{
          float:left;
          margin:.3em 2% 0 0; padding:0;
          line-height:100%;
          position:relative;
        }

        .uniForm .inlineLabels .textInput,
        .uniForm .inlineLabels .fileUpload{
          float:left;
        }
        .uniForm .inlineLabels .fileUpload{
        }
        
        .uniForm .inlineLabels .selectInput{
          float:left;
        }

        .uniForm .inlineLabels textarea{
          float:left;
        }

      .uniForm .inlineLabels .formHint{
        clear:both;
      }

        /* inlineLabels esthetics */
        .uniForm .inlineLabels .formHint strong{
        }


    /* ########################################################################## */

    /* Styles for form controls where labels are above the input elements */
    /* Set the class of the parent (preferably to a fieldset) to .blockLabels */
    .uniForm .blockLabels .ctrlHolder{
    }

      .uniForm .blockLabels label,
      .uniForm .blockLabels .label{
        display:block;
        float:none;
        margin:.3em 0; padding:0;
        line-height:100%;
        width:auto;
      }
      .uniForm .blockLabels .label{
        float:left;
        margin-right:3em;
      }

      .uniForm .blockLabels .inlineLabel{
        position:relative; top:.15em;
      }

      .uniForm .blockLabels .textInput,
      .uniForm .blockLabels .fileUpload{
        float:left;
      }
      .uniForm .blockLabels .fileUpload{
      }
      
      .uniForm .blockLabels .selectInput{
        display:block;
      }

      .uniForm .blockLabels textarea{
        float:left;
        display:block;
      }

      .uniForm .blockLabels .formHint{
        float:right;
        margin:0;
        clear:none;
      }

      /* blockLabels esthetics */
      .uniForm .blockLabels .ctrlHolder{
      }

      .uniForm .blockLabels .focused{
      }

    /* ########################################################################## */

    /* Focus pseudoclasses */
    .uniForm .ctrlHolder .textInput:focus{
    }
    .uniForm div.focused .textInput:focus{
    }
    .uniForm div.focused .formHint{
    }

    /* Required fields asterisk styling, use if needed */
    .uniForm label em,
    .uniForm .label em{
      display:block;
      position:absolute; left:100%;
      font-style:normal;
      font-weight:bold;
    }
    .uniForm .blockLabels label em,
    .uniForm .blockLabels .label em{
      position:static;
      display:inline;
    }

    /* ########################################################################## */

    /* Messages */
    .uniForm #errorMsg,
    .uniForm .error{
    }
      .uniForm #errorMsg dt,
      .uniForm #errorMsg h3{
      }
      .uniForm #errorMsg dd{
      }
        .uniForm #errorMsg ol{
        }
          .uniForm #errorMsg ol li{
          }
      .uniForm .errorField{
      }

    /* ########################################################################## */

    /* Add the following classes to your fieldsets (preferably) if you want columns */
    .uniForm .col{
      float:left;
    }
    .uniForm .columnLeft{
      float:left;
    }
    .uniForm .columnRight{
      float:right;
    }
/* Your styles below */
/* Keep in mind that wherever you see "Required property" it means that the property must exist, adjust it's value to your liking */
.uniForm {
	width: 508px;
	margin: -1em 0 0;
	}

/* Generals */
.uniForm fieldset{
  margin:1.5em 0 0;
}
.uniForm fieldset legend{
  clear:left;
  font-size:100%;
  font-weight: bold;
  line-height:1.5;
  padding: .2em 0;
  color:#222; /* Reset IE */
}
.uniForm .ctrlHolder{ /* This is the main unit that contains our form elements */
  padding:0 7px 7px; 
  background: #DEECFF;
  border: 1px solid #efefef;
  border-color: #fff #efefef #DFDFDF #efefef;
}
.uniForm .ctrlHolder:hover {
	/*background: #f9f9f9;*/
}
.uniForm .buttonHolder{
  text-align:right; /* Recommended */
  background:#f5f5f5;
  border: 1px solid #DFDFDF;
  clear:both;
  margin:10px 0pt 2em;
  overflow:hidden;
  padding:10px;
}
.uniForm .required {
  background:#e6e6e6;
}
.uniForm .focused,
.uniForm .focused:hover {
  background:#FFFCDF; 
}
.uniForm code {
	font-size: 11px;
	font-weight: bold;
	}
/* .inlineLabels */
.uniForm label em,
.uniForm .label em,
.req {
	color: #AF4C4C;
	}
.uniForm .inlineLabels label,
.uniForm .inlineLabels .label{

	line-height: 1.5;
  width:31%; /* Required property */
}
.uniForm .inlineLabels .textInput,
.uniForm .inlineLabels .fileUpload,
.uniForm .inlineLabels .selectInput,
.uniForm .inlineLabels textarea {
  border:1px solid #DFDFDF;
	}
.uniForm .inlineLabels .textInput,
.uniForm .inlineLabels .fileUpload{
	margin-top: .5em;
  width:64%; /* Required property */
  background: #fff url(../style-img/foot2.jpg) no-repeat scroll -10px 0;
}
.uniForm .inlineLabels .selectInput{
  width:64%; /* Required property */
}
.uniForm .inlineLabels .radio {
	margin-top: .5em;
	}
.uniForm .inlineLabels textarea{
	margin-top: .5em;
  	width:64%; /* Required property */
}
.uniForm .inlineLabels .formHint{
  clear:both;
  color:#888;
  font-size:80%;
  line-height: 1.4;
  margin:0.5em 0pt 0pt 33%;
  padding:3px 0pt;
}
.uniForm .submitButton {
	padding: 4px 8px;
	margin-right: 7px;
	}

/* Messages */
#errorMsg.uniForm  {
  background:#FFFFCC;
  border:1px solid #df7d7d;
  border-width:1px 0;
  margin:1em 0;
  padding:10px;
  width: 488px;
}
#errorMsg.uniForm a {
	background: transparent;
	border-bottom:none;
	color: #AF4C4C;
	font-weight:normal;
	}
#errorMsg.uniForm a strong {
	text-decoration: underline;
}
.uniForm .error,
.uniForm .error:hover {
  background:#FFDFDF;
  border:1px solid #df7d7d; border-width:1px 0;
}
  #errorMsg.uniForm  h3{
	color: #444;
    margin:0 0 .5em 0;
    font-size:110%;
    line-height:100%;
    font-weight:bold;
  }
    #errorMsg.uniForm  ol{
      margin:0; padding:0;
    }
      #errorMsg.uniForm  ol li{
        margin:0; padding:2px;
        list-style-position:inside;
        border-bottom:1px dotted #df7d7d;
        position:relative;
      }
    .uniForm .errorField {
      color:#af4c4c;
      margin:0; padding:4px 0;
      background:transparent;
    }
.successMessage {
	background: url('/assets/i/tick.gif') no-repeat 0 20px;
	min-height: 150px;
	padding: 20px 70px;
}

.supportingImg {
	float: left;
}