/* CSS Resets */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	color: #222;
	line-height: 1;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

/* Clear floats */

.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	display: inline-block;
}

* html .clearfix {height: 1%;}
.clearfix {
	display: block;
}

/* General */

body {
      background-image: url('/img/body-bg.jpg');
      background-position: top center;
      font-family: Arial, Helvetica, sans-serif;
      font-size: 100%;
}

a, input {
    outline: none;
}

a:link, a:visited {
    color: #0000dd;
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

a:active {
    color: #000044;
}

h1 {
    color: #444;
    font-weight: bold;
    font-size: 1.8em;
    letter-spacing: .03em;
    margin-bottom: 1em;
}

h1.cart, h1.members#p {
    font-size: 1.3em;
    font-weight: normal;
}

h1 a {
    text-decoration: none !important;
    color: #2c6bb2 !important;
}

h2 {
    color: #053e9d;
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-weight: 100;
    font-size: 1.5em;
	font-style: italic;
    letter-spacing: 1px;
    margin-bottom: 0;
    margin-top: 1.2em;
}

h3 {
    font-family: Georgia, 'Times New Roman', Times, serif;
    font-weight: normal;
    letter-spacing: .03em;
    font-size: 1.3em;
    margin-bottom: .3em;
    margin-top: 1.5em;
    color: #bb0000;
}

.gray {
    color: #444;
}

.red {
    color: #aa0000;
}

.first {
    margin-top: 0;
}

.last {
    margin-bottom: 0;
}

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

ol, ul {
    line-height: 1.4;
}

td, th {
    text-align: left;
}

.strong, strong, th {
    font-weight: bold;
}

.larger {
    font-size: larger;
}

.right {
    text-align: right;
}

.center {
    text-align: center;
}

.button {
    font-weight: normal;
    display: inline-block;
    padding: 7px 20px 6px 20px;
    margin: .4em 0 .3em 0;
    color: #fff !important;
    font-weight: bold;
    text-align: center;
    letter-spacing: 1px;
    text-decoration: none !important;
    background-color: #2c6bb2;
    background-image: url('/img/button-bg.png');
    background-repeat: repeat-x;
    background-position: 0 -30px;
    box-shadow: 2px 2px 2px #aaa;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -khtml-border-radius: 4px;
    border-radius: 4px;
    border: 0 !important;
    cursor: pointer;
}

/* General Form */

label {
    display: block;
    text-transform: uppercase;
    letter-spacing: .03em;
    font-size: .9em;
    color: #1359a9;
}

input, textarea {
    background-color: #fff;
    border: 1px solid #aaa;
    padding: 7px;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -khtml-border-radius: 4px;
    border-radius: 4px;
    font-size: 1em;
    font-family: Helvetica, Arial, sans-serif;
}

div input[type=text], div input[type=password] {
    width: 300px;
}

div.checkbox {
    margin: 12px 0;
}

div.checkbox label {
    display: inline;
    padding-left: 5px;
}

div.radio {
    margin: 14px 0;
    padding: 15px;
    width: 300px;
    border: 1px solid #ccc;
}

div.radio label {
    display: inline;
    padding-left: 5px;
    text-transform: none;
    font-size: .9em !important;
    line-height: 150%;
}

div.radio legend {
    color: #333;
    display: block;
    margin-bottom: 10px;
    text-transform: uppercase;
    font-size: .8em;
    color: #444;
}

#cart-info, .cart-info, .info {
    padding: 20px 30px;
    width: 400px;
    border: 1px solid #ddd;
    background-color: #fbfaf1;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -khtml-border-radius: 6px;
    border-radius: 6px;
    background-image: url('/img/form-bg.png');
    background-repeat: repeat-x;
    background-position: top left;
}

#cart-info.label-first{
    padding-top: 4px;
}

#cart-info label, #contact-form label, .cart-info label, .info label {
    margin: 16px 0 3px 0;
    font-size: .9em;
}

#cart-info .short, .cart-info .short {
    width: 100px;
}

.multi-ship {
    margin: 0 30px 20px 0;
    width: 310px;
    float: left;
}

.ship-count {
    display: none;
}

div.no-label-margin label {
    margin-top: 0 !important;
}

.submit input {
    display: inline-block;
    background-color: #fafafa;
    padding: 8px 0 6px 0;
    font-size: 1em;
    padding: 7px 20px 7px 20px;
    color: #fff !important;
    font-weight: normal;
    text-align: center;
    letter-spacing: 1px;
    text-decoration: none !important;
    background-color: #2c6bb2;
    background-image: url('/img/button-bg.png');
    background-repeat: repeat-x;
    background-position: 0 -30px;
    box-shadow: 2px 2px 2px #aaa;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -khtml-border-radius: 4px;
    border-radius: 4px;
    border: 0 !important;
    margin-top: 1em;
}

.submit input:hover {
    cursor: pointer;
}

/* Login form */

div#login-form {
    float: left;
    width: 400px;
}

div#login-form input[type=text], div#login-form input[type=password] {
    width: 250px;
}

table#login td {
    padding: 5px 5px 5px 0;
}

/* Structure */

#wrapper {
    min-height: 735px;
    background-image: url('/img/wrapper-bg.jpg');
    background-repeat: repeat-x;
    background-position: top center;
}

#inner-wrapper {
    background-image: url('/img/inner-wrapper-bg.jpg');
    background-repeat: no-repeat;
    background-position: top center;
    height: 500px;
}

#header {
    width: 880px;
    height: 151px;
    margin: 0 auto;
    position: relative;
    background-image: url('/img/inner-wrapper-bg.jpg');
    background-repeat: no-repeat;
    background-position: top center;
}

#logo {
    display: block;
    position: absolute;
    top: 20px;
    left: 0;
    width: 535px;
    height: 52px;
    text-indent: -999em;
}

#secondnav {
    position: absolute;
    top: 10px;
    right: 35px;
    width: 300px;
    height: 75px;
    text-align: right;
    font-size: .9em;
}

#secondnav .button {
    padding: 7px 13px;
    font-weight: normal;
    text-transform: uppercase;
    margin-left: 8px;
}

#secondnav div {
    float: right;
    width: 100px;
}

#secondnav div.buttons {
    float: none;
    width: 100%;
}

#font-size {
    line-height: 35px;
    font-family: Georgia, Times, 'Times New Roman', serif;
}

#font-size a {
    padding-left: 5px;
    display: inline-block;
    color: #000;
    text-decoration: none;
    font-size: 1.3em;
}

#font-size a.reset {
    font-size: 1.2em;
}

#font-size a.minus {
    font-size: 1.1em;
}

#nav {
    position: absolute;
    top: 88px;
    width: 880px;
    height: 40px;
    text-align: center;
}

#nav a, #nav a:link, #nav a:visited {
    color: #fff;
    line-height: 40px;
    text-transform: uppercase;
    text-decoration: none;
    margin-right: 30px;
    letter-spacing: 1px;
}

#nav a:hover {
   border-bottom: 1px solid #ccddf0;
}

#nav a:active {
    color: #ccddf0;
    border-bottom: 1px solid #aec7e3;
}

#nav a.last {
    margin: 0;
}

#content {
    width: 780px;
    margin: 0 auto;
    background-image: url('/img/content-bg.png');
    background-repeat: repeat-y;
    padding: 15px 50px 40px 50px;
    font-size: .9em;
}

#content p:last-child {
	margin-bottom: 0;
}

#content h1 {
    margin-top: 0;
}

#footer {
    background-image: url('/img/footer-bg.png');
    background-repeat: no-repeat;
    width: 880px;
    height: 66px;
    margin: 0 auto;
    padding-bottom: 30px;
}

#footer a {
    display: block;
    float: left;
    margin-top: 12px;
    margin-left: 35px;
}

#footer a.twitter {
    margin-left: 14px;
}

#copyright {
    float: right;
    width: 500px;
    margin: 0;
    color: #7f8288;
    font-size: .8em;
    margin-right: 35px;
    margin-top: 11px;
    text-align: right;
    line-height: 140%;
}

#flashMessage, #authMessage, .flash {
    color: #aa0000;
    position: relative;
    left: -40px;
    top: -10px;
    width: 780px;
    background-color: #efefef;
    padding: 8px 40px;
	margin-bottom: 1em !important;
    border: 1px solid #e0e0e0;
    border-left: 0;
    border-right: 0;
}
.flash_success {
    font-weight: bold;
    color: #009900;
}
.flash_error {
    font-size: 1.1em;
    font-weight: bold;
}

.error {
    font-weight: bold;
}

/* Content */

/* Home */

h1.home {
	font-size: 1.5em;
}

#home-left {
	float: left;
	width: 480px;
}

#home-right {
    float: right;
    width: 260px;
}

/* About */

img.about {
	position: relative; 
	left: -40px; 
	top: -37px; 
	margin-bottom: -26px;
}

a#purchase-button, a#purchase-button:link {
    display: block;
    width: 204px;
    margin: 18px 0 10px 4px;
    padding: 14px 15px 12px 15px;
    border: 1px solid #e0e0e0;
    text-decoration: none;
    text-transform: uppercase;
    font-size: .9em;
    box-shadow: 2px 2px 3px #aaa;
    background-color: #e4e4e4;
    background-image: url('/img/button-bg.png');
    background-repeat: repeat-x;
    background-position: top left;
    font-weight: normal;
    color: #cd1616;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -khtml-border-radius: 6px;
    border-radius: 6px;
}

/*
a#purchase-button:hover {
    background-color: #efefef;
}

a#purchase-button:active {
    background-color: #ddd;
}
*/

a#purchase-button span {
    font-size: 1.3em;
}

/* Products */

#products {
    width: 718px;
}

#products strong {
    display: block;
    margin: .35em 0;
}

#products h3 {
    padding: 0;
    margin-top: 0;
}

#products div p {
    margin-bottom: 0;
}

#products .info {
    padding: 30px;
    width: 100%;
    margin-top: 1.5em;
}

#products .button {
    display: block;
    width: 120px;
    margin-bottom: 0;
    margin-left: 3em;
    float: right;
    line-height: 24px;
}

/* Contact page */

#contact-form {
    padding: 15px 30px 30px 30px;
    margin-top: 3em;
    float: right;
    width: 320px;
    border: 1px solid #ddd;
    background-color: #fbfaf1;
    -moz-border-radius: 6px;
    -webkit-border-radius: 6px;
    -khtml-border-radius: 6px;
    border-radius: 6px;
    background-image: url('/img/form-bg.png');
    background-repeat: repeat-x;
    background-position: top left;
}

#contact-form input[type=text], #contact-form textarea {
    width: 304px;
}

#contact-form div {
    margin-top: 15px;
}

#contact-form label {
    margin-bottom: 5px;
}

#contact {
    width: 360px;
}

#contact h3 {
    border-top: 1px solid #ccc;
    padding-top: 1.2em;
    margin-top: 1.2em;
}

#contact h3.first {
    margin-top: 1.2em;
}

#contact p {
    margin: 0;
}

/* About */

.right-img {
    float: right;
    border: 15px solid #e0e0e0;
    margin: 0 15px 15px 35px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -khtml-border-radius: 5px;
    border-radius: 5px;
}

/* Cart checkout */


table.cart tr {
    border-bottom: 1px solid #e0e0e0 !important;
}

table.cart td, table.cart th {
    padding: 8px 9px;
}

table.cart .name {
    letter-spacing: .5px;
}

table.cart .name a {
    font-size: .9em;
    text-decoration: none;
    margin-left: 15px;
}

table.cart .name span a {
	margin: 0 !important;
}

table.cart-total {
    margin-bottom: 1em;
}

table.cart-total td {
    padding: 8px 0;
    text-align: right;
    font-weight: bold;
}

table.cart-total td.first {
    padding-top: 0;
    font-weight: normal;
}

.checkout-box {
    float: right;
    clear: both;
    display: block;
    width: 290px;
    background-color: #efefef;
    border: 1px solid #ccc;
    padding: 15px;
    margin: 1em 0;
    text-align: left;
    line-height: 120%;
}

.payment-box {
    margin-top: 1em;
    text-align: right;
    float: right;
    width: 290px;
}

.button-checkout {
    padding: 10px 0;
    margin: 0;
    display: block;
    width: 320px;
    float: right;
    clear: both;
}

.button-checkout span {
    font-size: 1.3em;
}

.button-update-qty {
    display: block;
    width: 200px;
    padding: 10px 15px 10px 15px;
    float: right;
    clear: both;
    margin-top: 1.2em;
    border: 0;
}

input.cart-qty {
    width: 30px !important;
    padding: 5px;
    text-align: right;
}

#cc_info, #invoice_info {
    display: none;
}

.cart-info-left {
    float: left;
    width: 320px;
}
.cart-info-right {
    float: right;
    width: 350px;
}
.cc_ex_month {
    width: 150px;
    float: left;
}
.cc_ex_year {
    width: 190px;
    float: right;
}
.place-order {
    float: right;
    width: 450px;
    margin-top: 1.2em;
}
.place-order textarea {
    width: 436px;
}

/* Members */

#members-right {
    width: 250px;
    float: right;
    list-style: none;
    margin: 0;
	padding: 0;
}
#members-right li {
    width: 250px;
    float: left;
}
#members-right li a, #members-right li a:link, #members-right li a:visited {
    display: block;
    width: 230px;
    padding: 6px 10px;
    text-decoration: none;
    background-color: #558cc9;
    color: #fff;
    margin-bottom: 2px;
}
#members-right li a:hover {
    background-color: #5e98d9;
}
#members-right li a:active {
    background-color: #4d81ba;
}
#members-right li:first-child a {
    -moz-border-top-left-radius: 4px;
    -webkit-border-top-left-radius: 4px;
    -khtml-border-top-left-radius: 4px;
    border-top-left-radius: 4px;
    -moz-border-top-right-radius: 4px;
    -webkit-border-top-right-radius: 4px;
    -khtml-border-top-right-radius: 4px;
    border-top-right-radius: 4px;
    border: 0 !important;
}
#members-right li:last-child a {
    -moz-border-bottom-left-radius: 4px;
    -webkit-border-bottom-left-radius: 4px;
    -khtml-border-bottom-left-radius: 4px;
    border-bottom-left-radius: 4px;
    -moz-border-bottom-right-radius: 4px;
    -webkit-border-bottom-right-radius: 4px;
    -khtml-border-bottom-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border: 0 !important;
}
#members-left {
    float: left;
    width: 430px;
}

#account-info-left {
    width: 320px;
    float: left;
}

#account-info-right {
    width: 320px;
    float: right;
}

table.view-orders td, table.view-orders th {
    padding: 5px 7px;
}

table.view-orders th a {
    text-decoration: none;
    color: #000;
}

.issuestartend {
    font-size: .8em;
	white-space: nowrap;
}

#print-link {
    width: 150px;
    float: right;
    text-align: right;
}

#print-link a {
    font-weight: bold;
    text-decoration: none;
    font-size: 1.1em;
}

/* Checkout option page */

#checkout-options div.option {
    float: left;
    width: 230px;
    padding: 14px;
    margin-right: 15px;
    border: 1px solid #ccc;
    background-color: #fafafa;
    -moz-border-radius: 4px;
    -webkit-border-radius: 4px;
    -khtml-border-radius: 4px;
    border-radius: 4px;
    min-height: 200px;
}

#checkout-options div.option:last-child {
    margin-right: 0;
}

#checkout-options p {
    color: #333;
    line-height: 140%;
    margin-top: 0;
}

#checkout-options h2 {
    text-transform: none;
    font-size: 1em;
    font-weight: bold;
	font-style: normal;
    margin: 0 0 .5em 0;
	letter-spacing: 0;
    padding-bottom: 2px;
    text-transform: uppercase;
    border-bottom: 1px solid #ccc;
    font-family: Helvetica, Arial, sans-serif;
}

#checkout-options input {
    width: 210px;
}

#checkout-options label {
    display: block;
    margin: 1.2em 0 4px 0;
}

#checkout-options .submit input {
    width: 100px;
}

#checkout-options .button {
    padding: 10px 20px 10px 20px;
    margin: 0 auto;
    display: block;
    width: 150px;
}

/* Payment */

.payment-info {
    line-height: 130%;
}

p.receipt {
    float: left;
    width: 300px;
}

p.order-date {
    margin-bottom: 2em;
}

p.order-comments {
    text-align: left;
    width: 100%;
    margin-bottom: 0;
    border-top: 1px solid #e0e0e0 !important;
    padding-top: 1em;
}

.payment-edit {
    width: 100px;
    float: right;
    text-align: right;
}

#place-order-button {
    display: block;
    width: 240px;
    float: right;
}

#place-order-button.disabled {
    opacity: 0.5;
    filter:alpha(opacity=50); /* For IE8 and earlier */
}

/* cake */

.cake-sql-log {
    clear: both;
    margin: 40px 25px 25px 25px;
}

.error-message {
    display: block;
    margin: 8px 0 22px 0 !important;
    color: #666;
    font-size: .9em;
}

.error label {
    color: #cc0000;
}

/* Shipping pages */

.shipping-gift {
    display: none;
}

#shipping-gift div {
    margin-top: 0;
}

.enabled {
    display: block;
}

/* Paginator */

.page-info {
    margin-bottom: 25px;
    text-align: center;
}
.page-info .left {
    float: left;
    width: 150px;
    text-align: left;
}
.page-info .right {
    float: right;
    width: 150px;
    text-align: right;
}
#page-nums {
    margin-top: 25px;
}

/* Print styles */
@media print {
  * { background: transparent !important; color: black !important; box-shadow:none !important; text-shadow: none !important; filter:none !important; -ms-filter: none !important; }
  a, a:visited { text-decoration: underline; }
  /* a[href]:after { content: " (" attr(href) ")"; } */
  /* abbr[title]:after { content: " (" attr(title) ")"; } */
  .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after { content: ""; }
  pre, blockquote { border: 1px solid #999; page-break-inside: avoid; }
  thead { display: table-header-group; }
  tr, img { page-break-inside: avoid; }
  img { max-width: 100% !important; }
  @page { margin: 0.5cm; }
  p, h2, h3 { orphans: 3; widows: 3; }
  h2, h3 { page-break-after: avoid; }
  #header, #admin_header, .admin-footer, #footer, .flash, #print-link, .print-hide {
      display: none;
  }
}
