/* ==========================================================================
   Forms
   ========================================================================== 
 */
 

input, textarea {-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; }
input[type="text"], 
input[type="password"], 
input[type="date"], 
input[type="datetime"], 
input[type="email"], 
input[type="number"], 
input[type="search"], 
input[type="tel"], 
input[type="time"], 
input[type="url"], 
textarea, 
select {display: block; font-size: 14px; margin: 0 0 16px 0; margin:  0 0 1rem 0; padding: 4px 4px; padding: 0.25rem 0.25rem; width: 100%; line-height: 32px; }

fieldset {margin: 0 2px; padding: 0.35em 0.625em 0.75em;}
label {display: block; font-weight: bold; margin-bottom: 16px; margin-bottom: 1rem; }

.ul-indented {
	list-style: initial;
    margin: initial;
    padding: 0 0 0 40px;
}
.ul-flush {
	list-style: disc;
    margin: initial;
    padding: 0 0 0 15px;
}
ul[class^=ul-] a {
	color:#227a8d;
	font-weight:bold;
}
.ul-indented li,
.ul-flush li {display: list-item;}

[type="radio"], 
[type="checkbox"] {margin: 0 8px 0 0; margin: 0 0.5rem 0 0; background-color: transparent; border: 0 none !important; }
/*fieldset {
	border: solid 1px; 
	padding: 16px 16px; 
	padding: 1rem 1rem; 
	margin: 0 0 16px; 
	margin: 0 0 1rem;
}*/
fieldset legend {font-weight: normal; }
#sociallinkstop + div .newslettersignup-content legend {display: inline}
fieldset li {list-style: none; }

.form-item {position: relative; }
.vlg-bg select, 
.facet-list a select, 
input#email {border: none; }
.vlg-bg .w-bg select, 
.facet-list a .w-bg select {border: 1px solid; }
.filter-wrap select {width: auto; float: left; margin-right: 8px; margin-right: 0.5rem; }
input#bannerSearch, 
input#email, 
.newslettersignup-content input#email1,
.add-delivery input#confirmEmail,
.add-delivery input#phone {margin-bottom: 0; min-height: 39px; }

.highlight-bg input#email, 
.highlight-bg .newslettersignup-content input#email1, 
.main-bg input#email, 
.main-bg .newslettersignup-content input#email1 {border: none;}
.shelvesandspaces aside .whatson-newsletter-block .newsletter-signup-form .newslettersignup-content {padding-bottom:16px;}
.main-content-block .main-content-block-inner > .whatson-newsletter-block .newsletter-signup-form .newslettersignup-content input#email {
	border:1px solid #999
}


.whatson-newsletter-block fieldset {border: none; padding: 0; }
.whatson-newsletter-block legend,
.whatson-newsletter-block legend + label {display: none; }
.whatson-newsletter-block input[type="email"] {width: 100%; width: calc(100% - 155px); display: inline-block; float: left; margin: 0 8px 8px 0; }

.event-details th, 
.event-details td {vertical-align: top; }
.event-details caption {height: 1px; text-indent: -10000px; }

/*.desktop-site .form-block {width: 940px; position: relative; border-top: 1px solid #ccc; padding: 32px 16px; padding: 2rem 1rem; }*/
.form-block .form-block-inner {max-width: 592px; }
.highlight-bg .form-block/*, 
.highlight-bg + .main-content-block .form-block*/ {border-top: none; padding: 0 16px; padding: 0 1rem; }

.form-block input[type="text"],
.form-block input[type="password"],
.form-block input[type="date"],
.form-block input[type="datetime"],
.form-block input[type="email"],
.form-block input[type="number"],
.form-block input[type="search"],
.form-block input[type="tel"],
.form-block input[type="time"],
.form-block input[type="url"],
.form-block select,
.form-block textarea {/*border: 1px solid #CEE1E8; background: #fff; ? */margin-bottom: 20px; padding: 8px; line-height: 150%; }
.form-block label {margin-bottom: 2px; }

.form-block textarea {height: 150px; resize: none; }
.form-block label {display: block; }
.form-block .required {font-weight: bold; }
.form-block #submit-button {border: none; }
.form-block input[type="checkbox"] {float: left; margin: 4px 0; }
.form-block input[type="checkbox"] + label {margin-left: 22px; font-weight: normal; }
.form-block #submit-button:active {position: relative; top: 1px; outline: none; border: none; }
.form-block #loading {width: 32px; height: 32px; position: absolute; right: 130px; bottom: 16px; display: none; }


#errors, 
#success {background-repeat: no-repeat; background-position: 405px center; margin: 25px 0; width: 437px; display: none; -moz-border-radius: 8px; -webkit-border-radius: 8px; border-radius: 8px; }

#errors {padding: 10px; }
#errors li {padding: 2px; list-style: none; }
#errors li:before {content: ' - '; }
#errors #info {font-weight: bold; }
#errors #info:before {content: ''; }
#success {border: solid 1px #83D186; padding: 25px 10px;  }
#errors.visible, #success.visible {display: block; }
#req-field-desc {font-style: italic; }
input:required, textarea:required {-moz-box-shadow: none; -webkit-box-shadow: none; -o-box-shadow: none; box-shadow: none; }
::-webkit-input-placeholder, 
input:-moz-placeholder, textarea:-moz-placeholder, 
input.placeholder-text, textarea.placeholder-text {color: #ccc; font-style: italic; }

input#bannerSearch,
.social-block .newsletter-block #email {width: 65%; float: left; min-height: 39px; }
.social-block .newsletter-block #go_link {margin: 0 0 0 4px; float: left; height: 34px; height: 38px; line-height: 2.6em; }
.social-block .newsletter-block fieldset {border: none; padding: 0; }
.social-block .newsletter-block fieldset p {margin-top: 0; }
/* .newslettersignup-content legend {width: 400px; padding-bottom: 0.5rem; }
.newslettersignup-content label {height: 1px; text-indent: -10000px; }  */

input#bannerSearch {border: 1px solid #ccc; min-height: 36px; }
#bigBannerSearch .optionsRow label {color: #fff;}

/* ************************ SHOP css start ************************* */

.shop section.forms {overflow:hidden;}

.desktop-site.shop .forms.shipping-method,
.desktop-site.shop .forms.login {min-height:400px}
/*.desktop-site.shop .forms.donate {min-height:760px}*/
.desktop-site.shop.order-confirmation-v2 .forms.wrap-shopping-basket {min-height:1160px;}
/*.desktop-site.shop.shopping-basket .forms.wrap-shopping-basket {min-height:800px;}*/

.shop .forms fieldset {margin:0;padding:0;border:none;}
.shop.shop-login fieldset {
	margin-bottom:16px;
	margin-bottom:1rem;	
}

.shop .forms .help-txt {
	font-size:12px;
	font-size:.75rem;
	color:#777;	
}
.shop .forms fieldset .forgotton-pwd.no-hover {display:block;}

.shop .forms .pnl-row.wrap-progbar-mybag + fieldset,
.shop .forms .fieldset-dell-addr {clear:both;}

.shop .wrap-mybag .content-body ul.product-row.noProdImg > li:first-child {width:100%;}

.shop .forms legend,
.accessible-hidden {position:absolute;left:-10000px;}

.shop .forms label {color:#000;}
.shop .forms.add-delivery-info h2 {
    border-bottom: 1px solid #ccc;
    padding-bottom: 16px;	
}
.shop .forms.add-delivery-info label {font-weight:normal;} 
.desktop-site.shop .forms.shipping-method fieldset legend {margin:0 0 0.9em 0}
.desktop-site.shop .forms.donate fieldset {margin-bottom:1rem}

.shop .action-text,
.desktop-site.shop .action-button,
.shop #tax-no {text-transform:uppercase;}

/*shopping bag: desktop remove btn*/
.desktop-site.shop .action-text.mob {
	display:none;
}

.shop .shopErrorMsg {color:#FF0000}
.shop .shopAcceptMsg {color:#008000}
.shop .forms .transparent-btn {text-transform:uppercase;}

.shop .forms .transparent-btn span.lft-arrow-lft {
	 background-image: url('../../../resources/global/images/bl-web-sprite.png') !important;
	 background-position:102px -5px !important;
}

.desktop-site.shop.shopping-basket .forms .progress-bar {margin-bottom:0 !important;} 
.shop .twothirds {
	width:66%;
	overflow:hidden;
}

.shop .twothirds,
.desktop-site.shop .forms .pnl-row.wrap-progbar-mybag {padding-top:30px;}

.desktop-site.shop .forms .uppercase {text-transform:uppercase;}


/*.shop .local-search-wrapper {border:none !important}
.shop .local-search-wrapper #search-section-input {
	border:1px solid #ccc;
	border-radius:3px;
} */

/*XXXXXXXXXXXXXXXXXX Thank you XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX*/

/*old*/
.desktop-site.shop.checkout-thank-you .shopping-bskt-banner {
	overflow: hidden;
	background-color: #434343;
	height: 100px;
}
.desktop-site.shop.checkout-thank-you .shopping-bskt-banner .content {
	height: 70%;
	border-bottom: 2px #9B9898 solid;
	background-color: #6B6B6B;
	display: table;
	width: 100%;
}
.desktop-site.shop.checkout-thank-you .shopping-bskt-banner .content .heading {
	color: #fff;
	display: table-cell;
	vertical-align: middle;
	font-size: 20px;
	font-size: 2.0rem;
	font-weight: normal;
}
/* end old thx */

/*Thank you newsletter - current*/

/*Thank you subscribe btn*/

.shop .forms.thank-you-newsletter-signup #go_link:hover {
	background-color: #174854 !important;
}
.shop .forms.thank-you-newsletter-signup #email {
	float:left;
	width:60%;
}
.shop .forms.thank-you-newsletter-signup .register ul {list-style:disc;padding-left:17px}

/*thank you checkout btn*/
.shop .forms.thank-you-newsletter-signup .btn:hover {border:none;}



/* .desktop-site.shop.checkout-thank-you .forms.confirmation .action-text {text-transform:uppercase;}
.desktop-site.shop.checkout-thank-you .forms.confirmation .register p:first-child {padding:0;margin:0;}
.desktop-site.shop.checkout-thank-you .forms.confirmation .register ul li i.fa {font-size:10px;} 
.desktop-site.shop .forms.confirmation .pnl-row .input-wrap {width:100%;}
.desktop-site.shop .forms.confirmation .pnl-row .input-wrap input {
	width:240px;
	float:left;
	min-height:auto !important;	
}
*/
/*RHC*/


/* thumb image text event description*/
.desktop-site.shop.checkout-thank-you .rh-column .thmb-pnl-col .pnl .pnl-inner.w-bg .pnl-txt {padding-top:0;}
.desktop-site.shop.checkout-thank-you .rh-column .thmb-pnl-col h2 {margin-top:0;}

/*end RHC*/

/*XXXXXXXXXXXXXXXXXX end Thank you XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX*/


/*XXXXXXXXXXXXXXXXXX Shopping basket XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX*/
.desktop-site.shop.shopping-basket .forms .col-quantity-price div.error {
	display:block;
	float:left;
	width:85%;
	background-color:transparent;
	border:none;
	margin-top:0 !important;
}
.desktop-site.shop.shopping-basket .forms .error p a {text-decoration:underline;background-color:red;}
.shop.shopping-basket .forms .error p {margin:5px 0;color:red; width:116px;float:left}
.shop.shopping-basket .forms ul li,
.shop.donate-form .forms :not(.wrap-radio-btns ul) ul li {float:left}

/*thank you newsletter*/
.shop .forms.thank-you-newsletter-signup h1 {margin-top:0;}

/* borders */
.shop.shopping-basket .forms .no-margin.basket-row,
.shop.checkout-thank-you .forms .no-margin.basket-row,
.shop .forms.thank-you-newsletter-signup .bdr {border:1px solid #ccc;}

.shop.shopping-basket .forms .no-margin:not(:first-child).basket-row {border-bottom:0;}

.shop.checkout-thank-you section {padding-top:0}
.shop.shopping-basket .forms .no-margin.ghost.basket-row {border-top:0;border-bottom:0;}


.shop.shopping-basket .forms .no-margin.ghost.basket-row > ul,
.shop.shopping-basket .forms .no-margin.unavailable-item > ul {position:relative}

.shop.shopping-basket .forms .no-margin.ghost.basket-row > ul:after,
.shop.shopping-basket .forms .no-margin.unavailable-item > ul:after {
	position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    display: block;
    top: 0;
    left: 0;
    background: #fdfdfd;
	opacity:.8;
}

.shop.shopping-basket .view-basket ul,
.shop.shopping-basket .view-basket ul li,
.shop.shopping-basket .product-detail ul li {
	padding:0;
	margin:0;
	overflow:hidden;
	width:100%;	
}
.shop.shopping-basket .forms .col-title {
	margin-bottom:10px !important;
	font-weight:bold;
	font-size:16px;
	font-size:1rem;
}

.shop.shopping-basket.order-confirmation-v2 .forms .contact-details-wrap li:first-child + li {margin-bottom:16px;}
.shop.shopping-basket.order-confirmation-v2 .forms .contact-details-wrap li > span.heading {display:block;font-weight:bold;}
.shop.shopping-basket.order-confirmation-v2 .forms .contact-details-wrap li > span.email {
	/* These are technically the same, but use both */
  	overflow-wrap: break-word;
  	word-wrap: break-word;

  	-ms-word-break: break-all;
  	/* This is the dangerous one in WebKit, as it breaks things wherever */
  	word-break: break-all;
  	/* Instead use this non-standard one: */
  	word-break: break-word;

  	/* Adds a hyphen where the word breaks, if supported (No Blink) */
  	-ms-hyphens: auto;
  	-moz-hyphens: auto;
  	-webkit-hyphens: auto;
  	hyphens: auto;
}

/* shop bordered container */
.shop .forms .view-basket .no-margin > ul > li {width:33.33%;float:left}
.shop .forms .view-basket .no-margin > ul li > ul li {width:50%;}
.shop.shopping-basket .forms.shopping-basket-noItems .view-basket .no-margin > ul > li { width:100%;}

/*XXXXXXXXX end Strap XXXXXXXXXXXXXX*/

/*XXXXXXXX basket-row XXXXXXXXXXX*/
.shop.shopping-basket .forms .basket-row {
	overflow: hidden;
	display: table;
	width:100%;
	-webkit-box-sizing: border-box; 
  	-moz-box-sizing: border-box; 
  	box-sizing: border-box;
}
.desktop-site.shop.shopping-basket .forms .continue-checkout.basket-row .left > ul {float:left;width:50%}
/*XXXXXXXX end basket-row XXXXXXXXXXX*/

/*page heading*/
.shop.shopping-basket .forms .checkout.basket-row div {display: table-cell; vertical-align:middle;}
.shop.shopping-basket .forms .checkout.basket-row {margin:0!important;}

/*XXXXXXX Buttons XXXXXXXX*/
.shop .transparent-btn {border:1px solid #ccc;}


.shop .transparent-btn,
.shop .transparent-btn span {color:#174854 !important;}
.shop .transparent-btn:hover {
	background-color:#ccc; 
	border-color:#ccc !important;
}
.shop .transparent-btn.inactive {
	background-color:#ccc;
	cursor: default;
}
.shop.shopping-basket .forms .qty-btns .transparent-btn,
.shop.shopping-basket .forms .col-remove .transparent-btn,
.shop .product-info .qty-btns .transparent-btn {
	width:30px;
	height:30px;
	padding:0;	
	color: #037a8d;
	line-height:30px;
}
.shop .product-info .qty-btns .transparent-btn {
	width:32px; /* TODO: why 32px when it's the same code in multiple places (see above)*/
	height:32px;	
}

.shop.shopping-basket .forms .transparent-btn span.sml-lft {
	background-position:91px -8px;
}
/*XXXX end btns XXXX*/

/*XXXXXXXXXX Product detail XXXXXXXXXXXX*/
.shop.shopping-basket .forms .product-detail > ul > li .top {
	font-weight:bold;
	height:38px;
	line-height:38px;
	
}
.shop.shopping-basket .forms .product-detail > ul > li .top label {
	margin:0;
	padding:0;
	color:#000;
}
.shop.shopping-basket .forms .product-detail > ul > li .top span {font-weight:normal;}
/* .shop.shopping-basket .forms .product-detail.basket-row div.btm {overflow:hidden;} */

/*XXXXXXXXXXXXX v1 order-confirmation XXXXXXXXXXXXXXXXXXXXXXXX*/
.shop.shopping-basket.order-confirmation .forms .product-detail .col-quantity-price > ul {text-align: center}
.shop.shopping-basket.order-confirmation .forms .product-detail.basket-row .col-quantity-price ul li {width:33.3333%;}

.shop.shopping-basket.order-confirmation .forms .product-detail.basket-row .col-quantity-price ul li p {margin:auto;} 
.shop.shopping-basket.order-confirmation .forms .product-detail > ul > li {width:50%;}
.shop.shopping-basket.order-confirmation .col-right ul.inner {text-align:left} 
.shop.shopping-basket.order-confirmation .col-right ul.inner > li:first-child {width:100%;}
.shop.shopping-basket.order-confirmation .col-right ul.inner > li:first-child ul li {width: 33.33%}

/*XXXXXXXXXXXXXXXXX end v1 order-confirmation XXXXXXXXXXXXXXXXXXX*/


/* error msg + vat msg */
.shop .forms .error-msg,
.shop .forms .vat-msg {
	/*background-color:#faffcb;*/
	background-color:#fcf9e3;
	border: 2px solid #f0ebd7;
	color:#993434;
	font-size:12px;
	font-size: 0.75rem;
	clear:both;
	margin-bottom:10px;
}
.shop .forms .vat-msg {margin-bottom:10px;}
.shop .forms .vat-msg .content {padding:10px;width:250px}
/* end error msg + vat msg */

.shop .forms legend + .error-msg {margin-top:0;}
/* Basket (v3 and below): Item columns - all below override shop bordered container (.no-margin)*/
.shop .forms .view-basket .product-detail.no-margin .col-items {width:46%;}
.shop .forms .view-basket .product-detail.no-margin .col-quantity,
.shop .forms .view-basket .product-detail.no-margin .col-price,
.shop .forms .view-basket .product-detail.no-margin .col-subTot,
.shop .forms .view-basket .product-detail.no-margin .col-remove {width:18%;}



/*XXXXXXXXXXXXXX new heading structure XXXXXXXXXXXXXXXXXXX*/
/* bring Athena inline with cdstaging using Robins code */
/*.shop.shopping-basket .forms .view-basket .no-margin:first-child {border-bottom:1px solid #ccc}*/
.shop .product-detail.no-margin.col-headings,
.shop.shopping-basket .forms #shopping-basket .no-margin.basket-row {border-bottom:0}
.shop.order-confirmation-v2 .product-detail.last {border-bottom:1px solid #ccc;}

/* order confirmation: */
.shop .forms .view-basket .product-detail.no-margin.col-headings .col-items {width:46%;}
.shop .forms .view-basket .product-detail.no-margin.col-headings .col-quantity,
.shop .forms .view-basket .product-detail.no-margin.col-headings .col-price,
.shop .forms .view-basket .product-detail.no-margin.col-headings .col-subTot,
.shop .forms .view-basket .product-detail.no-margin.col-headings .col-remove {width:18%;}

/* basket default:*/
.shop .forms #shopping-basket .product-detail.no-margin.col-headings ul li {overflow:hidden;text-align:center;float:left}
.shop .forms #shopping-basket .product-detail.no-margin.col-headings .col-items .top {text-align:left;}
.shop .forms #shopping-basket .product-detail.no-margin.col-headings [class^=col] ul {padding:0;}
.shop .forms #shopping-basket .view-basket .product-detail .col-items,
.shop .forms #shopping-basket .product-detail.no-margin.col-headings .col-items {width:46%;}
/* basket default: headings cols*/
.shop .forms #shopping-basket .product-detail.no-margin.col-headings .col-quantity,
.shop .forms #shopping-basket .product-detail.no-margin.col-headings .col-price,
.shop .forms #shopping-basket .product-detail.no-margin.col-headings .col-subTot,
.shop .forms #shopping-basket .product-detail.no-margin.col-headings .col-remove,
.shop .forms #shopping-basket .view-basket .col-quantity,
.shop .forms #shopping-basket .view-basket .col-price, 
.shop .forms #shopping-basket .view-basket .col-subTot,
.shop .forms #shopping-basket .view-basket .col-remove {width:13.5%;}
/* basket default: item cols*/

/* end new structure changes */



/* Basket default (new file name: basket-default)*/
.shop .forms .view-basket .product-detail.no-margin.view-basket-row .col-items {width:40%;}
.shop .forms .view-basket .product-detail.no-margin.view-basket-row .col-quantity {width:20%;}
.shop .forms .view-basket .product-detail.no-margin.view-basket-row .col-price,
.shop .forms .view-basket .product-detail.no-margin.view-basket-row .col-subTot,
.shop .forms .view-basket .product-detail.no-margin.view-basket-row .col-remove {width:13.33%;}
.shop .forms .view-basket .product-detail.no-margin.view-basket-row .col-remove .btm {display: inline-block;}

.shop .forms .view-basket .product-detail.no-margin > ul li > ul {text-align:center;}
.shop .forms .view-basket .product-detail.no-margin > ul li > ul li {width:100%;}

/* order-confirmation-v2: form footer remove discount */
.shop.shopping-basket.order-confirmation-v2 .col-right ul.inner {text-align:left;} 
.shop.shopping-basket.order-confirmation .col-right ul.inner > li:first-child {width:100%;}
.shop.shopping-basket.order-confirmation .col-right ul.inner > li:first-child ul li {width: 33.33%}
/* end Basket Item columns */

/* Basket: btns */
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns {
    width: 117px;
    margin: 0 auto;
}
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns li,
.shop .product-info .qty-btns li {
	width:auto;
	margin-right:10px;
	float:left;
	
}
/* Basket: +/- */
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns li a.action-button,
.shop .forms .view-basket .product-detail.no-margin .col-remove li .action-button {
	text-align:center;
	width:32px;
	height:32px;
	line-height:normal;
	padding:0;
	display: table;
	background-color:green;
}
/*.shop .forms .action-button span {
	display: table-cell;
    vertical-align: middle;
    color:#fff;
}*/ 
/* Basket: update button */
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns button {
	width:116px;
	float:left;
}
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns button + .error p {text-align:left}
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns li.add-item,
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns li.add-item + li {margin:0;}

/* Basket: update btn li */
.shop .forms .view-basket .product-detail.no-margin .col-quantity .qty-btns li.add-item + li {width:116px;}

.shop .forms .view-basket .product-detail.no-margin .col-quantity button:hover {background-color: #174854;}
.shop .forms .view-basket .product-detail.no-margin .col-quantity button i {font-style:normal;color:#fff;
}
/* end butns */

/* basket: errors */
.shop .forms .error-msg.first {margin-top:0 !important;}
.shop .forms .error-msg p {margin:10px 0}
/* basket: item image div*/
.shop.shopping-basket .forms .col-items .img-wrap {float:left;max-width:103px;width:100%;}
/* basket: internationl delivery msg */
.desktop-site.shop .forms .int-delivery {width:100%;height:20px;}
/* basket: item attributes*/
.shop.shopping-basket .forms .basket-row div.btm ul {width:auto;}

/*XXXXXXXXXXXXXX end PRODUCT DETAIL XXXXXXXXXXXXXXXX*/

/* voucher */
.shop.shopping-basket .forms .voucher-msg-wrap {overflow: hidden;}
.shop.shopping-basket .forms .voucher-msg {float:left;padding:0}

.shop.shopping-basket .forms label[for=voucher-code] {margin:0;}
.shop.shopping-basket .forms label[for=voucher-code] span {font-weight:normal}
.shop.shopping-basket .forms .voucher-input-wrap {overflow: hidden;}
.shop.shopping-basket .forms .voucher-input-wrap .action-button {clear:none !important;}
.shop.shopping-basket .forms .voucher-msg.code-not-valid {color:red;}
.shop.shopping-basket .forms .voucher-msg.code-valid {color:green;}
.shop.shopping-basket .forms .voucher-msg.code-checking {color:orange;}
.shop.shopping-basket .forms .checkout-total .wrap-input > div p .fa {margin-right:6px;}
.shop.shopping-basket .forms .product-detail.basket-row li.col-items div.btm .img-wrap  img {
	width:100%;
	float:left;
}

/* quantity/remove btns */
.shop.shop-product .ul-product-qty li {float:left;margin-right:10px;}
/*.shop.shop-product .ul-product-qty li .btn {
	width: 30px;
	background-color: #fff;
	height: 30px;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
	float: none;
	padding:0;
}*/

/* plus and minus btns */
.shop.shopping-basket .forms .product-detail.basket-row div input.btn,
.shop.shopping-basket .forms .product-detail.basket-row div .prod-qty,
.shop.shop-product .ul-product-qty li .btn,
.shop .product-info .qty-btns .prod-qty {
	width:32px !important;
	height:32px !important;
	min-height:auto;
	text-align:center;
	box-sizing: border-box;
	padding:0;
}
.shop.quick-basket .product-info .qty {
	display:table;
}
.shop .product-info .qty-btns {
	text-align: center;
    display: table-cell;
    vertical-align: middle;
    padding-right: 140px;
}
.shop.shopping-basket .forms .product-detail.basket-row div input.reduce-qty {border-color:red !important;}
.shop.shopping-basket .forms .product-detail.basket-row div .prod-qty {width:100% !important;}
.mobile-site.shop.shopping-basket .forms .product-detail.basket-row .col-quantity-price div.btm ul li {margin-right:12px;}

/* checkout total row */
.shop.shopping-basket .forms .checkout-total.basket-row,
.shop.shopping-basket .forms .having-difficulties-contact.basket-row {
	border: 1px solid #ccc;
	/*background-color:#eee;*/
}
/*input wraps: e.g. voucher div*/
.shop.shopping-basket .forms .checkout-total.basket-row .wrap-input { 
	display:none;
	width:100%;
}

/*inputs*/
.shop.shopping-basket .forms .checkout-total.basket-row .wrap-input input {
	border: 1px solid #ccc !important;
	width:30%;
	padding-left:10px;
}
.shop.shopping-basket .forms .checkout-total .col-left p {margin:0;}
.shop.shopping-basket .forms .checkout-total .col-left .trigger {
	color:#227a8d;
	cursor:pointer;
	float:left;
}
.shop.shopping-basket .forms .checkout-total .col-left,
.shop.shopping-basket .forms .checkout-total .col-right {
	width:50%;
	float:left;
}
.shop.shopping-basket .forms .checkout-total .col-left .wrap-input input,
.shop.shopping-basket .forms .checkout-total .col-left .wrap-input .action-button {
	float:left;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.outer {
	width:100%;
	overflow:hidden;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.outer .shipping-row {text-align: justify;} 
.shop.shopping-basket .forms .checkout-total .col-right ul.outer .shipping-row p span {
	text-transform:uppercase;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows {
	text-align:right;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows li {
	width:33.33% !important;
	margin-bottom:12px !important;	
}
.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows.last {
	width: 60%;
	margin:0 auto;	
}
.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows.last li {
	width:100% !important;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows.last li p {
	float:left !important;
	text-transform:none;
	
}
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows.single-row {text-align:left;}
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right ul.total-rows.single-row li {
	width:100% !important;
	padding-left: 66px;	
}
/*accept voucher*/
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row {
	width:60%;
	float:right;
	margin-bottom:10px;
	margin-bottom:1.1rem;
	
}
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row:first-child {
	margin-bottom:8px;
	margin-bottom:.5rem;
}
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row div {
	float:left;
	width:50%;
	text-align:right;
}

.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row:first-child div {width:35%} /*apply to both child divs*/
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row:first-child div:first-child {width:65%;}/*override*/

.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row.full-width div {width:100%;}
.desktop-site.shop.shopping-basket .forms .checkout-total .col-right .row.full-width p {width:100%; text-align:right}

.shop.shopping-basket .forms .checkout-total ul.purchase-details li:first-child {text-decoration: underline;}
.desktop-site.shop.shopping-basket .forms .checkout-total ul.purchase-details li:first-child a:hover {border:none}
.shop.shopping-basket .forms .checkout-total ul.purchase-details li.discount  {text-align:center;}

.shop.shopping-basket .forms .checkout-total .col-right ul.outer li {
	width:100%;
	margin:0 0 12px 0;
	float:left;
}

.shop.shopping-basket .forms .checkout-total .col-right p {
	padding-top:0;
	padding-bottom:0;
	margin-top:0;
	margin-bottom:0;
	text-transform:uppercase;
	font-size:12px;
	font-size:.76rem;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.inner {overflow:hidden;}
.shop.shopping-basket .forms .checkout-total .col-right ul.inner li span {
	font-weight:bold;
	display:block;
}
.shop.shopping-basket .forms .checkout-total .col-right ul.inner li {
	width:50%;
	float:left;
	margin:0;
}

.shop.shopping-basket .forms .checkout-total .col-right ul.inner {
	width:60%;
	font-size:12px;
	font-size:.8rem;
}
/* security message */
.shop.shopping-basket .forms .secure-info-message {display:table;margin-bottom:40px;}
.shop.shopping-basket .forms .secure-info-message img {max-width:74px;width:100%; margin-right:10px;float:left}
.desktop-site.shop.shopping-basket .forms .secure-info-message.basket-row img {float:left;} 
.desktop-site.shop.shopping-basket .forms .secure-info-message p {
	display:table-cell;
	vertical-align:middle;
}
/* end security message */

/* failure pages */
.shop.failure-error .error-container {
	border:1px solid #999999;
	max-width:840px;
	width:100%;
	margin:0 auto;
	padding-bottom:120px;
}
.shop.failure-error .error-container .inner {
	padding:16px;
	padding:1rem;
}


/* end failure pages */


.desktop-site.shop .title.masthead-title {float:left;}

/* bag icon */
.shop .wrap-bag-icon {
	position: absolute;
    bottom: 10px;
    right: 10px;
	z-index:999;
 }
.shop .wrap-bag-icon,
.shop .wrap-bag-icon ul {display:table}
.shop .wrap-bag-icon ul li {display:table-cell;vertical-align:middle;padding:0;margin:0}
.shop .wrap-bag-icon ul li:first-child {
	padding-right:10px;
	padding-top:10px;
}
.shop .wrap-bag-icon li.bag-icon a {
	width: 22px;
    height: 32px;
    display: table;
    float:right;
   	background: url(../../../resources/global/images/shopping-basket-alt-22x32.png);
	background-position: 0% 0%; 
	background-repeat: no-repeat;
	-webkit-transition-property: background-image;
    -moz-transition-property: background-image;
    -o-transition-property: background-image;
    transition-property: background-image;
    -webkit-transition-duration: 0.5s;
    -moz-transition-duration: 0.5s;
    -o-transition-duration: 0.5s;
    transition-duration: 0.5s;	
}
.shop .wrap-bag-icon li.bag-icon a:hover {
	background: url(../../../resources/global/images/shopping-basket-alt-hover-22x32.png) 50% 50% no-repeat;
	border:0 !important
}
.shop .wrap-bag-icon li.bag-icon i {
	font-style:normal;
	font-size:11px;
	display:table-cell;
	vertical-align: middle;
	text-align: center;
	padding-top:10px;
}
/* end bag icon */

/*XXXXXXXXXXXXXXXXXX end shopping basket XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX*/
			
.shop .main-content-block-inner .page-title {padding:0;}
.shop  .wrap-alt-delivery-address {overflow:hidden;}
.shop .forms input,
.shop .forms select {
	border: 1px solid #ccc !important;
	padding:8px 10px;
	line-height:normal;
	min-height:auto !important;
}
.shop .forms input#prod-qty {padding:0}
.forms .form-heading + p i {color: #ff0000;}
.desktop-site.shop .forms input::-webkit-input-placeholder,
.desktop-site.shop .forms select::-webkit-input-placeholder,
.desktop-site.shop .forms input:-moz-placeholder,
.desktop-site.shop .forms input::-moz-placeholder,
.desktop-site.shop .forms input:-ms-input-placeholder {color: #444 !important;}


.desktop-site.shop .forms .pnl-row {
	width:100%;
	/*float:left;*/
}
.desktop-site.shop .forms .pnl-row.wrap-progbar-mybag {width:65%}
.shop .forms .pnl-row .label-wrap {
	width:20%;
	float:left;
	height:34px;
	line-height:34px;
}
.shop .forms .pnl-row .label-wrap p {margin:0;}
.forms .pnl-row .label-wrap span {
	font-size:14px;
	font-size: 0.875rem;
}
.shop .forms .pnl-row .label-wrap.req span {
	line-height:normal;
}
.shop .forms .pnl-row .label-wrap.req span:after {
	content:"*";
	color:red;
	margin-left:6px;
}
.shop .forms .pnl-row .label-wrap span + i {
	display: block;
    margin-top: -20px;
    font-weight: normal;
    font-style: normal;
}
.shop .forms .pnl-row .input-wrap {
	float:left;
	overflow:hidden;
	width:50%;
	margin-right:10px;
}
.shop .forms.login .pnl-row .input-wrap {
	width:100%;	
}
.shop .forms .pnl-row .user-info-wrap p {
	padding:0;
	margin:0;
	text-align:left;
	overflow:hidden;
}
.desktop-site.shop .forms label.error {
	float:left;
	color: #d60021 !important;
	clear:both;
	padding-right:10px;
	font-weight:bold;
	width:100%;
	/*text-align:center;*/
}
.desktop-site.shop .forms label.error[for='username'] {
	font-weight:normal;
	font-size:6px !important;
	font-size:.7rem !important;
}

.desktop-site.shop .forms .pnl-row.manual-address-line3 label p {
	/*helps with v-align on this element as it has some extra text using a nested span*/
	margin-top:-5px;
}			
.desktop-site.shop .forms .pnl-row.manual-address-line3 label p:after,
.desktop-site.shop .forms .pnl-row.alt-address-line3 label p:after {
	content:"";
}
.desktop-site.shop .forms .pnl-row.manual-address-line3 label p span,
.desktop-site.shop .forms .pnl-row.alt-address-line3 label p span {
	font-size:8px !important;
	font-size: .7rem !important;
	margin-top: -21px;
	display: block;
	font-weight: normal;
}

.forms .pnl-row.title select {width:120px;}

.desktop-site.shop .forms .pnl-row.post-code input,
.desktop-site.shop .forms .pnl-row.wrap-post-code-alt-address input {
	width:52%;
	float:left;
	margin-right: 10px;
}
.shop .forms .pnl-row.post-code .action-button,
.shop .forms.add-delivery-info .action-text,
.shop .forms .pnl-row.wrap-post-code-alt-address .action-button,
.shop .forms .pnl-row.wrap-alt-find-address .action-button {
	width:auto; 
	text-align:center;
	text-transform: uppercase;
}
/*.desktop-site.shop .forms .pnl-row.post-code .action-button span {padding:0 14px;}*/


.shop .forms .manual-input > a {
	border-bottom: 1px solid #e8e8e8;
	margin-right:10px;
	color:#037a8d;
	outline:none;
}


/* reveal classes used on shop-add-delivery */

.desktop-site.shop .forms .wrap-alt-delivery-address,
.desktop-site.shop .forms .pnl-row.wrap-find-address-x,
.desktop-site.shop .forms .wrap-enter-manual-address-x,
.desktop-site.shop .forms .wrap-alt-manual-address-x,
.desktop-site.shop .forms .pnl-row.wrap-alt-find-address-x, 
.forms.add-delivery-info.reveal .post-code-x, 
.forms.add-delivery-info.reveal2 .wrap-country-add-address-x, 
.forms.add-delivery-info.reveal2 .wrap-post-code-alt-address-x {display: none; }

.desktop-site.shop .forms .wrap-alt-delivery-address.reveal,
.desktop-site.shop .forms .pnl-row.wrap-find-address.reveal, 
.forms.add-delivery-info.reveal .wrap-enter-manual-address, 
.forms.add-delivery-info.reveal2 .wrap-alt-delivery-address, 
.forms.add-delivery-info.reveal2 .wrap-alt-manual-address {display: block; }



.desktop-site.shop .forms .spacer {float:left;width:20% !important;}
.desktop-site.shop .forms .pnl-row.wrap-alt-find-address .spacer {float:left;width:20%;}

.desktop-site.shop .forms .pnl-row.wrap-alt-find-address .wrap-select div {margin-bottom:10px;overflow:hidden;;}
.shop .forms.add-delivery-info .wrap-find-address fieldset,
.shop .forms.add-delivery-info .wrap-alt-find-address fieldset {width:50%;} 
.shop .forms .pnl-row.wrap-find-address select,
.shop .forms .pnl-row.wrap-alt-find-address select {
	clear:none;
	width:100%;
	float:left;
	margin-bottom:10px;
}
.shop .forms .pnl-row.wrap-find-address select {margin:0;}

.desktop-site.shop .forms .pnl-row.wrap-find-address .find-btn div,
/*.desktop-site.shop .forms .pnl-row.wrap-alt-find-address .find-btn div {width:60%;}*/
.desktop-site.shop .forms .pnl-row.wrap-find-address .find-btn div a,
.desktop-site.shop .forms .pnl-row.wrap-alt-find-address .find-btn div a {
	float:right;
	padding:0 10px;
}

/*** Delivery address ***/

.desktop-site.shop .forms .donate-today h4 {
	margin-bottom:10px;
	margin-top:0;
	overflow:hidden;
}

.desktop-site.shop .forms .delivery-address label[for=sameAddress] {
	margin-bottom:10px;	
}

.desktop-site.shop .forms .donate-today .action-button {
	width:20%;
	text-align:center;
}

.desktop-site.shop.donate-form .transparent-btn,
.desktop-site.shop.donate-form #tax-yes { 
	width:20%;
	text-align:center;
}

.desktop-site.shop .forms .delivery-address .action-button span i {
	font-size:10px;
	font-size: .7rem;
	padding-left: 10px;
}

.desktop-site.shop .forms .pnl-row div input[type=radio] {
	float:left;
	height:auto;
	width:auto;
	padding:0;
	margin-right:15px;
	margin-top:3px;
	border:none !important;
}
.desktop-site.shop .forms .delivery-address div > div label {
	cursor:pointer;
}
.desktop-site.shop .forms .delivery-address #post-code-add-address-error,
.desktop-site.shop .forms .wrap-alt-find-address div > div label,
.desktop-site.shop .forms .wrap-alt-manual-address div > div label {padding-left:0}

.desktop-site.shop .forms .delivery-address .wrap-country-add-address {margin-top:20px;}

.shop .forms .last-line {border-top:1px solid #ccc;}

/*.desktop-site.shop .forms .delivery-address .wrap-post-code-alt-address .action-button,
.desktop-site.shop .forms .delivery-address .wrap-alt-find-address .action-button {background-color: #037a8d;}*/

/*XXXXXXXXXXXXXX shop login XXXXXXXXXXXXXXXXXXXXXX*/

.desktop-site.shop .forms.login .ui {
	float:left;
	width:100%;
}
.desktop-site.shop .forms.login .ui .registered-login,
.desktop-site.shop .forms.login .ui .guest-login {
	float:left;
	width:50%;
	box-sizing: border-box;
}
/* .desktop-site.shop .forms.login .ui .guest-login h2 {
	margin:0;	
} */
.desktop-site.shop .forms.login .ui .inner .registered-login {
	border-right:1px solid #ccc;
}
.desktop-site.shop .forms.login .ui .inner .registered-login .wrap-email-input {
	padding-bottom:0;
}
.desktop-site.shop .forms.login .ui .inner .content {
	width:70%;
	margin:0 auto;	
}
.desktop-site.shop .forms.login .ui .inner .content {
	width:65%;
}
.shop .forms.login .ui .inner .content .forgotton-pwd {
	float:right;
	line-height:normal;
	border-bottom:1px solid #ccc;
}

/*XXXXXXXXXXXXXX end shop login XXXXXXXXXXXXXXXXXXXXXX*/


.forms .threeCollFormElement {width: 100%; margin-bottom: 16px !important; background-color: #fff; }
.forms .threeCollFormElement, 
.forms .threeCollFormElement li {float: left; clear: left; }
.forms .threeCollFormElement li {width: 100%; display: inline-block; padding: 14px 10px 0px 10px !important; margin: 0; border-left: 1px solid #e1e1e1; border-right: 1px solid #e1e1e1; border-bottom: 1px solid #e1e1e1; }
.forms .threeCollFormElement li:first-child {border-top: 1px solid #e1e1e1; }
.forms .threeCollFormElement span, 
.forms .threeCollFormElement label {display: inline-block; width: 33%; float: left; clear: right; padding: 0 10px !important; }

.no-js .forms input[type=submit] {color: #000; background-color: #ccc; padding: 6px 16px; }
.no-js .forms .delivery-address.donate-today .action-button, 
/* .js .forms .donateForm li > div,  */
.js .forms .donateForm li div.other-amount-wrap,
.js .forms #taxPopup {display: none; }
.js .forms .number-error-msg.warn {
	border:1px solid #ff0105;
	padding:2px;
	margin:10px 0;
}
.js .forms .number-error-msg.warn p {
	font-size: 10px;
	color:#ff0105 ;	
} 
.no-js .forms .donate-today {background-color:#f1f1f1}
#lightbox #taxPopup {/*min-width: 300px; */max-width: 550px; padding: 16px; }
#lightbox #taxPopup label {background-color: #0d0d0d; color: #fff; font-weight: normal; padding: 4px; text-align: center; width: 100px; cursor: pointer; float: left; clear: right; margin-right: 16px; }
#lightbox #taxPopup label + label {background-color: #ccc; color: #333; }
.forms .donate-today {
	border: 1px solid #e1e1e1; 
	border-top:0;
	margin: 0; 
}
#lightbox #taxPopup a.transparent-btn {
	padding: 0 16px;
    padding: 0 1rem;
}
.forms .donateForm {border-top: 1px solid #e1e1e1; }
.forms .donateForm > legend {
	padding-bottom: 8px; 
	padding-bottom: 0.5rem; 
	margin: -72px -16px 0 -16px; 
	margin: -4.5rem -1rem 0 -1rem;
}
.forms .donate-today .wrap-radio-btns p:first-child {margin-top:0;}
.forms .donateForm ul {margin: 16px 0 0 0; margin: 1rem 0 0 0; }	
.forms .donate-today .tax-payer {float: left; clear: left; width: 100%; border: none !important; margin-bottom: 32px !important; }
.forms .donate-today li {border: none; background-color: transparent; padding: 4px 32px !important; }
.forms .donate-today li label {width: auto; text-align: left; display: inline; }
.forms .donate-today li label input {margin-right: 6px !important; }
.forms .donate-today .pnl-row .action-button + span + .action-button {background-color: #ccc; color: #333 !important; margin-left: 16px; }
.forms .donate-today .pnl-img img {height: 96px; width: 171px; float: left; clear: right; margin-right: 16px; margin-right: 1rem; }
/*.forms .donateForm li > div.other-amount-wrap {width: 126px; height: 36px; position: absolute; }*/
.forms .donateForm li > div.other-amount-wrap {width: 126px; height: 36px;}
.forms .donateForm li > div * {float: left; clear: right; }
.forms .donateForm li > div label {position: relative; top: 6px; }
.forms .donateForm li > div input {width: 42px; }
.forms .donateForm li > div input + input,
.forms .donateForm li > div label + input, 
.forms .donateForm li > div input + label {margin-left: 4px; }
.forms .donateForm li > div:after {content: '.'; position: relative; left: -65px; top: 6px; width: 5px; }
/*.forms .donate-today .error {border: 1px solid #ff0105; }*/
.forms input.error {border-color: #ff0105 !important; }
.forms .thanks .tax-payer p {font-size: 16px; font-size: 1rem; margin-bottom: 1rem;}
.forms .donate-today.thanks .tax-payer {padding: 0 !important; margin-bottom: 16px !important;}
/*.forms .delivery-address .threeCollFormElement, */
.forms .donate-today.thanks .pnl-txt p {margin-top: 16px; margin-top: 1rem;}
