/* Search texts */

/* ACTION FEEDBACK MESSAGES */
/* COOKIE MESSAGE */
/* ADMIN MESSAGES */
/* GERNERAL LAYOUT */
/* CATEGORY LISTS */
/* PRODUCT LISTS */
/* PRODUCT PAGE IMAGES */
/* MODAL ZOOM IMAGE */
/* PRODUCT FORM - ITEM PAGE */
/* GALLERY AND CUSTOMER GALLERY */
/* FAQ PAGE */
/* PERSONALISATION PAGE */
/* CART PAGE */
/* BUTTONS */
/* CART PRODUCT LINK */
/* CHECKOUT PAGES */
/* MANUAL PAYMENT CALLBACK */
/* IMAGE SLIDER */

/* RESPONSIVE STYLE CHANGES */

/* ============================ */

/* GENERAL STYLES */
* {
	font-family: 'OpenSans', 'sans-serif', 'Verdana', 'Helvetica', 'Arial';
	line-height:1.3em;
	padding:0;
	margin:0;
}
i,strong,b,em {
	color:inherit;
}
input[type='text'] {
	padding: 2px;
   -webkit-appearance: none;
}
input[type='submit'], button {
   -webkit-appearance: none;
}
input[type='text']:focus, textarea:focus {
	outline-color: transparent;
	outline-style: none;
	-webkit-appearance: none;
}
textarea {
	resize: none;
}
select {
	border:1px solid #bfbfbf;
	color: #333333;
	background-color: #ffffff;
	font-size:1em;
}
body {
	font-size:14px;
	position:absolute;
	top:0;
	left:0;
	bottom:0;
	right:0;
	background-color:#FFFFFF;
	color:#333333;
}
a {
	color:#333333;
	cursor:pointer;
}
noscript {
	font-weight:bold;
	font-size:20px;
	text-align:center;
	padding:1em;
	position:fixed;
	top:10px;
	left:10px;
	right:10px;
	z-index:1000;
	background:#ffe0e0;
	color:#900000;
	box-shadow:0 3px 5px #900000;
}
ol{
	list-style-position:inside;
}
ol li {
	margin: 0.5em 0;
}
ul {
	list-style-type:disc;
	list-style-position:outside;
}
ul li {
	margin:0.5em 0 0.5em 1em;
}
li a:hover {
	color:#6699ff;
}
img {
	border:0;
}
h1 {
	font-size:1.6em;
	color:#663399;
	font-weight:normal;
	padding: 0.5em 0;
}
h1 a {
	color:inherit;
}
h1 span {
	display:block;
	font-size:0.6em;
}
h2 {
	font-size:1.3em;
	color:#663399;
	font-weight:normal;
	padding: 0.5em 0;
}
h3 {
	font-size:1.15em;
	font-weight:bold;
	padding: 0.5em 0;
}
h4, h5, h6 {
	font-size:1em;
	font-weight:bold;
	padding: 0.5em 0;
}
p {
	font-size:1em;
	padding: 0.5em 0;
}
forms {
	max-width:800px;
	display:block;
	margin:10px auto;
}
hr {
	border:0;
	border-bottom:1px solid #bfbfbf;
}
hr.clear {
	margin:1em 0;
}
*.center {
	text-align:center !important;
}
*.middle {
	vertical-align:middle !important;
}
*.left {
	text-align:left !important;
}
*.right {
	text-align:right !important;
}
*.clear {
	clear:both;
}
*.unavailable {
	color:#5fb0ff;
	background-color:#000000;
	padding:0.5em 1em;
}
*.hidden {
	display:none !important;
}
img.center {
	display:block;
	margin-left:auto;
	margin-right:auto;
}
.infobutton {
	display:inline-block;
	vertical-align:middle;
	background:url('graphics/info.png') center center no-repeat;
	width:40px;
	height:40px;
	cursor:pointer;
	margin-left:5px;
}
/* ACTION FEEDBACK MESSAGES */
div#error,div#warning {
	padding:0 0.5em;
	max-width:600px;
	margin:5px auto;
	display:block;
	position:relative;
	color:#5fb0ff;
	background:#000;
	font-size:1.7em;
	text-align:center;
}
div#success {
	padding:0 0.5em;
	max-width:600px;
	margin:5px auto;
	display:block;
	position:relative;
	color:#ffffff;
	background:#5fb0ff;
	font-size:1.7em;
	text-align:center;
}
/* COOKIE MESSAGE */
#cookieaccept {
	display:block;
	margin:0 calc((100% - 1020px)/2);
	background-color:#fff;
	color:#999999;
	border:1px solid #999999;
	position:fixed;
	padding:0 1em;
	bottom:-400px;
	right:0;
	left:0;
	z-index:200;
	font-size: 1em;
}
#cookieaccept p {
	padding:0.5em 0;
}
#cookieaccept p:first-child {
	color:#5fb0ff;
}
#cookieaccept a:hover {
	text-decoration:underline;
}
#cookieaccept #acceptcookies {
	color:#5fb0ff;
	border:1px solid #5fb0ff;
	display:inline-block;
	padding:5px 10px;
	background-color:#fff;
	cursor:pointer;
}
/* ADMIN MESSAGES */
div#sitedisabled {
	display:block;
	padding:10px 20px;
	text-align:center;
	color:#900000;
	font-weight:bold;
	font-size:16px;
	background-color:#FFD8D8;
}
div#pagedisabled {
	padding:10px 20px;
	text-align:center;
	color:#900080;
	font-weight:bold;
	font-size:16px;
	background-color:#FFD8FD;
}
/* GERNERAL LAYOUT */
div#sitenotice {
	display:none;
}
div#head {
	margin: 0 auto 10px auto;
}
div#content, div#foot {
	margin: 0 auto;
}
div#head div {
	vertical-align:top;
}
div#pagetopleft {
	width: 420px;
	display:inline-block;
}
div#pagetopleft * {
	vertical-align:top;
}
span#mobilemenuicon {
	display:none;
}
div#pagetopleft a {
	display:inline-block;
}
div#pagetopleft a.mobile-logo {
	display:none;
}
div#pagetopcenter {
	text-align:center;
	width: 300px;
	display:inline-block;
	padding:20px 0;
}
div#pagetopcenter input {
	width: 180px;
	border: 1px solid #663399;
	padding: 4px 30px 4px 4px;
	background: #ffffff url('graphics/search-icon.png') center right no-repeat;
}
div#pagetopright {
	width: 280px;
	display:inline-block;
	text-align:right;
	vertical-align:top;
}
div#nav {
	background-color:#e8e6e6;
	font-size:1em;
}
div#navicon {
	display:none;
}
div#nav ul {
	list-style-type:none;
	margin:0;
	padding:5px 0;
}
div#nav ul ul {
	display:none;
}
div#nav ul li:hover ul {
	display:block;
	position:absolute;
	z-index:9999;
	background-color:#ffffff;
	box-shadow:0 2px 2px #999999;
	border:1px solid #f7f7f7;
}
div#nav ul li:hover ul ul{
	display:none;
}
div#nav ul ul li:hover ul{
	display:block;
	position:absolute;
	top: 0;
	left: 99%;
	z-index:9999;
	background-color:#ffffff;
	box-shadow:0 2px 2px #999999;
	border:1px solid #f7f7f7;
}
div#nav ul li {
	display:inline-block;
	position:relative;
	background-color:inherit;
	margin:0;
}
div#nav ul ul li {
	display:block;
}
div#nav ul li a {
	display:inline-block;
	padding:4px 20px 4px 0;
	white-space:nowrap;
	text-transform: uppercase;
	text-decoration:none;
}
div#nav ul ul li a {
	display:block;
	padding:5px 10px;
	text-align:left;
}
div#nav ul li a:hover {
	color:#ff6699;
}
div#contact {
	text-align:right;
	padding:5px 0 20px 0;
}
div#contact span {
	display:inline-block;
	font-size:1.2em;
	color:#663399;
	padding-left:30px;
	background: url('graphics/phone-icon.png') left center no-repeat;
	background-size:contain;
}
div#search {
	display:inline-block;
	text-align:center;
	background: url('graphics/search-icon.png') top center no-repeat;
	margin-right:2em;
	position:relative;
}
div#search img {
	display:block;
	padding:0;
	margin:auto;
}
div#search form {
	display:none;
	margin:0;
	max-width:none;
	position:absolute;
	right:0;
	top:0;
	z-index:10;
}
div#search form * {
	vertical-align:middle;
}
div#search form input[type='text'] {
	border:1px solid #663399;
	width:180px;
	height:36px;
	padding-right:35px;
	box-shadow:0 0 4px #663399;
	background: #ffffff url('graphics/search-icon.png') right center no-repeat;
}
div#cartsummary {
	display:inline-block;
	color:#666666;
}
div#cartsummary a {
	text-align:center;
	display:block;
	min-width:30px;
}
div#search span.label, div#cartsummary span.label {
	color:#666666;
	font-size:0.7em;
}
div#cartsummary span.itemcount {
	height:30px;
	display:block;
	line-height:2.5;
}
div#cartsummary a.basketempty {
	background: url('graphics/basket-empty.png') top center no-repeat;
}
div#cartsummary a.basket {
	background: url('graphics/basket.png') top center no-repeat;
}
div#breadcrumb {
	display:none;
}
div#breadcrumb ul {
	display:block;
	list-style-type:none;
    list-style-position: inside;
	padding:0;
	margin:0;
	color: #999999;
}
div#breadcrumb ul li{
	display:inline-block;
	list-style-type:none;
	margin:0;
	padding:0 0.5em 0 0;
	font-size:0.8em;
	color: #666666;
}
div#breadcrumb ul li a {
	color:#666666;
	text-decoration:none;
}
div#breadcrumb ul li.child::before{
	content: "\003E";
	padding-right:0.5em;
}
div#breadcrumb ul li:last-child a {
	color:#ff6699;
}
div#content {
	min-height:60%;
	position:relative;
	max-width:1400px;
	margin:0 auto;
	padding: 5px;
}
p a:hover {
	color:#6699ff;
}
div#content p img {
	max-width:98%;
	height:auto !important;
}
h1 a {
	text-decoration:none;
}
div#foot {
	clear:both;
	background-color:#e8e6e6;
	margin-top:2em;
	border-top:1px solid #b0b0b0;
}
div#head, div#nav,div#foot{
	padding-left:5px;
	padding-right:5px;
}
div#footlinks {
	float:left;
}
div#footlinks ul {
	display:inline-block;
	list-style-type:none;
	width:200px;
	vertical-align:top;
	font-size: 1em;
}
div#footlinks ul li {
	display:block;
	list-style-type:none;
	margin:0.3em 0;
}
div#footlinks ul li:first-child {
	font-weight:bold;
	margin-bottom:0.6em;
}
div#footlinks ul li a {
	color:#303030;
	text-decoration:none;
}
div#foot div#companyaddress {
	padding-bottom:1em;
}
div#foot div#companyaddress p {
	text-align:center;
	color:#666666;
	margin:0;
	padding:0;
	line-height:1.2em;
	font-size:0.8em;
}
div#social {
	float:right;
	padding:10px;
	text-align:right;
}
div#social img {
	padding:0 10px 0 0;
}
div#social ul {
	list-style-type:none;
	font-size:1.2em;
	text-align:right;
	margin: 0 0 1em 0;
}
div#social a {
	text-decoration:none;
}
div#social a:hover {
	color:inherit;
}
div#nlsignup {
	color: #fff;
	background-color:#5fb0ff;
	padding:0.5em;
	text-align:center;
	clear:both;
	font-size:1.6em;
}
div#nlsignup a {
	color: #fff;
	text-decoration:none;
}
div#paymentprovider {
	padding-top: 10px;
	clear:both;
	text-align:center;
}
div#paymentprovider table {
	margin:0 auto;
}
div#paymentprovider img {
	width:auto;
	height:auto;
	max-width:100%;
}
fieldset {
	padding: 1em;
	margin:5px;
	border:0;
	border:1px solid #e0e0e0;
}
fieldset legend {
	color:#7849A6;
	font-weight:normal;
	padding:0 5px;
	font-size:1.3em;
}
fieldset p {
	margin:0.8em 0;
}
/* CATEGORY LISTS */
ul.categories {
	display:block;
	margin:1em 0;
	list-style-type:none;
}
ul.categories li {
	display:inline-block;
	text-align:center;
	cursor:pointer;
	vertical-align:top;
	border:1px solid #cccccc;
	max-width:95%;
}
ul.categories li img {
	display:block;
	padding:0;
}
ul.categories li a {
	position:relative;
	display:block;
	width:490px;
	max-width:100%;
	height:80px;
	line-height:80px;
}
ul.categories li span.name {
	display:inline-block;
	text-align:center;
	/* min-height:3em; */
	font-size:1.14em;
	vertical-align:middle;
}

/* PRODUCT LISTS */
ul.products {
	display:block;
	margin:1em 0;
	list-style-type:none;
}
ul.products li {
	display:inline-block;
	text-align:center;
	cursor:pointer;
	vertical-align:top;
	border:1px solid #cccccc;
}
ul.products li img {
	display:block;
	padding:0;
}
ul.products li a {
	position:relative;
	display:block;
	width:320px;
	height:370px;
}
ul.products li span.name {
	display:block;
	text-align:center;
	min-height:3em;
	font-size:1.14em;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
}
/* PRODUCT PAGE IMAGES */
div#productimages {
	display:inline-block;
	vertical-align:top;
	width: 362px;
	margin-top:1.3em;
}
div#productimages div.largesizedimage {
	display:inline-block;
	text-align:center;
	vertical-align:top;
	position:relative;
	width:360px;
	height:360px;
	line-height:360px;
	padding:0;
	margin:0;
	border:0;
	border:1px solid #cccccc;
}
div#productimages div.thumbnails {
	display:block;
	margin:10px 0 0 0;
	height:52px;
	width:320px;
	vertical-align:top;
	overflow:hidden;
	position:relative;
	text-align:left;
	white-space:nowrap;
}
div#productimages div.thumbnails img {
	display:inline-block;
	border:0;
	height:auto;
	width:auto;
	padding:0px;
	margin:0px 8px 0 0;
	cursor:pointer;
	border:1px solid transparent;
}
div#productimages div.thumbnails img.selected {
	border:1px solid #cccccc;
}
div.largesizedimage img {
	width:auto;
	height:auto;
	max-width:320px;
	max-height:320px;
	padding:0;
	vertical-align:middle;
}
/* MODAL ZOOM IMAGE */
div#modalzoom {
	display:none;
}
#modalzoomclose {
	position:absolute;
	z-index:100;
	cursor:pointer;
}
div#zoomimage {
	position:absolute;
	display:block;
	display:flex;
	align-items:center;
	top:0;
	left:0;
	right:0;
	bottom:0;
	padding:20px;
}
div#zoomimage div {
	margin:auto;
	position:relative;
	display:inline-block;
}
div#zoomimage img {
	display:block;
	max-width:100%;
	max-height:100%;
	box-shadow:0 0 8px #000000;
	padding:0;
	margin:auto;
}
div#zoomimage div span {
	position: absolute;
	bottom: 0;
	left: 0;
	color: #fff;
	right: 0;
	bottom: 0;
	background-color:rgba(0,0,0,0.5);
	padding: 0.25em;
	word-wrap: break-word;
}
div#modalzoom.show {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	padding:0;
	display: block;
    z-index: 250;
	background-color:rgba(0, 0, 0, 0.7);
}
div#modalloading {
	display:none;
}
div#modalloading.show {
	position:fixed;
	top:0;
	left:0;
	right:0;
	bottom:0;
	padding:0;
	display: block;
    z-index: 250;
	background:rgba(255, 255, 255, 0.7) url('graphics/in-progress.gif') center center no-repeat;
}
/* PRODUCT FORM - ITEM PAGE */
form#productform {
	display:inline-block;
	width:530px;
	padding:0;
	margin:0;
	vertical-align:top;
	position:relative;
	max-width: 610px;
	margin-left:45px;
}
p.shortdescription {
	border:1px solid #cccccc;
	padding:0.5em;
}
form#productform #item {
	display:block;
	min-height:260px;
}
form#productform #item label {
	display:inline-block;
	min-width:180px;
	font-size:1.2rem;
}
form#productform div.productform h1 {
	padding-top:0;
}
form#productform div.productform img {
	padding:0;
}
form#productform div.itemprice {
	font-size:1.6em;
	padding:0.5em 0;
}
form#productform div.itemprice *{
	vertical-align:middle;
}
form#productform div.itemprice img {
	float:right;
}
div#productoptions {
	display:inline-block;
	min-width:250px;
}
div.feefo-review-badge-wrapper-product {
	display:inline-block;
	vertical-align:middle;
}
div#producttablinks {
	width:362px;
	display:inline-block;
	padding: 0;
	text-align:center;
}
div#producttablinks a {
	text-decoration:none;
}
div#productoptions {
	font-size:1.3em;
}
div#productoptions div {
	padding: 0.5em 0;
}
div#productoptions select {
   -webkit-appearance: none;
   -moz-appearance: none;
   appearance: none;
   border:1px solid #cccccc;
   background:#ffffff url('graphics/select-bg.png') right 0.5em center no-repeat;
   font-size:0.9rem;
   padding:0.6em 2em 0.6em 0.6em;
   display:inline-block;
   min-width:329px;
}
div#productdescription {
	display:inline-block;
	vertical-align:top;
	max-width: 608px;
	margin-left:45px;
}
div#producttabs {
	display:block;
	vertical-align:top;
	position:relative;
	clear:both;
	height:auto;
	margin: 0 auto;
}
div#producttabs div.tab div.tabcontent {
	display:none;
}
div#producttabs div.tab.selected div.tabcontent {
	display:block;
	overflow:auto;
	padding:0.5em 0;
	position:relative;
}
div#producttabs div.tab {
	display:block;
}
div#producttabs div.tab div.label {
	border-top:1px solid #999999;
	text-transform:uppercase;
	display:block;
	font-size:1.5em;
	padding:0.5em 40px 0.5em 0;
	background: #ffffff url('graphics/tab-open.png') right 0.5em center no-repeat;
	cursor:pointer;
}
div#producttabs div.tab:first-child div.label {
	border-top:1px solid #999999;
}
div#producttabs div.tab.selected div.label {
	background-image: url('graphics/tab-close.png');
}
div.feefowidget-global-container,
div.feefowidget-global-container-body-content-list {
	min-height:0 !important;
	padding:0 !important;
}
div.productreview {
	display:block;
	margin:2px;
	padding:5px;
	border-bottom:1px solid #e8e0f4;
}
div.productreview img {
	padding:0 8px 8px 0;
	float:left;
}
div.productreview p.customer {
	font-weight:bold;
	font-style:italic;
	text-align:right;
}
#alsolike div.products {
	overflow:hidden;
	white-space:nowrap;
}
#alsolike {
	position:relative;
}
#alsolike div.products ul,
#alsolike div.products ul li {
	display:inline-block;
	position:relative;
}
#alsolike div.products ul li {
	margin:10px;
}
#alsolike div.products ul li span {
	white-space:normal;
}
#alsolike div.label {
	text-transform: uppercase;
	display: block;
	font-size: 1.5em;
}
#alsolike .next {
	position:absolute;
	top:45%;
	right:0;
	background: url('graphics/next.png') center center no-repeat;
	background-size:cover;
	display:block;
	width:40px;
	height:40px;
	cursor:pointer;
}
#alsolike .prev {
	position:absolute;
	top:45%;
	left:0;
	background: url('graphics/prev.png') center center no-repeat;
	background-size:cover;
	display:block;
	width:40px;
	height:40px;
	cursor:pointer;
}
/* GALLERY AND CUSTOMER GALLERY */
div#gallery {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	padding-bottom:10px;
}
div.galleryimage {
	display:inline-block;
	margin:2px;
	padding:5px;
	width:200px;
	border:1px solid #e8e0f4;
	vertical-align:top;
	min-height:220px;
}
div.galleryimage img {
	padding:0 0 8px 0;
	display:block;
	margin:0 auto;
}
div.galleryimage p {
	text-align:center;
}
/* FAQ PAGE */
div.faq {
	padding:0;
	margin-bottom:5px;
	border:1px solid #bfbfbf;
	background-color: #f8f0ff;
}
div.faq p.question {
	font-weight:bold;
	border-bottom:1px solid #bfbfbf;
	padding:0.5em 1em;
}
div.faq div.answer {
	background-color: #fcf8ff;
	padding:0.5em 1em;
}
/* PERSONALISATION PAGE */
#personalise div {
	display:block;
	padding:3px 0;
	clear:both;
	position:relative;
}
#personalisation label {
	display:block;
	font-weight:normal;
	margin-bottom: 0.3em;
}
#personalisation label.deleteupload {
	display:inline-block;
	margin:0;
	padding:0.5em 0;
	position:absolute;
	top:0.5em;
	right:0.5em;
	cursor:pointer;
	text-decoration:underline;
	color:#663399;
}
#personalisation label img {
	cursor:pointer;
}
#personalisation label.mandatory, #personalisation select.mandatory {
	color:#5fb0ff;
}
#personalisation div {
	margin-top:1em;
}
#personalisation div.uploads {
	border-top: 1px solid #bfbfbf;
	border-right: 1px solid #bfbfbf;
	border-left: 1px solid #bfbfbf;
	padding:0.5em;
}
#personalisation div.uploads.last {
	border-left:0;
	border-right:0;
	border-top: 1px solid #bfbfbf;
	padding:0;
	padding-top:1em;
	margin-top:0;
}
#personalisation div.uploadimg {
	display:block;
}
#personalisation div.uploadimg img {
	border:1px solid #bfbfbf;
}
#personalisation div.hidden {
	display:none;
}
#personalisation div#fontpreview {
	display:none;
}
#personalisation p.bdrt {
	border-top:1px solid #bfbfbf;
	padding:0.5em 0;
}
#personalisation p.bdrb {
	border-bottom:1px solid #bfbfbf;
	padding:0.5em 0;
}
#personalisation .pers p {
	line-height:1.5em;
}
#personalisation select {
	padding:0.71em;
	vertical-align:middle;
}
span.input textarea,
span.input input[type="text"],
span.input input[type="email"],
span.input input[type="password"] {
	border:0;
	margin:0;
	padding:2px;
	background:transparent;
	width:335px;
	font-size:1em;
}
span.input textarea {
	min-height:3em;
}
span.input input.number {
	border:0;
	background:transparent;
	width:100px;
}
span.input {
	display:inline-block;
	padding:3px;
	border:1px solid #cccccc;
}
input#quantity {
	text-align:center;
	vertical-align:middle;
	font-size:1em;
	width:2em;
	height: 2em;
	border:1px solid #cccccc;
}
span.mandatory {
	border:1px solid #5fb0ff;
	box-shadow: 0 0 3px #5fb0ff inset;
}
span.mandatory ::placeholder {
	color:#5fb0ff;
}
span.charcount {
	color:#909090;
	display:inline-block;
	width:3em;
	text-align:right;
	font-size:0.8em;
}
#personalisation .pane .buttons {
	margin-top:2em;
}
/* Tweaks to make pages work like old site */
#personalise .imagepost {
	display:none;
}
#personalise.showuploads .imagepost {
	display:block;
}
#personalise.showuploads .pers {
	display:none;
}

/* CART PAGE */
form.cartform {
	margin:0;
}
.cart {
	max-width: 900px;
}
.cart .cartproduct {
	display:block;
	border-bottom:1px solid #bfbfbf;
	vertical-align:middle;
	position:relative;
}
.cart .cartproduct p.producttotal {
	border-top:1px solid #bfbfbf;
	margin-top:0.5em;
	position:relative;
}
.cart .cartproduct p.producttotal span {
	position:absolute;
	right:0;
}
.cart .product {
	display:block;
	width:480px;
}
#delivery {
	max-width:900px;
	margin:10px auto 10px 0;
}
#delivery h3.mandatory {
	color:#5fb0ff;
}
#choosedate {
	vertical-align:top;
	margin:auto;
	font-size:16px;
}
#promoform {
	border-bottom:1px solid #bfbfbf;
	padding:0.5em 0;
}
#promoform * {
	vertical-align:middle;
}
#promoform input[type='text'] {
	border:1px solid #bfbfbf;
	font-size:1em;
}
#promoamount {
	position:relative;
	border-bottom:1px solid #bfbfbf;
	padding:0.5em 0;
}
.deliveryoptions {
	display:block;
}
div.deliveryoptions label {
	display:none;
	max-width:40em;
	margin:0;
	cursor:pointer;
	border-bottom:1px solid #666666;
	padding:5px;
}
div.deliveryoptions label input {
	vertical-align:middle;
	display:inline-block;
}
div.deliveryoptions label span {
	vertical-align:middle;
	display:inline-block;
}
div.deliveryoptions label.show {
	display:block;
}
div.deliveryoptions label.deliverymessage {
	text-align:center;
	color:#ffffff;
	background-color:#5fb0ff;
	cursor:auto;
	word-wrap:normal;
	white-space:normal;
}
div.subtotal {
	padding:0.5em 0;
	font-size:1em;
	position:relative;
	border-bottom:1px solid #bfbfbf;
}
div.total {
	padding:0.5em 0;
	font-size:1.2em;
	position:relative;
	border-bottom:1px solid #bfbfbf;
}
div.subtotal .link, div.total span, div.subtotal span, #promoamount .link {
	position:absolute;
	right:0;
}
span.note {
	font-size:0.9em;
}
.subtotal ul li:last-child {
	display:inline-block;
	padding-right:0;
	margin-right:0;
	list-style-type:none;
	position:absolute;
	right:0;
	bottom:0.5em;
}
/* CART TEST MODE STYLES */
#carttestmode {
	border:1px solid #007000;
	background-color:#d0ffd0;
	font-size:11px;
}
#carttestmode legend {
	padding:0 10px;
}
#carttestmode div {
	display:inline-block;
	vertical-align:top;
	padding:10px;
}
#carttestmode h3 {
	text-align:center;
}
#carttestmode table th {
	padding: 0 3px;
	text-align:center;
	vertical-align:bottom;
}
#carttestmode table td {
	padding: 0 3px;
	text-align:center;
}
/* BUTTONS */
div.buttons {
	height:3em;
	position:relative;
	clear:both;
	min-width:200px;
}
div.buttons.topmargin {
	margin-top:2em;
}
*.button {
	display:inline-block;
	line-height:2.5em;
	border-style: solid;
	border-width:1px;
	padding: 0 1em;
	vertical-align:middle;
	cursor:pointer;
	font-size:1.14em;
	text-transform:uppercase;
	text-decoration:none;
}
.button.thin {
	line-height:1.5rem;
	font-size:1rem;
}
.button.full {
	display:block;
	margin-bottom:1em;
}
.button.solidpurple, .button.purple.hover:hover {
	border-color:#663399;
	background-color:#663399;
	color:#ffffff;
}
.button.solidpink, .button.pink.hover:hover {
	border-color:#ff6699;
	background-color:#ff6699;
	color:#ffffff;
}
.button.purple, .button.solidpurple.hover:hover {
	border-color:#663399;
	background-color:#ffffff;
	color:#663399;
}
.button.pink, .button.solidpink.hover:hover {
	border-color:#ff6699;
	background-color:#ffffff;
	color:#ff6699;
}
*.button input {
	vertical-align:middle;
}
*.link, *.continueshopping {
	border:none;
	background-color:#ffffff;
	font-size:1em;
	cursor:pointer;
	text-decoration:underline;
}
*.link {
	color:#663399;
}
#personalisation label.button {
	display:inline-block;
	font-weight:normal;
}
*.buttons .right {
	position:absolute;
	right:0;
}
*.buttons .left {
	position:absolute;
	left:0;
}
/* CART PRODUCT LINK */
div.cartproductlink {
	line-height:40px;
	position:absolute;
	top:0;
	right:0;
	clear:both;
	min-width:200px;
}
div.cartproductlink.buttons * {
	cursor:pointer;
	vertical-align:middle;
	display:block;
	position:static;
	margin:0.3em 0 0.8em auto;
	text-align:right;
	text-decoration:underline;
	color:#663399;
}
*.cartproductlink *.mandatory, *.cartproductlink.buttons *.mandatory {
	color:#5fb0ff;
}
/* CHECKOUT PAGES */
.checkoutsteps {
	max-width:61em;
	margin:0.5em auto 2em auto;
	padding:0;
	text-align:center
}
.checkoutsteps .step {
	width:28%;
	display:inline-block;
	vertical-align:middle;
	text-align:left;
	text-decoration:none !important;
	font-size:0.7rem;
	text-align:left;
	background-image:linear-gradient(#fff 12px, #666 12px, #666 16px, #fff 16px, #fff 100%);
}
.checkoutsteps .step span {
	margin-left:-3px;
	display:block;
	width:1.5em;
	height:1.5em;
	text-align:center;
	background-color:#fff;
	border-radius:50%;
	border: 2px solid #666;
	font-size:1rem;
	line-height:1.4em;
	vertical-align:middle;

}
.checkoutsteps .step.next span {
	border-color:#ccc;
}
.checkoutsteps .step:first-child {
}
.checkoutsteps .step.next {
	color:#ccc;
	background-image:linear-gradient(#fff 12px, #ccc 12px, #ccc 16px, #fff 16px, #fff 100%);
}
.checkoutsteps .step.current {
	background-image:linear-gradient(#fff 12px, #ccc 12px, #ccc 16px, #fff 16px, #fff 100%);
}
.checkoutsteps .step.complete {
	color:#555;
}
.checkoutsteps .step:last-child {
	background-image:none;
	background-color:#fff;
	width:auto;
}
.checkoutform {
	max-width:50em;
	margin:auto;
}
.button.hidden,.checkoutform.hidden {
	display:none;
}
input.forgotpassword {
	border:0;
	font-size:1em;
	background:none;
	cursor:pointer;
	display:inline;
	text-decoration:underline;
}
.checkoutform p *{
	vertical-align:middle;
}
.checkoutform label {
	display:inline-block;
	width: 12em;
	font-weight:normal;
	padding-right:0.5em;
	text-align:right;
}
.checkoutform label.guestreg {
	width:initial;
	text-align:left;
	padding-left:0.5em;
	cursor:pointer;
}
.checkoutform select {
	max-width:347px;
	padding:5px 3px;
}
.checkoutform span.input.small input {
	width:8em;
}
div.chooseaddress {
	background-color:#e8e0f4;
	color:#403050;
	border:1px solid #b8b0c4;
	display:inline-block;
	width:14em;
	padding:0.4em;
	margin:1px;
	height:6em;
	cursor:pointer;
	overflow:hidden;
}
div.chooseaddress.hidden {
	display:none;
}
div.showaddresses {
	background-color:#e8e0f4;
	color:#403050;
	border:1px solid #b8b0c4;
	display:block;
	padding:5px;
	margin-bottom:2em;
	cursor:pointer;
	text-align:center;
	font-weight:bold;
}
#checkoutsummary h1,
#checkoutsummary p {
	text-align:center;
}
table.checkoutsummary {
	width: 600px;
	margin:0 auto;
	border-collapse:collapse;
	border-top: 1px solid #bfbfbf;
}
table.checkoutsummary td {
	padding:0.3em 0.2em;
	vertical-align:top;
}
table.checkoutsummary tr.price {
	border-bottom: 1px solid #bfbfbf;
}
table.checkoutsummary tr.grandtotal {
	font-size:1.3em;
}
table.checkoutsummary tr.price td:last-child {
	text-align:right;
	font-weight:bold;
}
table.checkoutsummary tr td:first-child  {
	width: 150px;
	font-weight:bold;
}

/* MANUAL PAYMENT CALLBACK */
table.payment {
	width: 600px;
	max-width:95%;
	margin:0 auto;
	border-collapse:collapse;
	border: 0;
}
table.payment th {
	font-weight:bold;
	text-align:center;
}
table.payment tbody tr {
	border-bottom: 1px solid #bfbfbf;
}
table.payment tbody td:first-child {
	width:200px;
	vertical-align:top;
	padding:0.2em;
}
table.payment tbody td:last-child {
	width:400px;
	vertical-align:top;
	padding:0.2em;
}
/* IMAGE SLIDER */
div#mislider {
	text-align:center;
	width:auto;
	min-width:400px;
	max-width:80vw;
	height:60vw;
	min-height:150px;
	max-height:40vh;
	margin:1em auto;
	padding:0;
	line-height:40vh;
	overflow:hidden;
	position:relative;
	white-space:nowrap;
}
div#mislider div {
	position:relative;
	display:inline-block;
	width:100%;
	height:inherit;
	max-height:inherit;
	min-height:inherit;
	vertical-align:middle;
	line-height:inherit;
	margin:0;
	padding:0;
}
div#mislider img {
	width:auto;
	height:auto;
	min-height:inherit;
	max-height:inherit;
	max-width:100%;
	vertical-align:middle;
	display:inline-block;
	margin: auto;
	padding:0;
}
div#mislider span {
	vertical-align:middle;
	line-height:100%;
	position:absolute;
}
div#mislider span.navprev {
	width:35%;
	bottom:0;
	left:0;
	top:0;
	cursor:pointer;
}
div#mislider span.navprev:hover {
	background: url('graphics/prev.png') left 10px center no-repeat
}
div#mislider span.navnext {
	width:35%;
	bottom:0;
	top:0;
	right:0;
	cursor:pointer;
}
div#mislider span.navnext:hover {
	background: url('graphics/next.png') right 10px center no-repeat;
	cursor:pointer;
}
div#mislider div span.caption {
	padding:0.5em;
	position:absolute;
	bottom:0;
	left:0;
	right:0;
	font-weight:bold;
	background-color:rgba(255,255,255,0.8);
	text-transform:capitalize;
}
/* RESPONSIVE STYLE CHANGES */
@media screen and (max-width: 1020px) {
	span#mobilemenuicon {
		display:inline-block;
		font-size:3em;
		cursor:pointer;
		color:#663399;
		margin-right:0.5em;
	}
	div#head {
		height:3em;
		position:relative;
	}
	div#pagetopleft {
		width:auto;
	}
	div#pagetopright {
		position:absolute;
		top:10px;
		right:10px;
		width:auto;
		white-space:nowrap;
	}
	div#pagetopright span.label {
		display:none;
	}
	div#pagetopleft a.mobile-logo {
		display:inline-block;
		height:inherit;
		width:auto;
	}
	div#pagetopleft a.mobile-logo img {
		height:3em;
		width:auto;
	}
	div#pagetopcenter {
		padding:0;
		width:270px;
		margin-left:5vw;
	}
	div#contact {
		display:none;
	}
	div#pagetopleft a.full-logo {
		display:none;
	}
	div#nav {
		display:none;
	}
	div#nav.enabled {
		display:block;
		position:fixed;
		top:0;
		left:0;
		right:0;
		max-height:100vh;
		z-index:200;
	}
	div#nav.enabled div#navicon {
		display:block;
		padding:5px;
		font-size:3em;
		border:0;
		margin: 0 auto;
		cursor:pointer;
		color:#663399;
	}
	div#nav ul {
		display:block;
		padding:5px 0;
		margin:0;
		position:static;
		display:block;
		max-height:80vh;
		overflow-y:auto;
		background-color:transparent;
	}
	div#nav ul li,
	div#nav ul ul li {
		padding:0;
		display:block;
		position:static;
		background-color:transparent;
		border-top: 1px solid #E8E0F4;
	}
	div#nav ul li a,
	div#nav ul ul li a {
		display:block;
		padding:10px;
		white-space:normal;
	}
	div#nav ul ul {
		position:static;
		display:block;
		padding-left:1.5em;
	}
	div#nav ul ul ul{
		position:static;
		display:block;
	}
	div#nav ul ul li {
		display:block;
		position:static;
	}
	div#nav ul li:hover ul,
	div#nav ul li:hover ul ul {
		position:static;
		display:block;
		box-shadow: none;
		background-color:transparent;
		border:none;
	}
	div#nav ul li a:hover,
	div#nav ul ul li a:hover {
		color:#ffffff;
		background-color:#B797D6;
	}
	div#productimages {
		display:block;
	}
	form#productform {
		display:block;
		width:auto;
		margin:1em 0;
	}
	form#productform #item {
		min-height: 0;
	}
	div#productdescription {
		display:block;
		margin:1em 0;
	}
	#cookieaccept {
		margin:0;
	}
}
@media screen and (max-width: 700px){
	div#pagetopcenter {
		margin-left:0.5vw;
	}
	div#mislider {
		max-width:100%;
		max-height:30vh;
	}
	div.cartproductlink {
		position:relative;
		display:block;
	}
	div.cartproductlink.buttons * {
		display:inline-block;
		width:45%;
	}
	div.cartproductlink.buttons a {
		position:absolute;
		right:0;
		text-align:right;
	}
	div.cartproductlink.buttons span {
		position:absolute;
		left:0;
		text-align:left;
	}
}
@media screen and (max-width: 600px){
	div#pagetopcenter {
		display:none;
	}
	#personalisation div.uploadimg {
		display:block;
		float:none;
	}
	.cart .cartproduct {
		display:block;
	}
	.cart .product {
		width:auto;
	}
	.checkoutform label {
		text-align:left;
		display:block;
		width:auto;
	}
	table.checkoutsummary {
		width:100%;
		margin:0;
	}
	table.checkoutsummary tr.price td:last-child {
		width:auto;
	}
	table.checkoutsummary tr td:first-child  {
		width:100px;
	}
	table.payment tbody td, table.payment tbody td:first-child, table.payment tbody td:last-child {
		width:95%;
		max-width:95%;
		display:block;
	}
}
@media screen and (max-width: 550px) {
	ul.products li,
	ul.products li a {
		display:block;
		width:auto;
		height:125px;
		text-align:left;
		line-height:125px;
	}
	ul.products li img {
		max-height:120px;
		max-width:120px;
		height:auto;
		width:auto;
		vertical-align:middle;
		display:inline-block;
	}
	ul.products li span.name {
		display:inline-block;
		line-height:1.3em;
		vertical-align:middle;
		position:static;
		width: calc(100% - 125px);
		vertical-align:middle;
	}
}
@media screen and (max-width: 480px){
	div.productreview img {
		padding:0 0 8px 0;
		float:none;
		display:block;
		margin:0 auto;
	}
	.checkoutform span.input {
		max-width:300px;
	}
	table.checkoutsummary, table.checkoutsummary tbody {
		display:block;
		width:auto;
	}
	table.checkoutsummary tr {
		display:block;
	}
	table.checkoutsummary td {
		display:inline-block;
		width:auto;
		min-height:0;
	}
	table.checkoutsummary tr.price td:last-child {
		display:inline-block;
		float:right;
	}
	table.checkoutsummary tr td:first-child  {
		display:inline-block;
		width:auto;
	}
	div#productimages {
		width:auto;
	}
	div#productimages div.thumbnails {
		display: block;
		margin: 10px 0 0 0;
		width: auto;
		max-width:360px;
		height: 60px;
		vertical-align: top;
		overflow: hidden;
		position: relative;
		text-align: left;
		white-space: nowrap;
	}
	div#productimages div.thumbnails img {
		display:inline-block;
	}
}
@media screen and (max-width: 400px){
	div#worldpay table,div#worldpay table body,div#worldpay table tr {
		display:block;
		text-align:center;
	}
	div#worldpay table td {
		display:inline;
	}
}
@media screen and (max-width: 350px){
	body {
		font-size:12px;
	}
	#personalisation textarea, #personalisation input.text {
		width:230px;
	}
	#choosedate {
		font-size:14px;
	}
	.checkoutform select,
	.checkoutform input {
		max-width:250px;
	}
}
@media screen and (min-width: 1020px){
	div#head, div#nav, div#foot, div#worldpay {
		padding-left:calc((100% - 1020px) / 2);
		padding-right:calc((100% - 1020px) / 2);
	}
	div#content{
		max-width:1020px;
		margin:0 auto;
		position:relative;
	}
	div#breadcrumb {
		display:block;
	}
}
