/* Order. */

.order {
	--bone_w: 1200px;
	--bone_size: max((100vw - var(--bone_w) - var(--scroll)) / 2, var(--bone));

	margin-bottom: 72px;
}

.order_logo {
	display: block;

	padding: 24px 0;
	border-bottom: 1px solid #eee;
}

.order_logo img {
	max-width: 178px;
}

.order_tabs  {
	padding: 22px 0 24px;
	border-bottom: 1px solid #eee;
	overflow-y: auto;
}

.order_tabs ul {
	display: flex;
	align-items: center;
	grid-gap: 80px;
}

.order_tabs li {
	--color: #666666;

	position: relative;

	font-size: 15px;
}

.order_tabs li.active {
	--color: var(--black);
	font-weight: 700;
}

.order_tabs li:not(:last-child):before {
	--icon_size: 48px;

	content: '';
	position: absolute;
	top: calc(50% - var(--icon_size) / 2);
	right: -63px;

	width: var(--icon_size);
	height: var(--icon_size);
	background-image: url("data:image/svg+xml,%3Csvg width='50' height='49' viewBox='0 0 50 49' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M42.415 20.2842L48.3995 24.1992M48.3995 24.1992L42.415 28.1142M48.3995 24.1992L0 24.1992' stroke='%23D9D9D9'/%3E%3C/svg%3E%0A");
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
}

.order_tabs li.link {
	--color: #399500;
}

.order_tabs li.link:not(:last-child):before {
	background-image: url("data:image/svg+xml,%3Csvg width='50' height='49' viewBox='0 0 50 49' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M42.415 20.2842L48.3995 24.1992M48.3995 24.1992L42.415 28.1142M48.3995 24.1992L0 24.1992' stroke='%23B0D599'/%3E%3C/svg%3E%0A");
}

.order_content {
	grid-template-columns: 1fr 340px;
	justify-content: space-between;
	grid-gap: 36px;

	margin-top: 32px;
}

.order_form {
	max-width: 712px;
}

.order_title {
	font-size: 24px;
}

.order_caption {
	margin-top: 32px;
	font-size: 20px;
	font-weight: 700;
}

.order_sign {
	margin-top: 24px;
	grid-gap: 20px;
}

.order_sign span {
	color: var(--primary);
	font-weight: 500;
	cursor: pointer;
}

.order_form_wrapper {
	margin-top: 36px;
}

.order_form_wrapper form {
	width: 100% !important;
}

.order_form_wrapper .element-row {
	display: flex;
	flex-direction: column;
	position: relative;

	margin-bottom: 40px;
}

.order_form_wrapper .element-title {
	--color: #999;
	position: absolute;
	z-index: 1;
	top: 100%;
	left: 22px;

	width: auto !important;
	padding: 0 8px;
	font-size: 15px;
	background-color: var(--bg);

	transform: translate3d(0, -50%, 0px);
}

.order_form_wrapper .element-wrap {
	position: relative;
}

.order_form_wrapper input:not([type=checkbox], [type=radio], [type=submit], [type=range], .select2-search__field),
.order_form_wrapper textarea,
.order_form_wrapper .select2-container .select2-selection,
.order_form_wrapper select {
	width: 100% !important;
	min-height: 70px;
	padding: 0 30px;
	font-size: 17px !important;
	border: 2px solid #EBEBEB;
	border-radius: 16px;

	transition: border-color .43s;
}

.order_form_wrapper .select2-container {
	width: 100% !important;
	min-height: 70px;
}
.order_form_wrapper .select2-container .select2-selection__arrow {
	top: 22px!important;
}
.order_form_wrapper .select2-container .select2-selection__rendered {
	line-height: 68px!important;
}
.order_form_wrapper .select2-results__option {
	font-size: 14px;
}
.order_form_wrapper .select2-container.select2-container--below {
	z-index: 2;
}

.order_form_wrapper input:not([type=checkbox], [type=radio], [type=submit], [type=range]):hover,
.order_form_wrapper input:not([type=checkbox], [type=radio], [type=submit], [type=range]):focus,
.order_form_wrapper textarea:hover,
.order_form_wrapper textarea:focus,
.order_form_wrapper .select2-dropdown,
.order_form_wrapper .select2-container.select2-container--open .select2-selection,
.order_form_wrapper .select2-container.select2-container--focus .select2-selection {
	border-color: var(--primary);
}


.order_form_wrapper input.valid,
.order_form_wrapper .element-select2.valid + .select2-container .select2-selection,
.order_form_wrapper textarea.valid {
	border-color: var(--success);
}

.order_form_wrapper textarea {
	padding-top: 22px;
	min-height: 70px;
	resize: vertical!important;
}

.order_form_wrapper input:not([type=checkbox], [type=radio], [type=submit], [type=range])::placeholder {
	color: #CCC;
}

.order_form_wrapper input:not([type=checkbox], [type=radio], [type=submit], [type=range]).error,
.order_form_wrapper .element-select2.error + .select2-container .select2-selection,
.order_form_wrapper textarea.error {
	border-color: #F4A499 !important;
}

.order_form_wrapper span.error {
	--size: 16px;

	position: absolute;
	top: calc(35px - var(--size) / 2) !important;
	left: auto !important;
	right: 24px;

	width: var(--size) !important;
	height: var(--size);
	background-color: transparent !important;
	background-image: url("data:image/svg+xml,%3Csvg width='16' height='16' viewBox='0 0 16 16' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M8.8396 1.19043L8.71899 10.8853H7.16968L7.03979 1.19043H8.8396ZM6.98413 13.8354C6.98413 13.5571 7.06763 13.3221 7.23462 13.1304C7.4078 12.9386 7.66138 12.8428 7.99536 12.8428C8.32316 12.8428 8.57365 12.9386 8.74683 13.1304C8.92619 13.3221 9.01587 13.5571 9.01587 13.8354C9.01587 14.1014 8.92619 14.3302 8.74683 14.522C8.57365 14.7137 8.32316 14.8096 7.99536 14.8096C7.66138 14.8096 7.4078 14.7137 7.23462 14.522C7.06763 14.3302 6.98413 14.1014 6.98413 13.8354Z' fill='%23E31B00'/%3E%3C/svg%3E%0A") !important;
	background-position: center !important;
	background-repeat: no-repeat !important;
	background-size: contain !important;
	font-size: 0;
}

.order_form_wrapper .element-description {
	--color: #505759;

	position: static !important;

	white-space: normal !important;
	margin-top: 28px;
	color: var(--color) !important;
	font-size: 15px !important;
}

.order_prev {
	align-self: start;

	padding: 32px 50px 44px;
	border: 1px solid #EEE;
	border-radius: 8px;
}

@media only screen and (min-width: 901px) {

	.order_prev {
		zoom: .8;		
	}

}

.order_prev_price {
	padding-bottom: 28px;
	font-size: 44px;
	font-weight: 700;
	text-align: center;
	line-height: 1.25;
	border-bottom: 1px solid #eee;
}

.order_prev_price .price_block {
	--color: var(--primary);

	color: var(--color) !important;
}

.order_prev_price ._small,
.order_prev_price ._small .price_block {
	--color: var(--gray);

	color: var(--gray) !important;
	font-size: 17px;
}

.order_prev_items {
	flex-wrap: wrap;
	justify-content: center;
	grid-gap: 20px;

	margin-top: 40px;
}

.order_prev_item {
	--size: 90px;
}

.order_prev_item_img {
	width: var(--size);
	height: var(--size);
	padding: 2%;
	border: 1px solid #eee;
	border-radius: 10px;
}

.order_prev_item_img img {
	height: 100%;
	object-fit: contain;
	object-position: center;
}

.order_prev_item_count {
	--color: #666;

	margin-top: 8px;
	text-align: center;
}

.order_prev_promo input {
	width: 100%;
	min-height: 50px;
	font-size: 16px;
	padding: 0 20px;
	border: 2px solid #EBEBEB;
	border-radius: 8px;
	transition: border-color .43s;
}

.order_prev_promo input:hover,
.order_prev_promo input:focus {
	border-color: var(--primary);
}

.order_prev_promo input::placeholder {
	color: #CCC;
}

.order_prev_promo input.error {
	border-color: #F4A499;
}

.order_prev_button button {
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	float: none!important;
	width: 100%;
	height: 60px;
	margin-top: 40px;
	font-size: 17px;
	font-weight: 500;
	border-radius: 40px;
	background-color: var(--primary);
	cursor: pointer;
	transition: box-shadow .43s;
}

.order_prev_button button:hover {
	box-shadow: 0 0 32px var(--primary);
}

.order_prev_policy {
	margin-top: 22px;
	text-align: center;
	font-size: 15px;
}

.order_prev_policy a {
	color: var(--primary);
	font-weight: 500;
}

.order_form_wrapper #element-city {
	margin-bottom: 0;
}

.order_form_wrapper #element-city .element-description {
	display: none;
}

.order_form_wrapper .city-presets {
	--color: var(--primary);

	display: flex;
	align-items: center;
	grid-gap: 36px;

	margin-top: 28px;
	margin-left: 30px;
	font-weight: 500;
}
.order_form_wrapper .city-presets .link {
	cursor: pointer;
}
.order_form_wrapper #element-delivery {
	margin-top: 20px;
}

.order_form_wrapper #element-delivery br,
.order_form_wrapper #element-payment br {
	display: none;
}

.order_form_wrapper #element-delivery label.disabled,
.order_form_wrapper #element-payment label.disabled {
	opacity: 0.4;
	cursor: no-drop;
}

.order_form_wrapper #element-delivery label,
.order_form_wrapper #element-payment label {
	--size: 23px;

	display: flex;
	align-items: center;
	position: relative;

	margin-top: 24px;
	padding-left: 39px;
	font-size: 17px;
	cursor: pointer;

	transition: opacity .43s;
}

.order_form_wrapper #element-delivery label:before,
.order_form_wrapper #element-payment label:before {
	content: '';
	position: absolute;
	top: calc(50% - var(--size) / 2);
	left: 0;

	width: var(--size);
	height: var(--size);
	margin-top: -2px;
	border: 2px solid #EBEBEB;
	border-radius: 50%;
	cursor: pointer;

	transition: box-shadow .43s, border-color .43s;
}

.order_form_wrapper #element-delivery label.active:before,
.order_form_wrapper #element-payment label.active:before {
	border-color: var(--primary);
	box-shadow: inset 0 0 0 6px var(--white), inset 0 0 0 24px var(--primary);
}

.order_form_wrapper #element-delivery .element-description,
.order_form_wrapper #element-pickup-begin_time .element-description,
.order_form_wrapper #element-courier-begin_time .element-description,
.order_form_wrapper #element-npcourier-begin_time .element-description,
.order_form_wrapper #form_Form_Order_Payment .element-description {
	display: none;
}


.order_thank {

}

.order_thank .order_title {
	display: block;
	position: relative;

	color: #fff;
	margin: 0 calc(var(--bone_size) * -1 + 20px);
	padding: 40px var(--bone_size) 46px;
}

.order_thank .order_title img {
	position: absolute;
	top: 0;
	left: 0;

	height: 100%;
	object-fit: cover;
	object-position: center;
	border-radius: 10px;
	z-index: -1;
}

.order_thank .order_caption {
	margin-top: 52px;
}

.order_thank .order_caption span {
	--color: var(--primary);
}

.order_thank_items {
	margin-top: 60px;
}

.order_thank_items .order_prev_items {
	justify-content: flex-start;
}

.order_thank_info {
	margin-top: 16px;
}

.order_thank_info li {
	display: flex;
	align-items: center;
	grid-gap: 4px;
}

.order_thank_info span:first-child {
	display: flex;
	align-items: flex-end;
	grid-gap: 4px;

	width: 160px;
	min-width: 160px;
	color: #666;
	line-height: 1;
	white-space: nowrap;
}

.order_thank_info span:first-child:after {
	content: '';
	flex-grow: 1;
	border-bottom: 1px solid #eee;
}

.order_prev_promo {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	border-bottom: 1px solid #ddd;
	padding-bottom: 26px;
}

.btn-apply-promocode {
	--color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	float: none !important;
	height: 50px;
	font-size: 14px;
	border-radius: 8px;
	color: var(--primary);
	background-color: #fff;
	border: 2px solid var(--primary);
	cursor: pointer;
	transition: color, background-color .43s;
	padding: 0 20px;
}

.btn-apply-promocode:hover {
	background-color: var(--primary);
	color: #fff;
}

.order_prev_promo_applied {
	color: #0cb717;
	text-align: center;
}

.order_prev_promo_invalid {
	color: #F4A499;
}




/* Order. */

@media only screen and (min-width: 771px) {

	/* Order. */
	
	.order_form_wrapper #element-pickup-begin_time,
	.order_form_wrapper #element-courier-begin_time,
	.order_form_wrapper #element-npcourier-begin_time {
		float: left;

		width: 48%;
		margin-right: 4%;
	}

	.order_form_wrapper #element-pickup-end_time,
	.order_form_wrapper #element-courier-end_time,
	.order_form_wrapper #element-npcourier-end_time {
		width: 48%;
	}

	/* Order. */

}

@media only screen and (max-width: 900px) {

	/* Order. */

	.order_title {
		font-size: 24px;
	}

	.order_thank .order_title {
		padding-top: 24px;
		padding-bottom: 28px;
		margin: 0 calc(var(--bone_size) * -1);
	}

	.order_thank .order_title img {
		border-radius: 0;
	}

	.order_caption {
		font-size: 19px;
	}

	.order_thank .order_caption {
		margin-top: 20px;
	}

	.order_tabs ul {
		grid-gap: 46px;
	}

	.order_tabs li {
		font-size: 13px;
		white-space: nowrap;
	}

	.order_tabs li:not(:last-child):before {
		--icon_size: 16px;
		right: -30px;

		background-position: right center;
		background-size: 48px;
	}

	.order_thank_items {
		margin-top: 36px;
	}

	.order_prev_items {
		grid-gap: 16px;
	}

	.order_prev_item {
		--size: 60px;
	}

	.order_prev_item_count {
		margin-top: 5px;
		font-size: 15px;
	}

	.order_thank_info li {
		flex-direction: column;
		align-items: flex-start;
	}

	.order_thank_info li:not(:last-child) {
		margin-bottom: 12px;
		padding-bottom: 12px;
		border-bottom: 1px solid #eee;
	}

	.order_thank_info span:first-child:after {
		display: none;
	}

	.order_form {
		max-width: none;
	}

	.order_content {
		grid-template-columns: 1fr;
	}

	.order_prev_price {
		font-size: 32px;
	}

	/* Order. */

}

@media only screen and (max-width: 600px) {

	/* Order. */

	.order_prev {
		padding: 16px 20px 20px;
	}

	.order_prev_price {
		padding-bottom: 16px;
	}

	.order_prev_items {
		margin-top: 20px;
	}

	.order_prev_promo {
		margin-top: 16px;
	}

	.order_prev_button button {
		margin-top: 24px;
	}

	/* Order. */

}