body {
  width: 974px;
  padding: 8px 0 0 0;
  margin: 0 auto;
  font-family: verdana, helvetica, arial, sans-serif;
  font-size: 62.5%;
  line-height: 1.5;
  background-color: #fff;
  color: #333; }

td, th {
  font-size: 11px; }

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

a {
  color: #70005C; }

a:hover {
  color: #000000; }

a img {
  border: none; }

a.button:hover {
  color: #ffffff; }

ul, ol, li, dl, dh, dd {
  margin: 0;
  padding: 0;
  list-style: none; }

.container {
  width: 995px;
  height: 100%;
  margin: 0 auto 0 auto;
  text-align: left; }

.column {
  float: left; }

.column.left, .column.middle, .column.right {
  margin: 6px 10px 0 0; }

.column.left {
  width: 160px; }

.column.middle {
  width: 625px;
  padding: 5px 10px 30px 0; }

.column.right {
  width: 160px;
  margin-right: 0; }

.field {
  clear: both;
  min-height: 30px; }
  .field input {
    width: 100%; }
  .field label {
    float: left;
    width: 80px;
    margin-top: 3px; }
  .field .tag {
    float: left;
    width: 160px; }

.text_field.small {
  width: 80px; }

h4 {
  background: url(../images/nav_head.gif) no-repeat;
  margin: 0 0 0 0;
  padding: 3px 0 0 10px;
  height: 23px;
  color: #ffffff;
  font-weight: bold;
  font-size: 1em; }

h4.icon {
  background: url(../images/nav_head_basket.gif) no-repeat; }

.left ul li a {
  position: relative;
  left: 10px;
  text-decoration: none;
  color: #4d4d4d;
  line-height: 1.6em;
  display: block;
  font-weight: bold;
  padding: 5px 0 4px 0;
  width: 140px; }
.left ul li a:hover {
  color: black;
  text-decoration: underline; }

.middle h2 {
  margin: 0 0 10px 0; }

.right h3 {
  margin: 0 0 7px 0;
  padding: 0;
  font-weight: bold; }
.right .empty {
  width: 140px; }

.header {
  height: 62px;
  width: 975px;
  background: url(../images/banner.png) no-repeat;
  border-bottom: 1px solid #b77fad;
  position: relative; }
  .header .link a {
    font-size: 0px;
    color: #ffffff;
    display: block;
    text-decoration: none; }
  .header .link a:hover {
    background: #ffffff;
    opacity: 0.2; }
  .header .home a {
    width: 180px;
    height: 70px; }
  .header .main_website {
    position: absolute;
    right: 0px;
    top: 0px; }
    .header .main_website a {
      width: 180px;
      height: 70px; }
  .header #search {
    position: absolute;
    top: 19px;
    right: 180px;
    width: 170px; }
    .header #search .button {
      width: 25px;
      height: 20px;
      background: url(../images/search_button.jpg) no-repeat;
      position: absolute;
      top: 0px;
      left: 0px;
      font-size: 0px;
      color: #ffffff;
      cursor: pointer; }
    .header #search .field {
      position: absolute;
      top: 0px;
      left: 23px;
      padding: 4px;
      width: 136px;
      background: url(../images/search_end_right.jpg) top right no-repeat; }
    .header #search .button, .header #search .field {
      border: 0px;
      height: 23px; }
    .header #search .button:hover {
      opacity: 1; }

.not_logged_in, .logged_in, .column.new form {
  padding: 0 8px 10px 0;
  position: relative; }
  .not_logged_in ul,   .logged_in ul,   .column.new form ul {
    margin-top: 10px;
    margin-left: 10px; }
    .not_logged_in ul li,     .logged_in ul li,     .column.new form ul li {
      padding-bottom: 3px; }
  .not_logged_in .welcome,   .logged_in .welcome,   .column.new form .welcome {
    padding: 5px 0 0 10px; }
  .not_logged_in h2,   .logged_in h2,   .column.new form h2 {
    margin: 0 0 10px 0;
    padding: 0;
    font-size: 1.3em;
    font-weight: bold; }
  .not_logged_in .field .tag,   .logged_in .field .tag,   .column.new form .field .tag {
    padding-bottom: 7px; }
  .not_logged_in .field input,   .logged_in .field input,   .column.new form .field input {
    width: 140px; }
  .not_logged_in .button.short,   .logged_in .button.short,   .column.new form .button.short {
    clear: both;
    margin-left: 30px;
    cursor: pointer; }
  .not_logged_in .forgotten,   .logged_in .forgotten,   .column.new form .forgotten {
    float: right;
    margin: -47px 4px 0 0; }

.button {
  height: 22px;
  border: 0px;
  color: #ffffff;
  cursor: pointer;
  display: block;
  text-align: center;
  text-decoration: none;
  line-height: 21px;
  padding: 0;
  text-transform: uppercase;
  font-weight: normal; }

.button.short {
  background: url(../images/button_small.gif) no-repeat;
  width: 82px; }

.button:hover {
  opacity: 0.8; }

.button.medium {
  background: url(../images/button_medium_2.gif) no-repeat;
  width: 120px; }

.button.large {
  background: url(../images/button_large.gif) no-repeat;
  width: 180px; }

.text_registering h2 {
  font-size: 1.3em;
  line-height: 1.5em; }
.text_registering input {
  margin-left: 20px; }

.bold {
  font-weight: bold; }

ul.extra_links {
  border-top: 1px dashed #cccccc;
  padding-top: 15px;
  margin-top: 40px; }
  ul.extra_links li {
    line-height: 2em; }
  ul.extra_links a {
    color: #4d4d4d;
    text-decoration: none; }
  ul.extra_links a:hover {
    text-decoration: underline; }

ul.more_links {
  border-top: 1px dashed #cccccc;
  padding-top: 15px; }

.credit_cards {
  margin-top: 25px;
  background: url(../images/credit_cards.gif) no-repeat;
  height: 60px;
  width: 124px; }

a.shop_home {
  font-weight: bold;
  text-align: right;
  display: block;
  margin-bottom: 10px; }

.content_head {
  position: relative;
  margin-bottom: 5px; }
  .content_head ul {
    margin: 0;
    position: absolute;
    right: 0;
    top: 0; }
    .content_head ul li {
      display: block;
      width: 100px;
      float: left; }
      .content_head ul li a {
        color: #4d4d4d; }
      .content_head ul li a:hover {
        text-decoration: none; }

.breadcrumbs img {
  margin: 0 5px 0 5px; }

.product-listing img {
  float: left;
  padding-right: 10px; }
.product-listing .product-preview {
  position: relative;
  clear: both;
  line-height: 2em;
  display: block;
  border-bottom: 1px solid #70005C;
  padding-bottom: 6px;
  padding-top: 8px; }
  .product-listing .product-preview .column {
    float: left; }
  .product-listing .product-preview .column.description {
    width: 260px; }
    .product-listing .product-preview .column.description a {
      text-decoration: none;
      color: #2d2d2d; }
    .product-listing .product-preview .column.description a:hover {
      text-decoration: underline;
      color: #666666; }
  .product-listing .product-preview .column.description, .product-listing .product-preview .column.price, .product-listing .product-preview .column.weight {
    font-weight: bold; }
  .product-listing .product-preview .column.quantity {
    width: 90px; }
  .product-listing .product-preview .column.weight, .product-listing .product-preview .column.price {
    width: 80px; }
.product-listing .product-preview:after {
  clear: both;
  display: block;
  content: ".";
  visibility: hidden;
  height: 1px; }

.product_details {
  margin-top: 25px; }
  .product_details .product-description {
    padding-right: 50px;
    padding-top: 20px;
    line-height: 1.9em; }

.pagination {
  clear: both; }
  .pagination ul {
    margin-bottom: 10px;
    display: block;
    clear: both; }
    .pagination ul li {
      float: left;
      padding-right: 10px; }
    .pagination ul .disablepage {
      color: #cccccc; }
    .pagination ul .currentpage {
      font-weight: bold; }

.product-price {
  color: #cc0000;
  font-weight: bold; }

.product-variants {
  margin-top: 15px;
  border-top: 1px solid #cccccc;
  display: block; }

input.qty {
  width: 30px; }

.basket a.remove {
  padding-left: 20px;
  text-decoration: none; }
.basket a.remove:hover {
  font-weight: bold;
  color: #4d4d4d; }
.basket h2 {
  margin: 0 0 10px 0; }
.basket .basket-contents {
  margin-bottom: 20px; }
.basket .row {
  clear: both;
  display: block;
  border-bottom: 1px dashed #cccccc;
  height: 30px;
  padding-top: 10px; }
.basket .column {
  float: left;
  padding-top: 5px; }
.basket .column.name {
  width: 230px;
  font-weight: bold; }
  .basket .column.name a {
    text-transform: lowercase;
    font-weight: normal; }
.basket .column.weight {
  width: 70px; }
.basket .column.price {
  width: 80px; }
.basket .column.qty {
  width: 80px;
  padding-top: 0px; }
.basket .line_total {
  width: 88px;
  text-align: right; }
.basket .totals {
  width: 100%;
  margin-top: 20px;
  line-height: 3em; }
  .basket .totals label {
    width: 490px;
    float: left; }
  .basket .totals .subtotal, .basket .totals .delivery, .basket .totals .grand_total {
    display: block;
    text-align: right;
    clear: both;
    padding-right: 76px;
    font-weight: bold; }
  .basket .totals .grand_total {
    border-top: 1px solid #70005C;
    padding-top: 12px;
    padding-bottom: 15px; }
.basket .buttons {
  float: right;
  padding-right: 85px; }
  .basket .buttons .button {
    float: left;
    margin-left: 20px; }
.basket .continue_shopping {
  text-align: left;
  width: 300px;
  position: relative;
  top: -24px;
  clear: both; }

input.add_to_basket {
  border: 0;
  cursor: pointer;
  text-decoration: underline;
  color: #70005C;
  background: #ffffff; }

input.add_to_basket:hover {
  color: black; }

.logged_in {
  margin-bottom: 20px; }
  .logged_in .welcome {
    font-weight: bold; }

.users h2 {
  margin-bottom: 10px; }
.users label {
  width: 140px;
  border: 1px solid white; }
.users form {
  padding: 10px;
  border-bottom: 1px dashed #cccccc; }
  .users form .button.short {
    width: 86px; }
.users .not_logged_in {
  margin: 0;
  padding: 0; }
  .users .not_logged_in .tag input {
    width: 80%; }
.users .forgotten {
  margin: 0 0 8px 110px; }

.ship_address {
  margin: 35px 0 0 100px; }
  .ship_address label {
    width: 150px; }

p.amount_to_charge {
  font-weight: bold;
  clear: both; }

.payment h2 {
  margin-top: 15px; }
.payment .column {
  float: left;
  position: relative;
  background: white; }
.payment .select_address {
  position: absolute;
  top: 9px;
  left: 140px; }
.payment .credit_card label {
  width: 100px; }
.payment .credit_card input {
  width: 150px; }
.payment .column.billing_address, .payment .column.delivery_address {
  width: 310px; }
  .payment .column.billing_address h3,   .payment .column.delivery_address h3 {
    font-weight: bold; }
  .payment .column.billing_address input,   .payment .column.delivery_address input {
    width: 180px; }
.payment .basket-contents .row {
  background: white;
  clear: both; }

.errorExplanation, #flash-notice, #flash-errors {
  border: 1px solid red;
  background: #FFEBDC;
  padding: 15px;
  margin-top: 10px;
  margin-bottom: 10px; }
  .errorExplanation h2,   #flash-notice h2,   #flash-errors h2 {
    margin: 0;
    padding: 0; }

#flash-notice {
  border: 1px solid green;
  background: #E6FFE3;
  font-size: 1.2em; }

.homepage {
  margin-top: 25px; }
  .homepage .box {
    width: 308px;
    float: left;
    font-weight: bold; }
    .homepage .box img {
      float: left;
      padding-right: 10px; }
    .homepage .box a {
      padding-top: 30px;
      display: block; }
    .homepage .box a:hover {
      color: #000000; }
  .homepage td, .homepage th {
    margin: 0;
    padding: 0; }

/* used mostly in admin but also applicable to some front and back end pages */ */
tr.odd {
  background: #ffffff; }

tr.even {
  background: #efefef; }

table {
  margin-bottom: 10px;
  clear: both; }

th {
  text-align: left;
  color: white;
  background: #9b5d92;
  font-size: 1.1em; }

td, th {
  padding: 3px 5px 3px 5px; }

tr.odd, tr.even {
  height: 30px;
  line-height: 30px;
  border-bottom: 1px dashed #cccccc;
  padding: 5px; }

.main_login .not_logged_in {
  background: white; }

.default th, .stored_addresses th, #stored_addresses th {
  background: none;
  color: #000000;
  font-size: 0.9em; }

.default {
  width: 290px;
  float: left;
  margin-bottom: 20px;
  margin-top: 10px; }

.stored_addresses, #stored_addresses {
  clear: both;
  border-top: 1px dashed #cccccc;
  border-bottom: 1px dashed #cccccc;
  padding: 10px 0 10px 0;
  margin: 10px 0 10px 0; }
  .stored_addresses .stored_address,   #stored_addresses .stored_address {
    width: 290px;
    float: left;
    margin-bottom: 25px; }
    .stored_addresses .stored_address .clear,     #stored_addresses .stored_address .clear {
      clear: both; }
    .stored_addresses .stored_address .link,     #stored_addresses .stored_address .link {
      float: left; }

.stored_addresses:after, #stored_addresses:after {
  clear: both;
  display: block;
  content: ".";
  visibility: hidden;
  height: 1px; }

ul.address li {
  padding: 0px 0 0px 0; }
  ul.address li h3 {
    margin: 0;
    font-size: 1.3em;
    font-weight: bold; }
ul.address li.tel {
  padding-top: 10px;
  padding-bottom: 8px; }

.basket.mini {
  margin-bottom: 25px; }
  .basket.mini p, .basket.mini ul, .basket.mini .total {
    padding-left: 10px; }
  .basket.mini ul {
    margin-top: 10px; }
    .basket.mini ul li {
      border-top: 1px dashed #cccccc;
      padding: 5px 0 0 10px;
      margin: 5px 0 0 -10px; }
  .basket.mini .total {
    margin-top: 15px;
    font-weight: bold;
    font-size: 1.1em; }

.button.link {
  color: #70005C;
  text-decoration: underline;
  background: #ffffff;
  text-transform: none; }

.button-to {
  margin: 0;
  padding: 0;
  float: left;
  padding-right: 10px; }

.address_selector_toggle {
  position: absolute;
  top: 17px;
  right: 70px; }

h2.separator {
  border-top: 1px dashed #cccccc;
  margin-top: 20px;
  padding-top: 10px;
  clear: both; }

td.seperator {
  border-top: 1px solid #cccccc;
  padding-top: 20px; }

td.total {
  text-align: right;
  font-weight: bold;
  line-height: 1.8em; }

td.right {
  text-align: right; }

.order_confirmation p {
  margin-bottom: 20px; }

table.order_history {
  width: 100%; }
  table.order_history th {
    font-size: 0.8em;
    border-bottom: 1px dashed #cccccc;
    background: none;
    color: #000000; }
  table.order_history td {
    vertical-align: top;
    line-height: 1.4em;
    padding-top: 5px;
    padding-bottom: 5px; }
  table.order_history .variant {
    font-weight: normal; }
  table.order_history .costs {
    padding-bottom: 6px; }

#order-summary .td {
  padding-bottom: 5px; }

.exit_shop {
  margin: 20px 0 0 10px;
  display: block; }

.paypal {
  clear: both;
  float: right;
  text-align: center;
  width: 150px;
  margin: 0;
  padding-right: 69px; }
  .paypal img {
    clear: both;
    margin-top: 17px; }

.update_basket {
  margin-left: 405px;
  margin-top: 10px; }

.delivery_link {
  position: relative;
  top: -27px; }

.field .tags {
  text-align: left; }
  .field .tags .text {
    width: 200px; }
  .field .tags .text.small {
    width: 90px; }

.loading {
  height: 15px;
  width: 15px;
  position: absolute;
  right: 5px;
  top: 8px;
  background: url(../images/icon_loading.gif) no-repeat; }

.card_payment {
  position: relative; }
  .card_payment .credit_cards {
    position: absolute;
    right: 85px; }
  .card_payment .field .tags .text.small {
    width: 50px; }

#order_order_special_instructions {
  width: 260px;
  height: 230px; }

.your_account ul {
  list-style: circle;
  list-style-position: outside;
  margin-bottom: 10px; }
  .your_account ul li {
    padding: 4px 0 4px 0;
    font-weight: bold; }
.your_account h2 {
  margin-bottom: 18px; }

.sorry h2 {
  font-size: 1.3em; }
.sorry p {
  font-size: 1; }
