html {
	-webkit-text-size-adjust: none;
	touch-action: manipulation;
}

*, *:before, *:after {
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

input, input:before, input:after {
	-webkit-user-select: initial;
	-khtml-user-select: initial;
	-moz-user-select: initial;
	-ms-user-select: initial;
	user-select: initial;
}

input[type=number]::-webkit-inner-spin-button, 
input[type=number]::-webkit-outer-spin-button { 
	-webkit-appearance: none; 
}

.order-container {
	display: block;
}

.order-container .order-steps {
	background-image: url('../img/order-steps-background.png');
	background-repeat: repeat-y;
	background-size: cover;
	padding: 2rem 0;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
}

.order-container .order-steps .step-separator {
	-ms-flex: 0 0 22px;
		flex: 0 0 22px;
	max-width: 22px;
	height: 36px;
	margin: 0 2rem;
	background-image: url('../img/column-arrow-small.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	align-self: center;
}

.order-container .order-steps .step {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	display: block;
	padding: 0 2rem;
}

.order-container .order-steps .step.selected {
	color: #111;
	font-weight: bold;
}

.order-container .order-steps .step .step-icon {
	display: inline-block;
	max-width: 50px;
	margin-left: .5rem;
}

.order-container .order-steps .step .step-label {
	font-weight: 400;
}

.order-container .order-steps .step.selected .step-label {
	font-weight: bold;
}

@media (max-width: 768px) {
	.order-container .order-steps .step:not(.selected) {
		display: none;
	}
	.order-container .order-steps .step-separator {
		display: none;
	}
}

.order-heading {
	text-align: center;
	padding: 1rem 0.5rem;
}

.order-heading h2.heading {
	font-size: 2rem;
	font-weight: bold;
	color: #181818;
}

.order-heading span.heading {
	font-size: 2rem;
	color: #181818;
	margin-top: -.75rem;
	display: block;
}

.order-content {
	display: block;
}

.order-footer {
	background-color: #f3f3f3;
	padding: 2.5rem 1rem;
}

.order-footer .order-step-ahead {
	text-align: center;
}

.order-footer .order-step-ahead .order-step-ahead-bag {
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	align-items: center;
}

.order-footer .order-step-ahead p {
	margin-bottom: 1rem;
	font-weight: bold;
	font-size: 2.125rem;
	display: block;
}

.order-footer .order-step-ahead a.continue-checkout {
	background: none;
	border: none;
	outline: none;
	cursor: pointer;
	background-image: url('../img/continue-checkout-btn.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	display: block;
	width: 239px;
	height: 74px;
	/*margin: 0 auto;*/
	font-size: 2rem;
	font-weight: bold;
	color: #fff;
	padding-top: 8px;
}

.order-footer .order-step-ahead a.bag-refer {
	background-image: url('../img/banner-icon.png');
	background-repeat: no-repeat;
	background-size: 24px 30px;
	background-position: top 5px center;
	color: #f29f05;
	width: auto;
	height: auto;
	padding-top: 35px;
	margin-right: 1rem;
}

@media (max-width: 768px) {
	.order-footer .order-step-ahead a.bag-refer {
		-ms-flex: 0 0 100%;
			flex: 0 0 100%;
		margin-top: 1rem;
		margin-right: 0;
		padding-bottom: 5px;
		background-color: #f29f05;
		color: #ffffff;
		border-radius: 5px;
		padding-top: 38px;
	}
}

.order-footer .order-step-ahead a:hover {
	text-decoration: none;
}

.packages {
	/*display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	flex-wrap: wrap;
	justify-content: center;*/
	margin-bottom: 1.5rem;
	position: relative;
}

.packages .packages-desc {
	position: absolute;
	top: 50%;
	left: 0px;
	background-image: url('../img/packages-desc.png');
	background-size: 100% 100%;
	background-repeat: no-repeat;
	width: calc(506px * .65);
	height: calc(71px * .65);
	transform: translateX(-105%);
}

.packages .package {
	margin-top: .5rem;
	margin-bottom: 1rem;
	text-align: center;
	/*padding: .5rem .5rem 0 .5rem;*/
	padding: 0 1rem;
	position: relative;
}

.packages .package .package-wrapper {
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.1);
	padding: 1.25rem .5rem;
	border-radius: 5px;
}

.packages .package .package-wrapper.package-wrapper-special {
	box-shadow: 0 0 1rem rgba(215, 144, 0, .3);
}

/*
.packages .package:after {
	content: '';
	position: absolute;
	top: 30%;
	bottom: 15%;
	left: -1rem;
	width: 1px;
	height: auto;
	border: 1px dashed #f29f05;
}
*/

.packages .package .package-image {
	display: block;
}

.packages .package .package-image img {
	display: none;
	max-width: 100%;
}

@media (max-width: 768px) {
	.packages .package .package-image img {
		display: block;
	}
}

.packages .package.package-item .package-image img {
	max-height: 120px;
	margin: 0 auto 1rem auto;
}

.packages .package .package-sticker {
	position: absolute;
    top: -1rem;
    left: -1rem;
    padding: 1rem;
    border-radius: 50%;
    background-color: #f29f05;
    transform: rotate(-30deg);
    color: #fff;
    font-weight: bold;
    box-shadow: 0 0 3px #717171;
}

@media (max-width: 768px) {
	.packages .package .package-sticker {
		top: -8px;
		left: 12px;
		padding: .75rem;
		font-size: 1.5rem;
	}
}

.packages .package .package-price,
.packages .package .package-price-mobile {
	color: #181818;
	margin: .125rem 0;
}

.packages .package .package-price-mobile {
	display: none;
}

.packages .package .package-price .price,
.packages .package .package-price-mobile .price {
	font-weight: bold;
}

@media (max-width: 576px) {
	.packages .package .package-price:after,
	.packages .package .package-items:after {
		content: none;
	}
	
	.packages .package .package-control {
		position: relative;
	}
	
	.packages .package:after {
		display: none;
		content: none;
	}
}

.packages .package .package-price strike,
.packages .package .package-price-mobile strike {
	color: #f29f05;
	/*font-size: 1.125rem;*/
	font-size: 90%;
	font-weight: bold;
}

.packages .package .package-price-mobile strike {
	display: block;
}

@media (max-width: 576px) {
	.packages .package .package-wrapper {
		display: flex;
		justify-content: center;
	}
	
	.packages .package .package-image {
		-ms-flex: 0 0 39%;
			flex: 0 0 39%;
		max-width: 39%;
		margin-left: auto;
	}
	
	.packages .package .package-content {
		-ms-flex: 0 0 60%;
			flex: 0 0 60%;
		max-width: 60%;
	}
	
	.packages .package .package-items .item {
		font-size: 1.2rem !important;
	}
	
	.packages .package:not(.package-item) .package-price {
		display: none;
	}
	
	.packages .package .package-price-mobile {
		display: block;
	}
}

.packages .package .package-title {
	font-size: 2rem;
	font-weight: bold;
	color: #181818;
	/*background: transparent url('../img/text-highlight.png') no-repeat center;*/
	background-size: 100% auto;
	display: table;
	margin: 0 auto;
}

.packages .package .package-list {
	margin: 0 auto;
	text-align: center;
}

.packages .package .package-list .item {
	display: block;
	font-size: 1.25rem;
}

.packages .package .package-list .item.item-sm {
	font-size: 1rem;
}

.packages .package .package-list .item strong {
	font-size: 1.5rem;
}

.packages .package .package-control {
	margin: .75rem auto 0 auto;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
}

.packages .package .package-control .package-label {
	-ms-flex: 0 0 90%;
		flex: 0 0 90%;
	max-width: 90%;
	background-color: #d68f00;
	color: #ffffff;
	border-radius: 5px;
}

.packages .package .package-control .package-quantity {
	/*-ms-flex: 0 0 90px;
		flex: 0 0 90px;
	max-width: 90px;*/
	-ms-flex: 0 0 80%;
		flex: 0 0 80%;
	max-width: 80%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	margin: 0 auto;
}

.packages .package .package-control .package-quantity.package-quantity-lg {
	-ms-flex: 0 0 80%;
		flex: 0 0 80%;
	max-width: 80%;
	margin: 0 auto;
}

/*
.packages .package.package-item .package-control .package-quantity {
	-ms-flex: 0 0 56px;
		flex: 0 0 56px;
	max-width: 56px;
}
*/

.packages .package .package-control .package-quantity .increase,
.packages .package .package-control .package-quantity .decrease,
.packages .package .package-control input[type="text"] {
	/*-ms-flex: 0 0 30px;
		flex: 0 0 30px;
	max-width: 30px;*/
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	max-width: none;
	background: none;
	background-color: #ffdb98;
	text-align: center;
	cursor: pointer;
	border: none;
}

.packages .package .package-control .package-quantity .increase {
	border-radius: 0 5px 5px 0;
}

.packages .package .package-control .package-quantity .decrease {
	border-radius: 5px 0 0 5px;
}

.packages .package .package-control input[type="text"] {
	-ms-flex: 0 0 30px;
		flex: 0 0 30px;
	max-width: 30px;
	cursor: not-allowed;
}

.packages .package .package-control .package-quantity.package-quantity-lg .increase,
.packages .package .package-control .package-quantity.package-quantity-lg .decrease {
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	max-width: none;
}

.packages .package .package-control .package-order {
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	max-width: calc(100% - 90px);
	background-color: #f29f05;
}

/*
.packages .package.package-item .package-control .package-order {
	max-width: calc(100% - 56px);
}
*/

.packages .package .package-control .package-order .order-btn {
	font-weight: bold;
	font-size: 2rem;
	color: #ffffff;
	display: block;
}

/*
.packages .package.package-item .package-control .package-order .order-btn {
	font-size: 1rem;
	line-height: 2rem;
}
*/

.packages .package .package-control .package-order .order-btn:hover {
	text-decoration: none;
}

.personal-info {
	margin-bottom: 1.5rem;
}

.personal-info .lid-form {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	max-width: 680px;
	margin: 0 auto;
	justify-content: flex-start;
	flex-wrap: wrap;
}

.personal-info .lid-form .input-container {
	-ms-flex: 1 0 50%;
		flex: 1 0 50%;
	max-width: 50%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	text-align: right;
	padding-left: 3rem;
	margin-bottom: 1rem;
	position: relative;
}

.personal-info .lid-form .input-container:nth-child(2n + 2) {
	margin-right: auto;
}

.personal-info .lid-form .input-container label {
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	max-width: calc(100% - 205px);
	white-space: nowrap;
}

.personal-info .lid-form .input-container label:before {
	content: '*';
	color: #f29f05;
	margin-left: 4px;
	font-weight: bold;
}

.personal-info .lid-form .input-container select,
.personal-info .lid-form .input-container input[type="text"] {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 205px;
	background: none;
	border: none;
	border-bottom: 1px solid #111;
	margin-top: -4px;
	font-size: 1.5rem;
	padding: 0;
	height: 33px;
	margin-right: auto;
	outline: none;
}

.personal-info .lid-form .input-container > div {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 205px;
	position: relative;
}

.personal-info .lid-form .input-container > div input,
.personal-info .lid-form .input-container > div select {
	display: block;
	width: 100%;
}

.personal-info .lid-form .input-container > div > ul {
	position: absolute;
	top: calc(100% - 10px); right: 0; left: 0;
	background-color: #eeeeee;
	z-index: 3;
	direction: rtl;
	text-align: right;
	margin: 0;
	padding: 0;
	list-style: none;
	width: 100%;
	display: block;
}

.personal-info .lid-form .input-container > div > ul li {
	display: block;
	color: #111111;
	padding: 2px 5px;
	cursor: pointer;
	margin: 0;
	width: 100%;
}

.personal-info .lid-form .input-container .input-desc {
	position: absolute;
	top: 100%; left: 0;
	-webkit-transform: translateX(-50%);
		-ms-transform: translateX(-50%);
			transform: translateX(-50%);
	background-image: url('../img/input-desc.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: calc(391px * .8);
	height: calc(41px * .8);
}

@media (max-width: 768px) {
	.personal-info .lid-form .input-container {
		flex: 1 1 100%;
		max-width: 100%;
		padding: 0 1rem;
	}
	
	.personal-info .lid-form .input-container .input-desc {
		-webkit-transform: none;
			-ms-transform: none;
				transform: none;
	}
}

.lid-form-separator {
	background-image: url('../img/order-mt-separator.png');
	background-repeat: repeat-x;
	background-size:contain;
	margin-top: 3rem;
	margin-bottom: 2rem;
	width: 100%; height: 7px;
}

.personal-info .order-form {
	display: block;
	justify-content: center;
}

.checkbox-container {
	width: 100%;
	max-width: 400px;
	padding-right: 100px;
	margin: 0 auto;
	text-align: right;
	font-size: 1.125rem;
	margin-bottom: 1rem;
}

.packages .package .package-list .item input[type="checkbox"] {
	display: none;
}

.checkbox-container input[type="checkbox"] ~ span,
.packages .package .package-list .item input[type="checkbox"] ~ span {
	background-image: url('../img/checkbox-light.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	background-position: center right;
	margin-right: .1rem;
	margin-left: .3rem;
	margin-top: 2px;
	width: 16px;
	height: 16px;
	display: block;
	float: right;
}

.checkbox-container input[type="checkbox"]:checked ~ span,
.packages .package .package-list .item input[type="checkbox"]:checked ~ span {
	background-image: url('../img/checkbox-light-checked.png');
}

.checkbox-container input[type="checkbox"] {
	display: none;
}

.personal-info .order-form .input-container,
.personal-info .order-form .inputs-container,
.personal-info .order-form .x2-inputs-container {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	margin: 0 auto;
	width: 100%;
	max-width: 400px;
	margin-bottom: 1rem;
	flex-wrap: wrap;
}

@media (max-width: 376px) {
	.personal-info .order-form .inputs-container.mobile-special-sizes {
		font-size: 1.25rem;
	}
	.personal-info .order-form .inputs-container .input {
		max-width: 44px !important;
	}
}

.personal-info .order-form.order-form-wider .input-container,
.personal-info .order-form .x2-inputs-container {
	max-width: 428px;
}

.personal-info .order-form.order-form-wider .inputs-container {
	max-width: 425px;
}

.personal-info .order-form .inputs-container {
	justify-content: flex-end;
}

.personal-info .order-form .x2-inputs-container {
	justify-content: flex-start;
}

.personal-info .order-form .x2-inputs-container .x2-input {
	-ms-flex: 0 0 214px;
		flex: 0 0 214px;
	max-width: 50%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.personal-info .order-form .x2-inputs-container .x2-input:last-child {
	margin-right: auto;
}

.personal-info .order-form .input-container label {
	-ms-flex: 0 0 100px;
		flex: 0 0 100px;
	max-width: 100px;
}

.personal-info .order-form.order-form-wider .input-container label {
	-ms-flex: 0 0 126px;
		flex: 0 0 126px;
	max-width: 126px;
}

.personal-info .order-form .x2-inputs-container .x2-input label {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
}

.personal-info .order-form .inputs-container label {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	min-width: 1px;
	margin-right: 1.5rem;
}

.personal-info .order-form .input-container label:before,
.personal-info .order-form .inputs-container label:not(.unmarked):before,
.personal-info .order-form .x2-inputs-container .x2-input label:before {
	content: '*';
	color: #f29f05;
	margin-left: 4px;
	font-weight: bold;
}

.personal-info .order-form .input-container .input {
	-ms-flex: 1 0 300px;
		flex: 1 0 300px;
	max-width: 300px;
	padding-right: .3rem;
}

.personal-info .order-form .x2-inputs-container .x2-input .input {
	flex: 1 0 auto;
	flex: 1 0 auto;
	max-width: 65%;
	margin-right: auto;
}

.personal-info .order-form .x2-inputs-container .x2-input:first-child {
	padding-left: .5rem;
}

.personal-info .order-form .x2-inputs-container .x2-input:last-child {
	padding-right: .5rem;
}

.personal-info .order-form .inputs-container .input {
	-ms-flex: 0 0 55px;
		flex: 0 0 55px;
	max-width: 55px;
	margin-right: .3rem;
}

.personal-info .order-form .input-container .input input,
.personal-info .order-form .inputs-container .input input,
.personal-info .order-form .x2-inputs-container .x2-input .input input {
	display: block;
	width: 100%;
	border: 1px solid #181818;
	margin-top: -2px;
	padding: 0 .5rem;
	outline: none;
}

.personal-info .order-form .input-container .input > div {
	display: block;
}

.personal-info .order-form .input-container .input > div ul {
	display: block;
	margin: 0;
	padding: 0;
	text-align: right;
	list-style: none;
	background-color: #eeeeee;
	position: absolute;
	top: calc(100% - 10px); right: 5px; left: 0;
	z-index: 5;
}

.personal-info .order-form .input-container .input > div ul li {
	cursor: pointer;
	padding: 2px 5px;
	display: block;
}

@media (max-width: 768px) {
	.personal-info .order-form .input-container label {
		-ms-flex: 1 0 100% !important;
			flex: 1 0 100% !important;
		max-width: 100% !important;
		text-align: right;
	}
	
	.personal-info .order-form .input-container .input {
		-ms-flex: 1 0 100%;
			flex: 1 0 100%;
		max-width: 100%;
	}
	
	.personal-info .order-form .checkbox-container {
		padding: 0;
	}
	
	.personal-info .order-form .inputs-container {
		justify-content: center;
	}
	
	.personal-info .order-form .inputs-container label {
		margin-right: 5.8px;
	}
}

.professionals-title,
.row-title {
	position: relative;
	padding: .5rem 0 1px 0;
	margin-bottom: 1.5rem;
}

.professionals-title p {
	display: block;
	text-align: center;
	margin: 0 auto .75rem auto;
	font-size: 1.25rem;
	max-width: 75%;
	line-height: 1;
}

.row-title {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
	align-items: center;
}

.professionals-title:after,
.row-title:after {
	content: '';
	background-image: url('../img/order-mt-separator.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	height: 5px;
	position: absolute;
	right: 1rem; left: 1rem;
}

.professionals-title:before,
.row-title:before {
	top: 0;
}

.professionals-title:after,
.row-title:after {
	bottom: 0;
}

.row-title:after {
	bottom: -.4rem;
}

.professionals-title .title {
	display: block;
	text-align: center;
	background-color: #f29f05;
	color: #ffffff;
}

.professionals-title .title img {
	display: inline;
	max-height: 2rem;
	margin-right: 1rem;
}

@media (max-width: 576px) {
	.professionals-title .title img {
		display: block;
		margin: .5rem auto 0 auto;
	}
}

.row-title img {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	display: block;
	max-height: 36px;
}

.row-title .title {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	margin-bottom: 0;
	margin-right: .5rem;
	font-weight: bold;
}

.professionals {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
	margin-bottom: 1rem;
	flex-wrap: wrap;
}

.professionals .column-2,
.professionals .column-3,
.professionals .column-4,
.professionals .column-5 {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	align-items: center;
	text-align: center;
	padding: 0 1rem;
	margin-bottom: 1rem;
}

.professionals .column-2 .pfs_heading,
.professionals .column-3 .pfs_heading,
.professionals .column-4 .pfs_heading,
.professionals .column-5 .pfs_heading {
	background-color: #f29f05;
	display: none;
}

.professionals .column-2 .pfs_heading .pfs_title,
.professionals .column-3 .pfs_heading .pfs_title,
.professionals .column-4 .pfs_heading .pfs_title,
.professionals .column-5 .pfs_heading .pfs_title {
	color: #fff;
}

.professionals .column-2 .pfs_image,
.professionals .column-3 .pfs_image,
.professionals .column-4 .pfs_image,
.professionals .column-5 .pfs_image {
	/*border: 1px solid #d2d2d2;*/
	/*border-top: none;*/
	/*border-bottom: none;*/
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
	align-items: center;
	/*padding: 1rem;*/
	margin-left: 1rem;
	/*height: 190px;*/
}

.professionals .column-5 .pfs_image {
	height: auto;
}

.professionals .column-2 .pfs_image,
.professionals .column-3 .pfs_image {
	/*height: 240px;*/
}

.professionals .column-2 .pfs_image .image,
.professionals .column-3 .pfs_image .image,
.professionals .column-4 .pfs_image .image,
.professionals .column-5 .pfs_image .image {
	display: block;
	max-width: 80px;
	max-height: 180px;
}

.professionals .column-2 .pfs_image .image,
.professionals .column-3 .pfs_image .image {
	max-height: 200px;
}

.professionals .column-4 .pfs_image .image.placeholder {
	height: 200px;
}

.professionals .column-2 .pfs_content,
.professionals .column-3 .pfs_content,
.professionals .column-4 .pfs_content,
.professionals .column-5 .pfs_content {
	display: block;
}

.professionals .column-2 .pfs_content .pfs_name,
.professionals .column-3 .pfs_content .pfs_name,
.professionals .column-4 .pfs_content .pfs_name,
.professionals .column-5 .pfs_content .pfs_name {
	font-size: 2.25rem;
	font-weight: bold;
	text-align: right;
	margin: 0;
}

.professionals .column-4 .pfs_content.pfs_content_sm .pfs_name {
	font-size: 1.75rem;
}

.professionals .column-5 .pfs_content .pfs_name {
	font-size: 1.75rem;
}

.professionals .column-2 .pfs_content .pfs_desc,
.professionals .column-3 .pfs_content .pfs_desc,
.professionals .column-4 .pfs_content .pfs_desc,
.professionals .column-5 .pfs_content .pfs_desc {
	margin: -.25rem 0 .25rem 0;
	text-align: right;
	font-size: 1.25rem;
	line-height: 0.9;
}

.professionals .column-2 .pfs_content .checkbox-container,
.professionals .column-3 .pfs_content .checkbox-container,
.professionals .column-4 .pfs_content .checkbox-container,
.professionals .column-5 .pfs_content .checkbox-container {
	padding: 0 !important;
	margin: 0 auto;
	width: 100%;
}

.professionals .column-2 .pfs_content .checkbox-container label,
.professionals .column-3 .pfs_content .checkbox-container label,
.professionals .column-4 .pfs_content .checkbox-container label,
.professionals .column-5 .pfs_content .checkbox-container label {
	display: table;
	margin: 0;
}

.card-holders-logos {
	margin: 0 auto;
	text-align: center;
}

.card-holders-logos img {
	display: block;
	margin: 0 auto;
}

.order-placement {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	padding: 1.5rem 0;
}

.order-placement .op_content {
	-ms-flex: 0 0 55%;
		flex: 0 0 55%;
	max-width: 55%;
	position: relative;
}

.order-placement .op_content .op_heading {
	text-align: center;
}

.order-placement .op_content .op_heading .op_title {
	font-weight: bold;
}

.order-placement .op_content .op_desc {
	text-align: center;
}

.order-placement .op_content .op_box {
	display: block;
}

.order-placement .op_content .op_box img {
	display: block;
	max-width: 100%;
	transform: translateY(-15%);
}

.order-placement .op_surprise {
	-ms-flex: 0 0 45%;
		flex: 0 0 45%;
	max-width: 45%;
	padding: 0 2rem 0 1rem;
}

.order-placement .op_surprise .ops_container {
	background-color: #000000;
}

.order-placement .op_surprise .ops_container .ops_image {
	max-width: 100%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
	align-items: center;
	padding: 1rem 1rem 0 1rem;
	margin-bottom: 1rem;
}

.order-placement .op_surprise .ops_container .ops_image img {
	display: block;
	max-width: 100%;
	margin: 0 auto;
}

.order-placement .op_surprise .ops_container .ops_content {
	background-color: #f29f05;
	text-align: center;
}

.order-placement .op_surprise .ops_container .ops_content .ops_title {
	font-size: 2rem;
	font-weight: bold;
}

.order-placement .op_surprise .ops_container .ops_content .ops_text {
	display: block;
    margin: 0;
    margin-top: -8px;
    max-width: 80%;
    text-align: center;
    margin: 0 auto;
    line-height: 1;
    padding-bottom: 8px;
}

.order-placement-label {
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
	margin: 0;
}

.order-placement-label a {
	text-decoration: underline;
	color: #f29f05;
}

.professionals-container {
	padding-top: 3vh;
	padding-bottom: 5vh;
	margin-bottom: 5vh;
	background: linear-gradient(to bottom,#ffea00 1%,#fc0 100%);
}

.professionals-wrapper {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	max-width: 1080px;
	margin: 0 auto;
}

.professionals-container .zap-logo {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	margin-bottom: 4vh;
}

.professionals-container .zap-logo img {
	display: block;
	margin: 0 auto;
	max-width: 300px;
}

.professionals-container .zap-logo span {
	display: block;
	margin: 0 auto;
	text-align: center;
	font-size: 1.5rem;
	line-height: 1;
}

.professionals-container .zap-select {
	font-size: 1rem;
	display: block;
	margin-top: -2px;
	font-weight: bold;
}

.professionals-container .item {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	max-width: 100%;
	margin-right: 1.5rem;
	margin-left: 1.5rem;
	cursor: pointer;
	-webkit-transition: all 0.1s linear;
		-ms-transition: all 0.1s linear;
			transition: all 0.1s linear;
	margin-bottom: 1rem;
	position: relative;
}

.professionals-container .item:hover {
	-webkit-transform: scale(1.03);
		-ms-transform: scale(1.03);
			transform: scale(1.03);
}

.professionals-container .item.selected {
	-webkit-transform: scale(1.1);
		-ms-transform: scale(1.1);
			transform: scale(1.1);
}

.professionals-container .item img {
	display: block;
	max-width: 70px;
}

.professionals-container .item span {
	margin-top: 3px;
	display: block;
	text-align: center;
	max-width: 70px;
	font-size: 1.2rem;
}

.professionals-container .item .marker {
	font-size: 1rem;
	padding-right: 13px;
}

.professionals-container .item .marker:before {
	content: '';
	background-image: url('../img/rounded-checkbox.png');
	background-repeat: no-repeat;
	background-size: 100% 100%;
	width: 12px; height: 12px;
	position: absolute;
	left: 7px; bottom: 38px;
	transform: translateY(50%);
}

.professionals-container .item.selected .marker:before {
	background-image: url('../img/rounded-checkbox-checked.png');
}

@media (max-width: 576px) {
	.mobile-block {
		display: block;
	}
}

.bag {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	background-color: #f3f3f3;
	border-bottom: 1px dotted #111;
}

.bag .bag-title {
	text-align: center;
	padding: .5rem 0;
}

.bag .bag-title .title {
	display: block;
	margin: 0 auto;
	font-size: 2rem;
	font-weight: bold;
}

.bag .bag-content {
	text-align: center;
	padding-bottom: .5rem;
}

.bag .bag-content .bag-status {
	display: block;
	margin-bottom: .5rem;
}

.bag .bag-content .bag-packages {
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	width: 100%;
	min-width: 300px;
	max-width: 1080px;
	margin: 0 auto;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
}

.bag .bag-content .bag-packages .package {
	padding: .5rem 1rem;
}

.bag .bag-content .bag-packages .package .package-wrapper {
	border: 1px dotted #f29f05;
	padding: .75rem 1rem;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	flex-wrap: wrap;
}

@media (max-width: 576px) {
	.bag .bag-content .bag-packages .package {
		margin-bottom: .5rem;
	}
}

.bag .bag-content .bag-packages .package .title {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	max-width: 100%;
}

.bag .bag-content .bag-packages .package .quantity {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	max-width: 100%;
	margin-right: auto;
}

.bag .bag-content .bag-packages .package .quantity:after {
	content: 'x';
}

.bag .bag-content .bag-packages .package .price,
.bag .bag-content .bag-packages .package .packprice,
.bag .bag-content .bag-packages .package .delivery {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	display: block;
	font-size: 1.5rem;
	text-align: right;
}

.bag .bag-content .bag-packages .package .remove {
	display: block;
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	outline: none;
	cursor: pointer;
	background: none;
	border: none;
	margin-top: .5rem;
	background-color: #ffdb98;
}

.packages .package-items {
	/*display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;*/
	padding-top: .75rem;
}

.packages .package-items .item {
	display: block;
}

.packages .package-items .item.item-sm {
	font-size: 75%;
}

.packages .package-items .package-item {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	display: -ms-flexbox;
	display: flex;
	align-items: center;
}

.packages .package-items .package-item .package-image {
	-ms-flex: 0 0 80px;
		flex: 0 0 80px;
	max-width: 80px;
	padding-bottom: 5px;
	padding-top: 5px;
}

.packages .package-items .package-item .package-image img {
	display: block;
	max-width: 100%;
	max-height: 70px;
}

.packages .package-items .package-item .package-content {
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	max-width: calc(100% - 80px);
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	padding-right: 1rem;
	font-size: 1.25rem;
}

.packages .package-items .package-item .package-content .package-title {
	-ms-flex: 0 0 180px;
		flex: 0 0 180px;
	max-width: 180px;
	text-align: right;
	align-self: center;
}

.packages .package-items .package-item .package-content .package-price {
	-ms-flex: 100px;
		flex: 100px;
	max-width: 100px;
	align-self: center;
	margin-right: .5rem;
	margin-left: .5rem;
	text-align: center;
}

.packages .package-items .package-item .package-content .package-control {
	-ms-flex: 0 0 80px;
		flex: 0 0 80px;
	max-width: 80px;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	flex-wrap: wrap;
}

.packages .package-items .package-item .package-content .package-control .package-quantity {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
	height: 30px;
	align-self: center;
}

.packages .package-items .package-item .package-content .package-control .package-quantity .increase,
.packages .package-items .package-item .package-content .package-control .package-quantity .decrease,
.packages .package-items .package-item .package-content .package-control input[type="text"] {
	-ms-flex: 0 0 18px;
		flex: 0 0 18px;
	max-width: 18px;
	background: none;
	background-color: #ffdb98;
	text-align: center;
	border: none;
}

.packages .package-items .package-item .package-content .package-control .package-quantity .increase,
.packages .package-items .package-item .package-content .package-control .package-quantity .decrease {
	-ms-flex: 0 0 31px;
		flex: 0 0 31px;
	max-width: 31px;
	cursor: pointer;
}

.packages .package-items .package-item .package-content .package-control .package-order {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-height: 100%;
	background-color: #f29f05;
}

.packages .package-items .package-item .package-content .package-control .package-order a {
	display: block;
	text-align: center;
	color: #fff;
	text-decoration: none;
}

@media (max-width: 576px) {
	.packages .package-items .package-item .package-content .package-control .package-quantity .increase,
	.packages .package-items .package-item .package-content .package-control .package-quantity .decrease,
	.packages .package-items .package-item .package-content .package-control input[type="text"],
	.packages .package .package-control .package-quantity .increase,
	.packages .package .package-control .package-quantity .decrease,
	.packages .package .package-control input[type="text"] {
		-ms-flex: 33.3333336%;
			flex: 33.3333336%;
		max-width: 33.3333336%;
	}
	
	.packages .package-items .package-item {
		margin-bottom: 1rem;
	}
	
	.packages .package-items .package-item .package-content .package-price {
		-ms-flex: 50%;
			flex: 50%;
		max-width: 50%;
		margin-right: 0;
		margin-left: 0;
	}

	.packages .package-items .package-item .package-content .package-control {
		-ms-flex: 0 0 50%;
			flex: 0 0 50%;
		max-width: 50%;
	}
}

@keyframes positionChange {
	0% {
		transform: translateY(-50%);
		opacity: 0;
	}
	100% {
		transform: translateY(-65%);
		opacity: 1;
	}
}

@keyframes positionChangeExt {
	0% {
		transform: translateY(0%);
		opacity: 0;
	}
	100% {
		transform: translateY(-15%);
		opacity: 1;
	}
}

.popup {
	display: none;
}

.popup-wrapper {
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0; right: 0; bottom: 0; left: 0;
	background-color: rgba(0, 0, 0, 0.7);
}

.popup-dark .popup-wrapper {
	background-color: rgba(0, 0, 0, 1);
}

.popup-wrapper .popup-container {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	max-width: 320px;
	min-height: 10px;
	background-color: #f29f05;
	transform: translateY(-15%);
	-webkit-animation: positionChangeExt 400ms 1;
		-ms-animation: positionChangeExt 400ms 1;
			animation: positionChangeExt 400ms 1;
	box-shadow: 0px 0px 26px rgb(0,0,0,0.8);
	text-align: center;
}

.popup-extended .popup-wrapper .popup-container {
	width: 440px;
	max-width: calc(100% - 2rem);
	margin-right: 1rem;
	margin-left: 1rem;
}

.popup-wrapper .popup-container .popup-header {
	padding: 1rem;
}

.popup-wrapper .popup-container .popup-header img {
	display: block;
	margin: 0 auto;
	max-width: 180px;
}

.popup-wrapper .popup-container .popup-header span {
	display: block;
	margin: 0 auto;
	text-align: center;
	color: #ffffff;
	font-size: 2rem;
}

.popup-wrapper .popup-container .popup-content {
	background-color: #ffffff;
	padding: 1rem;
}

.popup-wrapper .popup-container .popup-content img {
	display: block;
	max-width: 100%;
	margin: 0 auto 1rem auto;
}

.popup-wrapper .popup-container .popup-content p {
	display: block;
	text-align: center;
	margin: 0;
}

.popup-wrapper .popup-container .popup-content p.coupon-present {
	background-color: yellow;
	padding: 0 .25rem;
}

.popup-wrapper .popup-container .popup-content button {
	display: block;
	margin: 1rem auto 0 auto;
	background: none;
	border: none;
	outline: none;
	box-shadow: 0px 0px 10px rgba(0,0,0,0.7);
	border-radius: 15px;
	padding: 2px 1rem;
	cursor: pointer;
	background-color: #ffd78c;
}

.popup-wrapper .popup-container .popup-content .popup-close {
	display: table;
	background-color: #f29f05;
	margin: .5rem auto 0 auto;
	text-decoration: none;
	border-radius: 5px;
	color: #fff;
	padding: 3px 1rem;
}

.popup-wrapper .popup-container .popup-content input[type="text"],
.popup-wrapper .popup-container .popup-content input[type="email"],
.popup-wrapper .popup-container .popup-content input[type="tel"] {
	display: block;
	margin-top: 1rem;
	width: 100%;
	outline: none;
	border: 1px solid #f29f05;
	font-size: 1.25rem;
	padding: 8px .5rem;
}

.popup-wrapper .popup-container .popup-content .popup-controls {
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	margin-top: 1rem;
}

.popup-wrapper .popup-container .popup-content .popup-controls span {
	-ms-flex: 1 0 100%;
		flex: 1 0 100%;
	max-width: 100%;
	display: block;
	margin-top: -.5rem;
	margin-bottom: .5rem;
}

.popup-wrapper .popup-container .popup-content .popup-controls .popup-confirm,
.popup-wrapper .popup-container .popup-content .popup-controls .popup-cancel {
	-ms-flex: 0 0 auto;
		flex: 0 0 auto;
	max-width: 100%;
	background-color: #f29f05;
	text-decoration: none;
	color: #ffffff;
	font-size: 1.25rem;
	padding: 10px 1.5rem;
	border-radius: 3px;
	font-size: 1.25rem;
	-ms-transition: all 0.1s linear;
		transition: all 0.1s linear;
	box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.6);
}

.popup-extended .popup-wrapper .popup-container .popup-content .popup-controls .popup-confirm {
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	margin-left: 1rem;
}

.popup-wrapper .popup-container .popup-content .popup-controls .popup-cancel {
	background-color: transparent;
	color: #111111;
	margin-right: auto;
}

.popup-wrapper .popup-container .popup-content .popup-controls .popup-confirm:hover,
.popup-wrapper .popup-container .popup-content .popup-controls .popup-cancel:hover {
	box-shadow: 0px 0px 5px #f29f05;
}

.coupon-container {
	display: block;
	margin: 0 auto;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
}

.coupon-container label {
	display: block;
	margin-bottom: 0;
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
}

.coupon-container .coupon-input {
	-ms-flex: 1 0 auto;
		flex: 1 0 auto;
	max-width: calc(100% - 50px);
	outline: none;
	border: 1px solid #ababab;
	padding: .25rem .5rem;
}

.coupon-container .coupon-button {
	-ms-flex: 0 0 50px;
		flex: 0 0 50px;
	max-width: 50px;
	background-color: #f29f05;
	text-align: center;
	color: #fff;
	text-decoration: none;
	padding: .25rem 0;
	border: none;
	cursor: pointer;
}

.coupon-container .coupon-button:disabled {
	opacity: 0.7;
	cursor: not-allowed;
}

.coupon-container .coupon-show {
	background-color: #f29f05;
	text-decoration: none;
	color: #ffffff;
	font-size: 1.25rem;
	padding: 10px 1.5rem;
	border-radius: 3px;
	font-size: 1.5rem;
	-ms-transition: all 0.1s linear;
		transition: all 0.1s linear;
	box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.6);
	margin: 0 auto;
}

.coupon-container .telephony-order {
	background-color: #007bff;
	text-decoration: none;
	color: #ffffff;
	font-size: 1.25rem;
	padding: 10px 1.5rem;
	border-radius: 3px;
	font-size: 1.5rem;
	-ms-transition: all 0.1s linear;
		transition: all 0.1s linear;
	box-shadow: 0px 0px 1px rgba(0, 0, 0, 0.6);
	margin: 0 auto;
}

.coupon-status {
	-ms-flex: 0 0 100%;
		flex: 0 0 100%;
	max-width: 100%;
	display: block;
	font-size: 1.25rem;
}

.coupon-status.is-success {
	color: green;
}

.coupon-status.is-failed {
	color: red;
}

.coupon-status.is-checking {
	color: orange;
}

@media (max-width: 768px) {
	.hidden-sm {
		display: none !important;
	}
}