/* Begin generic styles for font controls and basic HTML elements */

body {
  margin: 0;
  padding: 0;
  background-color: #E0E6EF;
  font-family: Arial, Helvetica, Verdana, Sans-Serif;
  font-size: 70%;
  color: black;
  }

a {
  text-decoration: underline;
  color: #174172;
  }

a:link {
  color: #174172;
  }

a:visited {
  color: #174172;
  }

a:active {
  color: #174172;
  }
  
a:hover {
  color: #174172;
  }

h1, h2, h3, h4, h5, h6 {
  font-weight: bold;
  }

p {
  margin: 1em 0;
  line-height: 1.4em;
  }

strong, b {
  font-weight: bold;
  }

form { 
  margin: 0;
  padding: 0;
  }

img {
  border: 0;
  }
  
/* End generic styles for font controls and basic HTML elements */
  

/* Begin styles for layout */

.clear {
  clear: both;
  }

#PageBodyContainer {
  width: 1010px;
  background: white url(../../resources/images/bg_divider.gif) repeat-y top left;
  margin: 0 auto;
  }

#HeaderContainer {
  background: white url(../../resources/images/bg_top_border.gif) repeat-x top left;
  border-bottom: 4px solid #E0E6EF;
  }

#SearchArea {
  padding: 40px 25px 0 0;
  }

#SearchOuterContainer {
  float: right;
  background-color: white;
  border: 2px solid #E0E6EF;
  }

#SearchInnerContainer {
  margin: 4px;
  background-color: #E0E6EF;
  padding: 3px 13px 4px 13px;
  }

#SearchHeader {
  float: left;
  padding: 5px 13px 0 0;
  }

#SearchInput {
  float: left;
  }

#SearchSubmit {
  float: left;
  padding: 6px 0 0 10px;
  }

#HeaderLogo {
  float: left;
  padding: 45px 0 16px 27px;
  }

#HeaderLogoMain {
  float: right;
  padding: 41px 25px 20px 80px;
  }

#BodyContentOuterContainer {
  border-left: 246px solid white;
  }

#BodyContentInnerContainer {
  margin: 0;
  width: 100%;
  }

#LeftContainer {
  width: 246px;
  margin-left: -246px;
  float: left;
  position: relative;
  }

#LeftSubContainer {
  padding: 18px 20px 25px 26px;
  }

.LeftMenu {
  margin-bottom: 3px;
  }

#CartOuterContainer {
  margin-top: 20px;
  border: 2px solid #E0E6EF;
  padding: 3px;
  }

#CartHeader {
  background-color: #E0E6EF;
  padding: 8px 0 7px 6px;
  }

#MainContentContainer {
  float: left;
  width: 100%;
  position: relative;
  margin: 0;
  }

#MainContent {
  padding: 0 25px 50px 18px;
  }

#MainContentLogo {
  float: right;
  margin: 14px 25px 0 0;
  }

#MainContentTitle {
  font-size: 2.1em;
  margin: 30px 0 20px 0;
  }

#SearchResultsContainer {
  border: 2px solid #E0E6EF;
  width: 450px;
  }

#OrderTotalContainer {
  border: 2px solid #E0E6EF;
  width: 280px;
  float: right;
  margin-top: 20px;
  }

#MessageContainer {
  float: right;
  border: 2px solid #E0E6EF;
  padding: 6px 10px 6px 10px;
  margin: 20px 2px 25px 0;
  font-size: 1.1em;
  }

/* End styles for layout */


/* Begin styles for tables */

.listItemTable {
  width: 100%;
  }

.listItemHeader {
  color: #174172;
  font-weight: bold;
  padding: 2px 4px 2px 4px;
  }

.listItemTitle {
  padding: 3px 4px 3px 4px;
  font-weight: bold;
  }

.listItemDescription {
  padding: 3px 4px 3px 4px;
  }

.listItemPrice {
  padding: 3px 8px 3px 4px;
  text-align: right;
  }

.listItemTrainingPrice {
  padding: 3px 8px 3px 4px;
  text-align: right;
  }

.listItemQuantity {
  padding: 3px 4px 3px 4px;
  text-align: center;
  }

.listItemControls {
  padding: 3px 4px 3px 4px;
  text-align: center;
  }

.introductoryItemTitle {
  border: 1px solid #003366;
  padding: 2px 3px 2px 3px;
  font-weight: bold;
  }

.introductoryItemDescription {
  border: 1px solid #003366;
  padding: 2px 3px 2px 3px;
  }
  
.introductoryItemPrice {
  border: 1px solid #003366;
  padding: 2px 7px 2px 3px;
  text-align: right;
  }

.introductoryItemTrainingPrice {
  border: 1px solid #003366;
  padding: 2px 7px 2px 3px;
  text-align: right;
  }

.introductoryItemControls {
  border: 1px solid #003366;
  padding: 2px 3px 2px 3px;
  text-align: center;
  }

#CartBody {
  padding: 0 2px 8px 4px;
  }

.cart {
  padding: 0px;
  }

.cartHeader {
  font-weight: bold;
  padding-top: 2px;
  padding-bottom: 3px;
  color: #174172;
  }

.cartItemName {
  padding: 2px;
  font-weight: bold;
  }

.cartItemQuantity {
  padding: 2px;
  text-align: right;
  padding-right: 5px;
  }

.cartTotal{
  padding: 2px;
  }

.cartPrice {
  font-weight: bold;
  }

.cartIntro {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 1em;
  }

.cartSeperator {
  background: url(/resources/images/cart_separator.gif) repeat-x top left;
  height: 1px;
  }

.expandedCartTotal {
  font-size: 1.5em;
  padding-right: 2px;
  }
/* End styles for tables */
