html {
  margin: 0;
  padding: 0;
  height:100%;                         /* force scrollbar */
  margin-bottom:1px;                   /* force scrollbar */
}

body {
    margin:0;
    padding: 7px 0 8px 0;              /* border top and bottom of site*/
    font-family: verdana,sans-serif;   /* default fonts */
    font-size: 80%;                    /* sets % of browser font size then use ems */
    background-color: #fff;
    color:#000;
    text-align: left;                  /* for all browsers to centre wrapper */
}

/* Adjust font size for FireFox: IE cant see these */

html>body p{
font-size:100%;
}
html>body ul{
font-size:100%;
}
html>body td{
font-size:100%;
}
html>body th{
font-size:100%;
}


/**** Default Styles in use accross whole site *****/

p{
   padding:0;                          /* standard paragraph style */
   margin:0px 0 10px 0;
   text-align:left;
   font-size:0.9em;
}

p.center{
    text-align:center;
}

p.small{
    font-size:0.7em;
    font-style:italic;
    margin-top:0;
}

a,a:active,a:visited{                  /* standard link style */
    color:#807ab6;
    text-decoration:none;
    font-weight:bold;
}
a:hover{
    text-decoration:underline;
    color:#807ab6;
}

img {                                   /* default images have a 1 pixel black border */
    border:1px solid #000;
    margin:10px;
}

table.captioncentered{                                /* table to house image with caption */
     display: block;
     border-collapse:collapse;
     background-color:transparent;
     margin:10px auto 10px auto;
     padding:0;
     border:0;
}

table.captioncentered td {
    border:0;
    margin:0;
    padding:0;
    background-color:transparent;
}

table.captioncentered p {
   font-size:0.6em;
   font-style:normal;
   text-align:right;
   margin:0;
}

table.captioninline{                                /* table to house image with caption */
     display: inline;
     border-collapse:collapse;
     background-color:transparent;
     margin:10px auto 10px auto;
     padding:0;
     border:0;
}

table.captioninline td {
    border:0;
    margin:0;
    padding:0;
    background-color:transparent;
}

table.captioninline p {
   font-size:0.6em;
   font-style:normal;
   text-align:right;
   margin:0;
}

table.captioninlineleft{                                /* table to house image with caption left aligned */
     display: inline;
     border-collapse:collapse;
     background-color:transparent;
     margin:10px auto 10px auto;
     padding:0;
     border:0;
}

table.captioninlineleft td {
    border:0;
    margin:0;
    padding:0;
    background-color:transparent;
}

table.captioninlineleft p {
   font-size:0.6em;
   font-style:normal;
   text-align:left;
   margin:0;
}


.centerimage{                           /* block level centered images - raw class selectable in cms */
    display:block;
    margin:0 auto 0 auto;
    clear: both;
    border:1px solid #000;
    text-align:center;
}

h1{                                    /* hidden heading for SEO and text based browsers */
    color:#fff;
    font-size:0em;
    display:none;
}

h2{                                     /* default heading 2 */
    margin:0 0 15px 0;
    font-size:1.2em;
    text-align:left;
    color:#326450;
}

.hcentered {                          /* centered heading 2 */
    text-align:center;
}

h3{                                     /* default heading 3 */
    font-size:1em;
    color:#326450;
    margin:0 0 5px 0;
}

ul{                                     /* default unordered list */
    margin: 0 0 10px 10px;
    padding: 0 0 0px 10px;
    font-size:0.9em;
}

table{                                /* default table style, width is generated by the cms */
     clear: both;
     border-collapse:collapse;
     margin:15px auto 15px 10px;
     padding:0;
}

th{
    padding:5px;
    border:1px solid #000;
    vertical-align:top;
    text-align:center;
    background-color:#c2bedb;
    font-size:0.9em;
}

td{
    padding:5px;
    border:1px solid #000;
    vertical-align:top;
    background-color:#dedceb;
    font-size:0.9em;
}


td.whitetablecell{
    background-color:#fff;       /* some table cells need a white background */
    border:0;
}

table.noborder td{     /* creates a table with no borders */
    border:0;
}

div.span{                               /* gives the content a margin left and right */
    width:700px;
    clear:both;
    padding:1px 30px 0 30px;
}

div.alignright{                         /* used to create a text box floating to the right, define the width in the html with style="width:XXXpx;" */
    float:right;
    border:1px solid #000;
    padding:2px 5px 5px 5px;
    margin:5px;
}

table.box{                              /* feature box e.g. case studies - floated right*/
    width:300px;
    float:right;
    border:1px solid #003E25;
    margin:5px 5px 5px 20px;
    border-collapse:collapse;
    background-color:#b9cfc8;    /* #e2ffc1     */
}

table.box td{
    padding:0;
    border:0;
    background-color:#b9cfc8;    /* #e2ffc1     */
}

table.box h2{
    font-weight:bold;
    font-size:1.0em;
    color:#fff;
    margin:0 0 13px 0;
    padding:2px 0 3px 3px;
    background:url(images/box.gif) #003E25 bottom right no-repeat;
}

table.box p{
    margin:0 7px 8px 7px;
    text-align:left;
}

table.boxleft{                              /* feature box e.g. case studies - floated left */
    width:300px;
    float:left;
    border:1px solid #003E25;
    margin:5px 20px 5px 0px;
    border-collapse:collapse;
    background-color:#b9cfc8;    /* #e2ffc1     */
}

table.boxleft td{
    padding:0;
    border:0;
    background-color:#b9cfc8;    /* #e2ffc1     */
}

table.boxleft h2{
    font-weight:bold;
    font-size:1.0em;
    color:#fff;
    margin:0 0 13px 0;
    padding:2px 0 3px 3px;
    background:url(images/box.gif) #003E25 bottom right no-repeat;
}

table.boxleft p{
    margin:0 7px 8px 7px;
    text-align:left;
}

table.boxcentered{                              /* feature box with centered text e.g. support*/
    width:300px;
    float:right;
    border:1px solid #003E25;
    margin:5px 5px 5px 20px;
    border-collapse:collapse;
    background-color:#eee;    /* #b9cfc8     */;
}

table.boxcentered td{
    padding:0;
    border:0;
    background-color:#eee;    /* #b9cfc8     */
}

table.boxcentered h2{
    font-weight:bold;
    font-size:1.0em;
    color:#fff;
    margin:0 0 13px 0;
    padding:2px 0 5px 7px;
    background:url(images/box.gif) #003E25 bottom right no-repeat;
}

table.boxcentered p{
    margin:0 7px 8px 7px;
    text-align:center;
}


table.boxleftalign{                              /* feature box with centered text e.g. support*/
    width:300px;
    float:left;
    border:1px solid #003E25;
    margin:5px 5px 5px 20px;
    border-collapse:collapse;
    background-color:#ccc;    /* #b9cfc8     */;
}

table.boxleftalign td{
    padding:0;
    border:0;
    background-color:#eee;    /* #b9cfc8     */
}

table.boxleftalign h2{
    font-weight:bold;
    font-size:1.0em;
    color:#fff;
    margin:0 0 13px 0;
    padding:2px 0 5px 7px;
    background:url(images/box.gif) #003E25 bottom right no-repeat;
}

table.boxleftalign p{
    margin:0 7px 8px 7px;
    text-align:left;
}

/* all header styles includes, logo and search form*/

#header {
    text-align: left;               /* aligns logo left */
    padding:15px 15px 5px 15px;
    margin:0;
}

#header img{
    border:0;
    float: left;                      /* all images in header have no border */
    margin: 0 0 10px 0;
}

#header form{
    float:right;                    /* aligns search box right */
    padding:2px;
    margin:-14px 0 0px 0;
}

#header input{
    float:left;                     /* input box for search */
    background-color:#eee;
    border:1px solid #cbcbcb;
    font-family: arial,sans-serif;
    font-size: 1em;
    padding:0 2px 0 2px;
    margin:1px 5px 0 0;
    height:19px;
}

#header table{
    border-collapse:collapse;
    margin:0 0 5px 0;
    padding:0;
    border:0;
    background-color:#fff;
}

#header td{
    border:0;
    margin:0;
    padding:0px 0 2px 0;
    vertical-align: top;
    background-color:#fff;
}

#header input.btn{                 /* button for search, uses javascript for rollover */
    color:#fff;
    font-weight:bold;
    margin:2px 0 0 0;
    border:0;
    width:65px;
    height:20px;
}

#phone {
   margin:0;
   padding:0;
   text-align:left;
   font-size:0.95em;
   color: #a6a0cc;
}

#email {
   margin:0;
   padding:0 0 2px 0;
   text-align:left;
   font-size:0.85em;
   color: #a6a0cc;
}

#email a{
   color: #a6a0cc;
}

#header img.letter{
    padding: 2px 2px 0 0;
    margin:0;
}

/* navigation styles inlcudes, unordered list tab nav, sub nav and crubtrail */

#navwrap{                           /* div wrapper for top level tab navigation */
    clear:both;
    width:760px;
    text-align:center;
    padding:0;
    margin:8px 0 0 0;
}

#nav{                               /* this is an un-ordered list */
  clear:both;
  font-size:1.0em;
  font-weight:bold;
  color:#fff;
  float:left;
  list-style-type:none;  
  background:transparent;
  padding:0;
  margin:0;
}

#nav li{
  list-style-type:none;
  float:left;
  margin:0 0 0 2px;
  padding:0 0 0 10px ;
  background:url(images/nav/nav.gif) #a6a0cc top left no-repeat;
  height:25px;
  border-bottom:1px solid #a6a0cc;
}

#nav li a{
  background:url(images/nav/nav.gif) #a6a0cc top right no-repeat;
  display:block;
  padding:4px 10px 4px 0;
  margin:0;
  color:#fff;
  text-decoration:none;
}

#nav li a.cur{
  background:url(images/nav/nav-on.gif) #003E25 top right no-repeat;
  display:block;
  padding:4px 10px 4px 0;
  margin:0;
  color:#fff;
  text-decoration:none;
}

#nav li.cur, #nav li.cur:hover{
  background:url(images/nav/nav-on.gif) #003E25 top left no-repeat;
  border-bottom:1px solid #003E25;
}

#nav li.over, #nav li:hover{
  background:url(images/nav/nav-on.gif) #003E25 top left no-repeat;
  border-bottom:1px solid #003E25;
  color:#fff;
}

#nav li strong{
  display:block;
  padding:4px 10px 4px 0;
  background:url(images/nav/nav-on.gif) #003E25 top right no-repeat;
  color:#fff;
}

ul#nav li.over a, ul#nav li:hover a{
  display:block;
  padding:4px 10px 4px 0;
  text-decoration:none;
  background:url(images/nav/nav-on.gif) #003E25 top right no-repeat;
  color:#fff;
}

/* sub nav styles this is an unordered list */

#subnav{
    background-color:#003E25;
    clear:both;
    border-top:0px solid #666;
    border-bottom:0px solid #666;
    padding:0;
    height:22px;
    color:#fff;
    text-align:left;
}

#subnav ul{
    display:block;
    list-style-type:none;
    margin:0;
    padding:5px 0 0 3px;
    font-size:0.8em;
}
#subnav li{
        display:inline;                     /*inline makes sure list items horizontal*/
}

#subnav li strong{
        text-decoration:underline;
        margin:0 3px 0 3px;
}

#subnav li a:link, #subnav li a:active, #subnav li a:visited{
        margin:0 3px 0 3px;
        text-decoration:none;
        font-weight:bold;
        color:#fff;
}

#subnav li a:hover{
        text-decoration:underline;
}

/* crubtrail styles */

#crumbtrail{
    text-align:left;
    margin:4px 0 10px 0;
    padding:0 0 4px 5px;
    font-size:0.75em;
    font-weight:normal;
    border-bottom:1px solid #ccc;
    color:#666;
}

#crumbtrail a, #crumbtrail a:visited, #crumbtrail a:active{
   text-decoration:none;
   color:#666;
}

#crumbtrail a:hover{
   text-decoration:underline;
}

/* footer styles */

#footer{
    clear:both;
    background-color:#a6a0cc;
    padding:5px;
    height:37px;
    width:750px;
    margin:0 auto 0 auto;
    font-size:0.85em;
    color:#fff;
}

#footer div.right{
        text-align:right;
}

#footer a, #footer a:active, #footer a:visited, #footer a:hover{
    color:#fff;
    font-weight: normal;
}

div.band{                            /* creates strip of green across page, currently only used with footer */
    clear:both;
    background:url("images/green.gif");
    background-position:bottom;
    background-repeat:repeat-x;
    background-color:#fff;
    width:760px;
    height:18px;
    margin:0;
    border-bottom:2px solid #fff;

}

div.left{                          /* standard left column div */
    float:left;
    margin:0;
}

div.right{                         /* standard column right */
    margin:0;
    text-align:left;
    float:right;
}

/* news on home page */

#news{
    border-top:2px solid #003E25;
    border-bottom:1px solid #003E25;
    background:url(images/news.gif) transparent top left no-repeat;
    margin:0 0 5px 0;
}

#news h2{
      font-weight:bold;
      font-size:1.0em;
      color:#fff;
      padding:0 0 2px 5px;
     /* margin:0 0 15px 5px;  */
}

#news p{
      margin:0 0 8px 3px;
      font-size:0.9em;
}

/* HOME PAGE SPECIFIC */

#homebody{                          /* defines styles only found on the home page, that are outside of the home div*/
    background-color: #003E25;
    margin:0;
}

#home{                             /* container div for home page - to inlude the globe background */
    padding:0 30px 0 30px;
    background:url(images/globe.gif);
    background-position:bottom left;
    background-repeat:no-repeat;
    float:left;
}

#left{                             /* defines left column width */
    width:476px;
    float:left;
    margin:0;
}

#right{                            /* defines right column width */
    width:202px;
    margin:0;
    text-align:left;
    float:right;
}

#home img{                         /* gives neccesary margin to the images below news */
      margin:15px 0 5px 0;
}

#solutions{
    border-top:2px solid #003E25;
    padding:0 0 0px 0;
    background:url(images/news.gif) transparent 0px -2px no-repeat;
    margin:5px 20px 0px 19px;
}

#solutions h2{
      font-weight:bold;
      font-size:1.0em;
      color:#fff;
      padding:0 0 10px 5px;
      margin:0;
      text-align: left;
}

table.home{
    clear: both;                     /* used to contain the 6 images on the home page */
    width:750px;
    border-collapse:collapse;
    margin:0 auto 0 auto;
    padding:0;
    border:0;
    text-align:center;
    border-color:#fff;
    background-color:#fff;
}

table.home td{                     /* no border around the cells */
    border:0;
    background-color:#fff;
}

table.home img{                    /* gives neccesary margins the home page images */
    margin:8px 0 10px 0;
}

/**** Containers ****/

#wrapper {                              /* container div for everything except the footer*/
    text-align: center;
    width: 760px;                       /* to fit in 600 * 800 res */
    background:#fff;
    margin:0 auto 0 auto;               /* centre entire site */
    border:0;
}

#content {                               /* everything below crumbtrail and above footer */
    text-align:left;                    /* default all inline elements align left */
    background-color:#fff;
    margin:0;
}

#greybody {                             /* standard body id differentiates between snippetmaster background color and the background around site */
    background-color: #003E25;
}

/**** Enquiry Form ****/

#contact table {                        /* contact form table style */
     border-collapse:collapse;
     margin:0;
     padding:0;
}

#contact td {
    padding:5px;
    border:0;
    vertical-align:top;
    background-color:#fff;
}

#contact .textfield {
    background-color:#eee !important;
    border:1px solid #cbcbcb !important;
    font-size: 1em;
    padding:0 2px 0 2px;
    margin:0;
    height:18px;
    width:180px;
    font-family: arial,sans-serif;
    font-size: 1em;
}

#contact .specify {
    background-color:#eee !important;
    border:1px solid #cbcbcb !important;
    font-size: 1em;
    padding:0 2px 0 2px;
    margin:-21px 0 0 0;
    height:18px;
    font-style:italic;
    width:180px;
    font-family: arial,sans-serif;
    font-size: 1em;
}

#contact .dropdown {
    background-color:#eee !important;
    border:1px solid #cbcbcb !important;
    font-size: 1em;
    padding:0 0px 0 2px;
    margin:0;
    height:24px;
    width:187px;
    font-family: arial,sans-serif;
    font-size: 1em;
}

#contact textarea {
    background-color:#eee !important;
    border:1px solid #cbcbcb !important;
    padding:0 2px 0 2px;
    margin:0;
    height:75px;
    width:180px;
    overflow:auto;
    font-family: arial,sans-serif;
    font-size: 1em;
}

#contact input.btn{        /* button for enquiry, uses javascript for rollover */
    padding:0;
    color:#fff !important;
    font-weight:bold;
    margin:0;
    width:58px;
    height:20px;
}

#contact img{        /* no border around submit button image */
    border:0;
}


#postcodesearch table {                        /* postcode search form table style */
     border-collapse:collapse;
     margin:0 0 10px 0;
     padding:0;
}

#postcodesearch td {
    padding:0px;
    border:0;
    vertical-align:middle;
    background-color:#fff;
}

#postcodesearch input.btn{        /* button for enquiry, uses javascript for rollover */
    padding:0;
    color:#fff !important;
    font-weight:bold;
    margin:0;
    width:58px;
    height:20px;
    border:0;
}

#postcodesearch .textfield {
    background-color:#eee !important;
    border:1px solid #cbcbcb !important;
    font-size: 1.0em;
    padding:0 2px 0 2px;
    margin:0;
    height:18px;
    width:100px;
    font-family: arial,sans-serif;
    font-size: 1em;
}

#postcodesearch img{        /* no border around submit button image */
    border:0;
    padding:0;
    margin:0 0 0 10px;
}