* {
  margin: 0px;
  padding: 0px;
}

/*  
Sticky Footer Solution
by Steve Hatcher 
http://stever.ca
http://www.cssstickyfooter.com
*/

* {margin:0;padding:0;} 

/* must declare 0 margins on everything, also for main layout components use padding, not 
vertical margins (top and bottom) to add spacing, else those margins get added to total height 
and your footer gets pushed down a bit more, creating vertical scroll bars in the browser */

html, body, #page {height: 100%;}

body > #page {height: auto; min-height: 100%;}

#main {padding-bottom: 150px;}  /* must be same height as the footer */

/* CLEAR FIX*/
.clearfix:after {content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;}
.clearfix {display: inline-block;}
/* Hides from IE-mac \*/
* html .clearfix { height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */


body {
  color: #111111;
  font-family: "Helvetica Neue", "Helvetica";
  font-size: 13px;
  background: url(../images/page_bg.png) repeat-y;
}

a {
  color: #111111;
  text-decoration: none;
}

a:hover {
  text-decoration: underline;
}

img {
  border: 0px;
}

iframe {
  width: 0px;
  height: 0px;
  border: 0px;
}

ul {
  list-style: none;
}

#page_header {
  background: url(../images/page_header_bg.png) repeat-x;
  border-bottom: 1px solid white;
}

#page_header:hover {
  cursor: pointer;
}

#page_header .images {
  height: 115px;
  text-align: right;
  background: url(../images/page_header.jpg) no-repeat 14px bottom;
}

#page_options {
  padding-top: 3px;
  padding-bottom: 3px;
  position: relative;
  background: url(../images/page_options_bg.gif) repeat-x;
  border-bottom: 1px solid white;
}

#page_options #search_block {
  width: 202px;
  height: 55px;
  background: #F5F5F5 url(../images/search_block.png) no-repeat right;
}

#page_options #search_block input {
  width: 167px;
  margin-top: 27px;
  margin-left: 17px;
}

#page_options #menu {
	width: 757px;
	top: 1px;
	left: 215px;
	line-height: 29px;
	position: absolute;
}

#page_options #menu li {
  margin-left: 13px;
  margin-right: 13px;
  float: left;
}

#page_options #menu li.selected {
  background: url(../images/menu_selector.png) center top no-repeat;
}

#page_options #menu li a {
  font-weight: bold;
}

#page_options #menu li a:visited {
  color: #111111;
}

#page_content {
  position: relative;
}

#page_content h1 {
  margin-bottom: 25px;
  padding-bottom: 12px;
  font-size: 27px;
  font-weight: normal;
  background: url(../images/h1.jpg) bottom repeat-x;
}

#page_content h2 {
  margin-top: 20px;
  margin-bottom: 15px;
  font-size: 22px;
  font-weight: normal;
}

#page_content h3 {
  margin-top: 20px;
  margin-bottom: 15px;
  font-size: 18px;
  font-weight: normal;
}

#page_content p {
  margin-top: 15px;
  margin-bottom: 15px;
  line-height: 140%;
}

#page_content #secondary {
  width: 180px;
  height: 100px;
  padding-top: 20px;
  padding-left: 15px;
  padding-right: 5px;
  float: left;
  background: url(../images/secondary_content_bg.png) no-repeat right top;
}

#page_content #secondary #sub_categories li {
  margin-top: 10px;
  margin-bottom: 10px;
  padding-left: 10px;
}

#page_content #secondary #sub_categories li.selected {
  background: url(../images/bullet.png) no-repeat left center;
}

#page_content #secondary #sub_categories li a {
  font-weight: bold;
  line-height: 16px;
}

#page_content #primary {
  width: 744px;
  padding-top: 20px;
  padding-left: 26px;
  padding-bottom: 20px;
  float: left;
}

#page_content #primary ul {
  margin-left: 40px;
  list-style: disc;
}

#page_content #primary .home_page_item {
  width: 330px;
  height: 240px;
  padding: 65px 0px 0px 25px;
  margin-right: 17px;
  margin-bottom: 20px;
  float: left;
  position: relative;
  background: url(../images/action_bg.jpg) no-repeat;
}

#page_content #primary .home_page_item .photo {
  width: 155px;
  height: 215px; 
  right: 0px; 
  bottom: 0px; 
/*  position: absolute;*/
}

#page_content #primary .home_page_item h1 {
  margin-bottom: 10px;
  padding-bottom: 0px;
  font-size: 17px;
  font-weight: bold;
  background: none;
}

#page_content #primary .home_page_item a {
  color: #3282A8;
  font-weight: bold;
  line-height: 14px;
  text-decoration: underline;
}

#page_content #primary .home_page_item a:hover {
  color: white;
  background: #3282A8;
}

#page_content #primary .home_page_item a span {
  font-size: 18px;
  font-weight: normal;
}

#page_content #primary .home_page_item p {
  width: 170px;
}

#page_content #primary .home_page_item p.price {
  margin: 0px;
  top: 230px;
  left: 24px;
  font-size: 48px;
  font-weight: bold;
/*  position: absolute;*/
}

#page_content #primary #home_page_item_info table {
  width: 250px;
  float: left;
}

#page_content #primary #home_page_item_info table tr td {
  height: 250px;
  border: 1px solid black;
}

#page_content #primary #home_page_item_info #content {
  width: 470px;
  float: right;
}

#page_content #primary #home_page_item_info #content a {
  font-weight: bold;
  text-decoration: underline;
}

#page_content #primary #home_page_item_info #content a:hover {
  color: white;
  background: black;
}

#page_content #primary .priority_item {
  width: 330px;
  height: 240px;
  padding: 5px 0px 0px 25px;
  margin-right: 17px;
  margin-bottom: 20px;
  float: left;
  background: url(../images/priority_item_bg.jpg) no-repeat;
}

#page_content #primary .priority_item p.description {
  width: 170px;
}

#page_content #primary .priority_item p.price {
  margin: 0px;
  font-size: 38px;
  font-weight: bold;
}

#page_content #primary .products {
  font-family: "Helvetica Neue", "Helvetica";
}

#page_content #primary .products ul {
  margin-left: 0px;
  list-style: none;
}

#page_content #primary .products .product_row {
  display: block;
}

#page_content #primary .products .product_row li {
  width: 140px;
  margin-top: 8px;
  margin-right: 30px;
  margin-bottom: 12px;
  float: left;
  font-size: 12px;
  font-weight: bold;
  text-align: center;
  word-wrap: break-word;
}

#page_content #primary .products .product_row li table {
  width: 140px;
  height: 120px;
  margin-bottom: 4px;
  border: 1px solid black;
}

#page_content #primary .show_all {
  margin-left: 175px;
}

#page_content #primary #product_images {
  width: 250px;
  float: left;
}

#page_content #primary #product_images tr td {
  height: 250px;
  border: 1px solid black;
}

#page_content #primary #product_info {
  float: right;
}

#page_content #primary #product_info td {
  padding-top: 5px;
  padding-bottom: 5px;
}

#page_content #primary #product_info .colors td {
  width: 76px;
  height: 20px;
  padding: 0px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
}

#page_content #primary #product_info .colors td#chosen_color {
  border: 1px solid black;
}

#page_content #primary #product_info .colors td.link {
  width: 120px;
  font-size: 13px;
  font-weight: normal;
}

#page_content #primary #product_info .colors #color_picker td {
  cursor: pointer;
}

#page_content #primary #product_info a {
  text-decoration: underline;
}

#page_content #primary #product_info a:hover {
  color: white;
  background: #111111;
}

#page_content #primary #product_info #order_info {
  padding-top: 10px;
}

#page_content #primary #order #overview {
  width: 750px;
  margin-left: 2px;
  margin-bottom: 12px;
  color: #31313D;
  font-size: 13px;
  line-height: 22px;
  background: url(/images/order_totals_bg.jpg) no-repeat 367px bottom;
}

#page_content #primary #order #overview .price {
  padding-right: 15px;
  text-align: right;
}

#page_content #primary #order #overview thead {
  line-height: 32px;
  background: url(../images/order_thead_bg.jpg) no-repeat top left;
}

#page_content #primary #order #overview tbody .chosen_color {
  width: 75px;
  color: white;
  font-size: 14px;
  font-weight: bold;
  line-height: 20px;
  text-align: center;
  border: 1px solid black;
}

#page_content #primary #order #overview tfoot {
  color: white;
  line-height: 14px;
}

#page_content #primary #order .note {
  margin-left: 13px;
  color: #31313D;
}

#page_content #primary #order .note a {
  color: #31313D;
  text-decoration: underline;
}

#page_content #primary #order .note a:hover {
  color: white;
  background: #31313D;
}

#page_content #primary #order_data form {
  width: 610px;
  margin: auto;
/*  position: relative;*/
}

#page_content #primary #order_data form h2 span,
#page_content #primary #order_data form h3 span {
  font-size: 15px;
}

#page_content #primary #order_data form label {
  width: 200px;
  margin-left: 20px;
  float: left;
  clear: both;
}

#page_content #primary #order_data form input.textfield {
  width: 275px;
  margin-bottom: 6px;
  font-family: "Helvetica Neue", "Helvetica";
  font-size: 14px;
}

#page_content #primary #order_data form div {
  margin-bottom: 9px;
}

#page_content #primary #order_data form textarea {
  width: 530px;
  height: 200px;
  margin-left: 20px;
  margin-bottom: 20px;
  font-family: "Helvetica Neue", "Helvetica";
  font-size: 14px;
}

#page_content #primary #order_data #relation_errors {
  margin-bottom: 15px;
  color: red;
}

#page_footer {
  position: relative;
  margin-top: -30px; /* negative value of footer height */
  height: 30px;
  clear:both;
  background: url(../images/page_footer.gif) repeat-x;
}

#page_footer ul {
  padding-top: 3px;
  padding-left: 13px;
}

#page_footer ul li {
  padding-top: 6px;
  padding-left: 13px;
  padding-right: 13px;
  float: left;
}

#page_footer ul li a {
  color: white;
}

#page_footer ul li.keyword a {
  color: black;
}

#page_footer ul li.selected {
  background: url(../images/footer_selector.png) center top no-repeat;
}

#page_footer ul li:hover {
  background: url(../images/footer_selector.png) center top no-repeat;
}

#shopping_cart_image {
  width: 185px;
  height: 170px;
  left: 15px;
  bottom: 40px;
  position:fixed;
  background: url(../images/shopping_cart.gif) no-repeat 4px bottom;
  _position: absolute;
  _left: expression(15+((e=document.documentElement.scrollLeft)?e:document.body.scrollLeft)+'px');
  _top: expression(300+((e=document.documentElement.scrollTop)?e:document.body.scrollTop)+'px'); 
}

#shopping_cart {
  width: 185px;
  left: 15px;
  bottom: 40px;
  position: fixed;
  _position: absolute;
  _left: expression(15+((e=document.documentElement.scrollLeft)?e:document.body.scrollLeft)+'px');
  _top: expression(300+((e=document.documentElement.scrollTop)?e:document.body.scrollTop)+'px'); 
}

#shopping_cart a {
  font-size: 11px;
  text-decoration: underline;
}

#shopping_cart a:hover {
  color: white;
  background: black;
}

#shopping_cart table a {
  font-size: 13px;
}

#shopping_cart table th {
  text-align: left;
}

/*#shopping_cart_image {*/
/*  position: fixed;
  border: 1px solid red;
}*/



/*
@media screen {
  * html, 
  * html body { 
    overflow-y: hidden!important;
    height: 100%;
    margin: 0;
    padding: 0; 
  }

  * html #page { 
    height: 100%;
    overflow-y: scroll;
    position: relative;
  }

  * html #shopping_cart_image,
  * html #shopping_cart {
    position: absolute;
  }
}
*/

/*@media screen {
  * html, 
  * html body { 
    overflow-y: hidden!important;
    height: 100%;
    margin: 0;
    padding: 0; 
  }
  
  html {
    @height: 100%;
    @overflow-y: hidden!important;
  }
  
  body {
    @overflow-y: hidden;
    @overflow-x: hidden;
    @height: 100%;
    @margin: 0;
    @padding: 0; 
  }
  
  #page {
    @height: 100%;
    @overflow-y: auto;
    @overflow-x: hidden;
    @position: relative;
  }
  
  * html #page { 
    height: 100%;
    overflow-y: scroll;
    position: relative;
  }
  
  * html #shopping_cart_image,
  * html #shopping_cart {
    position: absolute;
  }
}*/

table#update_order_table {
  margin-bottom: 15px;
  border-bottom: 1px solid #AAA;
  margin-top: 5px;
}

table#update_order_table thead tr {
  background: #EEE;
}

table#update_order_table thead tr th {
  border-top: 1px solid #AAA;
  border-right: 1px solid #AAA;
}

table#update_order_table th {
  text-align: left;
  padding: 5px;
}

table#update_order_table tr.odd {
  background: #DDDDDD;
}

table#update_order_table tr td {
  padding: 5px;
  border-top: 1px solid #AAA;
  border-right: 1px solid #AAA;
}

table#update_order_table tr td.check {
  width: 20px;
  border-left: 1px solid #AAA;
}

table#update_order_table tr td.order_number {
  width: 55px;
  text-align: right;
}

table#update_order_table tr td.order_date {
  width: 70px;
}

table#update_order_table tr td.administration {
  width: 90px;
}

table#update_order_table tr td.notes {
  width: 280px;
}

.valid_attribute {
  background: white;
  border: 2px inset white;
}

.invalid_attribute {
  background: #F3E1E1;
  border: 2px solid #E60202;
}

#algemene_voorwaarden_content .pdf_version {
  height: 27px;
  margin: 0px;
  margin-bottom: -27px;
  padding-right: 2px;
  text-align: right;
  background: url(../images/pdf.gif) 600px 0px no-repeat;
}

#algemene_voorwaarden_content .pdf_version a {
  font-size: 11px;
  line-height: 30px;
  text-decoration: underline;
}

#algemene_voorwaarden_content .pdf_version a:hover {
  color: white;
  background: #333333;
}
