.cart_title {
	margin-bottom: 3rem
}

.cartcontent {
	background-color: #f6f7f8
}

.checkout-form fieldset {
	margin: 10px 0 0;
	padding: 0;
	vertical-align: top;
	border: none
}

.purchasedetails {
	vertical-align: center
}

.purchasedetails .required {
	font-weight: 700
}

.purchasedetails td {
	padding: 3px
}

.purchasedetails .label {
	text-align: right;
	width: 20%;
	vertical-align: middle
}

.purchasedetails p {
	margin: 0;
	padding: 0
}

.purchasedetails .field {
	text-align: left;
	vertical-align: middle
}

.cartcontent th {
	vertical-align: middle;
	background-color: var(--primary-clr);
	color: #fff;
	padding: 10px
}

.cm-cart-product-column {
	vertical-align: middle;
	-moz-border-top-left-radius: 5px;
	-webkit-border-top-left-radius: 5px;
	border-top-left-radius: 5px
}

.cm-cart-amount-column {
	vertical-align: middle;
	color: #fff;
	padding: 10px
}

.cm-cart-remove-column {
	-moz-border-top-right-radius: 5px;
	-webkit-border-top-right-radius: 5px;
	border-top-right-radius: 5px
}

.lineitem,
.rowodd {
	border-bottom: 1px solid #e6eaf0
}

.lineitem>td {
	padding: 10px
}

.cm-cart-remove-button-style {
	color: #efad1f
}

.cm-cart-remove-button-style:hover {
	text-decoration: none
}

.cm-cart-quantity {
	padding: 0.4rem 0.75rem;
	border-radius: .3rem;
	border: solid 1px #6e7477;
}

.cm_button_cancel,
.cm_button_checkout,
.cm_button_continue_shopping,
.cm_button_proceed,
.cm_button_recalculate {
	background-color: var(--primary-clr);
	color: #fff;
	border-radius: 0.3rem;
	padding: 1rem 2.5rem;
	text-align: center;
	transition: box-shadow .2s;
	border: 0px;
	font-size: 1.6rem;
	font-weight: 700;
	margin: 5px
}

.cm_button_cancel:hover,
.cm_button_checkout:hover,
.cm_button_continue_shopping:hover,
.cm_button_proceed:hover,
.cm_button_recalculate:hover {
	background-color: var(--secondary-clr);
	color: #000;
}

.cm-cart-has-products .cm-cart-table-cell-totals-label {
	font-weight: 600;
	width: 79%
}

.cm-cart-has-products .cm-cart-table-cell-totals-value {
	text-align: right;
	padding-right: 62px
}

.cm-cart-table-cell-totals-label {
	font-weight: 600;
	width: 81%
}

.cm-cart-table-cell-totals-value {
	text-align: right;
	padding-right: 36px
}

.cartinfo {
	margin-top: 30px
}

.voucher-container {
	margin-top: 60px
}

.invoice_details .fieldset_heading {
	padding-left: 0
}

.invoice_details input[type=email],
.invoice_details input[type=text],
.invoice_details select {
	padding: 0.4rem 0.75rem;
	border-radius: .3rem;
	border: solid 1px #6e7477;
}

.invoice_details .form-line {
	margin-bottom: 10px
}

.payment_gateways {
	border-bottom: 1px solid #ccc !important
}

.payment_gateways .fieldset_heading h3,
.terms_and_conditions .fieldset_heading h3 {
	color: #98700d
}

.checkout-gateways {
	font-weight: 400;
	color: #565a5c;
	letter-spacing: .01rem;
}

.terms_and_conditions .popupinline {
	text-decoration: underline;
	color: var(--primary-clr)
}

.cm-cart-remove-button-style {
	background-color: transparent;
	border: 0;
	text-decoration: underline;
	padding: 0;
	margin: 0;
	background-image: url("../images/trash.svg");
	background-repeat: no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	cursor: pointer;
	vertical-align: middle;
}

#cm-checkout-enrolment-notice {
	background-color: #f00;
	padding: 5px;
	color: #fff;
	margin-bottom: 10px;
}

#cm-checkout-enrolment-notice p {
	margin-bottom: 0px;
}

#cm-checkout-enrolment-notice p a {
	color: #fff;
	text-decoration: underline;
}

#cm-checkout-enrolment-notice p a:hover {
	text-decoration: none;
}

.cm-voucher-code-input {
	padding: 0.4rem 0.75rem;
	border-radius: .3rem;
	border: solid 1px #6e7477;
}

@media (max-width:480px) {

	.cartcontent,
	.cartinfo,
	.voucher-container {
		font-size: 70%
	}

	.cm_button_continue_shopping,
	.cm_button_recalculate {
		width: 100%;
		display: block;
		margin-bottom: 5px
	}

	.cm_button_cancel,
	.cm_button_checkout,
	.cm_button_proceed {
		width: 100%;
		display: block
	}

	.invoice_details input[type=email],
	.invoice_details input[type=text],
	.invoice_details select {
		width: 100%
	}
}
