


/********** CHECKOUT **********/



.checkout-page .section {
	margin: 0 0 30px;
}
.checkout-page .section.order-summary {
	margin: 100px 0 30px;
}

.checkout-page .cart-options {
	min-height: 60px;
	overflow: hidden;
}
.checkout-page .cart-footer {
	border-top: none;
}
.checkout-page .total-info {
	margin: 0;
	border-bottom: none;
	padding: 5px 20px 10px;
}

.checkout-page .button-1 {
	position:absolute;
	left: 50%;
	transform: translateX(-50%);
	bottom: 20px;
	display: inline-block;
	min-width: 240px;
	border: none;
	background-color: #4ab2f1;
	padding: 7px 30px;
	text-align: center;
	font-size: 18px;
	color: #fff;
	text-transform: uppercase;
}
.checkout-page .button-1:hover {
	background-color: #248ece;
}

.checkout-page .address-item {
	width: 350px;
	max-width: 100%;
	margin: 0 auto 40px;
}
.checkout-page .address-item ul {
	margin: 0 0 15px;
	background-color: #f9f9f9;
	padding: 20px;
	color: #444;
}
.checkout-page .address-item li {
	padding: 5px 0;
}
.checkout-page .address-item li.name {
	font-size: 16px;
	font-weight: bold;
}

.enter-address .message-error {
	margin: 20px 0;
}
.enter-address .edit-address {
    background-color: #f9f9f9;
    border-top: 1px solid #e6e6e6;
    margin: 0 0 30px;
    padding: 30px 15px;
}

.checkout-page .ship-to-same-address {
	padding: 30px 0;
	text-align: center;
}
.checkout-page .ship-to-same-address .selector {
	margin: 0 0 5px;
	font-weight: bold;
	color: #444;
}

.checkout-page .pickup-in-store {
	text-align: center;
}
.checkout-page .pickup-in-store .selector {
	margin: 0 0 5px;
	font-weight: bold;
	color: #444;
}

.select-pickup-point {
    text-align: center;
}
.checkout-page .pickup-points-map {
	min-width: 400px;
    min-height: 350px;
    vertical-align: middle;
    margin-top: 5px;
    margin-bottom: 5px;
}

.shipping-method .method-list,
.payment-method .method-list {
	margin: 0 auto 30px;
	overflow: hidden;
	text-align: center;
	font-size: 0;
}
.shipping-method .method-list li,
.payment-method .method-list li {
	margin: 20px 0;
	font-size: 14px; /*reset zeroing*/
}
	.shipping-method .method-list li label,
	.payment-method .method-list li label {
		font-weight: 500;
		font-size: 15px;
		line-height: 18px;
		color: #384150;
	}
.shipping-method .method-description {
	margin: 5px 0 0;
}

.payment-method .use-reward-points {
	margin: 0 0 30px;
	text-align: center;
	color: #444;
}
.payment-method .payment-logo {
	display: inline-block;
	vertical-align: middle;
}
.payment-method .payment-logo label {
	display: block;
	font-size: 0 !important;
}
.payment-method .payment-details {
	min-width: 180px;
	display: inline-block;
	margin: 0 0 0 10px;
	text-align: left;
	vertical-align: middle;
}

.payment-info .info {
	padding: 30px 15px;
	color: #444;
}
.payment-info .info tr {
	display: block;
	margin: 0 0 15px;
	font-size: 0;
}
.payment-info .info td {
	display: inline-block;
	width: 100% !important;
	max-width: 400px !important;
	font-size: 14px; /*reset zeroing*/
}
.payment-info .info td:only-child {
	width: 100% !important;
	max-width: 100% !important;
}
.payment-info .info td input[type="text"] {
	width: 100% !important;
}
.payment-info .info td input[name="CardCode"] {
	width: 65px !important;
}
.payment-info .info td select {
	min-width: 70px;
}
.payment-info .info td:first-child {
	margin: 0 0 10px;
}
	.payment-info .info p {
		text-align: left;
		color: #7D828B;
		font-size: 14px;
		font-style: normal;
		font-weight: 500;
	}
.spc .estimate-shipping .title,
.spc .estimate-shipping .hint {
	text-align: left;
	margin-bottom: 5px;
}
	.spc .estimate-shipping .shipping-options .inputs:first-child {
		margin-top: 10px;
	}
	.confirm-order .buttons {
		padding: 10px 0;
	}
.confirm-order .button-1 {
	font-size: 16px;
}

.order-review-data > div,
.order-details-area > div,
.shipment-details-area > div {
	width: 350px;
	max-width: 100%;
	margin: 0 auto 40px;
	background-color: #f9f9f9;
	padding: 20px;
	color: #444;
}
.order-review-data li,
.order-details-area li,
.shipment-details-area li {
	padding: 3px 0; 
}
.order-review-data .title,
.order-details-area .title,
.shipment-details-area .title {
	margin: 0 0 5px;
	padding: 0;
	font-size: 16px;
	font-weight: bold;
}
.order-review-data .title strong,
.order-details-area .title strong,
.shipment-details-area .title strong {
    font-weight: 700;
}
.order-review-data .payment-method-info,
.order-review-data .shipping-method-info,
.order-details-area .payment-method-info,
.order-details-area .shipping-method-info {
    margin-top: 20px;
}
.order-completed .details {
	margin: 0 0 30px;
	padding: 30px 15px;
	text-align: center;
	color: #444;
}
.order-completed .details div {
	margin: 5px 0;
}
.order-completed .details strong {
	font-weight: normal;
	text-transform: uppercase;
}
.order-completed .details a {
	color: #4ab2f1;
}
.order-completed .details a:hover {
	text-decoration: underline;
}

.opc .step-title {
    margin: 0 0 1px;
    overflow: hidden;
    background-color: #FAFAFB;
    border-bottom: 1px solid #CDD1D4;
}

.opc .checkout-options .step-title {
	background-color: white;
}

.opc .checkout-totals .step-title {
	background-color: white;
	border: none;
}
.opc .checkout-options .step-title .title{
	padding: 10px 0px;
}

.opc .checkout-totals .step-title .title{
	padding: 10px 0px;
}
	.opc .allow .step-title {
		background-color: #4ab2f1;
		cursor: pointer;
	}
.opc .step-title .number,
.opc .step-title .title {
	text-transform: capitalize;
	float: left;
	min-height: 40px;
	padding: 10px 15px;
	line-height: 20px;
	font-size: 16px;
	font-weight: normal;
}
.opc .step-title .title {
    color: #226CC3;
    font-weight: bold;
    font-size: 18px;
    line-height: 22px;
}
.opc .allow .step-title .number,
.opc .allow .step-title .title {
	color: #fff;
	cursor: pointer;
}
.opc .step-title .number {
	width: 42px;
	border-right: 1px solid #fff;
	text-align: center;
}
.opc .allow .step-title .number {
	background-color: #248ece;
}
.opc .step {
	margin: 10px 0;
	padding: 30px 15px;
	text-align: center;
}
.opc .section {
	margin: 0 0 30px;
}
	.opc .section > label {
		display: block;
		margin: 0 0 10px 4px;
		color: #384150;
	}
.opc input[type="text"],
.opc input[type="tel"],
.opc select {
	max-width: 100%;
	border: 1px solid #D5D5DA;
	box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.05);
	border-radius: 3px;
}
.opc .checkout-attributes select {
	width: 100%;
}
.spc .estimate-shipping-button {
	padding: 10px 20px;
	border: none;
	border-radius: 3px;
}
	.spc .estimate-shipping-button:hover {
		color: black;
		box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.05);
	}
	.opc .buttons {
		margin-bottom: 0;
	}
.opc .back-link {
	margin: 0 0 10px;
}
.opc .back-link small {
	display: none;
}
.opc .back-link a {
	display: inline-block;
	margin: 0 0 0 -15px;
	background: url('../images/back-button.png') left center no-repeat;
	padding: 0 0 0 18px;
	color: #444;
}
.opc .back-link a:hover {
	color: #4ab2f1;
}
.opc .buttons .please-wait {
	display: block;
	margin: 10px 0 0;
    background: none;
}
.opc .section.ship-to-same-address {
	margin: 0 0 30px;
	padding: 0;
}
.opc .section.pickup-in-store {
	margin: 0 0 30px;
	padding: 0;
}
.opc .payment-info .info tr {
	text-align: left;
}
.opc .section.order-summary {
	margin: 0;
}




/*** CHECKOUT ***/


.order-progress {
	margin: -30px 0 50px;
}
.checkout-page .address-item {
	width: 31.33333%;
}
.checkout-page .terms-of-service {
	text-align: center;
}
.payment-info .info {
	padding: 30px 15px;
}
.payment-info .info td:first-child {
	width: 265px !important;
	margin: 0 10px 0 0;
	text-align: right;
}
.payment-info .info td:only-child {
	width: 100% !important;
}
.order-review-data .title,
.order-details-area .title,
.shipment-details-area .title {
	text-align: left;
}
.opc .order-review-data ul {
	text-align: left;
}

#checkout-step-confirm-order {
    position: relative;
}
#checkout-step-payment-info {
    position: relative;
}
#checkout-step-payment-method {
    position: relative;
}
#checkout-step-shipping-method {
    position: relative;
}
.spc .opc {
	border: 1px solid #E1E2E2;
	box-shadow: 0px 3px 20px rgba(0, 0, 0, 0.05);
}
.spc .spc-collumn.left {
	border-right: 1px solid #E1E2E2;
}

.spc-billing {
	background: #FAFAFB;
}
.spc .inputs label {
	text-align: left;
	margin: 0 0 5px 1px;
}
.spc .inputs {
    position: relative;
}
.spc .inputs .required {
    position: absolute;
    top: 3px;
    right: 8px;
}
.spc .cart td, .spc .data-table td, .spc .forum-table td {
    padding: 10px;
}
.spc td.product-picture img {
    max-width: 60px;
}
.spc .cart .remove-from-cart {
    text-align: left;
}
.spc .inputs input[type="text"],
.spc .inputs input[type="email"],
.spc .inputs input[type="tel"],
.spc .inputs input[type="password"],
.spc .inputs select,
.spc .inputs textarea {
    display: block;
}
.spc .inputs input[type="email"] {
	border: 1px solid #D5D5DA;
	box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.05);
	border-radius: 3px;
}
.spc .p-qty--counter {
	position: relative;
}
.spc .p-qty--counter button {
    position: absolute;
    top: 0;
    height: 100%;
    border: none;
    width: 20px;
}
.p-qty--counter button.btn-minus {
    left: 0;
}
.p-qty--counter button.btn-plus {
    right: 0;
}
.spc .cart td.quantity input {
    width: 70px;
    text-align: center;
    padding: 0 20px;
}
.spc, .spc * {
    font-size: 15px;
}
.spc .checkout-data {
    text-align: left;
}
.spc .section.ship-to-same-address,
.spc .section {
    margin: 0 0 15px;
}
.spc .selector {
    text-align: left;
}
.spc .step,
.spc .enter-address .edit-address {
    margin-top: 0;
    padding: 15px;
    background: #FAFAFB;
}
	.spc .right .step {
		padding: 15px 0 0 0;
	}
	.spc .right .step {
		background: white;
	}
	.spc .shipping-method .method-list,
	.spc .payment-method .method-list {
		overflow: visible;
	}
.spc .shipping-method .method-name {
	background: #FFFFFF;
	box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.15);
	border-radius: 3px;
	padding: 10px;
}

.shipping-method .method-description {
	margin: 10px 0 0px 0px;
	font-size: 15px;
	font-style: italic;
	color: #7D828B;
}
.spc .shipping-method .method-list li, 
.spc .payment-method .method-list li {
    display: block;
    width: 100%;
    text-align: left;
    float: none;
    padding: 5px;
}
.spc .payment-method .method-list li {
	background: #FFFFFF;
	box-shadow: 0px 1px 5px rgba(0, 0, 0, 0.15);
	border-radius: 3px;
}

.spc .payment-method .payment-logo {
	background: #FFFFFF;
}
.spc .shopping-cart-page .checkout-attributes {
	margin-top: 10px;
}
.spc .cart-options .checkout-attributes {
	padding-left: 0px;
	margin-bottom: 5px;
}
.spc .cart-options .selected-checkout-attributes {
	font-style: italic;
}
.spc .checkout-attributes dd {
	margin: 0;
}
.spc .cart-collaterals {
	padding-top: 0px;
}
.spc .cart-footer {
	display: flex;
	flex-wrap: wrap;
	justify-content:space-between;
	margin: 20px 0px;
}
.spc .cart-collaterals .coupon-code input[type="text"] {
	width: 47%;
}
.spc .cart-collaterals .button-2 {
	padding: 10px 7px;
}
.spc .cart-footer .cart-collaterals {
	width: 300px;
}
.spc .spc-payment-method .step.a-item {
	margin-bottom: 0px;
}
.spc .order-total,
.spc .order-total strong {
	color: #384150;
	font-weight: bold;
}
.checkout-page .cart-footer .totals {
	width: 330px;
	position:relative;
	background: #FFFFFF;
	border: 1px solid #D5D5DA;
	box-shadow: 0px 1px 10px rgba(0, 0, 0, 0.1);
}
.spc .total-info {
	padding-bottom: 70px;
}
.spc .earn-reward-points {
	color: #8D9299;
}
.spc .cart-options .checkout-attributes {
	padding-left: 0px;
	float: none;
	width: 100%;
}
.spc .cart-options .selected-checkout-attributes {
	float: none;
	width: 100%;
	text-align: left;
}
.spc .cart-options .selected-checkout-attributes {
	margin-top: 0;
	padding: 0px;
}
.product-item .product-box-add-to-cart-button-checkout {
    display: block;
    padding: 0 10px;
    margin: auto;
    background: #db0000;
    color: #fff;
    width: 100%;
}

.overview .add-to-cart-checkout-button {
    height: 43px;
    border: none;
    background-color: #db0000;
    padding: 0 24px;
    font-size: 15px;
    color: #fff;
    text-transform: uppercase;
    margin: 0 4px;
}

.add-to-cart-panel {
    vertical-align: bottom;
}
@media(min-width: 1010px) {
	.spc-row {
			display: flex;
			margin: 0 -15px;
		}

		.spc-collumn.left {
			width: 40%;
			margin: 0 15px;
		}

		.spc-collumn.right {
			width: 57%;
			padding: 0 15px;
		}
	}
@media(max-width: 1370px) {
	.checkout-page .cart-footer .totals {
		width: 350px;
	}
}

@media(max-width: 1010px) {
	.spc .cart-footer {
		margin-bottom: 0px;
	}
}

@media(max-width: 700px) {
	.spc .cart-footer {
		justify-content: center;
	}
	.spc .opc .checkout-options .step-title,
	.spc .opc .checkout-totals .step-title {
		display: flex;
		justify-content: center;
	}
}
