/* 
========================================================================
CACTUSHOP.CSS
========================================================================
*/


/*
------------------------------------------------------------------------
COMMON ELEMENTS
------------------------------------------------------------------------
*/




/* General site warnings & alerts */

.warning 
{
font-style: normal;
font-weight: bold;
color: red;
font-size: 7.5pt;
}



.quantitydiscount 
{
clear:both;
	padding: 10px 0px 5px 0px;
	font-size: 7.5pt;
}





/* Reviews */
.reviews 
{
background-position: top left;
background-repeat: no-repeat;
padding-top: 5px;
}

.reviews .box {
	background-color: #E2EAEF;
	border-top: solid 1px #CBD5DB;
	border-bottom: solid 1px #CBD5DB;
}

/* Carry On Shopping / Cross Selling */
.carryonshopping {
	background-position: top left;
	background-repeat: no-repeat;
	padding-top: 5px;
}

/* Attributes */
.attributes {
}

.attributes td {
	background-color: #ffffff;
	border-top: solid 1px #CBD5DB;
	border-bottom: solid 1px #CBD5DB;
}

/* Promotions */
.product .promotions, .basket .promotions {
	background-position: top left;
	background-repeat: no-repeat;
	padding-top: 5px;
	width:490px;
	padding-bottom: 5px;
		
}

.promotion .box {
	border-top: solid 1px #CBD5DB;
	border-left: solid 1px #CBD5DB;
	border-bottom: solid 1px #E2EAEF;
	border-right: solid 1px #E2EAEF;	
}

.promotionfooter {
	color: #aaa;
	margin-top: 8px;
}

/* Compare */

.header
{
width:100%;
}

.compare 

{
padding:0px;
margin:0px;
}

.compare table

{
text-align:center;
}

.compare th 
{
text-align:center;
}

.compare td 
{
text-align:center;
width:100%;
}

.compare img
{
height:144px;
text-align:center;
}

.lastrow
{
text-align:center;
}




/* ------------ Checkout and Basket ---------------------------------- */
/* Card details box during checkout */
.carddetails {
	background-color: #FFFFFF;
	border: none;
}

/* shipping methods line during checkout */
.basket .shippingmethodline {
	background-position: top left;
	background-repeat: repeat-x;
	padding: 8px 0 20px 0;
}

.basket tr.separate {
	height: 20px;
	background-color: white;
	background-image: url('none');
}

.basket .section {
	width: 100%;
	padding-top: 10px;
	background-position: top left;
	background-repeat: no-repeat;
}

.basket .totals 
{
border-top: solid 1px #CBD5DB;
text-align: right;
margin-top: 11px;
padding-top: 5px;
margin-bottom: 8px;
}

.basket .applycoupon 
{
margin: 5px;
padding-top: 5px;
}

.basket .applycoupon p
{
color:#999999;
font-size:10px;
}


.checkout .section {
	width: 99%;
	padding-top: 10px;
	background-position: top left;
	background-repeat: no-repeat;
}

#fieldsrequired {
	color: #888888;
	font-size: 7.5pt;
}

.shippingmethodstable .subheader .name {
	font-weight: bold;
	font-size: 12px;
	color: #ff6600;
	margin-bottom: 4px;
	padding-bottom: 0px;
	border:none;
}

/* ------------ Customer --------------------------------------------- */
.customer .section {
	background-position: top left;
	background-repeat: no-repeat;
	width: 100%;
	padding-top: 15px;
	padding-bottom: 10px;
	margin-bottom: 5px;
}

.vieworder {
	margin-bottom: 15px;
}

/* ------------ Site Map --------------------------------------------- */

.sitemap
{

}

.sitemap ul {
	padding: 0;
	margin: 0;
}

.sitemap ul li {
	display: block;
	float: left;
	width: 235px;
	margin: 3px;
	padding: 0;
	border-top: solid 1px #CBD5DB;
	border-left: solid 1px #CBD5DB;
	border-bottom: solid 1px #E2EAEF;
	border-right: solid 1px #E2EAEF;
	list-style-position: inside;	
	list-style-type: none;
}

.sitemap ul li div.pad {
	padding: 15px;
}

.sitemap ul ul {
	padding: 0;
	margin: 0;
}

.sitemap ul ul li {
	float: none;
	width: 100%;
	width: 100%;
	margin: 0;
	border: 0px none;; padding-left:10px; padding-right:10px; padding-top:3px; padding-bottom:3px
}

/* ------------ Miscellaneous ---------------------------------------- */
/* horizontal rule */
hr {
	color: #DDDDDD; 
	background-color: #DDDDDD; 
}

/* Controls the first news item */
#newsitem1 h1 {

}

/* 'Top items' boxes on home page */
#toplists ul li div a:hover {
	color: red;
}

/* Search keyword highlight */
em.highlight {
	background-color:#FFEC9D;
	font-style: italic;
	padding:2px;
}

/* Strapline font styling */
.product em.strapline {
	font-style: normal;
	color: #FF9900;
	font-weight: bold;
	font-size: 8pt;
}

/* styles for common features on your content pages */
.page .cutout {
	margin: 12px;
	border-top: solid 1px #CBD5DB;
	border-left: solid 1px #CBD5DB;
	border-bottom: solid 1px #E2EAEF;
	border-right: solid 1px #E2EAEF;
}

.page .cutout_left {
	float: left;
}

.page .cutout_right {
	float: right;
}

.page .right {
	text-align: right;
}

/* style used to highlight explanations of demo data. This can be safely remove
when you have your own styles */
.demodataexpl {
	clear: both;
	color: #008800;
	background-color: #AAEEAA;
	font-size: 7.5pt;
	font-weight: bold;
	display: block;
	padding: 10px;
	margin-top: 10px;
	border: dotted 1px #008800;
}


/*
------------------------------------------------------------------------
ADVANCED CHANGES
These styles should not need to be changed - such as element 
positioning and padding that most stores would not need to alter
------------------------------------------------------------------------
*/
/* ------------ Boxes ------------------------------------------------ */

/* ------------ for example - featured products / customer reviews ------------------------------------------------ */
.boxheader 
{
background-image:url('none');
margin-left:0px; margin-right:0px; margin-top:10px; margin-bottom:0px
}

.boxheader h2
{
font-size:13px;
color:#666666;
}

.pad_shortformat {
	padding: 10px;
}

div.spacer {
  	clear: both;
}

/* ------------ Forms ------------------------------------------------ */
form 

{ 
margin: 0; 
display: inline;
padding: 0;
}

.inputform 
{
margin-bottom: 12px;
zoom: 100%; /* To fix IE 'invisible text' rendering bug (http://archivist.incutio.com/viewlist/css-discuss/57305) */
}

.inputform label
{
width: 180px;
float: left;
}

.inputform label.checklabel 
{
width: auto;
float: none;
}

.inputform div 
{
float: left;
margin-bottom: 5px;
}

.inputform br {
	display: block;
	clear: both;
}

.inputform input.submit {
	margin-left: 180px;
	width: auto;
}

.inputform input {
	width: 180px;
}

input.radio, input.checkbox {
	border-style: none;
	background-color: transparent;
	display: inline;
	width: 20px;
}

.column2 {
	padding-left: 180px;
	margin-bottom: 20px;
	width: auto;
}

textarea { 
	width: auto; 
}



/* ------------ Speed order page ------------------------------------- */
.speedordertable 
{
}

.speedorder table 
{
text-align:center;
width: 100%;
margin: 0 auto;
}

.speedorder td, .speedorder th 
{
text-align: center;
padding: 3px;
}

.speedorder .productcode input 
{
text-align:center;
width: 90%;
}

.speedorder .quantity input 
{
width: 90px;
text-align: center;
}

.speedorder div.submit 
{
margin-top: 15px;
text-align: right;
}

/* ------------ Checkout --------------------------------------------- */
/* step 1 - login form */
.emailreminder 
{
width: 100%;
padding-top: 15px;
}

/* step 3 - shipping methods */
.shippingmethodstable {
	width: 100%;
	padding-bottom: 8px;
	border:none;
}

.shippingmethodstable .price_1, .shippingmethodstable .price_2, .shippingmethodstable .price {
	text-align: right;
	white-space: nowrap;
	padding-right: 30px;
}

.euvat {
	padding-bottom: 8px;
}

.checkout textarea {
	width: 500px;
}

.carddetails {
	width: 100%;
}

.carddetails .inside {
	padding: 0px;
}

.shippingmethodline strong {
	padding-right: 16px;
}

.step4 input.submit {
	margin-left: 0px;
}

#strMailingListHTML {
	display: block;
	margin: 10px 0 5px 0;
}


/* Billing details typography */
.billtotal em {
	font-style: normal;
}

.billtotal, .gatewaymessage {
	margin: 15px 0 30px 0;
}

.billtotal {
	font-size: 10pt;
}

#termspopup {
	font-size: 7.5pt;
	}

/* ------------ Search ----------------------------------------------- */
.trythesecategories {
	margin: 8px 0px 8px 0px;
}

.trythesecategories ul {
	list-style: none;
	display: inline;
	margin: 0;
	padding: 0;
}

.trythesecategories ul li {
	display: inline;
	margin: 0;
	padding: 0;
	text-indent: 0;
}

#resultsheader {
	margin: 8px 0 8px 0;
}

.search 
{
width:387px;
	text-align:left;
	margin:0px;
	padding:0px;
}

.search .pricefields input 
{
	width: 35px;
}

.search label
{
margin-top:3px;
margin-left:1px;
font-size:12px;
font-weight:bold;
color:#333333;
}


.search input.submit
{
margin:5px 5px 0px 0px;
float:right;
}


/* ------------ Basket ----------------------------------------------- */
.basket .baskettable 
{
width: 100%;
}

.codenumber
{
border:none;
}

.details 
{
border:none;
}
.name
{
border:none;
}

.basket .price_1, .basket .price_2, .basket .price, .basket .quantity, .basket .remove, .basket .tax, .basket .total 
{
text-align: center;
white-space: nowrap;
border:none;
}

.basket .quantity input 
{
text-align: center;
}

.basket .totals em 
{
line-height: 30px;
color: #ff9900;
font-weight: bold;
font-style: normal;
font-size: 14px;
border:none;
padding:3px;
}

.basket .totals .controls 
{
margin-top: 8px;
}

.basket .links 
{
margin-top: 3px;
overflow: hidden;
text-align:center;
}

.basket .links div 

{
text-align: left;
width: 95%;
padding: 0;
background-color: #F8F8F8;
border:1px dotted #cccccc;
padding:10px;
margin-bottom:3px;
}

.basket .links div p 
{
margin: 0;
padding: 4px 4px 0 0px;
}

.basket .links img 
{
margin-right: 4px;
}

.basket .links a 
{
text-decoration:none;
font-size:13px;
font-weight:bold;
}

.basket .links a:active 
{
text-decoration:none;
font-size:13px;
font-weight:bold;
}

.basket .links a:hover
{
text-decoration:none;
font-size:13px;
font-weight:bold;
}

.basket .links a:visited
{
text-decoration:none;
font-size:13px;
font-weight:bold;
}






.basket .continueshopping {
	margin-top: 8px;
	text-align: right;
}

.basket .continueshopping .submit {
	text-align: center;
}

/* ------------ Shipping rates --------------------------------------- */
.shippingtable {
	width: 100%;
	margin-bottom: 20px;
}

.shippingtable .price, .shippingtable .price_1, .shippingtable .price_2 {
	text-align: right;
	white-space: nowrap;
}

.shippingtable tr 
{
border-bottom: 1px solid #cccccc;
}

.shippingtable table { border-collapse:collapse; }
.shippingtable td { border-bottom: 1px solid #cccccc; }

.zone{
font-weight:bold;
width:300px;
}

/* ------------ Customer --------------------------------------------- */
.section tbody td {
	padding: 2px;
}

.section table {
	margin-bottom: 2px;
}

.section th {
	text-align: left;
}

.savebasketstable .date, .wishliststable .date {
	width: 130px;
}

.savebasketstable .actions, .wishliststable .actions, .orderhistory .view {
	text-align: right;
	width: 130px;
}

.orderdetails label {
	width: 30%;
	float: left;
}

.orderdetails div {
	float: left;
	margin-bottom: 4px;
}

.orderdetails br {
	display: block;
	clear: both;
}

.orderdetails div.tick {
	float: none;
	margin-bottom: 0;
}

.orderdetails div.tick img {
	margin-right: 8px;
}

.downloadableproductstable .codenumber, .downloadableproductstable .orderdate {
	white-space: nowrap;
	padding-left: 10px;
	padding-right: 10px;
}

.customer .links div {
	width: 48%;
	margin: 0;
	padding: 0;
	float: left;
}

.wishlist #chkUpdateItems {
	margin: 0;
	width: 20px;
	text-align: left;
	float: left;
	padding: 0;
}

/* ------------ Affiliate -------------------------------------------- */
.affiliatestatstable {
	width: 100%;
}

.affiliatestats .total {
	text-align: right;
	padding-right: 12px;
}

.affiliatestats .graph {
	text-align: center;
}

.affiliatestats h2 {
	margin-top: 16px;
}





/* ------------ Wish List -------------------------------------------- */
.wishlist .section {
	margin-bottom: 25px;
}

.wishlist .explanation {
	margin: 0px 0px 15px 0px;
	display: block;
	width: 90%;
	font-size: 7.5pt;
}

/* ------------ Compare ---------------------------------------------- */
.compare h4 {
	margin-bottom: 3px;
	font-size:11px;
	color:#ff9900;
}

.compare table {
width:400px;
	border:none;
	text-align:center;
	}
	
	.compare td {
	border:none;
	text-align:center;
	}

.compare tr {
	border:none;
	text-align:center;
}

.compare a:link
{
text-align:center;
}

.compare .propertyheader {
color:#ffffff;
	font-weight: bold;
	font-size: 1pt;
	width:1px;
	visibility:hidden;
}

.compare .lastrow td {
	background-color: transparent;
	font-size: 8pt;
	padding-bottom: 20px;
	border:none;
	text-align:center;
}




/* ------------ Attributes ------------------------------------------- */
.attributes {
	margin: 10px 0 10px 0;
	padding: 0;
	width: 97%;
}

.attributes table {
	width: 100%;
	border-collapse: collapse;
}

/* Product attributes table */
.attributes table tr {
	background-image: url('none');
}

/* ------------ Reviews ---------------------------------------------- */
.reviews {
	margin: 5px 0 10px 0;
}

.reviews h2 {
	margin-bottom: 8px;
}

.review {
	margin: 0 0 5px 0;
}

.review .pad {
	padding: 10px;
}

.review .stars {
	display: inline;
	margin-right: 2px;
}

.review strong {
	display: inline;
}

.review .reviewer {
	font-style: italic;
}

.review blockquote {
	margin: 15px 20px 15px 20px;
}

.review .date, .review .appliesto {
	text-align: right;
}

/* Review add page */
.addreview form strong {
	display: block;
}

.addreview form p {
	margin: 0px 0px 20px 180px;
}

.addreview textarea {
	width: 340px;
	height: 100px;
}
	
/* ------------ Cross Selling ---------------------------------------- */
.carryonshopping h2 {
	margin-bottom: 8px
}

.carryonshopping h3 {
	margin-top: 5px;
}

.carryonshopping ul {
	margin: 2px 0px 10px 40px;
	list-style-type: none;
	padding: 0;
}

/* ------------ Versions --------------------------------------------- */
/* Clear so it comes below the floating image tag */
.versions 
{
clear: both;
margin-bottom: 10px;
}

.versions strong {
	display: block;
	padding-bottom: 5px;
}

.products_shortenened .versions { /* don't want to clear if we're doing things in shortened format */
	clear: none;
}

/* Versions displayed in options may first have a price line */
.versions .prices {
	padding: 5px;
	text-align:right;
}

.versions .prices strong {
	display: inline;
}

.versions .prices span {
	margin-left: 2em;
}

.versions .line {
	text-align: right;
	padding: 5px;
}

.versions .line img {
	float: none;
}

/* Version Table -- PRODUCT INFO IN BOX FORMAT WITHIN CATEGORY PAGE - all info inc. Price add to basket etc.*/
.versions table 
{
width: 480px;
float:left;
}

.versions div.versionstable 
{
border: none;
}

.versions tr.description 
{
width:480px;
margin:0px;
padding:0px;
border:none;
}

.versions td.description 
{
background-image: url('none');
background-color: white;
border:medium none;
color:#333333
}

.versions th, .versions td 
{
text-align: center;
background-color:#ffffff;
color:#333333;
border:none;
}

.versions table .stock
{
border:none;
text-align: center;
}

.versions table .alt .stock 
{
color:#ff9900;
font-weight:bold;
border:none;
text-align: center;
}

.versions table .weight
{
border:none;
text-align: center;
}


.versions table .alt .weight
{
color:#ff9900;
font-weight:bold;
border:none;
text-align: center;
}

.versions table .name 
{
width: 200px;
text-align: left;
padding-left: 5px;
border:none;
}

.versions table .addtobasket 
{
padding-right: 5px;
border:none;
}

.versions table .addtobasket img 
{
float: none;
border:none;
}

.versions table .description {
	padding: 5px;
	overflow: hidden;
}

.versions table .description img {
	float: left;
	margin-right: 4px;
	border:none;
}
	
.versions table .description {
	text-align: left;
	border:none;
}

.versions table .rrp
{
color:#ff9900;
font-weight:bold;
border:none;
}

.versions table .alt .price
{
color:#ff9900;
font-weight:bold;
border:none;
}


.versions table .alt .price_1
{
color:#ff9900;
font-weight:bold;
border:none;
}

.versions table .alt .price_2
{
color:#ff9900;
font-weight:bold;
border:none;
}

.versions table .highlight .price
{
color:#ff9900;
font-weight:bold;
border:none;
}

.versions table .highlight .price_1
{
color:#ff9900;
font-weight:bold;
border:none;
}

.versions table .highlight .price_2
{
color:#ff9900;
font-weight:bold;
border:none;
}\


/* ------------ Product Options -------------------------------------- */
.optiongroups_block .options {
display:block;
clear:both;
	padding: 10px;
	margin: 10px 0px 5px 0px;
}	

.optiongroups_block .addtobasket {
	text-align: left;
	clear:both;
	padding: 5px;
	clear: both;
}

.outofstockmessage em {
	display: block;
	margin-top: 10px;
}

.optiongroups_block .option {
	clear: both;
}

.optiongroups_block .option label.optiontitle {
	display: block;
	width: 150px;
	float: left;
	margin-right: 5px;
}

.versions .option label.optiontitle {
	margin-right: 5px;
}

.optiongroups_block .option div {
	display: inline-block;
	margin-left: 160px;
	margin-bottom: 10px;
}

.optiongroups_block .option div .radiooptions {
	display: block;
}

.optiongroups_block .addtobasket img {
	float: none;
	text-align: right;
}

/* Inline groups */
.optiongroups_line {
	padding: 5px;
	margin-bottom: 5px;
	text-align: left;
	zoom: 100%;
	overflow: hidden;
}

.optiongroups_line .options, .optiongroups_line .option div, .optiongroups_line .option, .optiongroups_line strong, .optiongroups_line label, .optiongroups_line select, .optiongroups_line .addtobasket {
	display: inline;
}

.optiongroups_line label {
	margin-left: 10px;
}

.optiongroups_line .addtobasket {
	display: block;
	float: right;
	width: 100px;
	text-align: right;
	margin-left: 20px;

}
.optiongroups_line .addtobasket img {
	float: none;
}
/* ------------ Homepage Layout Divs --------------------------------- */
.home_region {
	width: 100%;
}


/* ------------ Homepage News ---------------------------------------- */
/* Controls specifically the first news item */
#newsitem1 {
	margin: 0;
	padding: 0;
	width: 100%;
	clear: both;
}

#newsitem1 .pad {
	margin: 0;
	padding: 0px 20px 20px 0px;
}

#newsitem1 h1 {
	padding-top: 0px;
}


#newsitem1 img {
	float: right;
}

/* Other news items */

#newsitems div {
	padding: 0;
	margin: 0;
}

#newsitems {
	padding: 0;
	margin: 0;
	width: 100%;
}

#newsitems .newsitem {
	width: 33%;
	float: left;
}

#newsitems .newsitem .pad {
	margin: 0px 15px 10px 0px;
}

#newsitems strong {
	display: block;
	padding: 0;
	margin: 0;
}





/* ------------ Homepage Specials ------------------------------------ */
.specials {
	clear: both;
}

.specials h2 {
	display: block;
	margin-bottom: 12px;
}


/* ------------ Promotions ------------------------------------------- */
/* promotion class controls listing in extended view (with thumbnail) */
.promotion {
	clear: both;
	vertical-align: middle;
	margin: 8px 0px 8px 0px;
	display: block;
}

.promotion img {
	float: right;
	margin-left: 10px;
}

.promotion .box {
	width: 100%;
	margin: 0px 5px 5px 0px;
	font-size: 8pt;
}

.promotion .pad {
	padding: 10px;
	overflow: hidden;
}

/* promotiontext class controls listing in text view */
.promotiontext {
	clear: both;
	vertical-align: middle;
	margin: 8px 0px 8px 0px;
	display: block;
}

.promotiontext .box {
	width: 100%;
	margin: 0px 5px 5px 0px;
	font-size: 8pt;
}

.promotiontext .pad {
	overflow: hidden;
}


/* ------------ Miscellaneous ---------------------------------------- */
body, td {
	padding: 0;
	margin: 0;
}

#popup .pad {
	padding: 10px;
}

/* Carry On Shopping / Cross Selling */
.carryonshopping a {
	font-weight: normal;
}

.nowrap {
	white-space: nowrap;
}

/* horizontal rule */
hr { 
	height: 1px; 
	border-width: 0; 
}



/* Paddings on various items */
h1, h2 {
	padding: 0;
	margin: 0px 0px 8px 0px;
}


.total
{
border:1px solid #cccccc;
}
