/*
 * CheckoutPage stylesheet.
 * This is all the styles associated with the checkout page such as the order
 * information table, and the order form/
 */

#OrderForm_OrderForm [disabled] {
	opacity:0.35;
	pointer-events:none;
}

#OrderForm_OrderForm .middleColumn {
	padding:0;
	width:auto;
	clear:none;
}

#OrderForm_OrderForm .CompositeField {
	margin:0 -8px 8px -8px;
	overflow:hidden;
}

#OrderForm_OrderForm .CompositeField > .field {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	width:50%;
	padding:0 8px;
	float:left;
}

#Checkout .warning {
	background:#FEB url('../images/icons/warning.png') no-repeat 10px center;
	padding:8px 10px 8px 84px;
	margin-bottom:18px;
	border:1px solid #EDA;
	font-size:13px;
	min-height:50px;
}

#Checkout .not-in-stock-list {
	margin-top:12px;
	margin-bottom:12px;
}

#Checkout .not-in-stock-item {
	list-style-type:disc;
}

#Checkout h2 {
	color:#22a9e8;
}

#content div.typography {
	padding: 0 8px 24px;
	background: #fff url(../../haze/images/text.gif) repeat-x bottom;
}

/* Information table styling */
#InformationTable {
	border: 1px solid #c7c7c7;
	width: 100%;
	font-size:11px;
}

#InformationTable input {
	width:20px;
	text-align:center;
}

	#InformationTable thead tr,
	#InformationTable tr.Total {
		background-color: #22a9e8;
	}
	#InformationTable tr.discount {
		background-color: #ffff66;
		font-weight:bold;
	}
	#InformationTable tr.one-day-premium {
		background-color: #ffffaa;
	}
	#InformationTable tr.one-day-premium .one-day-premium-title {
		font-weight:bold;
	}
	
	#InformationTable tr.one-day-premium ul {
		padding-left:24px;
	}
	
	#InformationTable tr.giftTotal {
		background-color: #ffff66;
		font-weight:bold;
		background:#999;
	}
	
	#InformationTable tr.discount .discount-code-display {
		font-weight:normal;
	}
	
	#InformationTable tr.giftTotal td {
		color:white;
	}
	
	#InformationTable .discounted-old-price {
		font-style:italic;
		text-decoration:line-through;
		opacity:0.6;
		filter:alpha(opacity=60);
	}

	#InformationTable .discounted-new-price {
		font-weight:bold;
	}

	/* apply the colour to these elements */
	#InformationTable th {
		color: #fff;
		text-transform: uppercase;
		font-size: 1.1em;
		font-weight: normal;
		padding: 8px;
		line-height:1.2;
	}
	#InformationTable td {
		padding: 8px;
		color: #777;
		line-height:1.2;
	}
	#InformationTable td a img {
		border: none;
	}
	#InformationTable tr.Total td {
		color: #fff;
		font-weight: bold;
	}
		.warningMessage {
			margin: 4px 0 0 3px;
			padding: 5px;
			width: 92%;
			color: #DC1313;
			border: 4px solid #FF7373;
			background: #FED0D0;
		}

	/* total line in order information table */
	#InformationTable tr.Total td {
		text-transform: uppercase;
	}

	#InformationTable tbody.order-item-group-wrapper:nth-child(odd) td {
		background-color:#eee;
	}

	#InformationTable tr.summary {
		font-weight: bold;
	}
	
	#InformationTable tr.summary td {
		border-top:1px solid #ccc;
	}
	
			#InformationTable td.product {
				width: 50%;
			}
			#InformationTable td.ordersummary {
				font-size: 1em;
				border-bottom: 1px solid #ccc;
			}
			#InformationTable tr td a {
				color: #666;
			}
				#InformationTable tr td a img {
					vertical-align: middle;
					max-width:none;
				}

	/* Information table alignment classes */
	#InformationTable .right {
		text-align: right;
	}
	#InformationTable .center {
		text-align: center;
	}
	#InformationTable .left {
		text-align: left;
	}
	
	#InformationTable .failed-restriction {
		background:#fcc;
		color:#c00;
	}

#OrderForm_OrderForm div.typography {
	padding: 0;
	background: none;
	font-size: 0.8em;
}


#Country .fieldgroup label { display: none; }

/* CheckoutPage form styling */
.LeftOrder,
.RightOrder {
	float: left;
}
	.LeftOrder {
		width: 330px;
		padding-right: 50px;
		padding-bottom: 10px;
		/*margin-left: 100px;*/
		font-size: 12px;
	}
	.LeftOrder h3 {
		font-size: 14px;
	}
	
	#RightOrder {
		width: 360px;
	}
#BottomOrder {
	clear: both;
	padding-top: 10px;
	padding-bottom: 10px;
	}
	
#Checkout {
/*	margin-top: 40px;*/	
}

#checkout_table {
	font-size: 11px;
	width:724px;
	padding-right:20px;
	float:left;
}

.checkout_top_right {
	float:left;
	width:210px;
}

#checkout_table h3.orderInfo {
	font-size: 16px !important;	
}

#Checkout form div {
	/*margin-bottom: 10px;*/
}
	#Checkout a {
		text-decoration: none;
	}
		#Checkout a:hover {
			text-decoration: underline;
 		}

	#Checkout h3 {
		color: #4EA3D7;
		padding-bottom: 1em;
		font-weight: normal;
 		font-family:Arial, Helvetica, 'DejaVu Sans', 'Liberation Sans', Freesans, sans-serif;
		font-size: 15px;
	}
	#Checkout form h3 {
		margin: 20px 0;
		border-bottom: 1px solid #ccc;
	}
	#Checkout form label.right {
		font-size: 1em;
	}
	#Checkout form #UseShippingAddress {
		margin-bottom: 10px;
		margin-top: 5px;
	}
	#Checkout form #Country .fieldgroup label {
		display: none;
	}

	#Checkout form input.maxlength {
		width: inherit;
	}
	/*
	#Checkout form input.nolabel {
		margin-left:150px;
	}
	*/
	#Checkout form div.readonly {
		padding: 1em;
		/*font-size:1.2em;*/
		border: 1px solid #ddd;
		background: #f9f9f9;
	}

	#Checkout form #PaymentMethod {
		display: none;
	}

	#Checkout form #PaymentMethod .middleColumn {
		background: none;
		width: auto;
	}

	#Checkout form #MethodFields_DPSPayment {
		width: 315px;
	}
		#Checkout form #MethodFields_DPSPayment .middleColumn {
			background: none;
			margin: 0;
		}
		#Checkout #MethodFields_DPSPayment label.left {
			float: none;
			/*display: none;*/
			font-weight: bold;
			margin-bottom: 10px;
		}
		 #Checkout #MethodFields_DPSPayment input {
			width: 35px;
		}
			#Checkout #MethodFields_DPSPayment input.text {
				width: 145px;
			}
			/* override the width for the expiry date */
			#Checkout #MethodFields_DPSPayment input.text.maxlength {
				width: 37px !important;
			}
	#Checkout ul.optionset {
		clear: both;
		padding-bottom: 20px;
	}
		#Checkout ul.optionset label.left {
			float: left;
			line-height: 1.5em;
		}
		#Checkout ul.optionset li {
			float: left;
		}
			#Checkout ul.optionset li label {
				margin-right: 10px;
			}
	
	#Checkout #ReadConditions {
		background: #E9E9E9;
		padding: 20px;
	}

/* Process styles at the top of checkout */
#Checkout h3.process {
	margin-bottom: 1em;
	line-height: 2em;
	color: #000000;
	font-weight: normal;
}
	#Checkout h3.process span {
		color: #000;
	}
		#Checkout h3.process span.current {
			background: #eee;
			padding: 5px;
		}
		#Checkout h3.process a {
			color: #4EA3D7;
			text-decoration: none;
		}
			#Checkout h3.process a:hover {
				text-decoration: underline;
			}
span.validation {
	background-color: #C9C299;
}

div.error {
	background-color: #FBBBB9;
	padding: 2px;
}

.continue_shopping {
	font-size: 16px;
	margin-top: 10px;
	font-weight:bold;	
}

#PaypalText {
	line-height: 17px;	
}

#PaypalText h2 {
	margin: 20px 0 5px 0;	
}

#discount_form {
	padding: 5px 5px 5px 5px;
	font-size:12px;
}

#discount_form .collapse_button {
	display:none;
	}
#discount_form .form {
	display:none;
	}
#discount_form div.header {
	margin:0;
}
	
#discount_form .form .message{
	margin: 10px 10px 5px 10px;
	}
#DiscountForm_DiscountForm_DiscountCode{
	width: 250px;
	margin: 5px 10px;
	display: block;
	float:left;
	}
	
#DiscountForm_DiscountForm_action_submit {
	background: #8fc740;
	background-image:none;
	margin: 5px 10px;
	width: 150px;
	height: 22px;
	display: block;
	float:left;
	color: #fff;
	font-size:10px;
	padding:0px;
	font-weight:bold;
}

#payment_methods {
	margin-bottom:1em;
}

#order_form {
	}
	
#order_form input.holder-required,
#order_form select.holder-required {
	border:2px solid #c00;
}

#order_form .left.col {
	position:relative;
	width:65%;
	float:left;
	margin: 18px 3% 2% 0;
	padding:16px;
	border: 1px solid #ccc;
}

.order-form--submitting-message-wrapper {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	background-color:#ffffff;
	background-color:rgba(255,255,255,0.9);
	display:none;
}

.order-form--submitting-message {
	position:absolute;
	width:200px;
	top:30%;
	left:50%;
	margin-left:-100px;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	padding:40px 20px 12px 20px;
	padding-top:40px;
	text-align:center;
	background:url('../images/ajax-loader.gif') center 12px no-repeat;
	font-size:14px;
	line-height:1.3;
	color:#666666;
	font-weight:bold;
	background-color:#ffffff;
	border:1px solid #cccccc;
}

.order-form__submitting .order-form--submitting-message-wrapper {
	display:block;
}

#order_form .left table.member_fields {
	margin: 10px 10px 10px 10px;
	}

#order_form .left table.member_fields tr {
	height:30px;
	}
	
#order_form .left table.member_fields tr.required {
	background:none;
	}
	
#order_form .message{
	display:block;
	margin:2px 0 0 0;
	background:transparent;
	padding:0;
	font-size:11px;
	line-height:12px;
	color:#cc0000;
	font-weight:bold;
}
#order_form .left table.member_fields tr.small-spacing {
	height: 24px;
	}

#order_form .left table.member_fields tr td {
	vertical-align:middle;
	}
#order_form .left table.member_fields tr td input,
#order_form .left table.member_fields tr td select {
	/*width:200px;*/
	}
	
#order_form .left table.member_fields tr td input[type=checkbox] {
	width:auto;
}
#order_form .left table.member_fields tr td.label {
	width:120px;
	font-weight:bold;
	font-size: 12px;
	color: #666;
	}
#order_form .left table.member_fields tr.checkbox_container label {
	display:block;
	margin-bottom:8px;
}
#order_form .left table.member_fields tr td.field {
	/*width:200px;*/
	padding:5px 0px;
	}
#order_form h2 {
	margin: 0px 10px 4px 0px;
	}

#order_form p {
	margin-bottom:1em;
}

#order_form .right.col {
	border: none;
	margin:0px;
	overflow:hidden;
}
	
#OrderForm_OrderForm_action_processOrder {

	border:1px solid #dc0083;
	box-shadow:2px 2px 5px -1px #aaa;
background: #dd0083;
background: -moz-linear-gradient(top,  #dd0083 3%, #f735a8 100%);
background: -webkit-gradient(linear, left top, left bottom, color-stop(3%,#dd0083), color-stop(100%,#f735a8));
background: -webkit-linear-gradient(top,  #dd0083 3%,#f735a8 100%);
background: -o-linear-gradient(top,  #dd0083 3%,#f735a8 100%);
background: -ms-linear-gradient(top,  #dd0083 3%,#f735a8 100%);
background: linear-gradient(top,  #dd0083 3%,#f735a8 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#dd0083', endColorstr='#f735a8',GradientType=0 );


	margin: 20px 0px 0px 10px;
	width: 160px;
	height: 60px;
	display: block;
	float:right;
	color: #fff;
	font-size:15px;
	white-space: normal;
	word-wrap:break-word;
	font-weight:bold;
}
#Amount {
	font-size: 18px; 
	margin-top: 20px;
	margin-bottom: 20px; 
	border: 1px solid #22A9E8;
	padding: 20px 5px;
	text-align:center;
	color:#22A9E8;
	border-radius:12px;
}

#checkout_container {
	width: 100%;
}

#checkout_container td {
	vertical-align:top;
}

#checkout_container #InformationTable td {
	vertical-align:middle;
}

#checkout_container .cont-right {
	padding:15px 20px;
	background:#f3f3f3;
}

#checkout_container .cont-top-left {
}

#InformationTable .giftOptionBespokeAddress .fields-inner-left {
	width:47%;
	float:left;
}

#InformationTable .giftOptionBespokeAddress .fields-inner-right {
	width:48%;
	float:right;
}

#InformationTable .giftOptionBespokeAddress input,
#InformationTable .giftOptionBespokeAddress textarea,
#InformationTable .giftOptionBespokeAddress select {
	width:100%;
	border:2px solid #CBE5FD;
	box-sizing:border-box;
	padding:1px;
	text-align:left;
}

#InformationTable .giftOptionBespokeAddress textarea {
	height:160px;
	resize:none;
}

#InformationTable .giftOptionBespokeAddress input[type=radio],
#InformationTable .giftOptionBespokeAddress input[type=checkbox] {
	width:auto;
	border:1px solid #aaa;
	padding:0px;
}

#InformationTable .giftOptionBespokeAddress .label {
	width:80px;
	font-weight:bold;
}

.gift-option-description {
	line-height:21px;
	height:26px;
	overflow:hidden;
}

.expand-collapse-bespoke-address-image {
	display:block;
	float:left;
	margin-right:4px;
}

.expand-collapse-bespoke-address {
	display:block;
	float:left;
	height:21px;
	line-height:26px;
}

.expand-collapse-bespoke-address span.arrow {
	display:inline-block;
	width:10px;
	height:10px;
	line-height:10px;
	background:url(../images/arrow.png) no-repeat left center;
	*background-position:0px -2px;
}

.expand-collapse-bespoke-address.expanded span.arrow {
	background-position:-10px 0px;
	*background-position:-10px -2px;
}

.checkout--error-messages {
	width:100%;
	border-collapse:collapse;
	border-spacing:0;
	border:0;
	margin:0;
	padding:0;
}

#checkout_container #InformationTable tr.info-row td {
	padding:0px 24px 0px 8px;
}

#checkout_container #InformationTable tr.info-row .member_fields td {
	padding:4px 0px;
}

#OrderForm_OrderForm div.label {
	width: 24%;
	float: left;
	font-weight: bold;
	color: #666666;
    font-size: 12px;
}

#OrderForm_OrderForm div.field div.error {
	display: inline-block;
	width: 92%;
}

#order_form [type=text],
#order_form [type=email],
#order_form select,
#order_form [type=number] {
	width:100%;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
}

#OrderForm_OrderForm .EcommerceMailchimpOrderFormSignup_container {
	clear: both;
}

#OrderForm_OrderForm .EcommerceMailchimpOrderFormSignup_container div.label {
	width: auto;
	font-weight: normal;
	color: #000000;
	margin-top: 3em;
}

p#EcommerceMailchimpOrderFormSignupIAITV,
p#EcommerceMailchimpOrderFormSignupAcademy,
p#EcommerceMailchimpOrderFormSignupRiverside,
p#EcommerceMailchimpOrderFormSignup {
	float: left;
	width: 25%;
	font-weight:bold;
	color:#666666;
	margin-bottom:16px;
}

#OrderForm_OrderForm .EcommerceMailchimpOrderFormSignupAcademy_container div.label,
#OrderForm_OrderForm .EcommerceMailchimpOrderFormSignupIAITV_container div.label,
#OrderForm_OrderForm .EcommerceMailchimpOrderFormSignupRiverside_container div.label {
	float: none;
	width: 100%;
}

#order_form .text_container,
#order_form .email_container,
#order_form .checkbox_container,
#order_form .dropdown_container {
	margin-bottom: 1em;
}

.full-width-label {
	display: block;
	text-align: left;
	font-weight: bold;
	color: #666666;
	font-size: 12px;
	margin-bottom: 4px;
}

.order-form--payment-field {
	margin-bottom:8px;
}

#Checkout label.left {
	display:block;
	font-weight: bold;
	color: #666666;
	font-size: 12px;
	padding:0;
	margin:0;
}

.member_fields label {
	float:left;
	width:100px;
	line-height:21px;
}

.member_fields .middleColumn {
	overflow:hidden;
}

.order-form--payment-field .middleColumn {
	padding:0;
	width:auto;
	clear:none;
}

#OrderForm_OrderForm #CreditCardCvv2 {
	width:47%;
}

#order_form .order-form--payment-field input,
#order_form .order-form--payment-field select {
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	width:100%;
}

#order_form .order-form--payment-method {
	font-size:20px;
	margin-bottom:14px;
	overflow:hidden;
}

.order-form--payment-method-images {
	margin:0px -2px 12px -2px;
	font-size:0;
	line-height:0;
}

.order-form--payment-method-image {
	display:inline-block;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	max-width:25%;
	padding-left:2px;
	padding-right:2px;
	height:auto;
}

.order-form--payment-fields-wrapper {
	display:table;
	width:100%;
	border:0;
	border-collapse:collapse;
	border-spacing:0;
	padding:0;
}

.order-form--payment-fields-wrapper-inner {
	display:table-row;
}

#order_form .order-form--payment-fields-wrapper h2 {
	margin-bottom:12px;
	line-height:1.2;
	font-family:Arial, Helvetica, 'DejaVu Sans', 'Liberation Sans', Freesans, sans-serif;
	font-size:14px;
	font-weight:bold;
}

.order-form--payment-fields-left {
	display:table-cell;
	position:relative;
	width:44%;
	padding:12px 18px;
	background-color:#f6f6f6;
	min-height:290px;
}

.order-form--payment-fields-credit-card-unavailable {
	display:none;
	position:absolute;
	top:-4px;
	right:-4px;
	bottom:-4px;
	left:-4px;
	background:#f6f6f6;
	background:rgba(248,248,248,0.9);
	font-size:14px;
	font-weight:bold;
	line-height:1.3;
	color:#666666;
	text-align:center;
	padding:32px 48px;
}

.order-form--payment-fields-credit-card {
	position:relative;
}

.order-form--payment-fields-credit-card__faded {
	pointer-events:none;
}

.order-form--payment-fields-credit-card__faded .order-form--payment-fields-credit-card-unavailable {
	display:block;
}

.order-form--payment-fields-middle {
	position:relative;
	display:table-cell;
	font-weight:bold;
	font-size:24px;
	line-height:1;
	min-height:290px;
	text-align:center;
	text-transform:uppercase;
	padding:12px 4px;
}

.order-form--payment-fields-middle:after {
	position:absolute;
	display:block;
	content:"";
	width:1px;
	font-size:0;
	line-height:0;
	top:45px;
	bottom:0px;
	left:50%;
	background-color:#bbbbbb;
}

.order-form--payment-fields-right {
	display:table-cell;
	padding:12px 18px;
	background-color:#f6f6f6;
	min-height:290px;
	width:44%;
}

#Container #OrderForm_OrderForm_action_processPayWithCreditCard {
	padding-top:12px;
	padding-bottom:12px;
	font-size:14px;
	margin-top:16px;
	width:100%;
}

#OrderForm_OrderForm_action_processPayWithPayPal {
	width:100%;
	height:60px;
	-moz-box-sizing:border-box;
	box-sizing:border-box;
	border:0;
	padding:0;
	margin:87px 0 0 0;
	outline:0;
	background:url('../images/paypal-checkout.png') center no-repeat;
	background-size:contain;
	font-size:0;
	line-height:0;
	text-indent:-9999px;
	cursor:pointer;
	-o-transition:opacity 150ms;
	-ms-transition:opacity 150ms;
	-moz-transition:opacity 150ms;
	-webkit-transition:opacity 150ms;
	transition:opacity 150ms;
}

#OrderForm_OrderForm_action_processPayWithPayPal:hover {
	opacity:0.8;
}

.order-form--giftee-details {
	background:#f6f6f6;
	padding:12px 16px;
	margin-top:18px;
}

.order-form--giftee-details--table {
	font-size:12px;
	color:#333333;
	vertical-align:top;
}

.order-form--giftee-details--table-heading {
	width:43%;
	font-weight:bold;
}

.order-form--giftee-details--table-heading,
.order-form--giftee-details--table-body {
	vertical-align:top;
}

@media (max-width:60em) {
		/********************
	 * 
	 * CHECKOUT PAGE	
	 * 
	 ********************/
	
	#Checkout #checkout_container .cont-top-left {
		padding-right: 0px;
	}
	
	#Checkout #checkout_container {
		width: 100%;
	}
	
	#Checkout .right-column-float {
		width: 43%;
		float: right;
		position: relative;
		margin-top: -35%;
		margin-bottom: 30px;
		padding-right: 20px;
	}
	
	#Checkout.no-basket .right-column-float {
		margin-top: 0;
	}
	
	#Checkout .left-column-float {
		width: 100%;
	}
	
	#OrderForm_OrderForm .CompositeField {
		margin-left:0;
		margin-right:0;
		margin-bottom:0;
	}
	
	#OrderForm_OrderForm .CompositeField > .field {
		width:auto;
		padding:0;
		float:none;
		margin-bottom:8px;
	}
	
	html .order-form--payment-fields-wrapper,
	html .order-form--payment-fields-wrapper-inner,
	html .order-form--payment-fields-left,
	html .order-form--payment-fields-middle,
	html .order-form--payment-fields-right {
		display:block;
		width:auto;
		min-height:0;
	}
	
	html .order-form--payment-fields-middle:after {
		display:none;
	}
	
	html #OrderForm_OrderForm_action_processPayWithPayPal {
		margin-top:0;
		background-position:left;
	}
	
	html p#EcommerceMailchimpOrderFormSignupIAITV,
	html p#EcommerceMailchimpOrderFormSignupAcademy,
	html p#EcommerceMailchimpOrderFormSignupRiverside,
	html p#EcommerceMailchimpOrderFormSignup {
		width:auto;
		display:block;
		margin-bottom:0;
		float:none;
	}
	
	html p#EcommerceMailchimpOrderFormSignupAcademy {
		margin-bottom:16px;
	}
	
	#Checkout #OrderForm_OrderForm_action_processOrder {
		width: 80%;
		float: none;
		margin-left: auto;
		margin-right: auto;
	}
	
	html #order_form .left.col {
		width:50%;
	}
	
	#order_form div.label {
		display: none;
	}
	
	#order_form div.checkbox_container div.label {
		display: block;
		font-weight: normal;
		color: #999999;
	}
	
	#order_form div.dropdown_container div.label {
		display: block;
		padding: 0.8em 0 0 2em;
	}
	
	#Checkout #OrderForm_OrderForm div.dropdown_container div.field {
		width: 65%;
	}
	
	#Checkout #InformationTable .giftOptionBespokeAddress .fields-inner-left {
		float: none;
		width: 100%;
	}
	
	#Checkout .fields-inner-left table {
		width: 100%;
	}
	
	#Checkout #InformationTable .giftOptionBespokeAddress .fields-inner-right {
		float: none;
		width: 100%;
		margin-bottom: 1em;
	}
}

@media (max-width:40em) {
	html #order_form .left.col {
		float:none;
		width:auto;
		margin-right:0;
	}
	
	html #InformationTable th,
	html #InformationTable td {
		padding:5px;
		font-size:1em;
	}
}
