body,
html {
	box-sizing: border-box;
}

* {
	box-sizing: inherit;
}

#content_area.wrap.payments {
	margin-top: 4em;
}

#fancybox-content {
	border-color: #dedede !important;
	/* or whatever */
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#b5bdc8+0,828c95+36,28343b+100;Grey+Black+3D */
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f9c0c3+0,f7aab7+36,93304a+100 */
	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#f9c0c3+0,f7aab7+90,93304a+100 */
	background: #dedede;
	/* Old browsers */
}

a {
	cursor: pointer;
}

#content_area.payments #content {
	width: 100%;
}

#cartContainer,
#cpShipContainer {
	border: 1px dashed;
	padding: 1em;
	display: flex;
	margin-top: 1em;
}

#cpShipContainer {
	border: none;
	flex-direction: column;
}

#cpShipContainer .borderedFieldset {
	border: 1px dashed #000;
}

#cpShipContainer .cartRow {
	xxborder-bottom: 1px dashed #000;
	padding: 5px;
}

#cartHeaderRow,
.cartRow {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	text-align: left;
	padding-bottom: 5px;
}

#cartHeaderRow span {
	font-weight: 800;
}

.cartRow span:first-child {
	width: 40%;
}

#cpShipContainer .cartRow span:first-child {
	width: 40%;
}

.cartRow span:nth-child(2) {
	width: 30%;
}

.cartRow span:nth-child(3) {
	width: 20%;
}

.cartRow span:nth-child(4) {
	width: 15%;
}


@media screen and (max-width: 400px) {
	#cartHeaderRow {
		display: none;
	}

	#cmsPopup h2 {
		font-size: 1.05rem;
	}

	.cartRow span:first-child {
		width: 100%;
	}

	#cpShipContainer .cartRow span:first-child {
		width: 100%;
	}

	.cartRow span:nth-child(2) {
		width: 100%;
	}

	#cpShipContainer .cartRow span:nth-child(2) {
		width: 30%;
	}

	.cartRow span:nth-child(3) {
		width: 100%;
	}

	#cpShipContainer .cartRow span:nth-child(3) {
		width: 70%;
	}

	.cartRow span:nth-child(4) {
		width: 100%;
	}

	.cartRow .removeOrderItem::after {
		vertical-align: top;
		font-size: .9rem;
		content: '- remove item';
	}
}

#cmsPopup {
	padding: .5em 1em;
}

div.payButton,
a.clearCart {
	padding-left: 1em;
}

div.error {
	font-size: 1.2em;
	font-weight: 600;
	color: #ff0000;
	margin-bottom: 1em;
}

/* form elements */
form#purchaseForm {
	padding: 1em;
	border: 1px solid #cccccc;
	border-radius: 3px;
	xxmin-width: 380px;
	xxmax-width: 25%;
	margin-top: 2em;
	background: #fff;
	display: flex;
	flex-direction: column;
}

form#confirmForm input.confirmButton,
form#confirmForm input.cancelbtn,
button.confirmPay {
	width: 100%;
	padding: 1rem 2rem;
	text-transform: uppercase;
	font-size: 1.15em;
	border: none;
	font-weight: 400;
	letter-spacing: 1px;
	margin-top: .25rem;
	cursor: pointer;
}

form#confirmForm input.cancelbtn {
	background: #ccc;
	color: #000;
}

form#confirmForm input.cancelbtn:hover {
	background: #aaa;
}

form#confirmForm input.confirmButton,
button.confirmPay {
	background: #0f75bc;
	color: #ffffff;
}

form#confirmForm input.confirmButton:hover,
button.confirmPay:hover,
button.altPayButton:hover {
	background: #225880;
}

@media all and (max-width: 550px) {
	form#purchaseForm {
		margin: 2em auto;
	}
}

form#purchaseForm h2 {
	margin-top: 0;
	color: #293032;
}

form#purchaseForm fieldset {
	display: block;
	clear: both;
	margin: 1em 0;
	width: 100%;
}

#purchaseForm label,
#purchaseForm input[type=text],
#purchaseForm input[type=email],
#purchaseForm select {
	display: block;
}

#purchaseForm input[type=email],
#purchaseForm input[type=text],
#purchaseForm select {
	font-size: 1.1em;
	width: 100%;
	margin-bottom: 10px;
	border: 1px solid #c0c0c0;
}

#purchaseForm select {
	width: 100%;
}

#purchaseForm a.purButton,
#purchaseForm a.purButton.set,
#purchaseForm input.purButton,
#cmsPopup a.payButton,
input.purButton {
	display: block;
	padding: 5px;
	font-size: 1.1em;
	font-weight: 300;
	background: #4f4f4f;
	text-align: center;
	color: #fff;
	margin-bottom: 10px;
}

#purchaseForm a.purButton,
#cmsPopup a.payButton {
	width: 100%;
}

#purchaseForm input.purButton,
#cmsPopup a.payButton {
	border: none;
	cursor: pointer;
}

#purchaseForm input.purButton:disabled {
	background: #cdcdcd;
}

#purchaseForm .purButton:hover,
#purchaseForm .purButton.set,
#cmsPopup a.payButton.set,
#cmsPopup a.payButton:hover {
	background: #000000;
}

#purchaseForm fieldset.shipto {
	display: none;
}

.receipt {
	width: 50%;
}

.receipt hr {
	margin-bottom: 1em;
}

/* cart */
table.cartTable {
	min-width: 360px;
}

.cartTable th {
	font-size: 1.1em;
	font-weight: 600;
	border: none;
}

.cartTable td {
	vertical-align: middle;
	padding-right: 5px;
}

.cartTable a.removeOrderItem {
	font-size: 2em;
	font-weight: 600;
	float: right;
	color: #293032 !important;
}

.cartTable button#updateCartBtn {
	padding: 5px 15px;
	color: #fff;
	background: #4f4f4f;
	xborder-radius: 6px;
	border: 1px solid #999;
	cursor: pointer;
	font-size: 1em;
	font-weight: 400;
	margin-top: 1em;
}

.cartTable button#updateCartBtn:hover,
.cartTable button#updateCartBtn:active {
	background: #000000;
}

td.addremoveContainer {
	font-size: 1.5em;
}

td.addremoveContainer a {
	font-size: 1.2em;
}

.cartTable hr.dashed {
	border: 0;
	border-bottom: 1px dashed #ccc;
	background: #999;
}

button.cartButton {
	margin: 1em 0;
	font-size: .9em;
	padding: 3px 5px;
	border: 1px solid #464646;
	border-radius: 6px;
	cursor: pointer;
}

button.cartButton:hover {
	box-shadow: 1px 1px 2px 3px #bbb;
}

#discountbox {
	margin-top: 1em;
	padding-bottom: 1em;
	text-align: right;
	border-bottom: 1px dashed #464646;
}

#discountbox label {
	padding-bottom: 6px;
	width: auto;
}

#discountbox input, input#giftcard {
	width: 200px;
	margin-left: 1em;
	margin-bottom: 1em;
	padding: 4px 6px;
}

#discountbox input[type=radio] {
	width: auto;
}

.payContainer {
	display: flex;
	justify-content: space-between;
}

.returnbtnContainer {
	padding: 0 1em;
	text-align: right;
	margin-bottom: -.5em;
}

.addDiscount,
a.addDiscount,
a.displayAddDiscount,
a.giftcardSubmit {
	padding: 4px 10px;
	color: #ffffff !important;
	background: #4f4f4f;
	cursor: pointer;
	font-weight: 400;
	margin-left: 1em;
	vertical-align: middle;
}

.addDiscount:hover,
.addDiscount:active,
.displayAddDiscount:hover,
.displayAddDiscount:active,
a.giftcardSubmit:hover,
a.giftcardSubmit:active {
	background-color: #000000;
}

.checkoutbtn,
a.checkoutbtn {
	padding: 5px 10px;
	color: #ffffff !important;
	background: #4f4f4f;
	cursor: pointer;
	font-weight: 400;
	float: right;
	margin-top: 6px;
}

a.returnbtn {
	padding: 5px 10px;
	color: #ffffff !important;
	background: #4f4f4f;
	cursor: pointer;
	font-weight: 400;
	margin-top: 6px;
}

.checkoutbtn:hover,
.checkoutbtn:active,
.returnbtn:hover,
.returnbtn:active,
input[type=submit].confirmDelivery:hover {
	background: #000;
}

.hilite {
	float: left;
	padding: .35em;
	background: rgba(255, 255, 0, .5);
}

.creditnote {
	color: var(--brand-a);
}

#paybuttonform input[type=image] {
	opacity: 100%;
}

#paybuttonform input[type=image]:hover,
#paybuttonform input[type=image]:active,
button#alternatePaymentBtn:hover,
button#alternatePaymentBtn:active,
button.altPayButton:hover,
button.altPayButton:active {
	opacity: 70%;
}

input[type=submit].confirmDelivery {
	display: block;
	padding: 5px;
	font-size: 1.1em;
	font-weight: 300;
	background: #4f4f4f;
	text-align: center;
	color: #fff;
	margin-bottom: 10px;
	cursor: pointer;
}

button#alternatePaymentBtn,
button.altPayButton {
	background-color: var(--brand-a);
	border: none;
	color: var(--brand-a-color);
	padding: 10px 20px;
	text-align: center;
	text-decoration: none;
	display: inline-block;
	margin: 4px 2px;
	cursor: pointer;
	border-radius: 25px;
	width: 227px;
	height: 44px;
	opacity: 100%;
}

#payChoicesContainer {
	display: flex;
	justify-content: space-between;
}