/* Product Thumbnail Component */
div.product-component {
	position: relative;
	float: left;
	width: 33.3%;
	font-size: 9pt;
	line-height: 130%;
	margin-bottom: 2em;
}
	div.product-component div.product-container {
		position: relative;
		width: 150px;	/* maximum width of the product thumbnail image */
		margin: 0 auto;
	}
	div.product-component a {
		position: relative;
		display: block;
		float: left;
	}
		div.product-component a,
		div.product-component a:link, div.product-component a:visited,
		div.product-component a:hover, div.product-component a:active {
			color: #000;
			text-decoration: none;
		}
		div.product-component a:hover {
			text-decoration: underline;
		}
			div.product-component a:hover span.product-price {
				text-decoration: none;
			}
	html>/**/body div.product-component img.product-thumbnail { /* hack: ignored by IE7 */
		display: block;
	}
	div.product-component img.more-colors-available {
		width: 100%; /* stretch to fit thumbnail */
		height: auto;
	}
	div.product-component img.multi-pack-icon {
		position: absolute;
		top: -7px;
		left: -7px;
		z-index: 1;
	}
	div.product-component span.designer-name {
		display: block;
		font-weight: 600;
	}
	div.product-component span.product-price {	
		display: block;
		text-align: right;
		background: url("/images/layout/product-price.bg.gif") repeat-x 0 90%;
	}
		div.product-component span.product-price span.price,
		div.product-component span.product-price span.sale-price {
			color: #000;
			background: #FFF;
			font-weight: 600;
			padding-left: 0.25em;
		}
		div.product-component span.product-price span.regular-price {
			background: #FFF;
			text-decoration: line-through;
		}
			div.product-component span.product-price span.regular-price em {
				font-weight: 300;
				font-style: normal;
				text-transform: lowercase;
			}
			div.product-component span.product-price span.sale-price em {
				font-weight: 300;
				font-style: normal;
				text-transform: uppercase;
			}
	div.product-component div.swatch-container {
		display: none; /* hidden by default */
		position: absolute;
		top: 0;
		left: 0;
		z-index: 100;
		color: #000;
		background: #FFF;
		border: 1px solid #000;
		margin: -1px; /* -1 for border */
	}
		div.product-component div.swatch-container a {
			display: inline; /* undo div.product-component a */
			float: none; /* undo div.product-component a */
		}
			div.product-component div.swatch-container a:link, div.product-component div.swatch-container a:visited,
			div.product-component div.swatch-container a:hover, div.product-component div.swatch-container a:active {
				text-decoration: none;
			}
		div.product-component div.swatch-container table td {
			vertical-align: top;
		}
			div.product-component div.swatch-container table td.product-thumbnail {}
				div.product-component div.swatch-container table td.product-thumbnail a {
					position: relative;
					display: block;
				}
				div.product-component div.swatch-container table td.product-thumbnail img.product-thumbnail {
					display: inline; /* undo div.product-component img.product-thumbnail */
					width: auto;
				}
			div.product-component div.swatch-container table td.product-swatches {}
				div.product-component div.swatch-container table td.product-swatches img.product-swatch {
					display: block;
					border: 1px solid #000;
					margin: 0.5em;
				}
		div.product-component div.swatch-container div.product-details {
			padding: 0.25em 0.5em;
		}
		div.product-component div.swatch-container span.product-name {
			font-size: 110%;
			font-weight: 600;
		}
		div.product-component div.swatch-container span.product-code {
			font-size: 95%;
		}
		div.product-component div.swatch-container span.product-price {
			display: block;
			background: none; /* undo div.product-component span.product-price */
			text-align: right;
			border-top: 1px dotted #000;
			border-bottom: 1px dotted #000;
			padding-top: 0.25em;
			padding-bottom: 0.25em;
			margin-top: 0.25em;
			margin-bottom: 0.25em;
		}


/* Pretty Form Styling */
form.prettyForm {
	width: 100%;
}
	form.prettyForm fieldset {
		border: 0 solid #FFF;
		text-align: left;
		padding: 0;
		margin: 0;
	}
		form.prettyForm fieldset legend,
		div#page-container h2.sub-heading {
			color: #369;
			font-size: 135%;
			font-weight: 600;
			padding: 0;
			margin: 0 0 1em 0;
		}
	form.prettyForm div.formfieldgroup {
		clear: left;
		display: block;
		padding-bottom: 0.75em;
	}
		form.prettyForm div.formfieldgroup label {
			float: left;
			display: block;
			width: 35%;
			text-align: right;
			padding: 0.25em 0.75em 0 0;
		}
			form.prettyForm div.formfieldgroup label.for_checkbox,
			form.prettyForm div.formfieldgroup label.for_radio {
				float: none;
				display: inline;
				text-align: left;
			}
			form.prettyForm div.formfieldgroup label span.mark {
				color: #9CF;
				font-size: 90%;
				vertical-align: top;			
			}
		form.prettyForm div.req-text label,
		form.prettyForm div.req-select label,
		form.prettyForm div.req-textarea label {}
		form.prettyForm div.opt-text label,
		form.prettyForm div.opt-select label,
		form.prettyForm div.opt-textarea label {
			color: #666;
		}
			form.prettyForm div.opt-text label span.mark,
			form.prettyForm div.opt-select label span.mark,
			form.prettyForm div.opt-textarea label span.mark {
				color: #000;
				visibility: hidden;
			}
			@media aural, speech {
				form.prettyForm div.opt-text label span.mark,
				form.prettyForm div.opt-select label span.mark,
				form.prettyForm div.opt-textarea label span.mark {
					speak: none;
				}
			}
		form.prettyForm div.req-text input.inputText,
		form.prettyForm div.opt-text input.inputText {
			width: 55%;
			padding: 0.125em 0.25em;			
		}
		form.prettyForm div.req-text input.small,
		form.prettyForm div.opt-text input.small { /* special .inputText */
			width: 25%;
		}
		form.prettyForm div.req-select select,
		form.prettyForm div.opt-select select {
			width: 56%;
		}
		form.prettyForm div.req-textarea textarea,
		form.prettyForm div.opt-textarea textarea {
			width: 55%;
			height: 8em;
			font-family: Verdana, Arial, Helvetica, sans-serif;
			font-size: 100%;
		}
	form.prettyForm div.submit-container {
		padding-top: 1em;
	}
	/* errors */
	form.prettyForm div.error {
		color: #F00;
		background: #FFB;
	}
		form.prettyForm div.error label span {
			color: #F00;
		}
		form.prettyForm div.error input.inputText,
		form.prettyForm div.error select,
		form.prettyForm div.error textarea {}


/* Pretty Rounded Box */
div.prettyRounded-container {
	background: #FFF url("/images/layout/prettyrounded-sideleft.jpg") repeat-y top left;
}
	div.prettyRounded-container div.top {
		background: url("/images/layout/prettyrounded-topleft.jpg") no-repeat left top;
	}
		div.prettyRounded-container div.top span {
			display: block;
			position: relative;
			height: 15px;
			background: url("/images/layout/prettyrounded-topright.jpg") no-repeat right top;
		}
	div.prettyRounded-container div.content {
		position: relative;
		background: url("/images/layout/prettyrounded-sideright.jpg") repeat-y right top;
		padding: 1px 15px;
	}
	div.prettyRounded-container div.bottom {
		background: url("/images/layout/prettyrounded-bottomleft.jpg") no-repeat left bottom;
	}
		div.prettyRounded-container div.bottom span {
			display: block;
			position: relative;
			height: 15px;
			background: url("/images/layout/prettyrounded-bottomright.jpg") no-repeat right top;
		}


/* Error and Success Messages */
div.alertContainer {
	color: #000;
	background: #FCC;
	font-size: 95%;
	border-width: 1px 0;
	border-style: solid;
	border-color: #C00;
	padding: 1em;
	margin-bottom: 1em;
}
div.errorContainer,
div.formError {
	clear: both;
	width: 80%;
	color: #F00;
	background: #EEE url("/images/layout/error.alert.jpg") no-repeat 0 1em;
	font-size: 110%;
	text-align: left;
	border: 1px solid #CCC;
	padding: 1em 0.5em 1em 4em;
	margin: 0 auto 1em auto;
}
	div.formError ul {
		padding: 0;
		margin: 0 0.5em 0.5em 1.5em;
	}
		div.formError ul li {
			margin: 0.5em 0 0 0;
		}
div.successContainer,
div.formSuccess {
	clear: both;
	width: 90%;
	color: #000;
	background: #FFF;
	font-size: 110%;
	text-align: left;
	border: 3px double #69F;
	padding: 0.5em;
	margin: 1em auto;
}


/* Store Maintenance Mode */
div#maint-warning,
div#maint-closed {
	min-width: 720px;
	width: 60em;
	padding: 1em;
	margin: 1.5em;
}
div#maint-warning {
	border: 4px double #369;
}
div#maint-closed {
	border: 2px solid #C00;
}
	div#maint-warning h2,
	div#maint-closed h2 {
		padding: 0;
		margin: 0 0 0.5em 0;
	}
	div#maint-warning h2 {
		color: #369;
	}
	div#maint-closed h2 {
		color: #C00;
	}