/******************************************************** One-Page Checkout Styles ********************************************************/
div#columns {
	width: 100%;
	max-width: 100%;
	padding: 0px;
	margin: 0px;
}
div#columns .row {
	margin-left: 0px;
	margin-right: 0px;
}
div#columns div.center_column {
	display: flex;
	padding: 0px;
}
.alert a {
    text-decoration: underline;
    color: #000000;
    font-weight: bold;
}

h2, .h2 {
	float: left;
	width: 100%;
    font-size: 22px;
    color: #333333;
    margin-top: 20px;
    margin-bottom: 20px;
	text-align: center;
}
#order-opc {
	line-height: 20px;
}

#order-opc .box {
	float: left;
	width: 100%;
	padding: 14px 0px;
	border-radius: 8px;
}
.order_carrier_content {
    padding: 14px;
}

#order-opc .cart_navigation {
	margin-bottom: 0px;
}

#order-opc .page-heading.step-num {
	position: relative;
	padding-left: 45px;
	overflow: visible;
}

#order-opc .page-heading.step-num span {
	font-weight: bold;
	font-size: 42px;
	line-height: 51px;
	font-style: italic;
	color: #333;
	position: absolute;
	left: 10px;
	top: -14px;
}

#order-opc .form-group {
	margin-bottom: 15px;
}

#order-opc .form-group .form-control {
	width: 100%;
}

#order-opc .lost_password {
	display: inline-block;
	text-decoration: underline;
	margin: 5px 0 14px;
}

#order-opc .lost_password:hover {
	text-decoration: none;
}

#order-opc .title_block {
	font-weight: bold;
	color: #333;
	padding: 3px 0 6px;
}

#order-opc .opc-button {
	padding: 11px 0 0 0;
}

#order-opc ul.bullet {
	line-height: 22px;
	margin-bottom: 5px;
}

#order-opc .date-select {
	padding-bottom: 10px;
}

#order-opc .opc-add-save {
	float: left;
	width: 100%;
	padding: 0px 14px;
}

#order-opc #message {
	margin-bottom: 35px;
}

#order-opc #opc_payment_methods {
	margin-bottom: 30px;
}

#order-opc #opc_payment_methods p.warning {
	color: #F13340;
	font-weight: 700;
}

#order-opc #opc_account {
	margin-bottom: 30px;
}

#order-opc .address_delivery.select {
	margin-bottom: 40px;
	float: left;
	width: 100%;
}

#order-opc #address_invoice_form.form-group {
	margin-bottom: 30px;
}

#new_account_form .id_state,
#new_account_form .dni,
#new_account_form .postcode {
	display: none;
}

#opc-col-1 {
	display: none;
}
#opc-col-2 {
    order: 2;
    float: left;
    width: 100%;
    max-width: 1170px;
    margin: 0 auto;
}
#opc-col-1 {
    order: 1;
    float: right;
    width: calc(780px + ((100% - 1170px)/2));
    padding-left: calc((100% - 1170px)/2);
    padding-right: 20px;
}
#opc-col-2.compressed {
    width: calc(405px + ((100% - 1170px)/2));
    margin-right: 0px;
    background: #f5f5f5;
    padding-right: calc((100% - 1170px)/2);
    padding-left: 20px;
    float: right;
    order: 2;
}
@media screen and (max-width: 1199px) {
	#opc-col-1 {
		width: calc(580px + ((100% - 970px)/2));
		padding-left: calc((100% - 940px)/2);
		
	}
	#opc-col-2.compressed {
		width: calc(405px + ((100% - 970px)/2));
		padding-right: calc((100% - 940px)/2);
	}
	#opc-col-2 {
		max-width: 970px;
		padding-left: 15px;
		padding-right: 15px;
	}
}
@media screen and (max-width: 991px) {
	#opc-col-1 {
		width: calc(400px + ((100% - 750px)/2));
		padding-left: calc((100% - 720px)/2);
	}
	#opc-col-2.compressed {
		width: calc(405px + ((100% - 750px)/2));
		padding-right: calc((100% - 720px)/2);
	}
	#opc-col-2 {
		max-width: 750px;
		padding-left: 15px;
		padding-right: 15px;
	}
}
@media screen and (max-width: 767px) {
	div#columns div.center_column {
		display: block;
	}
	#opc-col-1 {
		padding-left: 15px;
		padding-right: 15px;
		width: 100%;
	}
	#opc-col-2.compressed {
		float: left;
		width: 100%;
		background: #fbfbfb;
		padding: 15px 15px 15px 15px;
		line-height: initial;
		margin: 0px;
		max-width: 100%;
		margin-top: -1px;
		margin-bottom: 15px;
	}
	#opc-col-2 {
		max-width: 100%;
		padding-left: 15px;
		padding-right: 15px;
	}
}
@media screen and (min-width: 768px) {
	#cart_summary {
		display: table !important;
	}
}
.cart_quantity .cart_quantity_input {
    text-align: center;
    width: 60px;
    height: 36px;
    float: left;
    border-radius: 0px;
    border-right: 0px;
    border-left: 0px;
    border-top: 1px solid #dedcdc;
    border-bottom: 1px solid #b5b4b4;
}
.table tbody>tr>td.cart_quantity {
    width: 152px;
}
@media (max-width: 767px)
{
	#order-detail-content #cart_summary td.cart_quantity {
		float: left;
		width: 100%;
	}
	#order-detail-content #cart_summary td.cart_unit .price {
		text-align: left;
		float: left;
	}
	.old-price {
		text-align: left;
		float: left;
	}
	#order-detail-content #cart_summary td.cart_total {
		float: right;
	}
	#order-detail-content #cart_summary td.cart_unit .price {
		text-align: right;
		float: right;
	}
	#order-detail-content #cart_summary td.cart_unit {
		float: left;
		width: 100%;
		text-align: left;
	}
	#order-detail-content #cart_summary td.cart_total {
		float: left;
		width: 100%;
		text-align: left;
	}
	.cart_quantity_wrapper {
		float: right;
	}
}
.table tbody>tr>td.cart_quantity .cart_quantity_button {
    margin: 0px;
    float: left;
}
.btn.button-plus, .btn.button-minus {
    float: left;
    margin: 0px;
}
#cart_summary tbody td.cart_product img {
    border: none;
	border-radius: 8px;
}
#cart_summary tfoot td.text-right, #cart_summary tfoot tbody td.cart_unit, #cart_summary tbody tfoot td.cart_unit, #cart_summary tfoot tbody td.cart_total, #cart_summary tbody tfoot td.cart_total {
    font-weight: normal;
}
#cart_summary tfoot td.total_price_container span {
    text-transform: none;
}
.price {
    font-size: 16px;
}
.special-price {
    color: #00ac35;
    font-weight: bold;
}
.table tfoot tr {
    background: none;
}
#cart_summary tfoot td#total_price_container {
    background: none;
    border-bottom: none;
}

div.compressed table#cart_summary {
	float: left;
	width: 100%;
	max-width: 390px;
}
div.compressed h1,
div.compressed table#cart_summary thead
{
	display: none;
}
div.compressed table#cart_summary tbody tr td {
	border: none;
}
div.compressed table#cart_summary,
div.compressed table#cart_summary tbody,
div.compressed table#cart_summary tbody tr,
div.compressed table#cart_summary tfoot,
div.compressed table#cart_summary tfoot tr,
div.compressed table#cart_summary tfoot tr td {
	display: block;
	float: left;
	width: 100%;
}
div.compressed table#cart_summary tfoot {
	margin-top: 2rem;
	padding-top: 2rem;
	border-top: 1px solid #c0c0c0;
}
div.compressed table#cart_summary tbody tr td {
	float: left;
}
div.compressed table#cart_summary tbody tr td:last-child {
	float: right;
}
div.compressed table#cart_summary {
	margin: 30px 0 0 0;
}
div.compressed table#cart_summary tbody td.cart_product {
    padding: 7px;
    width: 86px;
    position: relative;
}
div.compressed table#cart_summary tbody td.cart_product img {
	float: left;
	width: 100%;
	height: auto;
}
div.compressed table#cart_summary tbody td.cart_product span.product_quantity {
    position: absolute;
    top: 0px;
    right: 0px;
    z-index: 99;
    color: #FFFFFF;
    background: #d27e0a;
    font-weight: bold;
    padding: 2px 6px;
    border-radius: 8px;
}
div#cart_summary_toggle {
	display: none;
}
@media screen and (max-width: 767px)
{
	div.compressed table#cart_summary tbody tr td {
		width: auto !important;
	}
	div.compressed div#cart_summary_toggle {
		display: block;
		background: #d27e0a;
		color: #FFFFFF;
		width: calc(100% + 30px);
		margin: -15px;
		padding: 15px;
		cursor: pointer;
	}
	div.compressed div#cart_summary_toggle span.price {
		color: #FFFFFF;
		font-weight: bold;
	}
	div.full-width-override {
		padding-top: 0 !important;
	}
	div#center_column {
		display: block;
	}
	div.compressed {
		width: calc(100% + 30px);
		margin: 0 -15px;
		background: #f5f5f5;
		padding: 15px;
	}
	div.compressed table#cart_summary {
		display: none;
		float: left;
		width: 100%;
		max-width: 100%;
	}
	
}
#opc_new_account,
#carrier_area,
#payment_area {
    width: 100%;
    max-width: 780px;
    float: right;
    margin: 2rem 0;
	display: none;
	position: relative;
}
@media screen and (max-width: 767px) {
	#opc_new_account, #carrier_area, #payment_area {
		margin: -15px 0 0 0;
	}
}
.opc-overlay {
    display: flex;
    background: rgba(255, 255, 255, 0.75);
    float: left;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0px;
    left: 0px;
    z-index: 99;
	justify-content: center;
	align-items: center;
}
.opc-overlay i.fa-spinner {
    font-size: 72px;
    float: left;
    clear: both;
    width: 100%;
    margin-bottom: 10px;
    color: #000000;
}
.opc-overlay b {
    font-weight: bold;
    font-size: 16px;
    color: #000000;
}
#login_form_link {
	float: left;
	width: 100%;
	margin-bottom: 15px;
}
div.submit a {
	float: left;
	margin: 12px 0px;
}

div.compressed 	#order-detail-content #cart_summary tbody tr {
		border-left: none;
		border-right: none;
}
div.compressed #cart_summary tbody {
	border-top: none;
}
@media (max-width: 767px) {
	#order-detail-content #cart_summary tbody tr {
		padding-bottom: 7px;
		overflow: hidden;
		position: relative;
		border-left: 1px solid #e0e0e0;
		border-right: 1px solid #e0e0e0;
	}
	#cart_summary tbody {
		border-top: 1px solid #e0e0e0;
	}
	#cart_summary tfoot {
		border-bottom: none;
		border-left: none;
		border-right: none;
	}
}
div.compressed h2 {
	display: none;
}
td.cart_voucher button {
	margin-left: 5px;
}
td.cart_voucher .form-group,
td.cart_voucher fieldset {
	margin-bottom: 0px !important;
}
