html {
  width: 100%;
  height: 100%; 
}

form {
	margin: 0;
	padding: 0;
}

header, nav, article, footer, address, section {  
  display: block;  
}

th {
  text-align: left;
}

body {
  width: 100%;
  height: 100%;  
  margin: 0;
  padding: 0;	
}

body, table {
  font-family: Arial;
  font-size: 11px; 

  color: #585858;
}

input, textarea, select {
  font-family: Arial;
  font-size: 11px; 
}

img {
  border-width: 0;
}

p {
  margin: 7px 0;
}

/* STATIC BACKGROUND BEGIN */
img.bg {
  /* Set rules to fill background */
  min-height: 100%;
  min-width: 1024px;

  /* Set up proportionate scaling */
  width: 100%;
  height: auto;

  /* Set up positioning */
  position: fixed;
  top: 0;
  left: 0;
  
  z-index: 1;
}

@media screen and (max-width: 1024px) { /* Specific to this particular image */
  img.bg {
    left: 50%;
    margin-left: -512px;   /* 50% */
  }
}

.Main {
  position: relative;
  z-index: 2;

  width: 100%;
}

.Wrapper {
  position: relative;

	width: 960px;
	
	margin-left: auto;
	margin-right: auto;
}

.Main .Site {
  width: 100%;

  background-image: url('/images/contentBG.png');
  background-repeat: repeat-y;
}

.Site .SiteInner {
  min-height: 100%;

  padding: 0 8px;
}

.Site .Top {
  position: relative;

  height: 125px;
}

.Top .TopMenu {
  position: absolute;

  top: 15px;
  right: 25px;
}

.TopMenu ul {
  margin: 0;
  padding: 0;

  list-style: none;
}

.TopMenu li {
  float: left;
}

.TopMenu .Separator {
  padding: 0 5px; 
}

.TopMenu li a {
  color: #585858;
  text-decoration: none;
}

.TopMenu li a:hover {
  color: #585858;
  text-decoration: underline;  
}

.Top .Logo {
  position: absolute;

  width: 206px;
  height: 80px;

  left: 25px;
  top: 50%;

  margin-top: -40px;
}

.Site .Menu {
  position: relative;

  width: 100%;
  height: 25px;

  background-color: #046bb3;
}

.Site .Content {
  position: relative;

  padding: 30px 25px 25px 25px;  
}

.Content .Left {
  float: left;

  width: 200px;

  margin-right: 25px;
}

.Content .Left p {
  margin: 0 0 5px 0;
}

.Content .Left h1, 
.Content .Left h2 {
  margin: 0;
  padding: 0;
}

.Content .Left h1 {
  font-size: 18px;
}

.Content .Left .PageStructure {
  margin: 0 0 0 0;
  padding: 0 15px 0 0;

  list-style: none;

  border-right: 1px dotted #CCC;
}

.Content .Left .PageStructure a {
  font-size: 18px;
  font-weight: bold;
  color: #585858;
  text-decoration: none;
}

.Content .Left .PageStructure ul {
  margin: 0;
  padding: 2px 0;

  list-style: none;
}

.Content .Left .PageStructure ul li {
  padding: 3px 0 3px 15px;

  background-image: url('/images/arrowRight.png');
  background-repeat: no-repeat;
  background-position: 5px 8px;
}

.Content .Left .PageStructure ul li a {
  font-size: 11px;
  font-weight: normal;
  color: #585858;
  text-decoration: none;
}

.Content .Left .PageStructure ul li a:hover {
  color: #046BB3;
  text-decoration: none;
}

.Content .Left .PageStructure ul ul {
  display: none;
}

.Content .Left .PageStructure ul .Visible ul {
  display: block;
}

.Content .Left .PageStructure ul .Visible {
  background-image: url('/images/arrowDown.png');
}

.Content .Left .PageStructure ul .Visible > a,
.Content .Left .PageStructure ul .Visible .Selected a {
  font-weight: bold;
  color: #046BB3 !important;
}

.Content .Right {
  float: left;

  width: 665px;
  min-height: 400px;

  line-height: 150%;
}

.Breadcrumb {
  position: absolute;

  margin: 0;
  padding: 0;

  height: 16px;

  top: 5px;
  left: 250px;

  list-style: none;

  font-size: 10px;
}

.Breadcrumb li {
  float: left;

  height: 16px;
  line-height: 16px;
}

.Breadcrumb li a {
  color: #585858;
  text-decoration: none;
}

.Breadcrumb li a:hover {
  color: #046BB3;
  text-decoration: none;
}

.Breadcrumb li:last-child {
  color: #046BB3;
}

.Breadcrumb .Separator {
  width: 16px;

  background-image: url('/images/arrowRight.png');
  background-repeat: no-repeat;
  background-position: center center;
}

.Page h1 {
  margin: 0 0 10px 0;
  padding: 0;

  font-size: 18px;
  color: #046BB3;
}

.Page .NoItems {
  margin-top: 15px;

  font-style: italic;
}

.Page .Projects {
  margin: 15px 0 0 0;
}

.Products .CategoryTitle {
  border-bottom: 1px dotted #CCC;
  padding-bottom: 5px;
}

.Products .Link {
  text-align: right;
}

.Products .Link a {
  color: #046BB3;
  text-decoration: none;
}

.Products .Link a:hover {
  color: #585858;
}

.Products .Product {
  float: left;

  width: 185px;
  height: 250px;

  overflow: hidden;

  border: 1px solid #CCC;

  margin: 0 22px 22px 0;

  padding: 10px;
}

.Products .Product a {
  color: #046BB3;
  text-decoration: none;
}

.Products .Product.NoMargin {
  margin-right: 0px !important;
}

.Products .Product .Image {
  width: 100%;
  height: 120px;

  text-align: center;
}

.Products .Product .Image .NoneFound {
  font-size: 16px;
  font-weight: bold;
  font-style: italic;

  line-height: 140%;

  color: #CCC;

  padding: 45px 0 0 0;
}

.Products .Product .Image img {
  
}

.Products .Product .Text {
  text-align: left;

  color: #585858;
}

.Products .Product .Text h2 {
  font-size: 13px;

  margin: 10px 0 0 0;
  padding: 0;

  height: 33px;
  overflow: hidden;

  color: #046BB3;
}

.Products .Product .Text p {
  margin: 0;
  height: 66px;
  overflow: hidden;
}

.Products .Product .Links {
  margin: 10px 0 0 0;

  font-size: 12px;
  font-weight: bold;
}

.Products .Product .Links .Order {
  float: right;
}

.PaginationControl {
  text-align: center;

  color: #046BB3;
}

.PaginationControl a {
  color: #585858;
  text-decoration: none;
}

.PaginationControl a:hover {
  color: #046BB3;
}

.Page .ProductPage {
  
}

.ProductPage .ImageAndText {
  position: relative;

  padding-bottom: 25px;
  margin-bottom: 15px;

  border-bottom: 1px dotted #CCC;
}

.ProductPage .ImageAndText .Image {
  float: left;

  width: 250px;
  height: 100%;
}

.ProductPage .ImageAndText .Image .NoImage,
.ProductPage .ImageAndText .Image .Large {
  height: 250px;  
}

.ProductPage .ImageAndText .Image .NoImage {
  border: 1px solid #CCC;

  color: #CCC;
  font-weight: bold;
  font-size: 20px;

  line-height: 140%;

  text-align: center;
}

.ProductPage .ImageAndText .Image .NoImage span {
  display: block;

  padding-top: 100px;
}

.ProductPage .ImageAndText .Image .Large {
  width: 100%;

  line-height: 250px;

  text-align: center;

  border: 1px solid #CCC;
}

.ProductPage .ImageAndText .Image .Large img {
  vertical-align: middle;
}

.ProductPage .ImageAndText .Image .Thumbnails {
  width: 100%;
  height: 80px;

  margin-top: 5px;
}

.ImageAndText .Image .Thumbnails a {
  float: left;

  display: block;

  width: 80px;
  height: 80px;
  line-height: 80px;

  text-align: center;

  margin-right: 5px;

  text-decoration: none;
}

.ImageAndText .Image .Thumbnails a img {
  border: 1px solid #F0F0F0;

  width: 80px;
  height: 80px;

  vertical-align: middle
}

.ImageAndText .Image .Thumbnails a:last-child {
  margin-right: 0px !important;
}

.ImageAndText .Image .Thumbnails a.Selected img {
  border-color: #CCC !important;
}

.ProductPage .ImageAndText .Text {
  float: left;

  width: 400px;

  margin-left: 15px;
}

.ProductPage .ImageAndText .ShoppingCart {
  position: absolute;  

  right: 0;
  bottom: 21px;
}

.ProductPage .ImageAndText .ShoppingCart td {
  vertical-align: middle;
}

.ImageAndText .ShoppingCart .CartText {
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;

  white-space: nowrap;

  padding-right: 7px;
}

.ImageAndText .ShoppingCart .CartInput {
  padding-right: 7px;
}

.ImageAndText .ShoppingCart .CartInput input {
  width: 30px;
  font-size: 12px;

  padding: 2px;

  text-align: center;
}

.ImageAndText .ShoppingCart .CartButton {}

.ImageAndText .ShoppingCart .CartButton button {
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;

  text-align: center;

  padding: 4px 15px;

  background-color: #046BB3;
  color: #FFF;

  cursor: pointer;

  border: none;
}

.ImageAndText .ShoppingCart .CartButton button:hover {
  background-color: #908f8f;
}

.ProductPage .ProductContent {
  
}

.ProductPage .ProductRelated {
  margin: 20px 0 0 0;
  padding: 20px 0 0 0;

  border-top: 1px dotted #CCC;
}

.Cart table {
  width: 100%;
}

.Cart th {
  padding: 1px 5px;  
}

.Cart td {
  padding: 5px 5px;
}

.Cart td.Amount,
.Cart td.Code,
.Cart td.Product,
.Cart td.Euro,
.Cart td.Price,
.Cart td.Total,
.Cart td.Buttons {
  border-bottom: 1px solid #EFEFEF; 
}

.Cart .Amount {
  padding-left: 0px;

  text-align: center;
}

.Cart .Amount input {
  margin: 0;

  width: 40px;
  font-size: 12px;

  padding: 2px;

  text-align: center;
}

.Cart .Code {
  width: 150px;
}

.Cart .Product {
  width: 300px;
}

.Cart th.Price {
  width: 60px;
}

.Cart td.Price {
  text-align: right;

  padding-right: 15px;
}

.Cart button,
.Cart input[type='submit'] {
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;

  text-align: center;

  padding: 4px 15px;

  background-color: #046BB3;
  color: #FFF;

  cursor: pointer;

  border: none;
}

.Cart button:hover,
.Cart input[type='submit']:hover {
  background-color: #908f8f;
}

.Page .QuickOrder {
  padding-top: 15px;
  margin-top: 20px;

  border-top: 1px dotted #CCC;
}

.QuickOrder h2 {
  margin: 0;
  padding: 0;

  font-size: 14px;
}

.QuickOrder p {
  font-style: italic;

  color: #585858;
}

.QuickOrder table {
  margin-top: 10px;
}

.QuickOrder th,
.QuickOrder td {
  padding: 1px 5px;
}

.QuickOrder .Amount {
  padding-left: 0px;

  text-align: center;
}

.QuickOrder .Amount input {
  margin: 0;

  width: 40px;
  font-size: 12px;

  padding: 2px;

  text-align: center;
}

.QuickOrder .Code input {
  margin: 0;

  width: 175px;
  font-size: 12px;

  padding: 2px;
}

.QuickOrder button {
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;

  text-align: center;

  padding: 4px 15px;

  background-color: #046BB3;
  color: #FFF;

  cursor: pointer;

  border: none;
}

.QuickOrder button:hover {
  background-color: #908f8f;
}

.Checkout .LoginRegister {  
  margin: 25px 0 10px 0;
}

.LoginRegister h2 {
  font-weight: normal;
  color: #046BB3;

  margin: 0 0 10px 0;
  padding: 0;
}

.LoginRegister .LoginColumn,
.LoginRegister .RegisterColumn {
  position: relative;

  width: 300px;

  padding: 10px;  

  vertical-align: top;

  border: 1px dotted #CCC;
}

.LoginRegister .Separator {
  width: 25px;
}

.LoginRegister form {
  margin: 0;
  padding: 0;
}

.LoginRegister .LoginColumn table {
  width: 100%;
}

.LoginRegister .Label {
  width: 125px;

  font-weight: bold;
}

.LoginRegister .Input input[type='text'],
.LoginRegister .Input input[type='password'] {
  width: 100%;
}

.LoginRegister input[type='button'],
.LoginRegister input[type='submit'] {
  position: absolute;

  bottom: 10px;
}

.Checkout button,
.Checkout input[type='button'],
.Checkout input[type='submit'],
.Register input[type='submit'] {
  font-size: 12px;
  font-weight: bold;
  text-transform: uppercase;

  text-align: center;

  padding: 4px 15px;

  background-color: #046BB3;
  color: #FFF;

  cursor: pointer;

  border: none;
}

.Checkout button:hover,
.Checkout input[type='button']:hover,
.Checkout input[type='submit']:hover,
.Register input[type='submit']:hover {
  background-color: #908f8f;
}

.Checkout .DataForm {
  border-top: 1px dotted #CCC;
  margin: 10px 0 0 0;
}

.Checkout .DataForm table {
  width: 100%;
}

.Checkout .DataForm .DataFormLeft,
.Checkout .DataForm .DataFormRight {
  width: 50%;

  vertical-align: top;
}

.Checkout .DataForm .Label {
  width: 125px; 
  font-weight: bold;
}

.Checkout .DataForm .Input {

}

.Checkout .DataForm .Input input {
  width: 175px;

  border: 1px solid #CCC;
}

.Checkout .DataForm .Input .Street {
  width: 125px; 
}

.Checkout .DataForm .Input .Number {
  width: 45px; 
}

.Checkout .DataForm .Input .Postcode {
  width: 45px; 
}

.Checkout .DataForm .Input .City {
  width: 125px; 
}

.Checkout .DataForm #AdminAddress {
  display: none;
}

.Message {
  margin: 10px 0;
  
  padding: 0 10px;
}

.Message p {
  font-weight: bold;
}

.MessageSuccess {
  border: 1px solid #fadd51;
  background-color: #fef8c4;
}

.MessageError {
  background-color: #FFE3D4;
  border: 1px solid #FF7348;
}

.Page .Projects {
  margin: 15px 0 0 0;
}

.Projects .Project {
  float: left;

  width: 185px;
  height: 225px;

  overflow: hidden;

  border: 1px solid #CCC;

  margin: 0 22px 22px 0;

  padding: 10px;
}

.Projects .Project a {
  color: #046BB3;
  text-decoration: none;
}

.Projects .Project.NoMargin {
  margin-right: 0px !important;
}

.Projects .Project .Image {
  width: 100%;
  height: 120px;

  text-align: center;
}

.Projects .Project .Image .NoneFound {
  font-size: 16px;
  font-weight: bold;
  font-style: italic;

  line-height: 140%;

  color: #CCC;

  padding: 45px 0 0 0;
}

.Projects .Project .Image img {
  
}

.Projects .Project .Text {
  padding: 0 5px;
}

.Projects .Project .Text h2 {
  font-size: 13px;

  margin-bottom: 0px;
  padding-bottom: 0px;
}

.Projects .Project .Text p {
  margin-top: 0px;
  color: #585858 !important;
}

.Projects .Link {
  text-align: right;
}

.Projects .Link a {
  color: #046BB3;
  text-decoration: none;
}

.Projects .Link a:hover {
  color: #585858;
}

.Page .ProjectPage {
  
}

.ProjectPage h1 {
  margin-bottom: 0px;
}

.ProjectPage .Details {
  margin: 1px 0 10px 0;

  border-bottom: 1px dotted #CCC;
}

.ProjectPage .Details td {
  padding: 0 0 3px 0;

  vertical-align: middle;
}

.ProjectPage .Details .Label {
  font-weight: bold;

  padding: 4px 7px 3px 0;
}

.ProjectPage .Details .Text {
  padding: 4px 0;

  border-top: none;
}

.ProjectPage .Details .Separator {
  padding: 0 10px;
}

.ProjectPage #Slider {
  width: 665px;
  height: 500px;
}

.ProjectPage #Slider .nivo-controlNav {
  position:absolute;
  bottom:-60px; /* Put the nav below the slider */
}

.ProjectPage #Slider .nivo-controlNav img {
  display:inline; /* Unhide the thumbnails */
  position:relative;
  margin-right:5px;
}

.ProjectPage #Slider .nivo-prevNav {
  left: 5px;
  
  width: 30px;
  height: 30px;

  background-image: url('/libs/jquery/nivo-slider/images/arrows.png');
  background-repeat: no-repeat;
}

.ProjectPage #Slider .nivo-nextNav {
  right: 5px;

  width: 30px;
  height: 30px;

  background-image: url('/libs/jquery/nivo-slider/images/arrows.png');
  background-repeat: no-repeat;
  background-position: top right;
}

.ProjectPage .Text {
  margin: 65px 0 0 0;

  padding: 15px 0 0 0;

  border-top: 1px dotted #CCC;
}

.ProjectPage .Text h2 {
  color: #046BB3;
  padding: 0;
  margin: 0;
}

.ProjectPage .Link {
  
}

.ProjectPage .Link a {
  color: #046BB3;
  text-decoration: none;
}

.ProjectPage .Link a:hover {
  color: #585858;
}


.Site .Footer {
  width: 100%;
  height: 25px;
  line-height: 25px;

  background-color: #046bb3;

  color: #FFF;
  text-align: center;
  font-size: 11px;
}

.Footer a {
  color: #FFF;
  text-decoration: underline;
}

.Footer a:hover {
  color: #FFF;
  text-decoration: none;  
}

.Copyright {
  text-align: center;
}

.Error {
  color: red;
}

.Clear {
  clear: both;
  height: 0px;
  line-height: 0px;
  font-size: 0px;
}

.product-search {
  margin-bottom: 20px;
}

.product-search h2 {
  margin-bottom: 10px !important;
  font-size: 18px !important;
}

.product-search input[type='text'] {
  margin: 0;
  width: 180px; 
  
  padding: 2px;
}

.product-search input[type='submit'] {
  margin: 5px 0 0 0;
  width: 188px; 
  
  padding: 3px 5px;
  
  background: #046bb3;
  color: #FFF; 
  border: 1px solid #046bb3;
}