@charset "utf-8";

/* Reset & Standard Styles - Copyright Muchachamaca SCP, Spain - All rights reserved */

* {
	margin: 0;
	padding: 0;
	font-size: inherit;
	font-weight: inherit;
	font-style: inherit;
	font-family: inherit;
	color: inherit;
	text-decoration: inherit;
}

html { height: 100%; }

body {
	position: relative;
	font: 11px/1.4em Verdana, Arial, Helvetica, sans-serif;
	color: #555555;
	background-color: white;
	text-align: left;
	text-decoration: none;
	min-width: 1020px;
/*	min-height: 100%;*/
	overflow-x: hidden;
	overflow-y: scroll;
}

img { border: none; display: block; }
table { border: none; border-collapse: collapse; }
th { vertical-align: bottom; }
td { vertical-align: top; }
input, select, textarea { padding: 1px 2px; -webkit-box-sizing: border-box; -moz-box-sizing: border-box; -ms-box-sizing: border-box; box-sizing: border-box; }
input[type=button], input[type=submit], input[type=reset] { cursor: pointer; padding: 1px 1em; }
input[type=checkbox], input[type=radio] { cursor: pointer; position: relative; top: 0.15em; }
label { cursor: pointer; }
sup { font-size: 70%; vertical-align: baseline; position: relative; top: -0.4em; }
sub { font-size: 70%; vertical-align: baseline; position: relative; top: 0.3em; }
em, i { font-style: italic; }
strong, b { font-weight: bold; }
iframe { border: 0; }
h1 { font-weight: bold; font-size: 200%; line-height: 100%; }
h2 { font-weight: bold; font-size: 120%; line-height: 100%; }
h3 { font-weight: bold; line-height: 100%; }
h1, h2, h3, h4, h5 { -moz-break-after: avoid; -webkit-break-after: avoid; break-after: avoid; }

a { color: inherit; }
a:link		{ text-decoration: none; }
a:visited	{ text-decoration: none; }
a:hover		{ text-decoration: underline; }
a:active	{ }
a img { border: none; }

p a:link	{ text-decoration: underline; }
p a:visited	{ text-decoration: underline; }
p a:hover	{ text-decoration: underline; color: black; }
p a:active	{ }

input[type=text].fakename { display: none; }

/* ------------------------------- */

.text ul, .text ol { list-style-position: outside; margin-left: 1em; }

/* ------------------------------- */

/* setting overflow to hidden, auto, or scroll resizes container to fully contain floats */
.float-container { overflow: hidden; }

/* previously: clearfix */
.group:before,
.group:after { content: ""; display: table; }
.group:after { clear: both; }

/* ------------------------------- */

.left { text-align: left; }
.center { text-align: center; }
.right { text-align: right; }
.top { vertical-align: top; }
.bottom { vertical-align: bottom; }
.inline_block { display: inline-block; }
.inline-block { display: inline-block; }
.block { display: block; }
.hidden { display: none; }
.float-left { float: left; }
.float-right { float: right; }
.clear { clear: both; }
.clear-left { clear: left; }
.clear-right { clear: right; }
.sticky { position: relative; position: -webkit-sticky; position: -moz-sticky; position: -ms-sticky; position: -o-sticky; position: sticky; z-index: 1; top: 0; }
.overlay { position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,0.8); z-index: 9999999; }
.noscroll { overflow: hidden; }
.nowrap { white-space: nowrap; }
.pointer { cursor: pointer; }
.noselect, .no-select { -webkit-touch-callout: none; -webkit-user-select: none; -khtml-user-select: none; -moz-user-select: none; -ms-user-select: none; user-select: none; }
.flex-container { display: -webkit-box; display: -moz-flexbox; display: -ms-flexbox; display: -webkit-flex; display: flex; }
.inline-flex-container { display: -webkit-inline-box; display: -moz-inline-box; display: -ms-inline-flexbox; display: -webkit-inline-flex; display: inline-flex; }

/* ------------------------------- */

table.std_table { border: 1px solid black; }
table.std_table th { border: 1px solid black; background-color: #CCC; padding: 2px; }
table.std_table td { border: 1px solid black; padding: 2px; }

table.grey_border { border: 1px solid #999; }
table.grey_border th { border: 1px solid #999; }
table.grey_border td { border: 1px solid #999; }

table.blue_table { border: 1px solid black; }
table.blue_table th { border: 1px solid #aaa; background-color: #d0d0f0; padding: 2px; font-weight: bold; }
table.blue_table td { border: 1px solid #aaa; padding: 0; }
table.blue_table tr:nth-child(even) { background: #f0f0ff; }
table.blue_table tr:nth-child(odd) { background: #f8f8ff; }

/* ------------------------------- */

div.loading_icon, span.loading_icon { visibility: hidden; width: 16px; height: 16px; background-image: url(/interface/loading-white.gif); }
div.loading_icon.inline, span.loading_icon { vertical-align: middle; display: inline-block; }
div.loading_icon.grey, span.loading_icon.grey { background-image: url(/interface/loading-grey.gif); }
div.loading_icon.visible, span.loading_icon.visible { visibility: visible; }

.loading_spinner {
	height: 10px;
	width: 10px;
	margin: 0px auto;
	position: relative;
	visibility: hidden;
	-webkit-animation: spinner-rotation .8s infinite linear;
	-moz-animation: spinner-rotation .8s infinite linear;
	-o-animation: spinner-rotation .8s infinite linear;
	animation: spinner-rotation .8s infinite linear;
	border-radius: 100%;
	border-top: 3px solid rgba(0,174,239,1);
	border-right: 3px solid rgba(0,174,239,0.25);
	border-bottom: 3px solid rgba(0,174,239,1);
	border-left: 3px solid rgba(0,174,239,0.25);
}
.loading_spinner.inline { display: inline; display: inline-block; vertical-align: middle; }
.loading_spinner.visible { visibility: visible; }

@-webkit-keyframes spinner-rotation { from {-webkit-transform: rotate(0deg);} to {-webkit-transform: rotate(359deg);} }
@-moz-keyframes spinner-rotation { from {-moz-transform: rotate(0deg);} to {-moz-transform: rotate(359deg);} }
@-o-keyframes spinner-rotation { from {-o-transform: rotate(0deg);} to {-o-transform: rotate(359deg);} }
@keyframes spinner-rotation { from {transform: rotate(0deg);} to {transform: rotate(359deg);} }

/* ------------------------------- */

.simple-button {
	display: inline-block;
	vertical-align: top;
	background-color: #06f;
	background-image: linear-gradient(180deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0.05) 45%, rgba(0,0,0,0.1) 55%, rgba(0,0,0,0.20) 100%);
	text-decoration: none !important;
	text-align: center;
	font-size: 120%;
	line-height: 180%;
	font-weight: bold;
	padding: 0 12px;
	color: white;
	cursor: pointer;
	border-radius: 4px;
	border: 1px solid #48f;
	box-shadow: inset 0 1px 0 0 rgba(255,255,255,0.5);
	text-shadow: -1px -1px rgba(0,0,0,0.2);
}
.simple-button:hover,
.simple-button:active {
	background-image: linear-gradient(180deg, rgba(255,255,255,0.1) 0%, rgba(255,255,255,0.0) 45%, rgba(0,0,0,0.15) 55%, rgba(0,0,0,0.3) 100%);
	outline: none; 	color: white; }

.simple-button.disabled,
.simple-button.disabled:hover,
.simple-button.disabled:active { cursor: default; background: #bbb; border-color: #aaa; color: #ddd; }

.simple-button.dark-text { color: #222; text-shadow: 1px 1px rgba(255,255,255,0.8); }

.simple-button.small {
	font-size: 12px;
	line-height: 18px;
	font-weight: bold;
	padding: 0 10px;
	border-radius: 3px;
}

/* ------------------------------- */

.menu-button {
	width: 30px;
	height: 20px;
	background: linear-gradient(to bottom, #666 0px, #666 20%, transparent 20%, transparent 40%, #666 40%, #666 60%, transparent 60%, transparent 80%, #666 80%, #666 100%);
	cursor: pointer;
}

/* ------------------------------- */

.no-select {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

/* ------------------------------- */

.dropdown-style {
	display: none;
	position: absolute;
	z-index: 2;
	box-shadow: 4px 7px 10px 0px rgba(50, 50, 50, 0.5);
}
.dropdown-style>ul {
	list-style: none;
	padding: 0;
	margin: 0;
	border-radius: 3px;
	border: 1px solid #d6d6d6;
	text-align: left;
}
.dropdown-style>ul>li {
	position: relative;
	line-height: 28px;
	padding: 0 12px 0 8px;
	border-bottom: 1px solid #c8c7c6;
	color: #444;
	cursor: pointer;
	background-color: white;
}
.dropdown-style>ul>li:last-child {
	border-bottom: none;
}
.dropdown-style>ul>li:hover {
	color: white;
	background-color: #ffcc00;
}

/* ------------------------------- */

div.star_rating { background: url(/interface/rating-stars.png) 0 12px; width: 65px; height: 12px; display: inline-block; }
div.star_rating>span { position: absolute; background: transparent; height: 12px; overflow: hidden; }
div.star_rating>span:hover, div.star_rating>span.selected { background-image: url(/interface/rating-stars.png); }
div.star_rating>span.s1 { width: 13px; }
div.star_rating>span.s2 { width: 26px; }
div.star_rating>span.s3 { width: 39px; }
div.star_rating>span.s4 { width: 52px; }
div.star_rating>span.s5 { width: 65px; }

div.star_rated { position: relative; background: url(/interface/rating-stars.png) 0 12px; width: 65px; height: 12px; display: inline-block; }
div.star_rated>span { position: absolute; background: transparent url(/interface/rating-stars.png) 0 0; height: 12px; overflow: hidden; }

/* ------------------------------- */

#query-stats { position: fixed; right: 14px; bottom: 2px; }

/* ------------------------------- */

header, section, footer, aside, nav, main, article, figure { display: block; }


/* Site Specific Styles - Copyright Muchachamaca - All rights reserved */

/* ------------------------------- */

body {
	min-width: 320px;
	text-align: center;
	color: #444;
	margin: 0;
	font: 13px/1.6em Verdana, Arial, Helvetica, sans-serif;
}


/* ------------------------------- */

#top-strip {
	background-image: url(/interface/window-bg.png);
	background-position: top center;
	background-repeat: repeat-x;
	position: relative;
	box-shadow: 0 0 10px 10px  rgba(0,0,0,0.15);
	height: 50px;
	z-index: 1;
}
#top-strip a { display: inline-block; padding: 0 1em; text-decoration: none; }
#top-strip a:hover { background-color: #f8f8f8; color: black; }

#media { position: absolute; z-index: 999; }

#face {
	position: relative;
	margin: 0 auto;
	padding: 0 8px;
	max-width: 1008px;	text-align: left;
	background-color: white;
	background-image: url('/interface/1348493204/titanium-header-bg.jpg');
	background-repeat: repeat-x;
	box-shadow: 0 8px 10px 10px rgba(0,0,0,0.15);
	z-index: 0; }

.centerpage {
	position: relative;
	margin: 0 auto;
	max-width: 1024px;
	text-align: left;
	background-color: white;
}

#header {
	position: relative;
	background-color: transparent;
	height: 100px;
/*	box-shadow: 0 3px 3px 0 #882255; */
	z-index: 4;
	text-align: center;
	padding: 0;
}
#header #special-background { z-index: -1; position: absolute; width: 976px; height: 125px; left: -8px; top: 0; background: #ee3d96 url(/interface/backgrounds/header-halloween-2014.jpg) no-repeat 0 18px; }
#header #logo {
	padding-top: 12px;
	margin-left: 15px;
	float: left;
/*	cursor: pointer; */
	position: absolute;
	z-index: 3;
}
#contact {
/*	float: left; */
}
#header #slogan {
	position: absolute;
	top: 15px;
	right: 2%;
	text-align: left;
	font-family: RhumbaScript, "Times New Roman", Times, serif;
	font-size: 36px;
	line-height: 24px;
	letter-spacing: 1px;
	color: #444;
}
#header #slogan a { line-height: normal; /* text-decoration: none; */ }

#toplinks-container {
	position: relative;
	margin-left: 140px;
	text-align: right;
	padding-right: 2%;
}
#toplinks-container .menu-button {
	display: none;
	position: absolute;
	top: 15px; 
	right: 15px;
	z-index: 4;
}

ul#top-links {
/*	position: absolute;*/
	padding-top: 68px;
	right: 15px;
	font-size: 16px;
	text-align: right;
	z-index: 4;
	display: -webkit-inline-flex;
	display: inline-flex;
/*  justify-content: space-between;*/
	width: 100%;
	max-width: 500px;
}
ul#top-links>li {
	display: inline-block;
	padding: 0 5px;
	vertical-align: middle;
	border-bottom: 1px solid transparent;
	line-height: 25px;
	margin-left: auto;
}
ul#top-links>li:hover { border-bottom: 1px solid #888; }
ul#top-links>li a {
	text-decoration: none;
	display: inline-block;
	white-space: nowrap;
}
ul#top-links>li.selected { border-bottom: 1px solid #666; }

#home-menus {
	float: left;
	margin-top: 5px;
	padding: 0;
	font-size: 14px;
	line-height: 30px;
	color: #222;
	background-color: white;
	background-color: rgba(255,255,255,0.9);
	z-index: 2;
}
#language-menus {
	float: right;
	margin-top: 5px;
	padding: 0;
	font-size: 14px;
	line-height: 30px;
	color: #222;
	background-color: white;
	background-color: rgba(255,255,255,0.9);
	z-index: 2;
}
#session-menu {
	float: right;
	margin: -5px 20px 0 0;
	background-color: #f8f0f4;
	background-color: rgba(0,0,0,0.1);
	padding: 12px 15px 5px 15px;
	font-size: 12px;
}
#hello-user {
	color: #888;
}
#user-menus {
	float: right;
	margin-top: 12px;
	font-size: 14px;
	color: white;
}

#holiday-notification {
	position: absolute;
	left: 160px;
	top: 10px;
	width: 200px;
	background-color: #ffffcc;
	border: 1px solid #cccc44;
	border-radius: 8px;
	padding: 10px 16px;
}

#bottom-bar {
	text-align: left;
	background-color: #666;
	height: 25px;
}

/* ------------------------------- */

#cookie-consent {
	font-family: Verdana, Geneva, sans-serif;
	margin-top: -10px;
	width: 80%;
	padding: 10px 10%;
	text-align: center;
	line-height: 1.5em;
	background-color: #666;
	position: relative;
}
#cookie-consent p { color: white; }
#cookie-consent a { color: white; }
#cookie-consent .cs-close { float: right; margin-left: 20px; }

/* ------------------------------- */

ul.social-links {
	margin-top: 1px;
	list-style: none;
	float: left;
}
ul.social-links li {
	display: inline-block;
	margin-right: 5px;
}
ul.social-links li a {
	background-color: transparent;
	background-image: url(/interface/social-icons-big.png);
	background-repeat: none;
	width: 50px;
	height: 50px;
	overflow: hidden;
	position: relative;
	display: inline-block;
	text-indent: 50px;
	white-space: nowrap;
}

ul.social-links.sided {
	display: none;
/*	position: absolute;
	position: sticky;*/
	margin-left: 10px;
	width: 50px;
	float: left;
}

@media all and (min-width: 1170px)
{
	#fb-like { display: none; }
	ul.social-links { display: none; }
	ul.social-links.sided { display: block; }
	ul.social-links.sided li { display: block; margin: 10px 0 0 0; line-height: 0; }
}

.icon { background-image: url(/interface/social-icons-big.png); width: 50px; height: 50px; overflow: hidden; position: relative; display: inline-block; border-radius: 5px; }
.fb-icon { background-position: 0 0; }
.ww-icon { background-position: -50px 0; }
.fl-icon { background-position: -100px 0; }
.mp-icon { background-position: -150px 0; }
.ph-icon { background-position: -200px 0; }
.em-icon { background-position: -250px 0; }
.kn-icon { background-position: -300px 0; }
.tw-icon { background-position: -350px 0; }

.icon.small { width: 25px; height: 25px; background-size: 200px 25px; }
.fb-icon.small { background-position: 0 0; }
.ww-icon.small { background-position: -25px 0; }
.fl-icon.small { background-position: -50px 0; }
.mp-icon.small { background-position: -75px 0; }
.ph-icon.small { background-position: -100px 0; }
.em-icon.small { background-position: -125px 0; }
.kn-icon.small { background-position: -150px 0; }
.tw-icon.small { background-position: -175px 0; }

#fb-like {
	margin-top: 10px;
}

.shine:before {
	content: "";
	position: absolute;
	width: 80px;
	height: 50px;
	margin-left: -65px;
	margin-top: -30px;
	border-radius: 40px/25px;
	background: -moz-linear-gradient(top, rgba(255,255,255,0.7) 50%, rgba(255,255,255,0.2) 100%); /* FF3.6+ */
	background: -webkit-gradient(linear, left top, left bottom, color-stop(50%,rgba(255,255,255,0.7)), color-stop(100%,rgba(255,255,255,0.2))); /* Chrome,Safari4+ */
	background: -webkit-linear-gradient(top, rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.2) 100%); /* Chrome10+,Safari5.1+ */
	background: -o-linear-gradient(top, rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.2) 100%); /* Opera 11.10+ */
	background: -ms-linear-gradient(top, rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.2) 100%); /* IE10+ */
	background: linear-gradient(top, rgba(255,255,255,0.7) 50%,rgba(255,255,255,0.2) 100%); /* W3C */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#b3ffffff', endColorstr='#33ffffff',GradientType=0 ); /* IE6-9 */
}

.shine:after {
	content: "";
	position: absolute;
	width: 50px;
	height: 50px;
	margin-left: -120px;
	background: linear-gradient(135deg, rgba(255,255,255,0) 50%,rgba(255,255,255,0.3) 100%);
}

/* ------------------------------- */

#left_column {
	width: 170px;
	float: left;
/*	border-right: 1px solid #ece6ee; */
	margin-top: 5px;
}

#right_column {
	width: 170px;
	float: right;
	border-left: 1px solid #ece6ee;
	border-bottom: 1px solid #ece6ee;
	margin-top: 4px;
}

#center_column {
	margin: 4px 0 0 170px;
	text-align: left;
}

/* ------------------------------- */

#breadcrums {
	padding-left: 25px;
 	font-size: 14px;
/*	border-bottom: 1px solid #ece6ee; */
	margin-bottom: 10px;
	background-color: white;
	color: #bbb;
}
#breadcrums a {
	padding: 5px 0;
	font-family: Verdana, Geneva, sans-serif;
	font-size: 11px;
	color: #888;
}

/* ------------------------------- */

.side-block {
	padding: 10px 2px 15px 2px;
	border: 1px solid #ece6ee;
	background-color: #F0F0F0;
	border-radius: 8px;
	margin: 0 0 4px 0;
	font-size: 12px;
	overflow: hidden;
}
.side-block .title {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-weight: bold;
	font-size: 12px;
	color: #2d1749;
	text-align: center;
	margin-bottom: 10px;
	text-transform: uppercase;
}
.side-block li { list-style: none; }
.side-block li a { text-decoration: none; padding: 2px 0; line-height: 15px; display: block; padding-left: 15px; font-weight: bold; }
.side-block li a:hover { color: inherit; background-color: #ece6ee; }
.side-block p { margin: 0.5em 10px 0.5em 10px; }
.side-block p a { text-decoration: none; color: inherit; }
.side-block img { text-align: center; margin: 0 auto; }

/* ------------------------------- */

#search_box {
	padding: 10px 5px 10px 5px;
	border-bottom: 1px solid #ece6ee;
}
#search_box input {
	display: inline-block;
	border: 1px solid #ece6ee;
	line-height: 16px;
	width: 116px;
}
#search_box .ok_button {
	display: inline-block;
	border: 1px solid #ece6ee;
	line-height: 16px;
	padding: 0 5px;
	cursor: pointer;
}
#search_box .ok_button:hover { background-color: #ece6ee; }

/* ------------------------------- */

#menu_categories {
	padding: 15px 2px 15px 2px;
	border-bottom: 1px solid #ece6ee;
}
#menu_categories>ul { margin-left: 0; }
#menu_categories li ul { margin-left: 12px; border-left: 1px solid #bbb; display: none; }
#menu_categories * li { list-style: none; }
#menu_categories * li span,
#menu_categories * li a { padding: 3px 0 3px 10px; text-decoration: none; line-height: 15px; display: block; cursor: pointer; }
#menu_categories * li span:hover,
#menu_categories * li a:hover { color: inherit; background-color: #ece6ee; }
#menu_categories * li.single { margin-left: 5px; }
#menu_categories * li span.catlevel-0-title { font-weight: bold; }
#menu_categories>ul>li>ul>li a { font-weight: normal; }
#menu_categories * span.itemcount { color: #aaa; }

/* ------------------------------- */

ol.most_sold {
	margin-left: 30px;
}
ol.most_sold li {
	list-style-type: decimal;
	list-style-position: outside;
	padding: 2px 0;
}
ol.most_sold li a {
	vertical-align: text-top;
	display: inline-block;
	margin: 0;
	padding: 0;
}

/* ------------------------------- */

#cart_summary {
	padding: 15px 5px 15px 5px;
	border-bottom: 1px solid #ece6ee;
}
#cart_summary #total_articles { text-align: center; margin-top: 8px; }
#cart_summary #total_price { text-align: center; margin-top: 8px; }
#cart_summary h1 {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-weight: bold;
	font-size: 11px;
	color: #2d1749;
	text-align: center;
	margin-bottom: 8px;
	text-transform: uppercase;
}

#menu-login-block {
	background-color: #f8f0f8;
	margin-top: 5px;
	padding: 10px 7px 5px 7px;
	display: none;
	position: absolute;
	right: 0;
	z-index: 1;
	text-align: left;
	border-bottom: 1px solid #ece6ee;
}
#menu-login-user { color: #aaa; width: 200px; }
#menu-login-pswd { color: #aaa; width: 120px; }

#login-side-block {
	background-color: #f8f0f8;
	padding: 10px 7px 1px 7px;
	border-bottom: 1px solid #ece6ee;
}
#login-side-block h1 {
	font-family: Georgia, "Times New Roman", Times, serif;
	font-weight: bold;
	font-size: 11px;
	color: #2d1749;
	text-align: center;
	margin-bottom: 10px;
	text-transform: uppercase;
}
#login-side-block * input[type=text],
#login-side-block * input[type=password] {
	width: 150px;
	margin-top: 3px;
}
#login-side-block * input[type=submit] {
	float: right;
	margin-top: 3px;
	margin-left: 3px;
}
#login-side-block a {
	text-decoration: underline;
}

/* ------------------------------- */

#tabs {
	padding: 15px 0 0 0;
	background-color: #f6f6f6;
	text-align: center;
	display: flex;
	align-content: space-between;
	flex-wrap: wrap;
	font: 11px/1.4em Verdana, Arial, Helvetica, sans-serif;
}

#tabs .tab {
	vertical-align: top;
	position: relative;
	display: inline-block;
	width: 211px;
	min-width: 194px;
	max-width: 426px;
	flex: 1 1;
	height: 172px;
	height: 182px;
	margin: 0 3px 15px 3px;
	padding: 10px 15px 0 15px;
	background-color: white;
	background-position: top left;
	background-repeat: no-repeat;
	cursor: pointer;
	border: 1px solid #a7cf3a;
/*	box-shadow: 1px 1px 2px 0 #ccc;
	border-radius: 10px; */
}
#tabs .tab:last-child {
	margin: 0 auto 15px auto;
}
#tabs .tab.green { background-color: #d8e2bb; }
#tabs .tab .text {
	padding: 12px;
	color: black;
	text-align: left;
}
#tabs .tab a { text-decoration: none; }
#tabs .tab h3 { font: inherit; font-weight: bold; margin-bottom: 0.8em; font-size: 120%; border-bottom: 1px solid #e0f8d0; padding-bottom: 6px; }
#tabs .tab p { margin-bottom: 0.5em; }

#tabs .tab.opening-hours table td:first-child { text-align: right; }
#tabs .tab.opening-hours table td:last-child { text-align: left; padding-left: 25px; }
#tabs .tab.our-menus ul { text-align: left; margin-left: 10px; list-style: none; }
#tabs .tab.our-menus li:before { content: "•"; color: #666; margin-right: 6px; }
#tabs .tab.location { text-align: left; }
#tabs .tab.location h3 { text-align: center; }
#tabs .tab.location a:hover { text-decoration: underline; }

/* ------------------------------- */

.button {
	border: 1px solid #b4b0b9;
	border-radius: 4px;
	background-color: #ece6ee;
	padding: 0.2em 0.6em;
	display: inline-block;
	cursor: pointer;
}
.button:hover { background-color: #decbe5; }

span.link {
	cursor: pointer;
}
span.link:hover {
	text-decoration: underline;
}

/* ------------------------------- */

.radio-selection {
	padding: 0 5px 0 0;
}

.sidebar-title {
	height: 25px;
	line-height: 26px;
	text-align: left;
	padding-left: 10px;
	font-family: Arial, Helvetica, sans-serif;
	color: white;
	background-color: #543b6e;
	border-bottom: 3px solid #acfc09;
}
.sidebar-box {
	width: 285px;
	background-color: white;
	margin-bottom: 8px;
}

#content {
	text-align: left;
	padding: 0 25px 25px 25px;
	padding: 0;
	position: relative;
	background-color: white;
	background-color: rgba(255,255,255,0.9);
/*	min-height: 500px;*/
	font-size: 13px;
}
#content h1 {
/*	font-family: Georgia, "Times New Roman", Times, serif; */
	font-size: 18px;
	color: #3d2759;
	margin-bottom: 1em;
	text-shadow: 1px 1px white;
}
#content h2 {
/*	font-family: Georgia, "Times New Roman", Times, serif; */
	font-size: inherit;
	color: #3d2759;
	margin-bottom: 1em;
	text-shadow: 1px 1px white;
}
#content p {
	margin-bottom: 1em;
}
#content ul {
	padding-left: 25px;
}
#content ol {
	padding-left: 25px;
}
#content li {
	margin: 0;
	padding: 0;
	margin-bottom: 0.5em;
}
#content address {
	font-style: normal;
	margin: 1em 3em;
}
#content:after { content: ""; display: table; clear: both; } /* stretch height to at least left/right columns */

#footer {
	background: #eee -webkit-gradient(linear, center top, center bottom, from(#fff), to(#eee));
 	background: #eee -webkit-linear-gradient(top, #fff 0%, #eee 100%);
 	background: #eee    -moz-linear-gradient(center top, #fff 0%, #eee 100%);
 	background: #eee     -ms-linear-gradient(top, #fff 0%, #eee 100%);
	background: #eee         linear-gradient(0deg, #fff 0%, #eee 100%);
	min-height: 100px;
	clear: both;
	text-align: center;
	font-size: 11px;
	margin: 0 0 10px 0;
	padding: 8px 7px;
}
#footer a { font-size: 11px; text-decoration: none; color: #444; }
#footer a:hover { font-size: 11px; text-decoration: none; color: #666; }

td.label {
	text-align: right;
	padding-right: 12px;
}

#product-selected {
	position: relative; left: 0; right: 0; /* better than width: 100% since it allows normal use of margins and padding */
	width: 100%;
	margin-bottom: 10px;
	min-height: 0;
	display: table;
	padding: 0 20px 25px 0;
	border-bottom: 1px solid #ece6ee;
}
#product-images {
	width: 350px;
	height: 350px;
	text-align: center;
	display: table-cell;
	vertical-align: top;
	padding: 0 20px 0 0;
	margin: 0;
}
#product-images #large-image {
}
#product-images #large-image img {
	margin: 0 auto;
	position: absolute;
}
#product-images #thumbstrip {
	margin: 10px 0 0 0;
	padding-top: 10px;
	text-align: left;
	border-top: 1px solid #b82fd0;
}
#product-images #thumbstrip img {
	height: 70px;
	margin-bottom: 5px;
	margin-right: 15px;
	display: inline-block;
	text-align: left;
	cursor: pointer;
}

#product-details {
	position: relative;
	max-width: 1000px;
	height: 350px;
	overflow: visible;
}
#product-details h1 {
	margin-bottom: 0;
	padding-bottom: 0;
}
#product-details h2 {
	color: #A888A0;
	font-size: 14px;
	margin-bottom: 1em;
	padding-bottom: 0;
	font-style: italic;
}
#product-details ul { margin-bottom: 8px; }
#product-details li { margin-bottom: 3px; }
#product-details a { text-decoration: underline; }
#product-details .price-block-pusher {
/*	float: right;
	height: 250px; */
}
#product-details .price-block {
/*	float: right;
	text-align: right;
	clear: right; */
	background-color: #f8f0f8;
	padding: 10px;
	display: inline-block; /* force shrink-wrap */
	margin-bottom: 15px;
}
#product-details * .price {
	font-size: 12px;
	font-weight: bold;
	color: #202020;
}
#product-details * .note {
	margin-top: 5px;
	font-size: 9px;
}
#product-details * .buttons {
	margin: 20px 0 0 0;
}
#product-details * .out-of-stock {
}
#product-details * .out-of-stock p {
	color: #FF4444;
}
#product-details * .item-added {
	margin: 5px 3px 0 7px;
}
#product-details .brand-block {
	float: right;
	text-align: right;
}

.product-list {
/*	border-top: 1px solid #ece6ee;
	border-left: 1px solid #ece6ee; */
	padding-left: 0 !important;
	margin-left: 0;
}
#content ul.product-list .item {
	display: inline-block;
	vertical-align: top;
/*	border: 1px solid #ece6ee; */
	border: 1px solid transparent;
	width: 183px; /* 146px; */
	height: 200px;
	text-align: center;
	margin: 0;
	position: relative;
}
.product-list .item .border {
	cursor: pointer;
	border: 1px solid transparent;
	height: 198px;
}
.product-list .item .border:hover { border-color: #c0b8c8; }
.product-list .item * .image {
	height: 130px;
	width: 183px;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
.product-list .item * img {
	margin: 0 auto;
}
.product-list .item .caption {
	padding: 0 5px;
	font-size: 11px;
	height: 68px;
}
.product-list .item .caption a {
	text-decoration: none;
	font: inherit;
	color: inherit;
}
.product-list .item .caption a em {
	font: inherit;
	font-style: italic;
}
.product-list .item .price {
}

#product-parking {
	display: none;
}

.product-strip {
	margin-left: -15px;
	height: 208px;
	overflow: hidden;
	position: relative; /* for ie7, to enforce overflow: hidden */
}

ul.brand-list {
	padding-left: 0 !important;
}
ul.brand-list li {
	margin: -1px 0 0 -1px !important;
}
ul.brand-list .item {
	position: relative;
	display: inline-block;
	vertical-align: top;
	border: 1px solid #ece6ee;
	width: 160px;
	height: 160px;
	text-align: center;
}
ul.brand-list .item .count {
	position: absolute;
	right: 5px;
	top: 5px;
	color: #aaa;
}
ul.brand-list .item .border {
	cursor: pointer;
	border: 1px solid transparent;
	height: 160px;
	width: 160px;
	display: table-cell;
	vertical-align: middle;
	text-align: center;
}
ul.brand-list .item .border:hover { border-color: #c0b8c8; }
.brand-list .item img {
	margin: 0 auto;
}

.quick-add {
	background: url(/interface/cart-icon.png) no-repeat bottom center;
	width: 17px;
	height: 25px;
	float: right;
	margin-top: -25px;
	text-align: center;
	color: black;
	font-size: 12px;
	line-height: 12px;
}
.quick-add>span {
	display: inline-block;
	background-color: white;
	position: relative;
	margin-top: 2px;
}

/* ------------------------------- */

ul#checkout-steps {
	margin: 0;
	padding: 0;
	margin-bottom: 20px;
}
ul#checkout-steps li {
	display: inline-block;
	list-style: none;
	margin: 0;
	padding: 5px;
	width: 145px;
	vertical-align: top;
	text-align: center;
	border-top: 1px solid #b4b0b9;
	border-bottom: 1px solid #b4b0b9;
	border-right: 1px solid #b4b0b9;
}
ul#checkout-steps li:first-child {
	border-left: 1px solid #b4b0b9;
}
ul#checkout-steps li .title {
	text-transform: uppercase;
	font-weight: bold;
}
ul#checkout-steps li.selected {
	background-color: #cba8d7;
	color: black;
	border: 1px solid #666;
	text-shadow: 1px 1px #ddd;
	margin-left: -1px;
}

.next-step-button {
	border: 1px solid #b4b0b9;
	border-radius: 4px;
	background-color: #ece6ee;
	padding: 3px 7px 3px 7px;
	display: inline-block;
	cursor: pointer;
	text-transform: uppercase;
	font-weight: bold;
}
.next-step-button:hover { background-color: #decbe5; }

/* ------------------------------- */

.content-block {
	padding: 15px 15px;
	border: 1px solid #ece6ee;
	background-color: #faf2f6;
	border-radius: 10px;
	margin: 0 0 25px 0;
	font-size: 12px;
}
.content-block h2 {
	font-size: 14px;
}

.panel-cart {
/*	width: 750px; */
	margin-bottom: 12px;
}
.panel-cart-title {
	height: 22px;
	background-color: #614883;
	color: white;
	font-weight: bold;
	line-height: 21px;
	vertical-align: middle;
	text-align: center;
	text-transform: uppercase;
}
.panel-cart-content {
/*	width: 748px; */
	border-left: 1px solid #f0eaf4;
	border-right: 1px solid #f0eaf4;
	border-bottom: 1px solid #f0eaf4;
	background-color: #fbfbfb;
}

table.cart_table { width: 100%; }
table.cart_table {
	font-size: 12px;
	margin: 0 auto;
	padding: 0;
	border-bottom: 1px solid #e8e8f0;
}
table.cart_table th {
	padding: 0 2px 3px 2px;
	border-bottom: 1px solid #614883;
	text-align: left;
}
table.cart_table tfoot td { border-bottom: 1px solid #614883; }
table.cart_table tbody tr { cursor: pointer; }
table.cart_table tbody tr:hover { background-color: #f4f4f4; }
table.cart_table.nohover tbody tr { cursor: auto; }
table.cart_table.nohover tbody tr:hover { background-color: inherit; }
table.cart_table td {
	padding: 6px 2px 3px 2px;
	border-bottom: 1px solid #e8e8f0;
	text-align: left;
	background-color: inherit;
}
table.cart_table th:last-child,
table.cart_table td:last-child {
	padding-right: 10px;
}

.cart_totals {
	text-align: right;
}
.cart_totals table {
	font-size: 12px;
	margin: 0 auto;
	padding: 0;
}
.cart_totals td {
	padding-top: 8px;
	text-align: right;
}
.cart_totals select#shipping_options {
	text-align: right;
}

/* ------------------------------- */

table.address-info {
	margin: 0 0 15px 0;
}

/* ------------------------------- */

.forgot-password {
	text-decoration: underline !important;
	font-size: 80%;
}
.forgot-password:hover { color: #444; }

#why-register {
/*	display: inline-block; */
/*	margin-left: 330px; */
	text-align: left;
/*	width: 350px; */
	vertical-align:	top;
	background-color: #f8f0f8;
	padding: 5px 8px;
}

#login {
	margin-bottom: 15px;
}

#login-feedback {
	margin-top: 5px;
	color: red;
}

#login-form table * td {
	height: 2em;
	vertical-align: baseline;
}

#reminder-feedback {
	margin-top: 5px;
	color: red;
}

#reminder-form table * td {
	height: 2em;
	vertical-align: baseline;
}

/* ------------------------------- */

/* no longer used in new checkout */
form#address-form a {
	text-decoration: underline;
	color: black;
}

table.address-form {
	width: 100%;
}
table.address-form * td {
	height: auto;
	vertical-align: baseline;
	padding-bottom: 4px;
}
table.address-form * td.label {
	min-width: 110px;
}


table.address-form * label,
table.address-form * input[type=text],
table.address-form * input[type=password]
{
	width: 95%;
}
table.address-form * select
{
	width: 95%;
}

#field-errors {
	padding: 10px;
	color: red;
	clear: left;
}
.form-field-error {
	border: 1px solid #fbb;
	border-top: 1px solid #f88;
	background-color: #fdd;
}
select.form-field-error {
/*	border: none;*/
}
#billing-feedback,
#shipping-feedback,
#payment-feedback {
	padding: 10px 0;
	color: red;
}

.address-form#country, .address-form#state, .address-form#country, .address-form#state {
	border: 1px solid #CCC;
}
/* ------------------------------- */

.payment-form-box {
	border: 1px solid #b4b0b9;
	border-radius: 8px;
	background-color: white;
	padding: 10px 15px 5px 15px;
	cursor: pointer;
	line-height: 50px;
	max-width: 500px;
	margin-bottom: 15px;
}
.payment-form-box:hover { background-color: #ece6ee; }
.payment-form-box * p {
	margin-bottom: 5px !important;
}


#coupon-error {
	color: red;
	margin-left: 15px;
}

/* ------------------------------- */

table.opening-hours { }
table.opening-hours td { white-space: nowrap; }
table.opening-hours td:first-child { padding-right: 1em; }

/* ------------------------------- */
/*
#contact-map { width: 48%; height: 510px; position: relative; float: left; }
#contact-map>div { position: absolute; width: 100%; text-align: center; margin-top: 250px; z-index: -1; color: #ccc; }
#contact-map>iframe { width: 100%; height: 100%; }

#contact-info { width: 48%; padding-left: 0 !important; padding-right: 0 !important; float: left; margin-left: 2%; margin-bottom: 15px; }
#contact-info .address-info { float: left; width: 48%; margin-right: 2%; }
#contact-info .opening-hours { float: left; width: 48%; }
#contact-info .opening-hours table { width: 100%; margin-top: 15px; }
#contact-info .opening-hours table td { white-space: nowrap; }
#contact-info .opening-hours table td:first-child { padding-right: 3px; }

#contact-form { width: 48%; padding-left: 0 !important; padding-right: 0 !important; float: left; margin-left: 2%; margin-bottom: 15px; }
#contact-form form {
	padding: 15px;
	background-color: #f0f0ff;
	border: 1px solid #e0e0ff;
}
#contact-form form table { width: 100%; }
#contact-form form td { vertical-align: middle; }
#contact-form form td:last-child { width: 100%; }
#contact-form form input { width: 100%; margin: 5px 0; height: 2em; }
#contact-form form textarea { width: 100%; height: 150px; margin-bottom: 15px; }
*/
/**/

#contact-info { margin-left: 15px; }
#contact-info h2 { margin-top: 0 !important; }
#contact-info .address-info { border-top: 1px solid #666; padding: 1em 5%; }
#contact-info .address-info a { text-decoration: none; display: inline-block; line-height: 25px; padding-left: 30px; }
#contact-info .address-info a:hover { text-decoration: underline; }
#contact-info .opening-hours { border-top: 1px solid #666; border-bottom: 1px solid #666; padding: 1em 5%; }
#contact-info .opening-hours table { width: 100%; }

#contact-form { width: 60% !important; }
#contact-form form {
	padding: 15px;
	background-color: #f0f0ff;
	border: 1px solid #e0e0ff;
}
#contact-form form table { width: 100%; }
#contact-form form td { vertical-align: middle; }
#contact-form form td:last-child { width: 100%; }
#contact-form form input { width: 100%; margin: 5px 0; height: 2em; }
#contact-form form textarea { width: 100%; height: 150px; margin-bottom: 15px; }

/* ------------------------------- */

.faqs_list { }
.faqs_list>h2 { margin-top: 30px; border-top: 1px solid #ddd; padding-top: 20px; }
.faqs_list>ul { margin-top: 20px; }
.faqs_list>ul>li { list-style: none; }
.faqs_list>ul>li>h3 { margin-bottom: 10px; cursor: pointer; }
.faqs_list>ul>li>div { display : none; }

/* ------------------------------- */

.simple-button { background-color: #666; border-color: #444; font-size: 14px; line-height: 26px; }
a.simple-button.small { font-size: 12px; line-height: 19px; }

/* ------------------------------- */

#general-conditions h2 {
	margin-top: 1em;
	margin-bottom: 0.5em;
}

#general-conditions table {
	border: 1px solid #999;
	margin-top: 1em;
	margin-bottom: 1em;
}
#general-conditions th {
	padding: 3px 5px;
	border: 1px solid #999;
}
#general-conditions td {
	padding: 3px 5px;
	border: 1px solid #999;
}

#general-conditions li {
	margin-bottom: 0.5em;
}

#agree_conditions a { text-decoration: underline; }

#notes {
	margin-top: 15px;
}
ul#notes { margin-left: 0; }
#notes * li { margin-bottom: 3px; margin-top: 0; }
#notes * li p { margin-bottom: 0; margin-top: 0; }

/* ------------------------------- */

.info {
	border: 1px solid #F0F000;
	background-color: #FFFFD0;
	padding: 10px 10px 10px 10px;
	margin-bottom: 10px;
	border-radius: 5px;
	margin-bottom: 25px;
}

.warning {
	border: 1px solid #FF8888;
	background-color: #FFDDDD;
	padding: 10px 10px 2px 10px;
	margin-bottom: 10px;
}

/* ------------------------------- */

.text-block {
	border-radius: 10px;
	border: 2px solid #decbe5;
	padding: 10px;
	width: 342px;
	min-height: 160px;
	float: right;
}
.text-block h2 {
	color: #2d1749;
	margin-bottom: 0.5em;
}

#content.generic {
	position: relative;
	background-position: top left;
	background-repeat: no-repeat;
/*	min-height: 400px; */
/*	height: 400px;*/
	background-color: transparent;
	padding: 0;
/*	display: -webkit-flex;
	display: flex;
	align-content: space-between;
	flex-wrap: wrap;
*/
}
#content.generic h1 { font-size: 120%; font-weight: bold; margin: 2em 0 1em 0; color: inherit; text-shadow: 1px 1px white; }
#content.generic h2 { font-size: 110%; font-weight: bold; margin: 2em 0 1em 0; color: inherit; }
#content.generic p { margin: 1em 0; color: inherit; }
#content.generic ul { margin: 1em 0; }
#content.generic img { }

#content.generic .text {
	display: inline-block;
	vertical-align: top;
/*	flex: 1 1;*/
	min-width: 200px;
	max-width: 690px;
	width: 60%;
/*	min-height: 380px;*/
/*	margin-left: 300px;*/
	padding: 18px 2% 10px 2%;
	color: #666;
	background-color: white;
	background-color: rgba(255,255,255,0.8);
}

#content.generic .text h1 { margin-top: 0; }
#content.generic .text a { white-space: nowrap; }
#content.generic .text .columns { -webkit-column-width: 220px; -moz-column-width: 220px; column-width: 220px; }
#content.generic .text dt { margin: 0 0 0.5em 0; font-weight: bold; font-style: italic; }
#content.generic .text dd { margin: 0 0 1em 0; }
#content.generic .text img { width: 200px; height: auto; border-radius: 10px; margin: 10px; }

/* ------------------------------- */

.side-nav {
	display: inline-block;
	vertical-align: top;
	margin: 0 3% 30px 0;
	max-width: 274px;
	max-width: 200px;
	min-width: 200px;
	width: 30%;
/*	flex: 1 1;*/
}
@media all and (max-width: 638px) {
	.side-nav { /*position: relative; */width: 274px; }
	#content.generic .text { width: 90%; }
}

#content .side-nav h1 { color: #666; margin-left: 15px; }
#content .side-nav .menu-button { background: linear-gradient(to bottom, #666 0px, #666 20%, transparent 20%, transparent 40%, #666 40%, #666 60%, transparent 60%, transparent 80%, #666 80%, #666 100%); }
#content .side-nav #section-menu>ul { display: none; }
#content .side-nav .menu-title { color: #666; font-size: 120%; font-weight: bold; margin: 2em 0 1em 15px; text-shadow: 1px 1px white; line-height: 100%; }
#content .side-nav .menu-title>a { text-decoration: none; }
#content .side-nav .menu-title>a:hover:before { content: "«"; margin-left: -1em; position: absolute; }

#content .side-nav ul { list-style: none; margin: 0 0 0 15px; padding: 0; color: #666; width: 100%; }
#content .side-nav ul>li { border-top: 1px solid #666; margin: 0; padding: 0; }
#content .side-nav ul>li:last-child { border-bottom: 1px solid #666; }
#content .side-nav ul>li a { display: block; width: 90%; padding: 0.5em 5%; text-decoration: none; }
#content .side-nav ul>li a:hover { background-color: #f8f8f8; color: black; }

.page-nav { }
#content .page-nav ul { list-style: none; margin: 0 0 15px 0; padding: 0; color: #666; border-top: 0px solid #666; }
#content .page-nav ul>li { border-bottom: 1px solid #666; margin: 0; }
#content .page-nav ul>li a { display: block; line-height: 35px; padding: 0 1em; text-decoration: none; white-space: nowrap; }
#content .page-nav ul>li a:hover { background-color: #f8f8f8; color: black; }

/* ------------------------------- */

.wide-image-container { position: relative; overflow: hidden; }
.wide-image-container img { width: 100%; }
.wide-image-container .caption {
	position: absolute;
	top: 0;
	bottom: 0;
	right: 25px;
	width: 30%;
	min-width: 220px;
	z-index: 3;
	background-color: rgb(255,255,255); background: transparent\9;
	background-color: rgba(255,255,255,0.8);
	font: 11px/1.7em Georgia, "Times New Roman", Times, serif;
	letter-spacing: 0.03em;
}
.wide-image-container .caption .entry { position: absolute; bottom: 20px; padding: 15px; }

#content .wide-image-container .caption h1 { color: #444; font-size: 15px; text-shadow: 1px 1px white; }
#content .wide-image-container .caption p { color: #444; font-size: 13px; /* text-shadow: 1px 1px black; */ }
#content .wide-image-container .caption a { text-decoration: none; }

#content .wide-image-container .entry.menu { padding: 0; top: 0; bottom: 0; width: 100%; display: flex; flex-direction: column; justify-content: space-around; }
#content .wide-image-container .entry.menu { font-family: Verdana, Arial, Helvetica, sans-serif; text-shadow: 1px 1px #eee; }
#content .wide-image-container .entry.menu h3 { font-size: 12px; margin: 1em 0 1em 5%; }
#content .wide-image-container .entry.menu ul { position: relative; height: 100%; width: 100%; bottom: 0; list-style-type: none; margin: 0; padding: 0 0 1em 0; display: flex; flex-direction: column; }
#content .wide-image-container .entry.menu ul>li { margin: 0; padding: 0; color: black; font-size: 12px; white-space: nowrap; padding-left: 10%; display: flex; align-items: stretch; flex: 1; max-height: 30px; }
#content .wide-image-container .entry.menu ul>li a { flex-basis: 100%; display: flex; align-items: center; }
#content .wide-image-container .entry.menu ul>li a:before { content: "•"; color: #666; position: absolute; margin-left: -5%; }
#content .wide-image-container .entry.menu ul>li.selected { background-color: white; background-color: rgba(255,255,255,0.5); }
#content .wide-image-container .entry.menu ul>li.selected a:before { content: "⏵"; margin-left: -7%; margin-top: -0.5%; font-size: 150%; }
#content .wide-image-container .entry.menu ul>li:hover a:before { content: "⏵"; margin-left: -20px; padding: 6px 0; margin-top: -7px; font-size: 150%; }

#slideshow-thumblist {
	position: absolute;
	bottom: -25px;
	right: 10px;
	text-align: right;
	z-index: 3;
	height: 25px;
	line-height: 25px;
}
#slideshow-thumblist .thumb {
	width: 23px;
	height: 22px;
	overflow: hidden;
	margin: 1px 4px 0 0;
	display: inline-block;
	cursor: pointer;
}
#slideshow-resume-button {
	margin-right: 10px;
	color: white;
	visibility: hidden;
	vertical-align: top;
	cursor: pointer;
}
#slideshow-resume-button:hover { text-shadow: 1px 1px black; }

#slideshow-nav-buttons { display: none; }

.slideshow-nav-button { position: absolute; top: 100px; cursor: pointer; opacity: 0.7; padding: 0; z-index: 3; }
.slideshow-nav-button.prev { left: 10px; width: 50px; height: 50px; border-radius: 25px; background-color: #999; background-color: rgba(0,0,0,0.5); }
.slideshow-nav-button.next { right: 10px; width: 50px; height: 50px; border-radius: 25px; background-color: #999; background-color: rgba(0,0,0,0.5); }
.slideshow-nav-button.prev:before { content: ""; width: 0; height: 0; border: 12px solid transparent; border-right-color: white; position: absolute; margin: 13px 0 0 4px; }
.slideshow-nav-button.next:after { content: ""; width: 0; height: 0; border: 12px solid transparent; border-left-color: white; position: absolute; margin: 13px 0 0 20px; }
.slideshow-nav-button:hover { opacity: 1; }

/* ------------------------------- */

table.section-list { width: 100%; }
table.section-list td { text-align: center; width: 50%; }
table.section-list img { margin: 0 auto; cursor: pointer; border: 1px solid transparent; box-shadow: 3px 3px 10px 0 #333; }
table.section-list img:hover { border-color: #666; }
table.section-list a { text-decoration: none; }
/* ------------------------------- */

ul#select-paper-type { list-style: none; margin: -10px 0 15px 15px; padding: 0 !important; }
ul#select-paper-type>li input[type=radio] { position: relative; top: 1px; }

ul.edible-paper-sheets { display: none; list-style: none; margin: 0 0 0 20px; padding: 0 !important; }
ul.edible-paper-sheets li { margin: 0 45px 0 0 !important; padding: 0; display: inline-block; }
ul.edible-paper-sheets img { cursor: pointer; border: 2px solid transparent; }
ul.edible-paper-sheets img.selected { border-color: #4e0d30; }

#edible-print-preview {
	position: relative;
	overflow: hidden;
	text-align: center;
	width: 283px;
	height: 402px;
	
	margin: 0 auto;
}

#template-background {
	position: absolute;
	z-index: 0;
}
#user-image {
	position: absolute;
	z-index: 1;
}
#template-mask {
	position: absolute;
	z-index: 2;
}
#message-image-overlay {
	width: 50%;
	position: absolute;
	margin-top: 20px;
	margin-left: 20px;
	padding: 20px;
	background-color: #F9F;
	border: 1px solid #F0F;
	z-index: 4;
}

.custom-text {
	width: 283px;
	position: absolute;
	z-index: 3;
	font-family: Arial, Helvetica, sans-serif;
	font-size: 18px;
	color: white;
	cursor: pointer;
	cursor: -webkit-grab;
	cursor: -moz-grab
}
#custom-text-top	{ top: 110px; }
#custom-text-middle	{ top: 195px; font-size: 28px; }
#custom-text-bottom	{ top: 280px; }

.edible-print-options {
	text-align: left;
	position: relative;
	line-height: 2em;
}
.edible-print-options input,
.edible-print-options select {
	position: absolute;
	left: 120px;
	margin-bottom: 5px;
}
.edible-print-options br {
	clear: right;
}

/* ------------------------------- */

.gallery-section-block {
	width: 200px;
	height: 200px;
	display: inline-block;
	position: relative;
	margin-bottom: 15px;
	vertical-align: top;
	margin-right: 23px;
	border-radius: 20px;
	overflow: hidden;
}
.gallery-section-block img { width: 200px; height: 200px; margin-bottom: 25px; cursor: pointer; }
.gallery-section-block a { text-decoration: none; }
.gallery-section-block .title {
	position: absolute;
	top: 130px;
	width: 180px;
	line-height: 2em;
	background-color: rgba(0,0,0,0.3);
	padding-left: 20px;
	color: #f8f8f8;
	font-family: Georgia, serif;
	font-size: 18px;
	font-weight: bold;
	text-shadow: 1px 1px #444;
	cursor: pointer;
}
.gallery-section-block .title:before {
	content: "";
	width: 0;
	height: 0;
	border: 0.5em solid transparent;
	border-left-color: white;
/*	position: absolute;
	top: 0.5em;
	right: 8px;*/
	margin: 0.5em 8px 0 8px;
	float: right;
}
.gallery-section-block .text {
}

#content ul.category-gallery li
{
	position: relative;
	display: inline-block;
	list-style-type: none;
	margin-left: 10px;
	overflow: hidden;
	width: 160px;
	height: 160px;
	text-align: center;
	border-radius: 10px;
}
#content ul.category-gallery li img { min-width: 160px; min-height: 160px; margin: auto; text-align: center; }

#content.page-menus { padding-left: 0; padding-right: 0; }
#content.page-menus>ul { list-style-type: none; margin: 2px 0 5px 0; padding: 0; font-size: 9px; }
#content.page-menus>ul>li { margin: 0; padding: 5px 0; display: inline-block; }
#content.page-menus>ul>li:before { content: "•"; color: #666; margin: 0 6px; }
#content.page-menus>ul>li:first-child:before { content: ""; margin: 0; }
#content.page-menus>ul>li.selected { color: #666; }

#menuslinks-container { display: none; }
#menuslinks-container .menu-button { display: inline-block; }

.menus-pdf-download-button {
	width: 150px;
	min-height: 25px;
	margin: 0 0 15px 15px;
	background-color: #fff;
	background-image: linear-gradient(180deg, rgba(255,255,255,0.3) 0%, rgba(255,255,255,0.05) 45%, rgba(0,0,0,0.05) 55%, rgba(0,0,0,0.10) 100%);
	border-radius: 3px;
	cursor: pointer;
	float: right;
	border: 1px solid #ccc;
	vertical-align: top;
	line-height: 1.1em;
	font-size: 10px;
	padding: 5px;
}
.menus-pdf-download-button:hover { background-color: #f4f4f4;}
.menus-pdf-download-button a { text-decoration: none; }
.menus-pdf-download-button img { margin-right: 8px; float: left; }

.menus-layout { margin-top: 15px; }
.menus-layout h2 { margin-top: 2em; }
.menus-layout h3 { margin: 1em 0 0.3em; }
.menus-layout h3:first-child { margin-top: 0; }
.menus-layout .nobreak { -webkit-column-break-inside: avoid; page-break-inside: avoid; break-inside: avoid; }
.menus-layout tr.hdr>td { padding-top: 1.5em; padding-bottom: 0.5em; }
.menus-layout tr:first-child.hdr>td { padding-top: 0.5em; }

/* ------------------------------- */

.cakes-button {
}

.cakes-section-block-container {
    display: flex;
    justify-content: space-between;
}

.cakes-section-block {
	max-width: 200px;
	display: inline-block;
	position: relative;
	margin-bottom: 15px;
	vertical-align: top;
}
.cakes-section-block img { width: 100%; height: auto; margin-bottom: 25px; border-radius: 20px; cursor: pointer; }
.cakes-section-block a { text-decoration: none; }
.cakes-section-block .title {
	position: absolute;
	top: 40%;
	width: 90%;
	line-height: 2em;
	background-color: rgba(0,0,0,0.3);
	padding-left: 10%;
	color: #f8f8f8;
	font-family: Georgia, serif;
	font-size: 11px;
	font-weight: bold;
	text-shadow: 1px 1px #444;
	cursor: pointer;
}
.cakes-section-block .title:after {
	content: "";
	width: 0;
	height: 0;
	border: 0.5em solid transparent;
	border-left-color: white;
	position: absolute;
	top: 0.5em;
	right: 8px;
}
.cakes-section-block .text {
}

/* ------------------------------- */

body.popup { width: 100%; }
body.popup #content { margin: 10px 10px 0 10px; padding-top: 20px; box-shadow: 0 8px 10px 10px #ccc; }
body.popup #footer { margin-right: 15px; }

/* ------------------------------- */

.wraptocenter {
	display: table-cell;
	text-align: center;
	vertical-align: middle;
}
.wraptocenter * {
	vertical-align: middle;
}
/*\*//*/
.wraptocenter {
	display: block;
}
.wraptocenter span {
	display: inline-block;
	height: 100%;
	width: 1px;
}
/**/
.wraptocenter img {
/*	margin: 0 auto; */
	position: static !important;
	text-align: center;
}

/* ------------------------------- */

.sw_editable * { cursor: pointer; }
.sw_editable:hover { background-color: #f0f0ff; background-color: rgba(0,0,0,0.05); }
.sw_editable:hover * { }

/* ------------------------------- */

.uppercase { text-transform: uppercase; }
.transparent { background-color: transparent; }
.align-middle td { /*vertical-align: middle; only in ie7.css */ }

/* ------------------------------- */

#debug-path { position: fixed; right: 14px; bottom: 2px; }
#debug-path:hover { background-color: #CCF; }

#query-stats { position: fixed; right: 14px; bottom: 17px; }
#query-stats:hover { background-color: #CCF; }

/* ------------------------------- */

/* medium */
@media all and (max-width: 638px)
{
	#media:before { content: "@media: medium"; }
	
	#face { width: auto; box-shadow: none; }
	
	#header #slogan {
		top: 10px;
		font-size: 24px;
		line-height: 1.2em;
		letter-spacing: 1px;
		margin-left: 150px;
	}
	
	/* ------------------------------- */
	
	#content.generic .text h2 { position: relative; position: -webkit-sticky; position: -moz-sticky; position: -o-sticky; position: -ms-sticky; position: sticky; z-index: 1; top: 0; }
	#content.generic .text h2:before { content: ""; height: 1em; width: 100%; position: absolute; z-index: -1; display: block; margin-top: -2em; padding: 2em 0 1em 0; background-image: linear-gradient(180deg, white 0%, white 75%, rgba(255,255,255,0) 100%); }
	
	/* ------------------------------- */
	
	#menus-header { position: relative; }
	#menus-header>h1 { display: inline-block; vertical-align: top; }
	#menuslinks-container { display: inline-block; }
 	
	ul#menus-links { display: none; position: absolute; top: 32px; background-color: white; background-color: rgba(245,245,245,0.95); color: #000; width: auto; padding: 0; margin: 0; box-shadow: -2px 2px 2px 0 #ddd; box-shadow: -2px 2px 2px 0 rgba(0,0,0,0.2); left: 0; }
	ul#menus-links>li { display: block; border-top: 1px solid white; border-bottom: 1px solid white; border-left: 2px solid transparent; text-align: left; padding: 0; margin: 0; min-width: 150px; }
	ul#menus-links>li a { padding-right: 15px; padding-left: 15px; display: block; line-height: 36px; }
	ul#menus-links>li:hover { border-top: 1px solid white; border-bottom: 1px solid white; border-left: 2px solid #666; }
	ul#menus-links>li.selected { border-top: 1px solid white; border-bottom: 1px solid white; border-left: 2px solid #666; }
}

/* narrow */
@media all and (max-width: 500px)
{
	#media:before { content: "@media: narrow"; }
	
	#toplinks-container { margin-left: 0; }
	#toplinks-container .menu-button { display: block; top: 127px; left: 180px; right: auto; }
 	
	ul#top-links { display: none; position: absolute; top: 32px; background-color: white; background-color: rgba(245,245,245,0.95); color: #000; width: auto; padding: 0; box-shadow: -2px 2px 2px 0 #ddd; box-shadow: -2px 2px 2px 0 rgba(0,0,0,0.2); right: 5px; }
	ul#top-links>li { display: block; border-top: 1px solid white; border-bottom: 1px solid white; border-right: 2px solid transparent; text-align: right; padding: 0; margin: 0; min-width: 150px; }
	ul#top-links>li a { padding-right: 15px; padding-left: 15px; display: block; line-height: 36px; }
	ul#top-links>li:hover { border-top: 1px solid white; border-bottom: 1px solid white; border-right: 2px solid #666; }
	ul#top-links>li.selected { border-top: 1px solid white; border-bottom: 1px solid white; border-right: 2px solid #666; }
}

/* ------------------------------- */

