/*
 * @category   JM Extensions
 * @package    JM_Horizandal_Checkout
 * @copyright  Copyright (c) 2013  JMInfotech, http://www.jminfotech.org
 * @license    http://opensource.org/licenses/MIT
 * @author     JMInfotech <support@jminfotech.org>
 */

@font-face {
	font-family: 'FontAwesome';
	src: url('../fonts/fontawesome-webfont.eot?v=4.1.0');
	src: url('../fonts/fontawesome-webfont.eot?#iefix&v=4.1.0') format('embedded-opentype'), url('../fonts/fontawesome-webfont.woff?v=4.1.0') format('woff'), url('../fonts/fontawesome-webfont.ttf?v=4.1.0') format('truetype'), url('../fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular') format('svg');
	font-weight: normal;
	font-style: normal;
}
.block-progress .block-title {
	background: none;
	margin: 0 0 34px;
	padding: 0;
}
.checkout-onepage-index .col-main {
	padding: 0;
	border: 0;
}
.checkout-onepage-index .page-title {
	/*padding-right: 40px;*/
	width: auto;
}
.checkout-onepage-index .page-title h1 {
	background: none;
	padding: 0;
}
ol#checkoutSteps {
	max-width: 940px;
	margin:0 auto;
}
ol#checkoutSteps li#opc-login, ol#checkoutSteps li#opc-billing, ol#checkoutSteps li#opc-shipping, ol#checkoutSteps li#opc-shipping_method, ol#checkoutSteps li#opc-payment, ol#checkoutSteps li#opc-review {
	display: block;
	float: left;
	width: 16.6%;
}
ol#checkoutSteps li div.step {
	opacity: 0;
	display: none;
	z-index: 0;
	width: 100%;
}
ol#checkoutSteps li.active div.step {
	opacity: 1;
	display: block;
	z-index: 1;
	width: 100%;
	padding: 0px;
}
ol.opc .step {
	padding: 0px;
	position: absolute;
	border: 0;
	top: 100px;
	left: 0;
	z-index: 1;
	background: #fff;
	border-bottom: 1px dotted #ccc;
	border: none;
	background: none;
	text-align: left;
	background: #FBFAF6;
	border-top: 1px solid #BBAFA0;
}
.opc:first-of-type .step {
	-webkit-transition: all 0.5s ease-in-out;
	-moz-transition: all 0.5s ease-in-out;
	-o-transition: all 0.5s ease-in-out;
	-webkit-transition: all 0.5s ease-in-out;
	transition: all 0.5s ease-in-out;
}
.opc:first-of-type .step[style*='display:none;'], .opc:first-of-type .step[style*='display: none;'] {
	display: block;
}
.opc:first-of-type .active .step {
	left: 0;
}
.opc:first-of-type .section .step {
	left: 100%;
}
.opc:first-of-type .allow .step {
	left: -100%;
}
.opc .form-list .field, .opc .form-list .wide {
}
.opc .form-list li fieldset {
	margin-bottom: 40px;
}
.opc .form-list label {
	float: left;
	text-align: right;
}
.opc .form-list label.required em {
	float: none;
	position: relative;
	right: 4px;
}
.opc .form-list li.fields {
	margin: 0;
}
.opc .form-list div.fields {
	width: 100%;
	overflow: hidden;
	margin: 0 0 8px;
}
.opc .form-list .wide, .opc .form-list li.fields .field {
	margin: 0 0 8px;
}
.opc .form-list li.wide .input-box, .opc .form-list .input-box {
}
.opc .form-list li.wide select {
}
.opc .form-list li.wide input.input-text {
}
.opc .form-list .control input {
	margin: 8px 0 0 25px;
}
.opc .form-list li.control label {
	padding-left:0px;
	float: left;
}
.opc form .form-list li.wide {
	width: 100%;
	padding: 5px 0;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.opc form .form-list li.wide label {
	clear: both;
	display: block;
	text-align: left;
	width: 100%;
}
.step .fieldset p.required {
	float: left;
	margin: 0;
	padding-left: 1.5%;
	padding-top: 10px;
	text-align: left;
	display: block;
	clear: both;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width: 100%;
}
.opc form .address-select {
	margin: 8px 0 40px;
	width: 200px;
}
.opc .buttons-set {
	margin: 15px 0 0;
	opacity: 1!important;
	padding-top: 5px;
}
.opc .buttons-set p.required {
	margin: 0;
	padding: 0 0 10px;
}
.opc .buttons-set .back-link {
	display: none;
}
.opc .buttons-set .please-wait {
	position: absolute;
	z-index: 99;
	bottom: 50%;
	left: 50%;
	margin: 0px 0 0 -94px;
	border: 5px solid #f3b66f;
	font-size: 12px;
	background: #fff;
	padding: 24px 30px 44px;
	white-space: nowrap;
	border: 1px solid #c0c0c0;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
	border-radius: 6px;
	-moz-box-shadow: 1px 1px 2px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: 0 0 50px rgba(0, 0, 0, 0.2);
	box-shadow: 0 0 50px rgba(0, 0, 0, 0.2);
}
.opc .buttons-set a {
	color: #214D90;
}
.opc .ul {
	list-style: disc outside;
	padding-left: 18px;
}
.opc li.section {
	display: inline;
}
#checkout-step-review.step {
}
#opc-review .step {
	padding: 30px 20px;
	border-top: 1px solid #BBAFA0;
}
#opc-review .product-name {
	font-weight: bold;
}
#opc-review .item-options {
	margin: 5px 0 0;
}
#opc-review .buttons-set {
	padding: 20px 0;
	border: 0;
}
#opc-review .buttons-set p {
	margin: 0;
	line-height: 40px;
}
#opc-review .buttons-set .please-wait {
	height: 40px;
	line-height: 40px;
}
#opc-shipping_method .buttons-set {
	border-top: 1px solid #E4E4E4;
}
.opc:first-of-type .active .step {
	left: 0;
}
#checkout-step-review.step {
	width: 100%;
	/*padding: 0px !important;*/
}
.opc {
	background: none repeat scroll 0 0 rgb(249, 243, 227);
	border: 1px solid rgb(187, 175, 160);
	min-height: 421px;	
	padding-top: 20px;
	position: relative;
	text-align: center;
}
/*top steps*/
ol.opc .section.active .step-title {
	border: 0px;
}
.opc .section.allow:not(.active) .step-title a {
}
.no-touch ol.opc .section.allow:not(.active) .step-title:hover {
	background: none;
}
ol.opc .section .step-title {
	border: 0 none;
	background: none;
	width: 100%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position: inherit;
	padding: 0px;
}
ol.opc li.section div.step-title > span.number, ol.opc .section .step-title .number, ol.opc .section.allow.active .step-title .number, .no-touch ol.opc .section.allow:hover .step-title .number {
	-webkit-border-radius: 20px;
	-moz-border-radius: 20px;
	border-radius: 20px;
	border-radius: 20px;
	clear: both;
	display: block;
	margin: 0 auto !important;
	width: 26px;
	height: 26px;
	position: relative;
	padding: 0px !important;
	float: none;
	z-index: 1;
	text-align: center;
	top: 0px;
	left: 0px;
	line-height: 26px;
}
ol.opc li.section div.step-title h2 {
	font-size: 14px;
	height: auto;
	margin: 0;
	text-align: center;
	text-transform: capitalize;
	width: 100%;
	line-height: 20px;
}
#payment_form_ccsave li label {
	width: 25%;
	margin-right: 1%;
	text-align: left;
}
/*header dashed line*/
ol.opc:first-of-type .step-title a {	
	display: block;
	height: 1px;
	position: relative;
	text-indent: 999999999px;
	top: -13px;
	width: 100%;
	z-index: 0;
	float: none;
}
ol.opc:first-of-type li:last-child .step-title a {
	width: 50%;
}
ol.opc:first-of-type li:first-child .step-title a {
	width: 50%;
	left: 50%;
}
ol.opc:first-of-type .allow .step-title a {
}
ol.opc .section.allow:not(.active) .step-title a {
	float: none;
	height: 1px;
	padding: 0px;
	line-height: 1px;
}
/*header dashed line ends */

/*Horizontal Checkout First Step - checkout-step-login - Starts*/
body:not(.opc-has-progressed-from-login) ol.opc.opc-firststep-login #opc-login.section .step-title .number {
	margin: 0 auto !important;
	width: 26px;
	height: 26px;
	position: relative;
	left: 0px;
	top: 0px;
}
#opc-login p.required {
	display: none;
}
#opc-login h3 {
	margin-bottom: 18px;
}
#opc-login .col-2 form fieldset h4 {
	display: none;
}
#opc-login .col-2 fieldset {
	width: 100%;
}
#opc-login .col-2 .input-box {
	margin: 0;
	float: left;
}
#opc-login .col-2 .input-text {
	width: 100%;
}
#opc-login .col-2 .form-list label {
	text-align: left;
}
#opc-login .col-2 .form-list label {
	width: 30%;
}
ol#checkoutSteps #login-form .form-list > li {
	width: 100%;
	float: left;
}
#opc-login .form-list li.control {
	clear: both;
	float: left;
	margin-bottom: 0;
	width: auto;
	margin-top: 10px;
}
#opc-login .form-list {
	display: block;
	clear: both;
	float: left;
	width: 100%;
	margin-bottom: 10px;
}
#opc-login .form-list li.control label {
	float: left;
	clear: right;
	text-align: left;
	padding: 0px;
	background: #FBFAF6;
}
#opc-login .form-list li.control input {
	margin: 7px 8px 0 0;
	padding: 0px;
	background: #FBFAF6;
	float: left;
}
#opc-login .col-1 {
	width: 50%;
	float: right;
	padding: 1.5% 1.5% 5px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#opc-login .col-2 {
	width: 50%;
	float: left;
	padding: 1.5% 1.5% 5px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#opc-login .col-1 h4, #opc-login .col-1 .ul {
	display: none;
}
body:not(.opc-has-progressed-from-login) ol.opc.opc-firststep-login .section:not(#opc-login) .step-title, body:not(.opc-has-progressed-from-login) .opc-block-progress-step-login {
	opacity: 99999;
}
#billing-new-address-form fieldset input.input-text {
	width: 254px;
}
#billing-new-address-form .fieldset input.input-text, #billing-new-address-form .fieldset select {
	width: 342px;
}
#checkout-step-billing fieldset li.fields div.field, #shipping-new-address-form fieldset li.fields div.field {
	width: 100%;
	display: block;
	clear: both;
}
#checkout-step-billing fieldset .fields .customer-name .field {
	width: 100%;
	display: block;
	clear: both;
}
#billing-new-address-form fieldset .fields:first-child div.field, #shipping-new-address-form fieldset .fields:first-child div.field {
	width: 100%;
	display: block;
	clear: both;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#billing-new-address-form fieldset input.input-text, #billing-new-address-form fieldset input[type="text"], #shipping-new-address-form fieldset input.input-text, #shipping-new-address-form fieldset input[type="text"], select#shipping-address-select, select#billing-address-select {
	width: 254px;
}
select#shipping-address-select, select#billing-address-select {
	margin-top: 5px;
}
#checkout-step-billing > #co-billing-form .form-list li.control, #checkout-step-billing > #co-shipping-form .form-list li.control, #checkout-step-shipping > #co-billing-form .form-list li.control, #checkout-step-shipping > #co-shipping-form .form-list li.control {
	float: left;
	width: 100%;
}
#checkout-step-billing fieldset .fields .field input[type="text"] {
	width: 254px;
}
#co-billing-form .form-list li.control input.checkbox, #co-shipping-form .form-list li.control input.checkbox {
	margin-left: 0px;
	margin-right: 6px;
	float: left;
}
#shipping-new-address-form > fieldset, #billing-new-address-form > fieldset {
	margin-bottom: 5px;
}
#checkout-step-billing fieldset .fields .field label, #checkout-step-billing fieldset .wide label, #shipping-new-address-form fieldset .wide label, #shipping-new-address-form fieldset .fields .field label, #shipping-new-address-form fieldset .fields .fields label, #shipping-new-address-form fieldset .wide label, #co-shipping-form > ul.form-list > li.wide > label {
	width: 40%;
	margin-right: 1%;
	float: left;
	clear: none;
	text-align: right;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#checkout-step-billing fieldset .wide {
	margin-bottom: 0px;
}
#checkout-step-billing fieldset .wide .input-box, #shipping-new-address-form fieldset .wide .input-box {
	width: 59%;
	float: right;
	clear: none;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#billing-new-address-form fieldset {
	padding-top: 10px;
}
#checkout-step-billing fieldset .fields .field .input-box, #shipping-new-address-form fieldset .fields .field .input-box, #shipping-new-address-form fieldset .fields .fields .input-box, #co-shipping-form > ul.form-list > li.wide > .input-box {
	width: 50%;
	float: left;
	clear: none;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/*Horizontal Checkout First Step - checkout-step-login - ends*/


/*Horizontal Checkout Second Step - billing-new-address-form - starts*/
ul.form-list li#billing-new-address-form, ul.form-list li#checkout-step-shipping {
	width: 100%;
}
#billing-new-address-form ul li, #shipping-new-address-form ul li {
	width: 100%;
	clear: both;
}
#billing-new-address-form .fields .customer-name .name-firstname, #shipping-new-address-form .fields .customer-name .name-firstname {
	width: 50%;
	float: left;
	padding: 1.5%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#billing-new-address-form .fields .customer-name .name-lastname, #shipping-new-address-form .fields .customer-name .name-lastname {
	width: 50%;
	float: right;
	padding: 1.5%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#billing-new-address-form .fields:first-child div.field, #shipping-new-address-form .fields:first-child div.field {
	width: 50%;
	float: left;
	padding: 5px 1.5%;
	margin: 0px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#billing-new-address-form .fields div.field, #shipping-new-address-form .fields div.field {
	width: 50%;
	float: left;
	padding: 5px 1.5%;
	margin: 0px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.form-list .field, .form-list .wide, .form-list .control {
}
#billing-buttons-container, #shipping-buttons-container {
	margin: 0px;
	padding: 5px 0 0;
}
#co-billing-form .form-list li.control, #co-shipping-form .form-list li.control {
	width: 100%;
	padding: 0;
	clear: both;
	margin: 0px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#co-billing-form .form-list li.control label, #co-shipping-form .form-list li.control label {
	background: none;
	text-align: left;
}
#checkout-shipping-method-load {
	width: 100%;
	padding: 5px 1.5%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
/*Horizontal Checkout Second Step - billing-new-address-form - ends*/

#checkout-step-shipping_method #shipping-method-buttons-container, #payment-buttons-container {
	width: 100%;
	margin: 0px;
	padding: 5px 0 20px;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.buttons-set {
	padding-bottom: 20px;
}
#co-payment-form .fieldset {
	width: 100%;
	margin: 0px;
	padding: 5px 1.5%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#co-payment-form fieldset {
	width: 100%;
	margin: 0px;
	padding: 5px 1.5%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
#co-payment-form dl dt input[type="radio"] {
	margin: 10px 0 0;
}
#co-payment-form fieldset dl dt label {
	display: block;
	float: left;
	padding-top: 7px;
}
#co-payment-form fieldset dl dt input[type="radio"] {
	float: left;
	margin-left: 40%;
	margin-top: 8px;
}
#co-payment-form fieldset dl dt {
	width: 100%;
	display: block;
	clear: both;
}
#co-payment-form dl dt label {
	background: none;
	padding-left: 10px;
}
.opc .form-list li.fields div.fields label {
	clear: both;
	text-align: left;
	width: 100%;
}
.opc .form-list li.fields div.fields {
	width: 100%;
	margin: 0px;
	padding: 5px 1.5%;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.wide .input-box input[type="text"], #opc-login .col-2 .input-text, .opc .form-list li.fields input[type="email"], .opc .form-list li.fields input[type="search"], .opc .form-list li.fields input[type="number"], .opc .form-list li.fields input[type="password"], .opc .form-list li.fields input[type="tel"], .opc .form-list li.fields input[type="text"], .opc .form-list li.fields select {
	margin-top: 0px;
	/*border: 1px solid #ececec;*/
}
.opc .form-list .control input.radio {
	margin-left: 0px;
	float: left;
	margin-right: 6px;
	margin-top: 2%;
}
#billing-new-address-form .fieldset li.fields {
 width: :100%;
	clear: both;
	float: left;
}
#billing-new-address-form .fieldset li.fields .field label {
	clear: both;
	float: left;
	text-align: left;
	width: 100%;
}
.opc .active .step-title .number {
	background: #F18200;
	border-color: #F19900;
	color: #FFFFFF;
}
li#opc-login div.step-title span.number, li#opc-billing div.step-title span.number, li#opc-shipping div.step-title span.number, li#opc-shipping_method div.step-title span.number, li#opc-payment div.step-title span.number, li#opc-review div.step-title span.number {
	font-family: FontAwesome !important;
}
li#opc-login div.step-title span.number:before {
	content: "\f090";
}
li#opc-billing div.step-title span.number:before {
	content: "\f0f6";
}
li#opc-shipping div.step-title span.number:before {
	content: "\f044";
}
li#opc-shipping_method div.step-title span.number:before {
	content: "\f072";
}
li#opc-payment div.step-title span.number:before {
	content: "\f0d6";
}
li#opc-review div.step-title span.number:before {
	content: "\f07a";
}
@media only screen and (min-device-width : 320px) and (max-device-width : 480px) {
#opc-login .col-1 {
	width: 100%;
	display: block;
	clear: both;
}
#opc-login .col-2 {
	width: 100%;
	display: block;
	clear: both;
}
}
 @media (max-width : 480px) {
#opc-login .col-1 {
	width: 100%;
	display: block;
	clear: both;
}
#opc-login .col-2 {
	width: 100%;
	display: block;
	clear: both;
}
ol.opc li.section div.step-title h2 {
	display: none;
}
ol.opc .step {
	top: 60px;
}
}
 @media only screen and (min-width : 321px) {
}
 @media only screen and (max-width : 320px) {
}
 @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) {
}
 @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : landscape) {
}
 @media only screen and (min-device-width : 768px) and (max-device-width : 1024px) and (orientation : portrait) {
}
 @media only screen and (min-width : 1224px) {
}
 @media only screen and (min-width : 1824px) {
}
 @media only screen and (-webkit-min-device-pixel-ratio : 1.5), only screen and (min-device-pixel-ratio : 1.5) {
}
