/* General */

html {
  height: 100%;
  overflow-y: scroll;
}
body, td, th {
  font-family: Arial, Helvetica, sans-serif;
  vertical-align: top;
}
body {
  background-color: #666;
  color: black;
  margin: 0;
  text-align: center;
  background-image: url(../images/layout/elegant-background.gif);
  background-position: center top;
  height: 100%;
}
body, th, td {
  font-size: 83.5%;
}
#body_inner_a {
  background-image: url(../images/layout/elegant-shadow.gif);
  background-position: center top;
  background-repeat: repeat-y;
  position: relative;
	height:auto !important; /* real browsers */
	height:100%; /* IE6: treaded as min-height*/
	min-height:100%; /* real browsers */    
}
#body_innermost {
	height:100%;
  margin-left: 1px !important;
  margin-left: 2px;
}
a {
  color: #86445f;
}
a img {
  border: 0;
}
.clear {
  clear: both;
  overflow: hidden;
  height: 1px;
}

#outer {
  background-color: white;
  width: 780px;
  margin: 0 auto !important;
  text-align: left;
  padding-bottom: 2.7em;
}

#header_innermost, #content_innermost, #footer_innermost {
  padding: 10px;
}
#header {
  width: 100%;
  height: auto !important;
  height: 120px;
  min-height: 120px;
  background: #86445f url(../images/layout/header.gif) no-repeat top center;
  color: white;
  font-weight: bold;
}
h1 {
  text-indent: -10000em;
  position: absolute;
  overflow: hidden; 
}
#footer {
  text-align: center;
  bottom: 0;
  left: 0;
	position: absolute;
  width: 100%;
  font-size: 0.8em;
}

#login {
  float: right;
}
#login p {
  margin: 0;
  text-align: right;
}
#login br {
  display: none;
}
#login label {
  display: block;
  float: left;
  width: 300px;
  text-align: right;
  padding: 3px;
}
#login .text input, #login .password input {
  width: 8em;
}
#login a {
  color: white;
}
#login .button {
  text-align: right;
}

#header .text {
  margin-bottom: 8px;
}

.menu ul, .menu li {
  list-style: none;
  margin: 0;
  padding: 0;
}
.menu li a, .menu li .current {
  display: block;
  text-decoration: none;
}
.menu li a:hover {
  background-color: #96546f;
  color: white;
}
.menu li .current {
  background-color: #5e3044;
  border-color: #aaa;
  color: white;
}
.menu li a span, .menu li .current span {
  display: block;
  padding: 10px 20px;
}
.menu .horizontal {
  width: 100%;
  overflow: hidden;  
}
.menu .horizontal li {
  display: inline;
}
.menu .horizontal li a, .menu .horizontal .current {
  float: left;
}
#main_menu {
  clear: both;
  padding: 0;
}
#admin_menu {
  clear: both;
  background-color: #ddd;
}

h2 {
  background-color: #793e57;
  color: white;
  padding: 10px 8px 5px 8px;
  margin: 0 0 0 0;
  background-image: url(../images/layout/h2.gif);
  background-repeat: no-repeat;
  background-position: top right;
}

th, td {
  border: 1px solid #ccc;
  border-top: 0;
  border-left: 0;
  text-align: left;
}

.errors {
  border: 1px solid #900;
  background-color: #FBB;
  margin-bottom: 1em;
  padding: 0 1em;
}
form .errors {
  margin-top: 5px;
}

.block {
  border: 1px solid #ddd;
  float: left;
}

.column_half {
  width: 50%;
  float: left;
}
.column_half .block {
  width: 373px;
  margin-top: 10px;
}

table.gallery img {
  border: 1px solid #ccc;
}

table.gallery td {
  border: 0;
  height: 100%;
}
table.gallery td a {
  text-align: center;
  text-decoration: none;
  padding: 23px;
  display: block;
  background-color: #eee;
}
table.gallery td a p {
  text-decoration: none;  
}
table.gallery td a:hover {
  background-color: #ccc;
}
table.gallery img {
  display: block;
  margin: 0 auto 10px auto;
}
table.gallery .controls a {
  padding: 5px 10px;
  border-top: 1px solid #ddd;
}
table.gallery .buy {
  text-align: center;
  padding: 10px;
  background-color: #ddd;
}
.category_menu {
  float: left;
  width: 230px;
  padding: 0 10px 10px 10px;
  border: 1px solid #ddd;
  margin: 3px 10px 3px 3px;
}
.category_menu a, .category_menu span {
  padding: 5px;
}
table.gallery_thin {
  float: left;  
}

.product_image {
  text-align: center;
  width: 200px;
  float: left;
  text-decoration: none;  
}
.product_image img {
  border: 1px solid #aaa;
  display: block;
  margin: 0 0 10px 0;
}

.product_body {
  width: 560px;
  float: left;
}
.product_body_innermost {
  padding: 0 0 0 10px;
}
.product_body .price {
  font-size: 1.3em;
  font-weight: bold;
  background-color: #793e57;
  color: white;
  float: right;
  padding: 10px;
  margin: 0;
}
.product_body table {
  margin-bottom: 1em;
}
.product_body .buy {
  text-align: center;
  padding: 10px;  
  background-color: #ddd;
  float: left;  
}

.pagination {
  clear: both;
  width: 758px;
  margin: 0;
}
.pagination td {
  border: 0;  
}
.pagination a {
  display: block;
  padding: 5px 10px;
  background-color: #eee;
  text-decoration: none;
  border: 1px solid #eee;
}
.pagination a:hover {
  border-color: #ccc;
  background-color: #ccc;
}
.pagination .previous a {
  background-image: url(../images/layout/previous.gif);
  background-repeat: no-repeat;
  background-position: 10% 50%;
  padding-left: 65px;
}
.pagination .next, .pagination .previous {
  width: 150px;
}
.pagination .next a {
  background-image: url(../images/layout/next.gif);
  background-repeat: no-repeat;
  background-position: 90% 50%;
  padding-right: 65px;
  text-align: right;
}
.pagination .pages {
  text-align: center;
}
.pagination .pages a, .pagination .pages .current {
  display: inline;
  padding: 0.3em 1em;
  text-align: center;
  border: 1px solid #eee;
  line-height: 2em;
}
.pagination .pages .current {
  border-color: #666;
}

.basket {
  width: 80%;
  margin: 0 auto;
}
#cart-list #content {
  text-align: center;  
}
.checkout-button {
  padding: 10px 30px;
  background-color: #eee;
  display: block;
  margin-top: 1em;
  text-decoration: none;
  width: 250px;
}
.checkout-button:hover {
  background-color: #ccc;  
}

.image-align-left {
  float: left;
  margin: 0 10px 10px 0;
}
.image-align-right {
  float: right;
  margin: 0 0 10px 10px;
}

form {
  margin: 0;
  padding: 0;
}
form br {
  display: none;
}
label {
  margin-bottom: 2px;
  display: block;
  text-align: left;  
}
.text, .textarea, .select {
  margin-bottom: 1.5em;
}
.caption {
  background-color: #ffb;

  border: 1px solid #dd9;
  margin-top: 5px;
}
.caption_innermost {
  padding: 0 0.5em;
}
.caption p {
  margin: 0.5em 0;
}
.textarea {
  text-align: center;
}
textarea {
  width: 99%;
  height: 100px;
}
.required {
  color: red;
}

#search-bar {
  padding: 5px;
  float: left;
}
#search-bar label {
  display: none;
}
#search-bar br {
  display: none;
}

th {
  padding-right: 1em;
}

/* Intracacies */

.name-field input {
  width: 400px;
}
.manufacturer-field select {
  width: 350px;
}
.description-field {
  clear: both;
}

#product-list .gallery td a {
  height: auto !important;
  height: 360px;
  min-height: 340px;
}

#product-submit .image {
  border: 1px solid #aaa;
}
#product-view .description {
  margin: 0 0 1em 0;  
}
#product-view table {
  width: 550px;
}
#product-view th {
  width: 120px;  
}
#product-view h2 {
  margin-bottom: 3px;  
}
.appellation-field, .grapes-field, .enjoy-from-field, .enjoy-to-field {
  width: 50%;
  float: left;
}

.enjoy-from-field .caption {
  margin-right: 10px;  
}

#contact-form {
  width: 360px;
}

#category-list td {
  padding-right: 30px;
}
