
select::-ms-expand {
    display: none;
}

.order-layout {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	margin: 40px -15px;
}

.order-layout ul,
.order-layout figure {
	display: block;
	padding: 0;
	margin: 0;
}

.order-layout ul {
	list-style: none;
}

.order-layout  * {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}

.order-layout .red-text  {
	color:red;
	font-weight: 700;
}

.order-layout-left,
.order-layout-right {
	padding:0 15px;
}

.order-layout-left {
	width: 65%;	
}

.order-layout-right {
	width: 35%;
}

/* checkbox start */
.check-radio {
    display: block;
}

.check-radio-element {
    display: block;
    padding-left: 30px;
    position: relative;
    font-size: 14px;
    line-height: 22px;
}

.check-radio-element:before,
.check-radio-element:after {
    content: '';
    width: 22px;
    height: 22px;
    background-color: #fff;
    border: 1px solid #ddd;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transition: background-color 0.2s ease;
    -o-transition: background-color 0.2s ease;
    transition: background-color 0.2s ease;
}

.check-radio-element:after {
    width: 14px;
    height: 14px;
    border: 0;
    top: 4px;
    left: 4px;
}

.check-radio-input {
    display: block;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    top: 0;
}

.check-radio-input[type="checkbox"] ~ .check-radio-element:after {
    background: url('../../images/checkbox.svg') no-repeat center center;
    opacity: 0;
    -webkit-transition: opacity 0.2s ease;
    -o-transition: opacity 0.2s ease;
    transition: opacity 0.2s ease;
}

.check-radio-input[type="checkbox"]:checked ~ .check-radio-element:after {
    opacity: 1;
}
/* end of checkbox */

.fields-row {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: -5px;
}

.field {
	padding:  5px;
}

.field-25 {
	width: 25%;
}

.field-33 {
	width: 33.333%;
}

.field-50 {
	width: 50%;
}
.field-75 {
	width: 75%;
}
.field-100 {
	width: 100%;
}

.order-col-left,
.order-col-right {
	width: 100%;
	background: #fff;
    border: 1px solid  #e5e5e5;
}

.order-col-left {
	margin-bottom: 20px;
}

.order-col-right {
	padding:10px;
}

.order-layout .order-img {
	padding-top:50%;
	display: block;
	height: 0;
	position: relative;
}

.order-layout .order-img > img {
	display: block;
	position: absolute;
    top: 50%;
    left: 50%;
    max-width: 100%;
    max-height: 100%;
    height: auto;
    width: auto;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.order-item {
	border-top: 1px solid #e5e5e5;
	border-bottom: 1px solid transparent;
}

.order-item.selected  {
	-webkit-box-shadow: 0 0 4px #ccc;
	box-shadow: 0 0 4px #ccc;
    border-top: 1px solid #7a7a7a;
    border-bottom: 1px solid #7a7a7a;
    background: #fcc856;
}

.order-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	position: relative;
	padding: 16px 16px 16px 52px;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	cursor: pointer;
	color: #3e3e3e;
	text-decoration: none;
}

.order-badge {
	display: block;
	width: 40px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 4px;
	margin: auto 0;
}

.order-text > p {
    position: relative;
    font-size: 15px;
    line-height: 1.3;
    margin: 0 0 8px;
}

.order-text > h2 {
    font-size: 20px;
    text-transform: uppercase;
    margin: 0 0 14px;
}

.order-text > p:last-child {
	margin-bottom: 0;
}

.order-link-text {
	padding-left: 20px;
	position: relative;
	margin-right: 10px;
}

.order-link-text strong {
	display: inline-block;
	margin: 0 6px;
}

.order-link-text:before {
	content: '';
	border-radius: 100%;
    position: absolute;
    top: 0;
    bottom: 0;
	left: 0;
	margin: auto 0;
    width: 18px;
    height: 18px;
    border: 1px solid #ccc;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(255,255,255,1)), to(rgba(235,235,235,1)));
    background: -webkit-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(235,235,235,1) 100%);
    background: -o-linear-gradient(top, rgba(255,255,255,1) 0%, rgba(235,235,235,1) 100%);
    background: linear-gradient(180deg, rgba(255,255,255,1) 0%, rgba(235,235,235,1) 100%);

}

.order-link-text:after {
    content: '';
    display: none;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 5px;
    margin: auto 0;
    width: 8px;
    height: 8px;
	border-radius: 100%;
    background: #000;
}

.order-item.selected .order-link-text:after {
	display: block;
}

.order-price {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.old-price {
	text-decoration: line-through;
	margin-right:10px;
	font-size: 15px;
}

.new-price {
	font-weight: 700;
	color: #007fb4;
	font-size: 18px;
}

.order-details {
	margin-bottom: 20px;
}

.order-header {
	font-size: 20px;
	font-weight: 600;
	text-align: center;
	margin: 0 0 10px;
}

.order-header .icon-basket,
.order-header .icon-truck {
	display: inline-block;
	vertical-align: middle;
	margin-right: 6px;
}

.order-layout .order-summary {
	margin: -8px;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.order-layout .order-summary-item {
	padding: 8px;
}

.remove-btn-wrapper {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
}

.remove-item-btn {
	-ms-flex-negative: 0;
	flex-shrink: 0;
	position: relative;
	display: block;
	width: 20px;
	height: 20px;
	cursor: pointer;
	margin-right: 8px;
	border-radius: 10px;
	background-color: #007EBC;
}

.remove-item-btn:before,
.remove-item-btn:after {
	content: '';
	display: block;
	width: 12px;
	height: 2px;
	background-color: #fff;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}

.remove-item-btn:before {
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);														
}

.remove-item-btn:after {
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}

.order-details-list {
	margin-top: 20px;
}

.order-details-item {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	padding: 12px 0;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	border-bottom: 1px solid #e5e5e5;
}

.order-item-text {
	margin: 0;
}

.order-tabs-nav {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
}

.order-tabs-link {
	display: block;
	-ms-flex-negative: 1;
	flex-shrink: 1;
	text-align: center;
	cursor: pointer;
	text-decoration: none;
	color: #fff;
	padding: 10px;
	background-color: #007fb4;
	font-size: 14px;
	border-top-left-radius: 4px; 
	border-top-right-radius: 4px;
	-webkit-transition: background-color 0.35s ease;
	-o-transition: background-color 0.35s ease;
	transition: background-color 0.35s ease; 
}

.order-tabs-link:not(:last-child) {
	margin-right: 2px;
}

.order-tabs-link:hover,
.order-tabs-link.selected {
	background-color: #083448;
}

.order-form {
	display: none;
}

.order-form.active {
	display: block;
}

.order-accordion {
	border: 1px solid #e5e5e5;
}

.order-accordion-link {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	text-decoration: none;
	padding: 12px;
	background-color: #def4ff;
	color: #3e3e3e;
}

.order-accordion-link i.flag-icon {
    margin: 0 0 0 6px;
}

.order-accordion-link.selected:before {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}

.order-accordion-link:before {
	content: '';
	display: block;
	width: 0;
	height: 0;
	margin-right: 6px;
	border-top: 5px solid transparent;
	border-left: 10px solid #3e3e3e;
	border-bottom: 5px solid transparent;
	-webkit-transition: -webkit-transform 0.35s ease;
	transition: -webkit-transform 0.35s ease;
	-o-transition: transform 0.35s ease;
	transition: transform 0.35s ease;
	transition: transform 0.35s ease, -webkit-transform 0.35s ease;
}

.order-accordion-content {
	display: none;
	padding: 6px;
}

.order-textarea {
    font-family: 'Open Sans', sans-serif;
    font-size: 16px;
    display: block;
    width: 100%;
    height: 105px;
    resize: none;
    border: 1px solid #e5e5e5;
    color: #3e3e3e;
    background-color: #fff;
    padding: 12px;
    -webkit-transition: all 0.35s ease;
    -o-transition: all 0.35s ease;
    transition: all 0.35s ease;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    overflow-y: auto;
}

.order-input {
    display: block;
    font-size: 16px;
    font-family: 'roboto',sans-serif;
    font-weight: 400;
    color: #3e3e3e;
    background: none;
    width: 100%;
    line-height: 1;
    border: 1px solid #e5e5e5;
    border-radius: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: none;
    padding: 10px 14px;
}

.order-select {
	position: relative;
}

.order-select .order-input {
	cursor: pointer;
	padding-right: 44px;
	position: relative;
}

.order-select:before {
	content: '';
	background: url('../../images/sel-arrow.svg') no-repeat center center;
	width: 44px;
    position: absolute;
    top: 5px;
    bottom: 5px;
    right: 5px;
}

.order-select:focus-within:before {
  -webkit-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}

.submit-btn {
    display: block;
    cursor: pointer;
    padding: 18px 20px;
    font-size: 20px;
    line-height: 1;
    border: 0;
    color: #fff;
    font-weight: 700;
    background-color: #d81841;
    width: 100%;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    border-radius: 4px;
    cursor: pointer;
    -webkit-transition: background-color 0.35s ease;
    -o-transition: background-color 0.35s ease;
    transition: background-color 0.35s ease;
}

.submit-btn:hover {
	background-color: #b3052a;	
}
.submit-btn:disabled {
    background-color: #969696;
}
.img-badge-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin: 0;
    -webkit-transform: translateY(-100%);
    -ms-transform: translateY(-100%);
    transform: translateY(-100%);
    position: absolute;
    right: 0;
    top: 100%;
    width: 41%;
    font-weight: 700;
    color: #fff;
    text-shadow: 1px 1px 3px #777;
    text-align: center;
}

.img-badge {
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	-ms-flex-negative: 1;
	flex-shrink: 1;
	-ms-flex-preferred-size: 0%;
	flex-basis: 0%;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
    font-size: 20px;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
	padding:6px;
}


form .invalid input, form .invalid select, form .invalid span, form .invalid textarea{
    border-color:red;
}
form .invalid label.check-radio-element{
  color: red;
}
form .invalid label.check-radio-element:before{
  border:1px solid red;
}
form .invalid .select2-selection--single {
    border: 1px solid red;
}
form label.labelError{
  padding: 3px 10px;
  background: #ffb6b6;
  font-size: 12px;
  position: relative;
  top: -4px;
}
span#free_delivery_badge{
    position: absolute;
    top: 0;
    background: #54a054;
    padding: 10px;
    font-weight: bold;
    text-transform: uppercase;
    color: white;
    text-align: center;
    min-width: 200px;
}
span#free_delivery_badge i.icon-truck{
    margin-right: 5px;
}


body.msie .img-badge {
	-ms-flex-preferred-size: auto;
	flex-basis: auto;
}

.img-badge.discount {
	background-color: #000; 	 
}

.img-badge.present {
	background-color: red;
}

#form-messages{
	background: #acf9ac;
    font-size: 20px;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
}

/* ==========================================================================
   Media Queries
   ========================================================================== */

@media only screen and (max-width: 1280px) {
	
	.order-select:before {
		width: 38px;
	}

	.order-layout {
		margin:30px -5px;
	}
	
	.order-layout-left,
	.order-layout-right {
		padding:0 5px;
	}
}

@media only screen and (max-width: 1024px) {
  	
  	.img-badge{
		font-size: 18px;
	}
}  


@media only screen and (max-width: 768px) {
	
	.img-badge {
		font-size: 16px;
	}
 
	.order-layout {
		display: block;
	}

	.old-price {
		margin: 0;
	}

	.order-price {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
		margin-left: 0;
	}
	
	.order-layout-left,
	.order-layout-right {
		width: 100%;
		padding: 0;
	}

	.field-25,
	.field-33,
	.field-75,
	.field-50 {
		width: 100%;
	}
}

@media only screen and (max-width: 480px) {
	
	.order-link {
		padding: 8px 8px 8px 38px;
	}

	.img-badge {
		font-size: 14px;
		padding: 4px;
	} 

	.order-badge {
    	left: 2px;
    	width: 30px;
	}
	span#free_delivery_badge{
		font-size: 14px;
		width: 100%;
		min-width: 100%;
		padding: 3px;
	}

}

@media only screen and (max-width: 320px) {
	
	.img-badge-wrapper {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
	}

	.img-badge {
		font-size: 13px;
		padding: 3px;
	} 

	.order-link {
		-webkit-box-orient: vertical;
		-webkit-box-direction: normal;
		-ms-flex-direction: column;
		flex-direction: column;
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: flex-start;
	}

	.order-price {
		margin-top: 5px;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
	}
	
	.old-price {
		margin-right: 10px;
	}
}


