@media screen {
  html {
    height: 101%; /* this forces scroll bar to display.  makes page less jumpy during rendering in IE8. from http://stackoverflow.com/questions/1389979/force-vertical-scrollbar-to-display-in-ie8 */
  }
}
td#contact_info {
  display: none;
}
@media print {
  body {
    font: 12pt Georgia, "Times New Roman", Times, serif;
  }
  td#sidebar, td#nav_bar, #main div#nav_pane > div.images figure {
    display: none;
  }
  #header td#contact_info {
    display: inline;
    line-height: 1.3;
    font-size: 1.1em;
  }
}
@page
{
  /* this affects the margin in the printer settings */ 
  margin: 10mm;
}

div#content > table {
  table-layout: fixed;
  max-width: 1250px; /* match #content */
  width: 100%; /* needed to allow sidebar width to be fixed. */
}
#sidebar {
  vertical-align: top;
  overflow: hidden;
}
#sidebar, #sidebar_content {
  width: 390px;
}
#main {
  width: auto;
  vertical-align: top;
  padding-left: 10px;
}
#sidebar_content > div {
  background-color: #EDEFF4;
  border: 1px solid #D8DFEA;
  margin: 2px 5px 8px 2px; /* top right bottom left */
  padding: 2px 10px 2px 10px;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}
div#cart {
  border-width: 2px;
  background-color: #C6D5E8;
  border-color: rgb(100, 100, 100);
}
div#search_container {
  padding: 5px;
}
#search_container table {
  width: 100%;
}
#search_container table td#search_query {
  width: 70%;
}
#search_container table td#search_button {
  width: 30%;
  text-align: center;
}
#search_container input[type="text"] {
  width: 92%;
  font-size: 1em;
  height: 2em;
  border: 1px solid darkgray;
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  padding: 5px;
}
#search_container input[type="submit"] {
  width: 92%;
  height: 2em;
/*   color: white; */
/*   background-color: rgb(90, 90, 90); */
  -webkit-border-radius: 6px;
  -moz-border-radius: 6px;
  border-radius: 6px;
  font-size: 1em;
}

#search::-webkit-input-placeholder {
  font-size: .8em;
}
#search:-moz-placeholder { /* Firefox 18- */
  font-size: .8em;
}
#search::-moz-placeholder {  /* Firefox 19+ */
  font-size: .8em;
}
#search:-ms-input-placeholder {  
  font-size: .8em;
}
#accepted_payments {
  text-align: center;
}
#accepted_payments div {
  font-size: .8em;
}
#product_filter .attributes, #product_filter .featured {
  font-size: 1.2em;
}
#product_filter > div {
  padding: 13px 0;
}
#product_filter > div:not(:last-child) {
  border-bottom: 1px solid #C3C3C3;
  padding-bottom: 10px;
}
#product_filter > div:last-child {
/*   padding-bottom: 0; */
}
#product_filter .attributes a
{
  display: block;
  text-align: left;
  margin: 6px 6px 12px;
  white-space: nowrap;
  padding: 10px 12px;
  border: 2px solid #B0C4DE;
  color: #FFF;
  font-weight: bold;
  -webkit-border-radius: 10px;
  -moz-border-radius: 10px;
  border-radius: 10px;
  text-decoration: none;
  background-color: #039;
  text-overflow: ellipsis;
  overflow: hidden;
}
#product_filter .attributes a:last-child {
  margin-bottom: 0px;
}
#product_filter .attributes a:hover {
  background-color: white;
  color: rgb(0, 51, 153);
  border-color: #C6D5E8;
}
#product_filter  div.selected_attribute_container {
}
#product_filter div.selected_attribute_container label {
  display: block;
}
#product_filter div.selected_attribute_container .selected_attribute {
  font-weight: bold;
  font-size: 1.1em;
  margin: 2px 0 2px 8px;
  display: inline-block;  
}
#product_filter div.selected_attribute_container a {
  margin-left: 16px;
  font-size: .9em;
}
#product_filter div.attributes select {
  width: 100%;
  font-size: 1.1em;
  padding: 10px 0;
  margin: 13px 0;
}
#product_filter div.featured ul {
  list-style-type: disc;
  margin: 6px 6px 20px;
  padding-left: 16px;
}
#product_filter div.featured ul li {
  margin-bottom: 10px;
}
#product_filter div.featured ul:last-child, #product_filter div.featured ul:last-child li {
  margin-bottom: 0px;
}
#product_filter div.featured h3 {
  margin-top: 5px;
  font-size: 0.9em;
}
#product_filter div.featured a {
  font-size: 0.8em;
  line-height: 1.4;
}
div#cart div {
  text-align: center;
}
div#cart div.cart_item {
  text-align: left;
  line-height: 1.2;
  background-color: white;
  padding: 10px;
  border-radius: 5px;
  margin-top: 10px;
}
a.cart_button {
  display: inline-block;
  white-space: nowrap;
  padding: 10px 17px;
  border-style: solid;
  border-width: 2px;
  border-color: rgb(176, 196, 222);
  background-color: rgb(0, 51, 153);
  color: white;
  font-weight: bold;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
  text-decoration: none;
}
a.cart_button:hover {
  background-color: white;
  color: rgb(0, 51, 153);
  border-color: #C6D5E8;
}
#cart a.product_name {
  font-weight: bold;
  text-decoration: none;
  color: blue;
  /* white-space: nowrap; width: 225px; overflow: hidden; text-overflow: ellipsis; display: inline-block; */
}
#cart a.product_name:hover {
  color: red;
}
#cart .subtotal {
  font-weight: bold;
  color: #990000;
  white-space: nowrap;
}
#cart_label {
  font-weight: bold;
  text-align: left;
}
div#switch_to_mobile_site {
  padding: 7vw 3vw 14vw;
  text-align: center;
}
div#switch_to_mobile_site a {
/*   font-size: 16px; */
  font-size: 5vw;
  white-space: nowrap;
}
#main div.recommended {
  background-color: #EDEFF4;
  border: 1px solid #D8DFEA;
  margin: 12px 5px 8px 2px;
  padding: 10px;
  border-radius: 10px;
  -moz-border-radius: 10px;
  -webkit-border-radius: 10px;
}
#main div.recommended h3 {
}
/* based on 2nd answer on http://stackoverflow.com/questions/11737266/what-is-default-list-styling-css */
#main div.recommended ul {
  list-style: initial;
  margin: initial;
  padding: 0 0 0 20px;
  margin-top: 15px;
  margin-bottom: 10px;
}
#main div.recommended li {
  display: list-item;
  line-height: 1.7em;
}
