body {
	margin: 0;
	padding: 0;
	font: 85% "Helvetica Neue", Helvetica, Arial, Sans-serif;
	background: #D7B15E;
	}

body.home {
	background: #fff;
	}

.panel {
	padding: 0 10px;
	}

h2 {
	margin: .5em 0 0;
	padding: .5em 6px;
	font-size: 110%;
	color: #fff;
	text-shadow: 0px 1px 2px #000;
	}

h3 {
	font-size: 100%;
	margin: 0;
	padding: .75em 16px;
	font-weight: normal;
	border-bottom: solid 1px #bbb;
	background-color: #F9F3E7;
	}

ul,ol,li {
	list-style-type: none;
	margin: 0;
	padding: 0;
	}

#logo {
	padding: 24px 0 13px 32px;
	background: #fff;
	background: -webkit-gradient(linear, 0% 0%, 0% 50%, from(#e8ddc9), to(#FFFFFF));
	}

#nav {
	position: relative;
	}

#nav.sub {
	background-color: #DDB660;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#DDB660), to(#b5954f));
	padding: 0 0 0 1em;
	height: 44px;
	border-bottom: solid 1px #EBD8AF;
	}

#nav li {
	display: inline-block;
	}

#nav-cart {
	position: absolute;
	right: 0;
	}

#nav-cart a {
	display: block;
	text-decoration: none;
	color: #fff;
	text-shadow: 0px 1px 2px #000;
	padding: .7em 1em .7em 26px;
	-webkit-border-bottom-left-radius: 9px;
	background: #A87B2E;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#CFA255), to(#A87B2E), color-stop(.5,#C39950),color-stop(.5,#B08741));
	border-bottom: solid 1px #4A3D20;
	border-left: solid 1px #68562D;
	position: relative;
	}

.cart #nav-cart {
	top: auto;
	bottom: -1px;
	}

.cart #nav-cart a {
	border-top: solid 1px #EBD8AF;
	border-bottom: none;
	-webkit-border-top-left-radius: 9px;
	-webkit-border-bottom-left-radius: 0;
	}

#nav-cart a:before {
	left: 5px;
	background: url(img/icons.png) no-repeat -2px -11px;
	height: 14px;
	width: 15px;
	margin-top: -6px;
	}

#nav-search a {
	position: absolute;
	top: 6px;
	left: 80px;
	display: block;
	border-color: transparent;
	border-style: solid;
	border-width: 7px 9px 7px 9px;
	-webkit-border-image: url(img/nav-button.png) 7 9 7 9;
	height: 15px;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	font-size: 13px;
	text-shadow: 0px -1px 2px #511;
	}

#nav-back a {
	position: absolute;
	top: 6px;
	left: 9px;
	display: block;
	border-color: transparent;
	border-style: solid;
	border-width: 7px 7px 7px 15px;
	-webkit-border-image: url(img/back-to-search.png) 7 7 7 15;
	height: 15px;
	text-decoration: none;
	color: #fff;
	font-weight: bold;
	font-size: 13px;
	text-shadow: 0px -1px 2px #511;
	}

.list {
	background: #fff;
	clear: left;
	}

.details {
	background: #F9F3E7;
	}

.link {
	background: #fff;
	clear: left;
	}

.link li {
	position: relative;
	padding-bottom: 1em;
	}


.list li {
	position: relative;
	}

.list em {
	color: #777;
	font-size: 88%;
	line-height: 1.5;
	}

h2.item {
	position: relative;
	font-weight: normal;
	font-size: 100%;
	background: #fff;
	border-bottom: solid 1px #bbb;
	margin: 0;
	padding: 0;
	text-shadow: none;
	}

h2.item strong,
h2.item em {
	display: block;
	}

h2.item a {
	line-height: 1.1;
	display: block;
	text-decoration: none;
	color: #000;
	padding: .6em 0 .6em 52px;
	position: relative;
	min-height: 32px;
	}

h2.producer {
	padding: .6em 8px .6em 52px;
	text-shadow: none;
	}

h2.producer:before {
	left: 2px;
	height: 40px;
	width: 48px;
	margin-top: -20px;
	background: #fff url(img/icons.png) no-repeat -712px 50%;
	}

h2.product:after,
h2.producer:after {
	right: 2px;
	height: 20px;
	width: 20px;
	margin-top: -10px;
	background: #fff url(img/icons.png) no-repeat -606px 50%;
	}


h2.product {
	padding: .6em 8px .6em 52px;
	}

h2.product:before {
	left: 2px;
	height: 40px;
	width: 48px;
	margin-top: -20px;
	background: #fff url(img/icons.png) no-repeat -664px 50%;
	}

h2.item strong,
h2.item em {
	display: block;
	color: #000;
	}

h2.item em {
	display: block;
	color: #777;
	font-size: 88%;
	line-height: 1.5;
	}

.list a {
	line-height: 1.1;
	display: block;
	text-decoration: none;
	color: #000;
	border-bottom: solid 1px #bbb;
	padding: .6em 8px .6em 52px;
	position: relative;
	min-height: 32px;
	}

.list a:active {
	color: #fff;
	background-color: #3982ED;
	}

.details a {
	line-height: 2.2;
	}


.link a {
	line-height: 1.5;
	display: block;
	text-decoration: none;
	color: #000;
	padding: .3em 8px .5em 30px;
	position: relative;
	}

h2 button,
.list button {
	font-weight: bold;
	font-size: 120%;
	position: absolute;
	top: 50%;
	left: 4px;
	height: 44px;
	width: 44px;
	margin-top: -22px;
	padding: 0;
	text-align: center;
	border: none;
	color: transparent;
	}

.images button {
	background: url(img/icons.png) no-repeat -323px 50%;
	}

.pos button {
	background: url(img/icons.png) no-repeat -237px 50%;
	}

.press button {
	background: url(img/icons.png) no-repeat -280px 50%;
	}

.tasting button {
	background: url(img/icons.png) no-repeat -156px 50%;
	width: 38px;
	left: 9px;
	}

button.thinking,
button.thinking.incart {
	background: url(img/ajax-loader.gif) no-repeat 50% 50%;
	width: 32px;
	left: 8px;
	}

.images button.incart {
	background-position: -538px 50%;
	}

.pos button.incart {
	background-position: -452px 50%;
	}

.press button.incart {
	background-position: -495px 50%;
	}

.tasting button.incart {
	background-position: -371px 50%;
	}


/* links to elsewhere */
.group {
	-webkit-border-radius: 9px;
	margin: 0 .5em 10px;
	}

h2 a em,
h2 a strong,
.list a em,
.list a strong {
	display: block;
	}

.list a strong {
	display: block;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	height: 1.2em;
	width: 100%;
	}

.nav a {
	padding-right: 30px;
	}

.nav a:after {
	height: 14px;
	width: 13px;
	background: url(img/icons.png) no-repeat -581px 50%;
	right: 10px;
	margin-top: -7px;
	}

.list li:last-child a {
	border-bottom: none;
	}

.mainsite a {
	postion: relative;
	display: block;
	}

.mainsite a:before {
	left: 0;
	margin-top: -14px;
	height: 28px;
	width: 29px;
	background: url(img/icons.png) no-repeat -636px 50%;
	}

.producers a:before {
	left: 4px;
	margin-top: -20px;
	width: 48px;
	height: 40px;
	background: url(img/icons.png) no-repeat -712px 50%;
	}


.products a:before {
	left: 2px;
	margin-top: -20px;
	width: 48px;
	height: 40px;
	background: url(img/icons.png) no-repeat -664px 50%;
	}

.details a:before {
	left: 10px;
	margin-top: -16px;
	height: 33px;
	width: 33px;
	}

.press a:before {
	background: url(img/icons.png) no-repeat -90px 50%;
	}

.pos a:before {
	background: url(img/icons.png) no-repeat -57px 50%;
	}

.image a:before {
	background: url(img/icons.png) no-repeat -123px 50%;
	}

.description a:before {
	background: url(img/icons.png) no-repeat -24px 50%;
	}

#bottle {
	float: left;
	}

#description {
	background: #fff;
	border-top: solid 1px #fff;
	border-bottom: solid 1px #bbb;
	padding-bottom: 1em;
	}

#description p {
	padding: 0 10px;
	line-height: 1.4;
	}

#description:after {
	content: " ";
	display: block;
	clear: both;
	}

#producerdescription {
	background: #fff;
	padding: .6em 10px 1em;
	position: relative;
	line-height: 1.4;
	}

#producerdescription:before {
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#DBDBDB), to(#FFFFFF), color-stop(1,#fff));
	display: block;
	content: " ";
	position: absolute;
	top: 0;
	left: 0;
	height: 10px;
	width: 100%;
	z-index: 1;
	}

#sitepress {
	background: #F9F3E7;
	padding: 0 12px 24px;
	border-top: solid 1px #bbb;
	}

form {
	margin: 0;
	padding: 0;
	}

fieldset {
	margin: 0;
	padding: 0;
	border: none;
	}

legend {
	margin: 0 0 0 5.7em;
	padding-bottom: 0;
	height: 0;
	width: 0;
	position: absolute;
	overflow: hidden;
	}

.row {
	margin: .5em 0;
	}
.row:first-child {
	margin: 0 0 .5em 0;
	}
.textarea {
	margin-top: 1em;
	}

form label {
	display: inline-block;
	width: 5.5em;
	vertical-align: middle;
	line-height: 1;
	padding-bottom: .4em;
	}

.alert {
	margin: 0 -12px;
	padding: 12px;
	position: relative;
	}

.alert label {
	font-weight: bold;
	width: auto;
	}

.alert h2 {
	color: inherit;
	text-shadow: none;
	margin: 0 0 .5em 0;
	padding: 0;
	}
	
.alert li,
.alert p {
	margin: .5em 0;
	font-size: 88%;
	}

.alert:before {
	content: " ";
	display: block;
	position: absolute;
	top: 12px;
	left: 12px;
	height: 60px;
	width: 68px;
	}
	
#success,
#error {
	padding-left: 93px;
	}


#noresults {
	color: #333;
	background: #eee;
	background: -webkit-gradient(linear, 0% 0%, 0% 20%, from(#ddd), to(#eee), color-stop(.6,#eee));
	padding-left: 80px;	
	margin-bottom: 10px;
	}

#noresults:before {
	background: url(img/icons-large.png) -136px 0;
	width: 40px;
	left: 30px;
	}


#success {
	color: #376826;
	background: #D6F6AD;
	background: -webkit-gradient(linear, 0% 0%, 0% 20%, from(#bad697), to(#D6F6AD), color-stop(.6,#D6F6AD));
	}

#success:before {
	background: url(img/icons-large.png) -68px 0;
	}

#empty {
	color: #000;
	background: #F9F3E7;
	background: -webkit-gradient(linear, 0% 0%, 0% 20%, from(#d9d3c9), to(#F9F3E7), color-stop(.6,#F9F3E7));
	}

#error {
	color: #C30000;
	background: #FFE47F;
	background: -webkit-gradient(linear, 0% 0%, 0% 20%, from(#DCC56E), to(#FFE47F), color-stop(.6,#FFE47F));
	}

#error:before {
	background: url(img/icons-large.png) 0 0;
	}

#homesearch label {
	height: 0;
	width: 0;
	position: absolute;
	overflow: hidden;
	}

span.element {
	vertical-align: middle;
	}

select {
	font-size: 120%;
	width: 300px;
	}

.textarea label {
	display: block;
	}

input[type="email"],
input[type="text"] {
	font-size: 120%;
	width: 12em;
	}

#homesearch input[type="text"] {
	width: 280px;
	}

button#email,
button#search {
	background: #805733;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#A06D40), to(#220000), color-stop(.5,#805733),color-stop(.5,#553010));
	color: #fff;
	border: solid 1px #522d2d;
	border-top-color: #BEAFAF;
	-webkit-border-radius: 8px;
	padding: .5em 0;
	text-shadow: 0px -1px 2px #511;
	margin: .75em 0 .5em;
	width: 300px;
	font-size: 120%;
	font-weight: bold;
	}

textarea {
	width: 280px;
	font-size: 120%;
	}

fieldset.set {
	margin: 0;
	padding-top: 1em;
	}

fieldset fieldset legend {
	margin: 0;
	position: static;
	float: left;
	margin-right: .5em;
	height: auto !important;
	width: auto !important;
	}

input[type="radio"] {
	margin: 0;
	}

fieldset fieldset .row {
	display: inline-block;
	width: auto;
	margin: 0;
	}

fieldset fieldset label {
	width: 3em;
	}

.error textarea,
.error input {
	background-color: #feb;
	outline: solid 3px #b00;
	}

.error textarea:focus,
.error input:focus {
	background-color: #fff;
	outline: solid 3px #b00;
	}

#winery-logo {
	background: #fff;
	border-bottom: solid 1px #bbb;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#DBDBDB), to(#FFFFFF), color-stop(.1,#fff));
	padding: 5px 0 5px 10px;
	}

#winery-logo img {
	vertical-align: middle;
	border: none;
	}

#winery-logo span {
	position: absolute;
	top: 50%;
	right: 42px;
	margin-top: -.75em;
	}

#winery-logo a {
	display: block;
	position: relative;
	text-decoration: none;
	color: #000;
	}

#winery-logo a:after {
	right: 10px;
	height: 28px;
	width: 28px;
	margin-top: -14px;
	background: url(img/icons.png) -635px 50%;
	}

dl.wine-attr {
	display: inline-block;
	width: 15%;
	margin: 0 2% 0 0;
	padding: 0;
	}

dl.wine-attr dt {
	margin: 0;
	padding: .2em 0;
	font-size: 88%;
	color: #666;
	}

dl.wine-attr dd {
	margin: 0;
	padding: 0;
	}

#cartform {
	background-color: #A87B2E;
	padding: 12px 12px 1px;
	color: #fff;
	}

#file-listing {
	position: relative;
	}

#file-listing h3 {
	border-top: solid 1px #bbb;
	}

#file-listing button#clear {
	position: absolute;
	top: 1px;
	right: 8px;
	color: #fff;
	background: #AC833E;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#93671B), to(#93671B), color-stop(.2,#C29145),color-stop(.5,#AF8640),color-stop(.5,#A5772B));
	text-shadow: 0px 1px 2px #511;
	-webkit-border-radius: 8px;
	padding: .5em 2em;
	border: solid 1px #5E3D21;
	border-bottom: solid 1px #B9A492;
	font-size: 88%;
	font-weight: bold;
	}


#file-listing h2 {
	background-color: #805733;
	background: -webkit-gradient(linear, 0% 0%, 0% 100%, from(#6E4B2C), to(#805733));
	margin: 0;
	padding: .6em 0 .6em 17px;
	}


#nav-cart a:before,
h2.producer:before,
h2.product:before,
.mainsite a:before,
.producers a:before,
.products a:before,
.details a:before,
#winery-logo a:after,
h2.product:after,
h2.producer:after,
.nav a:after {
	content: " ";
	display: block;
	position: absolute;
	top: 50%;
	}
