/* FONTS */
@font-face {
	font-family: "Nunito";
	src: url("../fonts/Nunito-Regular.ttf") format("truetype");
}

@font-face {
	font-family: 'Oswald';
	src: url('../fonts/Oswald-Regular.eot');
	src: url('../fonts/Oswald-Regular.eot?#iefix') format('embedded-opentype'),
		url('../fonts/Oswald-Regular.ttf') format('truetype');
}

@font-face {
	font-family: 'Adihaus';
	src: url('../fonts/AdihausDIN-Regular.eot');
	src: url('../fonts/AdihausDIN-Regular.eot?#iefix') format('embedded-opentype'),
		url('../fonts/AdihausDIN-Regular.ttf') format('truetype');
	font-weight: normal;
}

@font-face {
	font-family: 'Adineue';
	src: url('../fonts/adineuePRO-Bold.eot');
	src: url('../fonts/adineuePRO-Bold.eot?#iefix') format('embedded-opentype'),
		url('../fonts/adineuePRO-Bold.ttf') format('truetype');
	font-weight: bold;
}

@font-face {
	font-family: 'Adihaus';
	src: url('../fonts/AdihausDIN-Bold.eot');
	src: url('../fonts/AdihausDIN-Bold.eot?#iefix') format('embedded-opentype'),
		url('../fonts/AdihausDIN-Bold.ttf') format('truetype');
	font-weight: bold;
}

@font-face {
	font-family: 'Adineue';
	src: url('../fonts/adineuePRO-Regular.eot');
	src: url('../fonts/adineuePRO-Regular.eot?#iefix') format('embedded-opentype'),
		url('../fonts/adineuePRO-Regular.ttf') format('truetype');
	font-weight: normal;
}

/* VARIABLES
	• The logo, is used by the offline screen too, but you can hide that with --Offline_Logo
	• --CB_Border\Shadow is a box-shadow, use commas to set both or multiples */

:root {
	/* BRAND ASSETS */
	/* HEADER & FOOTER */
	/* CONTROL BUTTONS */
	/* BOXES */
	/* MENU BUTTON CONTROLS */
	/* BODY TEXT */
	/* DYNAMIC SPLASH SCREEN */
	/* SPECIAL INSTRUCTIONS */
}

/* OVERRIDES FOR X22 */

/* OVERRIDES FOR TABLET */

/* OVERRIDES FOR MOBILE */

body {
	background: #222 url('../images/drive_thru_background.png');
	background-position: center center;
	font-family: Adihaus;
	font-size: 16px;
	text-transform: auto;
}

#wrap {
	background: #fff url("../images/item_texture.png");
	background-size: cover;
	width: 100% !important;
}

.box {
	display: block;
	position: relative;
	background: white;
	border: 1px solid dimgrey;
	border-radius: 0px;
	border-left: 8px solid #fca311;
	color: black;
}

@media only screen and (max-width: 1023px) {
	.box {
		border-left: 1px solid dimgrey;
	}
}

.box:hover {
	display: block;
	position: relative;
	background: white;
	border: 1px solid dimgrey;
	border-radius: 0px;
	border-left: 8px solid #fca311;
	color: black;
}

@media only screen and (max-width: 1023px) {
	.box:hover {
		border-left: 1px solid dimgrey;
	}
}

.box:focus {
	display: block;
	position: relative;
	background: white;
	border: 1px solid dimgrey;
	border-radius: 0px;
	border-left: 8px solid #fca311;
	color: black;
}

@media only screen and (max-width: 1023px) {
	.box:focus {
		border-left: 1px solid dimgrey;
	}
}

*,
*:focus,
*:active,
*:hover,
*:before,
*:after {
	outline: none !important;
	text-decoration: none !important;
}

@font-face {
	font-family: "FA";
	src: url("../fonts/fa-solid-900.eot");
	src: url("../fonts/fa-solid-900.eot?#iefix") format("embedded-opentype"),
		url("../fonts/fa-solid-900.ttf") format("truetype");
}

@font-face {
	font-family: "FAB";
	src: url("../fonts/fa-brands-400.eot");
	src: url("../fonts/fa-brands-400.eot?#iefix") format("embedded-opentype"),
		url("../fonts/fa-brands-400.ttf") format("truetype");
}

.nex-button {
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 20px;
	background: #fca311;
	color: white;
	border: 0;
	text-decoration: none;
}

.nex-button:focus {
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 20px;
	background: #fca311;
	color: white;
	border: 0;
	text-decoration: none;
}

.nex-button:hover {
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 20px;
	background: #fca311;
	color: white;
	border: 0;
	text-decoration: none;
}

.nex-button:active {
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 20px;
	background: #fca311;
	color: white;
	border: 0;
	text-decoration: none;
}

#languageSwitcher {
	height: 40px;
	line-height: 40px;
	text-align: center;
	font-size: 20px;
	background: #fca311;
	color: white;
	border: 0;
	text-decoration: none;
}

form .btn {
	height: 40px;
	text-align: center;
	font-size: 20px;
	background: #fca311;
	color: white;
	border: 0;
	text-decoration: none;
}

.nex-button:before,
#languageSwitcher:before,
.fa:before {
	font-family: "FA";
	display: block;
}

.previewer-only {
	display: none;
}

#previewer .previewer-only {
	display: block;
}

/* KIOSK */

body,
#wrap,
.kiosk-content,
.kiosk-content #content,
.kiosk-content #targets,
.kiosk-content #targets>div:not(#popups) {
	position: absolute;
	top: 0;
	height: 100%;
	width: 100%;
	margin: 0;
	padding: 0;
}

.kiosk-content #clip-template {
	position: relative;
	height: calc(100% - 60px - 60px);
}

@media only screen and (max-width: 767px) {
	.kiosk-content #clip-template {
		height: calc(100% - 45px - 60px);
	}
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.kiosk-content #clip-template {
		height: calc(100% - 180px);
	}
}

.paymentclip {
	position: relative;
	height: calc(100% - 60px - 60px);
}

@media only screen and (max-width: 767px) {
	.paymentclip {
		height: calc(100% - 45px - 60px);
	}
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.paymentclip {
		height: calc(100% - 180px);
	}
}

.kiosk-content #clip-repeatorders {
	position: relative;
	height: calc(100% - 60px - 60px);
}

@media only screen and (max-width: 767px) {
	.kiosk-content #clip-repeatorders {
		height: calc(100% - 45px - 60px);
	}
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.kiosk-content #clip-repeatorders {
		height: calc(100% - 180px);
	}
}

.kiosk-content #clip-orders {
	position: relative;
	height: calc(100% - 60px - 60px);
}

@media only screen and (max-width: 767px) {
	.kiosk-content #clip-orders {
		height: calc(100% - 45px - 60px);
	}
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.kiosk-content #clip-orders {
		height: calc(100% - 180px);
	}
}

.kiosk-content #template,
.carousel,
.carousel-inner,
.slide,
.item {
	width: 100%;
	height: 100%;
}

#ordering {
	background-size: cover;
	background-position: center center;
}

.kiosk-content .slide {
	animation: fadeInRight .25s;
}

.item.active,
.item.next,
.item.prev {
	height: 100%;
	display: flex;
	align-items: center;
}

.kiosk-content .row {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-flow: row wrap;
	width: 100%;
	margin: 0;
}

/* HEADER */

#clip-header {
	display: flex;
	height: 60px;
	width: 100%;
	padding: 0 20px;
	background: black;
	border-bottom: 1px solid dimgrey;
	font-family: Adineue;
	text-transform: capitalize;
	z-index: 5;
}

#clip-footer {
	display: flex;
	height: 60px;
	width: 100%;
	padding: 0 20px;
	background: black;
	border-bottom: 1px solid dimgrey;
	font-family: Adineue;
	text-transform: capitalize;
	z-index: 5;
}

#clip-header {
	height: 60px;
}

@media only screen and (max-width: 767px) {
	#clip-header {
		height: 45px;
	}
}

.logo {
	height: 60px;
    width: 90px;
	margin-right: 15px;
}

@media only screen and (max-width: 767px) {
	.logo {
		margin-right: 10px;
	}
}

@media only screen and (max-width: 767px) {
	.logo {
		width: 40px;
	}
}

.logo {
	background-image: url("../images/logo.png");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

#logoOff {
	background-image: url("../images/logo.png");
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
}

#logoOff {
	height: 200px;
	width: 200px;
	background-color: black;
	background-size: 50%;
	border-radius: 50%;
	margin: 20px auto;
	display: block;
}

.header-wrapper {
	display: flex;
	flex-direction: column;
	flex-grow: 1;
	height: 100%;
	justify-content: center;
}

#header-text {
	font-family: Adineue;
	color: white;
	font-size: 24px;
	line-height: 24px;
	text-transform: uppercase;
	font-weight: undefined;
}

@media only screen and (max-width: 767px) {
	#header-text {
		line-height: 16px;
	}
}

@media only screen and (max-width: 767px) {
	#header-text {
		font-size: 16px;
	}
}

#menuDescription {
	color: white;
	font-size: 14px;
}

@media only screen and (max-width: 767px) {
	#menuDescription {
		font-size: 12px;
	}
}

/* FOOTER */

#clip-footer {
	background: black;
	border-bottom: 0;
	border-top: 1px solid dimgrey;
	position: fixed;
	bottom: 0;
}

.footer-left {
	line-height: 60px;
	width: 25%;
	color: white;
	font-size: 18px;
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.footer-left {
		font-size: 20px;
	}
}

.footer-right {
	line-height: 60px;
	width: 25%;
	color: white;
	font-size: 18px;
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.footer-right {
		font-size: 20px;
	}
}

#controlbuttons {
	display: flex;
	align-items: center;
	width: 50%;
	border-left: 1px solid dimgrey;
	border-right: 1px solid dimgrey;
	padding: 0 10px;
	box-shadow: inset 10px 0 10px -5px rgba(0, 0, 0, 0.25), inset -10px 0 10px -5px rgba(0, 0, 0, 0.25);
	overflow: hidden;
	font-family: Adineue;
	font-size: 20px;
}

@media only screen and (max-width: 767px) {
	#controlbuttons {
		font-size: 14px;
	}
}

#controlbuttons>div {
	width: 33.33%;
	text-align: center;
	padding: 0 5px;
}

.control-button {
	width: 100%;
	height: 40px;
	padding: 0;
	line-height: 40px;
	border: 0;
	border-radius: 0px;
	box-shadow: none;
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.control-button {
		border-radius: 0px;
	}
}

.control-button-left .control-button {
	background: white;
	color: black;
	border-top-left-radius: 0px;
	border-bottom-left-radius: 0px;
	animation: fadeInLeft .25s;

}

@media only screen and (width: 1080px) and (height: 1920px) {
	.control-button-left .control-button {
		border-bottom-left-radius: 30px;
	}
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.control-button-left .control-button {
		border-top-left-radius: 30px;
	}
}

.control-button-center .control-button {
	background: white;
	color: black;
}

.control-button-right .control-button {
	background: white;
	color: black;
	border-top-right-radius: 0px;
	border-bottom-right-radius: 0px;
	animation: fadeInRight .25s;
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.control-button-right .control-button {
		border-bottom-right-radius: 30px;
	}
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.control-button-right .control-button {
		border-top-right-radius: 30px;
	}
}

#receipt {
	height: 60px;
	float: right;
	width: 100%;
	text-align: right;
}

/* IMAGE BUTTONS */

.image-button {
	position: relative;
	flex-basis: 25%;
	padding: 10px;
}

[data-button-count="1"] .image-button,
[data-button-count="2"] .image-button,
[data-button-count="3"] .image-button,
[data-button-count="4"] .image-button,
[data-button-count="5"] .image-button,
[data-button-count="6"] .image-button {
	flex-basis: 33.33%;
}

[data-button-count="4"] .image-button,
[data-button-count="9"] .image-button {
	margin: 0 1px;
}

.image-button #bimage {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100px;
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
	margin: 24px 2.5% 0 2.5%;
}

[data-button-count="1"] #bimage,
[data-button-count="2"] #bimage,
[data-button-count="3"] #bimage,
[data-button-count="4"] #bimage,
[data-button-count="5"] #bimage,
[data-button-count="6"] #bimage,
[data-button-count="7"] #bimage,
[data-button-count="8"] #bimage {
	height: 150px;
}

.image-button .caption {
	text-align: center;
}

.image-button #btext {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 2.5em;
	line-height: 1em;
	padding: 0 10px;
	color: black;
	font-size: 15px;
	font-weight: bold;
}

.details {
	display: flex;
	text-align: center;
	align-items: center;
	justify-content: center;
	height: 25px;
	width: 100%;
	font-size: 13px;
}

.image-button .overlaycontainer {
	height: 100%;
	line-height: 24px;
	padding: 0 4px;
	flex-grow: 1;
	border-top: 1px solid dimgrey;
}

.image-button #price {
	height: 100%;
	line-height: 24px;
	padding: 0 4px;
	flex-grow: 1;
	border-top: 1px solid dimgrey;
}

.image-button #nutritionInfo {
	height: 100%;
	line-height: 24px;
	padding: 0 4px;
	flex-grow: 1;
	border-top: 1px solid dimgrey;
}

.overlaycontainer .overlay {
	display: inline-block;
	position: relative;
	height: 100%;
	width: 20px;
	margin-right: 4px;
}

.overlaycontainer:empty,
#price:empty,
.details:empty,
#calories:empty,
.text-button #textDesc:empty,
.modal-content #descriptionText:empty,
:empty+.dot-leader,
#menuDescription:empty {
	display: none;
}

#price:before {
	content: '$';
}

#calories:after {
	content: ' Cal';
}

#check {
	width: 40px;
	border-radius: 20px;
	visibility: hidden;
}

#check:before {
	content: '\f00c';
}

[class*="Quantity"] .lnm,
[class*="Qty"] .lnm,
[class*="Flavor"] .lnm,
[class*="LNM"] .qty {
	display: none;
}

#subButtons,
.order-review-quantity {
	display: flex;
	border-radius: 20px;
	overflow: hidden;
	width: 200px;
}

.qty,
.order-review-quantity>div {
	width: 33.33%;
}

#minusButton:before,
#quantMinus:before {
	content: '\f068';
}

#plusButton:before,
#quantPlus:before {
	content: '\f067';
}

.button-down-state #plusButton,
#quantPlus {
	visibility: visible !important;
}

#plusButton[style="visibility: hidden;"]:before,
#quantPlus[style="visibility: hidden;"]:before {
	opacity: 0.5;
}

#txtQuantity {
	border-left: 1px solid white;
	border-right: 1px solid white;
	box-sizing: content-box;
}

#quantity {
	border-left: 1px solid white;
	border-right: 1px solid white;
	box-sizing: content-box;
}

[class*="LNM"] .image-button #subButtons {
	width: 66.66%;
	height: 100%;
	flex-direction: column;
}

.lnm {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-grow: 1;
	font-size: 15px;
	font-weight: bold;
}

.lnm:hover {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-grow: 1;
	font-size: 15px;
	font-weight: bold;
}

#normal {
	border-top: 1px solid white;
	border-bottom: 1px solid white;
}

.button-down-state #check,
.button-down-state #subButtons {
	visibility: visible;
	animation: zoomIn -.25s.5s;
}

.gray-out {
	pointer-events: none;
	opacity: 0.5;
}

/* TEXT BUTTONS */

.text-button {
	position: relative;
	flex-basis: 33.33%;
	max-width: 33.33%;
	padding: 10px;
}

[data-button-count="1"] .text-button,
[data-button-count="2"] .text-button,
[data-button-count="3"] .text-button,
[data-button-count="4"] .text-button,
[data-button-count="5"] .text-button,
[data-button-count="6"] .text-button,
[data-button-count="7"] .text-button,
[data-button-count="8"] .text-button,
[data-button-count="9"] .text-button,
[data-button-count="10"] .text-button {
	flex-basis: 50%;
	max-width: 50%;
}

[data-button-count="1"] .text-button,
[data-button-count="2"] .text-button,
[data-button-count="3"] .text-button,
[data-button-count="4"] .text-button,
[data-button-count="5"] .text-button {
	margin: 0 1px;
}

.text-button .box {
	padding: 20px 15px 0 15px;
	font-size: 20px;
}

.text-button .caption {
	display: flex;
	align-items: center;
	height: calc(2 * 20px);
}

.text-button #btext {
	flex-grow: 1;
	font-weight: bold;
	line-height: 20px;
}

.text-button #price {
	line-height: 1rem;
}

.text-button #subButtons {
	position: absolute;
	top: calc(50% - 20px);
	right: 10px;
}

.text-button #check {
	position: absolute;
	right: 10px;
	top: calc(50% - 20px);
	background: transparent;
	color: black;
}

.checkbutton-text.button-down-state .caption {
	margin-right: 40px;
	transition: .15s;
}

.text-button .details {
	align-items: flex-start;
	justify-content: space-between;
	height: 20px;
	font-size: 13px;
}

.text-button #nutritionInfo {
	flex-grow: 0;
	padding-right: 0px;
	border-top: 0;
	max-width: 60px;
}

.text-button #nutritionButton,
.text-button #addButton {
	scale: 0.8;
	bottom: -20px;
}

.text-button #textDesc {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	max-width: calc(100% - 60px);
}

.text-button .overlaycontainer {
	flex-shrink: 0;
	margin-left: 10px;
	height: 1em;
}

.text-button .overlaycontainer .overlay {
	height: 1em;
}

/* POPOVERS */

.ibutton {
	position: absolute;
	right: 0;
	top: 0;
	border-radius: 20px;
	width: 40px;
	z-index: 2;
	animation: zoomIn .5s;
}

.ibutton:before {
	content: '\f129';
}

.ibutton-showing {
	background: white !important;
	color: #fca311 !important;
}

.sub-button-down-state {
	background: white !important;
	color: #fca311 !important;
}

.ibutton-showing:before {
	content: '\f00d';
}

.text-button .ibutton {
	height: 32px;
	line-height: 30px;
	width: 32px;
	font-size: 14px;
}

.text-button .ibutton:after {
	content: '';
	display: block;
	position: absolute;
	top: -5px;
	right: -5px;
	width: 45px;
	height: 45px;
}

.popover.top {
	position: absolute;
	top: 10px !important;
	left: initial !important;
	right: 10px;
	margin: 0;
	padding: 10px;
	min-width: calc(100% - 20px);
	max-width: calc(100% - 20px);
	height: calc(100% - 20px);
	background: #fca311;
	color: white;
	font-size: undefined;
	line-height: undefined;
	font-family: Adihaus;
	transition: none;
	z-index: 1;
	animation: popover .25s ease;
}

.popover.top div {
	padding: 0;
	margin: 0;
}

.popover.top .popover-content {
	padding-right: 30px;
}

.popover .arrow {
	display: none
}

.popover.top .nex-button {
	position: absolute;
	bottom: 15px;
	width: calc(100% - 20px);
	color: #fca311;
	background: white;
	padding: 0 10px;
	border-radius: 20px;
}

/* SCAN */

#scanItems {
	height: calc(100vh - 120px);
	display: flex;
	align-items: center;
	justify-content: center;
}

#scan-current-item-prompt {
	display: none;
}

.scan-total {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 80px;
	border-top: 1px solid dimgrey;
}

.scan-items-wrapper {
	height: 350px;
	width: 45vw;
	padding: 20px;
	overflow-y: scroll;
}

#scan-items {
	min-height: 100%;
	height: auto;
	display: flex;
	flex-direction: column-reverse;
	justify-content: flex-end;
}

#scan-items:empty {
	align-items: center;
	justify-content: center;
}

#scan-items:empty:before {
	content: '\f02a';
	font-family: FA;
	font-size: 150px;
}

.scan-item-wrapper {
	display: flex;
	margin-bottom: .25em;
	font-size: 20px;
}

#scan-item-description {
	flex-grow: 1;
}

.running-total {
	border-radius: 20px;
	width: 50%;
	position: relative;
}

#fakeScan {
	position: relative;
	top: -100%;
	width: 20vw;
	opacity: 0;
}

/* WEIGH */

#weighItem {
	height: calc(100vh - 120px);
	width: 100%;
	background: url('../images/scale.png') center center no-repeat;
	-webkit-filter: drop-shadow(0 0 10px black);
}

/* ORDER REVIEW */

.kiosk-content #buttons.order-review-buttons {
	display: block;
	height: 100%;
	padding: 20px calc(25% - 10px) 20px 25%;
	overflow-y: scroll !important;
	background: transparent;
}

#orderreview {
	width: 100%;
	padding: 10px;
	margin-bottom: 20px;
}

.order-review-row {
	display: flex;
	height: 40px;
	align-items: center;
}

#receipttext {
	flex-grow: 1;
	font-weight: bold;
}

#receipt:after {
	font-family: FA;
	content: '\f543';
	margin-left: 5px;
}

#amountdue,
.order-review-quantity {
	margin-left: 10px;
}

#modtext {
	font-size: 13px;
	padding: 10px 0;
}

.order-review-special-instructions #comment {
	width: 100%;
	padding: 5px 10px;
	border-radius: 20px;
	border: 1px solid dimgrey;
	font-size: 13px;
	display: undefined;
}

/* PAGINATION */

.kiosk-content .row {
	padding: 0 60px;
}

.carousel-control-prev,
.carousel-control-next {
	position: fixed;
	top: calc(50% - 20px);
	right: 15px;
	width: 40px;
	border-radius: 20px;
}

.carousel-control-prev {
	left: 15px;
}

.carousel-control-prev:before {
	content: '\f060';
}

.carousel-control-next:before {
	content: '\f061';
}

#template[data-button-count="1"] .row,
#template[data-button-count="2"] .row,
#template[data-button-count="3"] .row,
#template[data-button-count="4"] .row,
#template[data-button-count="5"] .row,
#template[data-button-count="6"] .row,
#template[data-button-count="7"] .row,
#template[data-button-count="8"] .row,
#template[data-button-count="9"] .row,
#template[data-button-count="10"] .row,
#template[data-button-count="11"] .row,
#template[data-button-count="12"] .row {
	padding: 0 20px;
}

#template[data-button-count="1"]+.carousel-buttons>a,
#template[data-button-count="2"]+.carousel-buttons>a,
#template[data-button-count="3"]+.carousel-buttons>a,
#template[data-button-count="4"]+.carousel-buttons>a,
#template[data-button-count="5"]+.carousel-buttons>a,
#template[data-button-count="6"]+.carousel-buttons>a,
#template[data-button-count="7"]+.carousel-buttons>a,
#template[data-button-count="8"]+.carousel-buttons>a,
#template[data-button-count="9"]+.carousel-buttons>a,
#template[data-button-count="10"]+.carousel-buttons>a,
#template[data-button-count="11"]+.carousel-buttons>a,
#template[data-button-count="12"]+.carousel-buttons>a,
.order-review .carousel-buttons,
.scanitems+.carousel-buttons,
[class*="weigh"]+.carousel-buttons {
	display: none;
}

/* UTILITY SCREENS */

.paymentclip,
#repeatOrderPhase,
#previousorders-form,
#orders,
#greenreceipt,
#complete-hitarea,
#clip-offline-kiosk {
	display: flex;
	justify-content: center;
	align-items: center;
}

#clip-choices,
#previousorders-form,
#clip-offline-kiosk {
	width: 100%;
	height: 100%;
}

#paymentclip-select .row {
	height: auto;
	display: flex !important;
	animation: fadeInRight .25s;
}

#repeatOrderPrompt,
#repeatOrderOptions {
	display: flex;
	animation: fadeInRight .25s;
}

#repeatOrderPhase {
	height: 100%;
}

.payment-button {
	display: inline-block;
	border: 1px solid dimgrey;
	margin: 10px;
	overflow: hidden;
	width: 200px;
}

.payment-button:hover {
	display: inline-block;
	border: 1px solid dimgrey;
	margin: 10px;
	overflow: hidden;
	width: 200px;
}

.repeatOrderPromptButton {
	display: inline-block;
	border: 1px solid dimgrey;
	margin: 10px;
	overflow: hidden;
	width: 200px;
}

.repeatOrderPromptButton:hover {
	display: inline-block;
	border: 1px solid dimgrey;
	margin: 10px;
	overflow: hidden;
	width: 200px;
}

.repeatOrderButton {
	display: inline-block;
	border: 1px solid dimgrey;
	margin: 10px;
	overflow: hidden;
	width: 200px;
}

.repeatOrderButton:hover {
	display: inline-block;
	border: 1px solid dimgrey;
	margin: 10px;
	overflow: hidden;
	width: 200px;
}

.payment-button #btext {
	border-top: 1px solid dimgrey;
	height: 2em;
	line-height: 2em;
	font-size: 1rem;
	text-align: center;
}

.repeatOrderPromptButton #btext {
	border-top: 1px solid dimgrey;
	height: 2em;
	line-height: 2em;
	font-size: 1rem;
	text-align: center;
}

.repeatOrderButton #btext {
	border-top: 1px solid dimgrey;
	height: 2em;
	line-height: 2em;
	font-size: 1rem;
	text-align: center;
}

.payment-button #bimage,
#bicon {
	display: flex;
	height: 126px;
	width: 100%;
	align-items: center;
	justify-content: center;
	font-size: 75px;
}

.payment-button #bimage {
	position: absolute;
	top: 0;
}

#bicon:before,
.credit #bicon:before {
	font-family: FA;
	content: '\f09d';
}

[id*="Counter"] #bicon:before {
	content: '\f3d1';
}

[id*="Coupon"] #bicon:before {
	content: '\f3ff';
}

[id*="Employee"] #bicon:before {
	content: '\f2bd';
}

[id*="newOrder"] #bicon:before {
	content: '\f067';
}

[id*="repeatButton"] #bicon:before {
	content: '\f2f9';
}

[id*="pin"] #bicon:before {
	content: '\f00a';
}

[id*="cancel"] #bicon:before,
.cancel #bicon:before {
	content: '\f00d';
}

.phone #bicon:before {
	content: '\f10b';
}

.payment-container,
.payment-container:hover,
#ordercomplete,
#ordercomplete:hover {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	height: 450px;
	width: 600px;
	animation: fadeInRight .25s;
}

.payment-message {
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	.payment-message {
		font-size: 16px;
	}
}

.payment-image {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 200px;
	width: 200px;
	border: 4px solid black;
	border-radius: 50%;
	margin-bottom: 30px;
}

.payment-image:not(#swipeImage):before {
	font-family: FA;
	content: '\f09d';
	font-size: 100px;
}

[id*="counter"] .payment-image:before {
	content: '\f3d1';
}

[id*="coupon"] .payment-image:before {
	content: '\f3ff';
}

[id*="employee"] .payment-image:before {
	content: '\f2bd';
}

#swipeImage {
	background: url('../../other/assets/-ingenicoChip.gif');
	background-position: center center;
	background-size: cover;
}

#credit-form .payment-message {
	margin-bottom: 30px;
}

#cards {
	text-align: center;
	width: 300px;
}

.card-image {
	display: inline;
	font-family: FAB;
	font-size: 40px;
	margin: 0 10px;
}

.visa:before {
	content: '\f1f0';
}

.mastercard:before {
	content: '\f1f1';
}

.amex:before {
	content: '\f1f3';
}

#testpayment {
	display: none;
}

.previous-order {
	margin: 10px;
	width: 225px;
	height: 450px;
	overflow: hidden;
	border: 1px solid dimgrey;
	padding: 0 5px;
}

.previous-order:hover {
	margin: 10px;
	width: 225px;
	height: 450px;
	overflow: hidden;
	border: 1px solid dimgrey;
	padding: 0 5px;
}

.thumbnail {
	background: transparent;
	border: 0;
}

#loadOrder>div {
	color: black;
	width: 100%;
	text-align: center;
}

.previous-order #modtext {
	padding-top: 0;
}

#orderdate {
	margin: 20px;
}

.previous-order {
	animation: stack3d 3s ease;
}

.previous-order:nth-child(n+6) {
	display: none;
}

.previous-orders {
	perspective: 2000px;
	animation: fadeInUp 3s;
}

#clip-complete,
#complete-hitarea {
	height: 100%;
}

#ordercomplete>div:not(:empty) {
	font-size: 24px;
	text-align: center;
	margin: 10px 0;
}

@media only screen and (max-width: 767px) {
	#ordercomplete>div:not(:empty) {
		font-size: 16px;
	}
}

#ordercomplete>#ordernumber:not(:empty) {
	font-size: 5em;
	line-height: 1em;
}

#splash {
	background: transparent;
}

#splashInstructionsContainer {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	pointer-events: none;
}

#splashLogo {
	display: block;
	height: 200px;
	width: 200px;
	background: url("../images/logo.png") no-repeat center center;
	background-size: contain;
	margin-bottom: 20px;
}

#splashInstructionHeader {
	display: none;
}

#splashInstructions {
	width: 100%;
	height: calc(2 * 70px);
}

.splashInstruction {
	opacity: 0;
	position: absolute;
	line-height: 1em;
	padding: 0 15%;
	text-align: center;
	color: black;
	font-size: 70px;
	font-weight: 999;
}

.splashMessage {
	display: inline-block;
}

.splashSequence {
	display: none;
}

.splashSequence:after {
	content: '.';
}

.splash-in {
	animation: fadeInRightBig 1s;
	opacity: 1;
}

.splash-out {
	animation: fadeOutLeftBig 1s;
	opacity: 0;
}

#languageSwitcher {
	position: absolute;
	width: 60px;
	height: 60px;
	bottom: 20px;
	right: 20px;
	border-radius: 50%;
	font-size: 30px;
}

.splash-language-wrapper {
	display: flex;
	justify-content: center;
	position: absolute;
	width: 100%;
	bottom: 0;
}

.alternateLanguageToStart {
	position: initial;
	bottom: initial;
	left: initial;
	width: initial;
	padding: 0 20px;
	margin-left: initial;
	height: 60px;
	line-height: 60px;
	background: black;
	font-size: 24px;
	font-weight: bold;
	border: initial;
	border-top-left-radius: 0px;
	border-top-right-radius: 0px;
}

.alternateLanguageToStart:before {
	content: none;
}

.lang-icon:before {
	font-family: 'FA';
	content: '\f06e';
	font-weight: 400;
	margin-right: 15px;
}

#splashvideo {
	position: absolute;
	top: 0;
	left: 0;
	pointer-events: none;
}

#languageSwitcher:before {
	content: '\f0ac';
}

#statusMessageContainer {
	position: relative;
	color: black;
}

#statusMessageContainer>div {
	line-height: 2em;
	padding: 0 1em;
	text-align: center;
}

/* MODALS */

.modal-backdrop {
	display: none;
}

.modal-dialog {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100% !important;
	width: 100% !important;
	zoom: initial !important;
	margin: 0;
	background: rgba(0, 0, 0, 0.75)
}

.modal-content {
	background: rgba(0, 0, 0, 0.75);
	border: 1px solid dimgrey;
	border-radius: 0px;
	font-family: Adihaus;
	color: white;
	min-width: 33%;
	animation: zoomIn -.25s .5s;
}

@media only screen and (width: 1080px) and (height: 1920px) {
	.modal-content {
		border-radius: 30px;
	}
}

.modal-content>*:nth-child(1) {
	border-top: 0;
}

#messageText {
	margin: 0;
	text-align: center;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	#messageText {
		font-size: 16px;
	}
}

#receiptText {
	margin: 0;
	text-align: center;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	#receiptText {
		font-size: 16px;
	}
}

.modal-content #descriptionText {
	max-width: 350px;
	margin: 0 auto 30px auto;
	padding: 0;
	text-align: center;
}

.popup-button {
	background: white;
	color: black;
	margin: 0 0;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	.popup-button {
		font-size: 16px;
	}
}

.popup-button:hover {
	background: white;
	color: black;
	margin: 0 0;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	.popup-button:hover {
		font-size: 16px;
	}
}

.popup-button:active {
	background: white;
	color: black;
	margin: 0 0;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	.popup-button:active {
		font-size: 16px;
	}
}

.popup-button:focus {
	background: white;
	color: black;
	margin: 0 0;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	.popup-button:focus {
		font-size: 16px;
	}
}

.btn-default[disabled] {
	background: white;
	color: black;
	margin: 0 0;
	font-size: 24px;
}

@media only screen and (max-width: 767px) {
	.btn-default[disabled] {
		font-size: 16px;
	}
}

.popup-button[disabled] {
	background: white !important;
}

.modal-footer .btn+.btn {
	margin: 15px 0 0 0;
}

.modal-footer {
	display: flex;
	flex-direction: column;
	margin: 0;
	border-top: 1px solid dimgrey;
}

div.numpadOutput,
div.phonepadOutput {
	overflow: hidden;
	width: 60%;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

div.phonepadOutput>* {
	text-align: center;
}

div.phonepadOutput>span {
	font-family: arial;
	position: relative;
	top: -1px;
	margin: 0 -4px;
}

.numpadTextOut {
	width: 100%;
	text-align: center;
	height: calc(2 * 24px);
	border: 0;
	margin: 0;
}

@media only screen and (max-width: 767px) {
	.numpadTextOut {
		height: calc(2 * 16px);
	}
}

.phonepadTextOut {
	width: 100%;
	text-align: center;
	height: calc(2 * 24px);
	border: 0;
	margin: 0;
}

@media only screen and (max-width: 767px) {
	.phonepadTextOut {
		height: calc(2 * 16px);
	}
}

.pagerpadTextOut {
	width: 100%;
	text-align: center;
	height: calc(2 * 24px);
	border: 0;
	margin: 0;
}

@media only screen and (max-width: 767px) {
	.pagerpadTextOut {
		height: calc(2 * 16px);
	}
}

ul.numpadInput,
ul.phonepadInput {
	width: 216px !important;
	padding: 0;
	margin-bottom: 20px;
}

ul.numpadInput li,
ul.phonepadInput li {
	margin: 6px !important;
	height: 60px !important;
	width: 60px !important;
	line-height: 60px !important;
	text-align: center;
	border-radius: 30px !important;
	border: 0 !important;
	font-size: 30px;
}

.delete:before {
	content: '\f060';
	font-family: FA;
	font-size: 30px;
}

.tip-wrapper {
	display: flex;
	padding: 10px;
}

.tip-wrapper .btn {
	margin: 10px;
	flex-basis: 25%;
}

#popup-tip-other .numpadOutput {
	position: relative;
}

#popup-tip-other .numpadOutput:before {
	content: '$';
	position: absolute;
	left: 10px;
}

.offer {
	width: calc(100% - 40px);
	margin: 0 20px 20px 20px;
	padding: 0px 10px 0px 45px;
	height: 50px;
	line-height: 50px;
	background: white;
	color: black;
	border-radius: 60px;
	overflow: hidden;
	position: relative;
}

.offer .check {
	position: relative;
	left: -100px;
}

.offer label {
	margin: 0;
}

.offer .check:before {
	content: '\f00c';
	font-family: FA;
	display: block;
	position: absolute;
	overflow: hidden;
	padding-top: 40px;
	height: 40px;
	width: 40px;
	left: 60px;
	top: -15px;
	text-align: center;
	line-height: 40px;
	background: #fca311;
	color: white;
	border-radius: 20px;
	transition: .25s;
}

.offer .check:checked:before {
	padding-top: 0;
}

.offer label:after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0px;
	right: 0;
}

#popup-keyboard .modal-content,
#popup-email .modal-content,
#popup-name .modal-content {
	width: 800px;
}

div#keyboardContainer {
	padding: 0 20px 20px 20px;
	margin: 0;
	width: 100%;
	height: auto;
	;
}

#keyboardContainer .write {
	padding: 0;
	margin: 0;
	width: 100%;
	height: calc(2 * 24px);
	line-height: calc(2 * 24px);
	border-radius: 24px;
	text-align: center;
	font-family: Adihaus;
}

@media only screen and (max-width: 767px) {
	#keyboardContainer .write {
		border-radius: 16px;
	}
}

@media only screen and (max-width: 767px) {
	#keyboardContainer .write {
		line-height: calc(2 * 16px);
	}
}

@media only screen and (max-width: 767px) {
	#keyboardContainer .write {
		height: calc(2 * 16px);
	}
}

#keyboard {
	margin-top: 20px !important;
	width: 100%;
}

#keyboard>div {
	display: flex;
	width: 100%;
}

#keyboard li {
	flex-grow: 1;
	padding: 0;
	margin: 3px 3px !important;
	border-radius: 0 !important;
	font-family: Adihaus;
	font-size: 16px;
	height: 45px;
	line-height: 45px;
}

#keyboard .delete:before {
	content: '\f55a';
	font-size: 18px;
}

#keyboardContainer+.modal-footer {
	flex-direction: row;
}

#keyboardContainer+.modal-footer .btn {
	flex-grow: 1;
}

#keyboardContainer+.modal-footer .btn+.btn {
	margin: 0 0 0 20px;
	flex-grow: 1;
}

#popup-nutrition .modal-content {
	width: 300px;
	min-width: 300px;
	background: white;
	color: black;
	border-radius: 0;
	border: 3px solid black;
	font-family: DontRemoveThis;
	text-transform: initial;
}

.nutrition-header {
	font-weight: bold;
	border-bottom: 1px solid dimgrey;
	padding: 20px;
	text-align: center;
	font-size: 40px;
}

#popup-nutrition .popup-button {
	background: black;
	color: white;
}

.nutrition-info:not(:last-of-type) {
	border-bottom: 2px solid black;
}

.nutrition-info:nth-child(2) {
	font-size: 24px;
}

.nutrition-divider {
	height: 4px;
	background: black;
	margin-bottom: 10px;
}

.nutrition-amount {
	display: flex;
	font-weight: bold;
}

.nutrition-amount span:first-of-type {
	flex-grow: 1;
}

.nutrition-info:nth-child(1n + 3) .nutrition-amount span:last-of-type:after {
	content: 'g';
}

#cholesterol:after,
#sodium:after {
	content: 'mg';
}

#serving:empty:after {
	content: 'Unspecified';
}

.nutrition-info span.indent {
	margin-left: 15px;
	font-weight: normal;
}

#receipt+.popover {
	position: fixed;
	top: 0 !important;
	left: 0 !important;
	height: 100%;
	width: 100% !important;
	max-width: 100vw !important;
	margin: 0;
	background: rgba(0, 0, 0, 0.5);
}

#receipt+.popover .popover-content {
	position: absolute;
	overflow: hidden;
	top: 20%;
	left: 25%;
	height: 60%;
	width: 50%;
	overflow-y: scroll;
	padding: 15px 25px;
	border-radius: 0px;
	background: white;
	color: black;
	font-family: DontRemoveThis;
	animation: none;
	animation: zoomIn -.25s .5s;
}

@media only screen and (width: 1080px) and (height: 1920px) {
	#receipt+.popover .popover-content {
		border-radius: 30px;
	}
}

.receipt-item,
.receipt-mod {
	display: flex;
	line-height: 1em;
	padding-top: 20px;
}

.dot-leader {
	flex-grow: 1;
	border-bottom: 2px dotted #aaa;
	margin: 0 3px;
}

.receipt-mod {
	padding: 10px 0 0 15px;
	font-size: 15px;
}

[class*="receipt"][class*="amount"] {
	order: 1;
}

#receiptMurderizer {
	display: none;
	justify-content: center;
	position: fixed;
	top: calc(20% - 25px);
	right: calc(25% - 25px);
	height: 60px;
	width: 60px;
	z-index: 1024;
	border-radius: 50%;
	background: #fca311;
	color: white;
	font-size: 30px;
	animation: zoomIn .5s;
}

#receiptMurderizer:before {
	content: '\f00d';
}

.popover+#receiptMurderizer {
	display: flex;
}

/* ANIMATIONS */

@keyframes popover {
	0% {
		transform: scale(0);
		transform-origin: top right;
	}

	100% {
		transform-origin: top right;
	}
}

@keyframes zoomIn {
	from {
		opacity: 0;
	}

	50% {
		opacity: 0;
		transform: scale3d(0.3, 0.3, 0.3);
	}

	to {
		opacity: 100;
	}
}

@keyframes fadeInRight {
	from {
		opacity: 0;
		transform: translate3d(100%, 0, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInLeft {
	from {
		opacity: 0;
		transform: translate3d(-100%, 0, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translate3d(0, 100%, 0);
	}

	to {
		opacity: 1;
		transform: translate3d(0, 0, 0);
	}
}

@keyframes stack3d {
	0% {
		transform: rotate3d(0, 1, 0, 60deg);
		margin: 0 -100px;
		opacity: 0;
	}

	33% {
		opacity: 0;
	}

	70% {
		transform: rotate3d(0, 1, 0, 60deg);
		margin: 0 -100px;
	}
}

#popup-need-more-time svg {
	width: 250px;
	height: 250px;
	border-radius: 50%;
	transform: rotate(-90deg);
	left: calc(50% - 125px);
	position: relative;
	margin-top: 30px;
}

#popup-need-more-time circle {
	fill: transparent;
	stroke: yellow;
	stroke-width: 5;
	stroke-dasharray: 0 100;
	animation: border-timer 4s linear;
}

#popup-need-more-time .modal-content {
	display: block;
}

.paused circle {
	animation-play-state: paused;
}

@keyframes border-timer {
	to {
		stroke-dasharray: 101 100;
		stroke: red;
		stroke-width: 1;
	}
}

#popup-need-more-time #messageText:after {
	content: "3";
	display: block;
	position: absolute;
	top: -170px;
	left: calc(50% - 50px);
	width: 100px;
	font-size: 60px;
	text-align: center;
	animation: countdown linear 4s;
}

@keyframes countdown {
	0% {
		content: "3";
	}

	33% {
		content: "2";
	}

	66% {
		content: "1";
	}

	100% {
		content: "0";
	}
}

@keyframes tada {
	from {
		transform: scale3d(1, 1, 1);
	}

	10%,
	20% {
		transform: scale3d(0.9, 0.9, 0.9) rotate3d(0, 0, 1, -3deg);
	}

	30%,
	50%,
	70%,
	90% {
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, 3deg);
	}

	40%,
	60%,
	80% {
		transform: scale3d(1.1, 1.1, 1.1) rotate3d(0, 0, 1, -3deg);
	}

	to {
		transform: scale3d(1, 1, 1);
	}
}

.nudge {
	animation: tada 1s !important;
}

/* DT5 */

@media only screen and (width: 768px) and (height: 1366px) {
	#wrap {
		height: 50% !important;
	}

	#moveUp {
		position: relative;
		top: -60px;
		height: 60px;
		background: black;
		color: white;
		text-align: center;
		line-height: 60px;
		font-size: 24px;
	}

	@media only screen and (max-width: 767px) {
		#moveUp {
			font-size: 16px;
		}
	}

	#moveDown {
		position: relative;
		top: -60px;
		height: 60px;
		background: black;
		color: white;
		text-align: center;
		line-height: 60px;
		font-size: 24px;
	}

	@media only screen and (max-width: 767px) {
		#moveDown {
			font-size: 16px;
		}
	}

	#moveDown {
		top: calc(100% - 60px);
	}

	#moveUp:before,
	#moveDown:before {
		content: 'MOVE ';
	}

	#moveUp:after,
	#moveDown:after {
		font-family: FA;
		content: '\f0aa';
	}

	#moveDown:after {
		content: '\f0ab';
	}
}

/* X22 (MINIMAL CHANGES) */

@media only screen and (width: 1080px) and (height: 1920px) {

	#clip-header,
	#clip-footer {
		height: 90px;
		line-height: 90px;
	}

	[class*='footer-']>* {
		height: 90px;
		line-height: 90px;
	}

	.control-button {
		height: 60px;
	}

	#template .image-button {
		flex-basis: 50%;
		margin: 0;
	}

	#template .text-button {
		flex-basis: 75%;
		margin: 0 1px;
	}
}

/*------------
	MOBILE
------------*/

.iorderfast-content .carousel-buttons,
.iorderfast-content #clip-header {
	display: none;
}

.iorderfast-content {
	/* margin: var(--Header_Height) 0 0 0; */
	position: absolute;
	left: 0;
	top: 60px;
	bottom: 0px;
	width: 100%;
	overflow-x: hidden;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
}

@media only screen and (max-width: 767px) {
	.iorderfast-content {
		top: 45px;
	}
}

.iorderfast-content #template {
	margin: auto;
	max-width: 1200px;
}

.iorderfast-content #buttons:not(.order-review-buttons) {
	text-align: center;
}

.iorderfast-content #buttons .row,
.iorderfast-content .order-review-buttons {
	display: block;
	padding: 15px;
	margin: 0;
}

.iorderfast-content .image-button {
	width: 25%;
	display: inline-block;
}

.iorderfast-content .text-button {
	width: 33.33%;
	display: inline-block;
}

.iorderfast-content .image-button .box,
.iorderfast-content .text-button .box {
	width: 100%;
}

.iorderfast-content .details {
	justify-content: center;
}

.iorderfast-content .image-button .details {
	padding-bottom: 5px;
}

.iorderfast-content .details>div {
	padding: 0 0 !important;
	flex-grow: 0 !important;
	border-top: none !important;
}

.iorderfast-content #calories:after {
	margin-right: 12px;
}

.iorderfast-content .overlaycontainer {
	margin-right: 8px;
}

/* NAV */

.navbar {
	display: flex;
	height: 60px;
	background: black;
	padding: 0 20px;
	border-bottom: 1px solid dimgrey;
	-webkit-backface-visibility: hidden;
}

@media only screen and (max-width: 767px) {
	.navbar {
		height: 45px;
	}
}

.navbar-fixed-top {
	position: absolute !important;
	-webkit-backface-visibility: 0;
}

.navbar-fixed-top {
	position: absolute;
}

.site-header {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	min-width: 200px;
	position: absolute;
	right: 20px;
	height: 60px;
	flex-shrink: 0;
}

@media only screen and (max-width: 767px) {
	.site-header {
		height: 45px;
	}
}

.navbar-toggle {
	margin: 0;
	background: transparent !important;
	border: 0;
	padding: 0;
}

.navbar-default .navbar-toggle .icon-bar {
	background-color: white;
	height: 3px;
}

.navbar-collapse {
	padding: 0;
}

#navDesktop .navbar-nav {
	display: flex;
}

.navbar-default .navbar-nav>li>a {
	color: white;
	font-size: 16px;
	height: 60px;
	line-height: 60px;
	padding: 0 0 0 20px;
}

.dropdown:nth-child(1) {
	color: white;
	font-size: 16px;
	height: 60px;
	line-height: 60px;
	padding: 0 0 0 20px;
}

.dropdown .fa:before {
	font-size: 24px;
	display: inline-block !important;
	width: 30px !important;
}

#navChangeAccount .fa:before {
	content: '\f2bd';
}

#navChangePassword:before {
	content: '\f084';
	font-size: 22px;
}

#navLogout:before {
	content: '\f2f5';
	font-size: 28px;
}

#header-text {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: calc(100vw - 50px - 15px - 425px);
}

@media only screen and (max-width: 767px) {
	#header-text {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

@media only screen and (max-width: 767px) {
	#header-text {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

@media only screen and (max-width: 767px) {
	#header-text {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

@media only screen and (max-width: 767px) {
	#header-text {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

#menuDescription {
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	width: calc(100vw - 50px - 15px - 425px);
}

@media only screen and (max-width: 767px) {
	#menuDescription {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

@media only screen and (max-width: 767px) {
	#menuDescription {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

@media only screen and (max-width: 767px) {
	#menuDescription {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

@media only screen and (max-width: 767px) {
	#menuDescription {
		width: calc(100vw - 40px - 10px - 425px);
	}
}

.nav-label {
	display: none;
}

.iorderfast-content #clip-receipt {
	pointer-events: none;
}

/* FORMS */

.form.container {
	margin-top: 60px;
}

.form.box {
	width: 550px;
	max-width: calc(100vw - 60px);
	margin: 0 auto 30px auto;
	padding: 20px;
	text-align: center;
}

.form-header {
	width: 100%;
	text-align: center;
	font-size: 24px;
	margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
	.form-header {
		font-size: 16px;
	}
}

form a {
	color: black;
}

.form .btn {
	border-radius: 20px;
	padding: 0 20px;
	border: 0;
	text-align: center;
	background: #fca311 !important;
}

#btnLogin {
	float: left;
}

#guestLogin {
	display: undefined
}

input,
select,
textarea {
	margin-bottom: 10px;
}

.submit-form {
	line-height: 40px;
}

.remember-wrapper {
	float: right;
}

.forgot-wrapper {
	width: 100%;
	display: flex;
	justify-content: space-between;
	position: relative;
	top: .75em;
}

label {
	font-weight: normal;
}

.help-block {
	margin-top: -10px;
}

.file-preview-frame {
	border-radius: 50%;
	overflow: hidden;
	padding: 0;
	margin: 0 0 20px 0;
}

.avatar-container {
	width: auto !important;
	display: flex;
	justify-content: center;
}

.file-input {
	margin: 0 auto;
}

#preferredDate:after {
	content: 'Order Date';
}

#copyright {
	display: none;
}

hr {
	border-top: 1px solid dimgrey;
}

.amount-due {
	width: 100%;
	text-align: center;
	margin-bottom: 20px;
}

.payment-totals-label {
	float: left;
}

.payment-totals {
	float: right;
}

.iorderfast-content #ordercomplete {
	height: auto;
	margin: 60px 20px 0 20px;
	padding: 0 10px;
}

.glyphicon:before {
	font-family: FA;
	position: relative;
	top: -2px;
}

.account-row,
.account-footer {
	max-width: 450px;
	display: flex;
	justify-content: space-between;
	margin: 5px auto;
}

.account-row span:first-of-type {
	font-weight: bold;
}

.account-footer {
	margin-top: 20px;
}

.account-limit span:nth-child(2):before,
.account-balance span:nth-child(2):before {
	content: '$';
}

.auto-funding-toggle-wrapper {
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 10px;
}

#enabled[type="checkbox"] {
	margin-right: 5px;
}

/* SCROLL MARGIN */

.iorderfast-content #template,
.form.container,
#orderreview:last-of-type {
	margin-bottom: 150px !important;
}

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

	.iorderfast-content .image-button {
		width: 33.33%;
	}

	.iorderfast-content .text-button {
		width: 50%;
	}

	.image-button #btext {
		height: 4em;
	}

	.modal-content {
		min-width: 66%;
	}
}

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

	#header-text {
		width: calc(100vw - 40px - 10px - 100px);
	}

	@media only screen and (max-width: 767px) {
		#header-text {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	@media only screen and (max-width: 767px) {
		#header-text {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	@media only screen and (max-width: 767px) {
		#header-text {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	@media only screen and (max-width: 767px) {
		#header-text {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	#menuDescription {
		width: calc(100vw - 40px - 10px - 100px);
	}

	@media only screen and (max-width: 767px) {
		#menuDescription {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	@media only screen and (max-width: 767px) {
		#menuDescription {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	@media only screen and (max-width: 767px) {
		#menuDescription {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	@media only screen and (max-width: 767px) {
		#menuDescription {
			width: calc(100vw - 40px - 10px - 100px);
		}
	}

	.iorderfast-content #buttons .row {
		padding: 0;
	}

	.iorderfast-content .image-button,
	.iorderfast-content .text-button {
		padding: 0;
		width: 50%;
		border-bottom: 1px solid dimgrey;
		max-width: none;
		float: left;
	}

	.iorderfast-content .text-button {
		width: 100%;
	}

	.image-button .box,
	.text-button .box {
		border: 0px;
		border-radius: 0px;
		overflow: hidden;
	}

	.image-button:nth-child(odd) .box {
		border-right: 1px solid dimgrey;
	}

	.overlaycontainer {
		display: block;
	}

	.site-nav-collapse {
		position: fixed;
		top: 45px;
		left: 0;
		width: 100vw;
		height: 244px !important;
		overflow: hidden;
	}

	@media only screen and (max-width: 767px) {
		.site-nav-collapse {
			top: 45px;
		}
	}

	.order-review-row {
		flex-direction: column;
		height: auto;
	}

	.order-review-modtext {
		text-align: center;
	}

	#amountdue {
		margin: 10px 0;
	}

	.ibutton:not(.ibutton-showing) {
		top: 0px;
		right: 0px;
		background: transparent;
		color: black;
	}

	.ibutton:not(.ibutton-showing):focus {
		top: 0px;
		right: 0px;
		background: transparent;
		color: black;
	}

	.ibutton:not(.ibutton-showing):active {
		top: 0px;
		right: 0px;
		background: transparent;
		color: black;
	}

	.ibutton:not(.ibutton-showing):hover {
		top: 0px;
		right: 0px;
		background: transparent;
		color: black;
	}

	.ibutton:not(.ibutton-showing):before {
		content: '\f05a';
	}

	.ibutton-showing {
		position: fixed;
		top: calc(25% - 10px);
		right: 5px;
		z-index: 4;
	}

	/* FOOTER */

	#clip-footer {
		flex-direction: column-reverse;
		height: auto;
		padding: 0;
	}

	#controlbuttons {
		width: 100%;
		border: 0;
		box-shadow: none;
		height: 45px;
	}

	.control-button {
		height: 30px;
		line-height: 30px;
	}

	[class*="footer-"] {
		width: 100%;
		text-align: center;
		line-height: 40px;
	}

	#receipt,
	#nutritionSummary {
		text-align: center;
		pointer-events: none;
		height: 40px !important;
	}

	#receipt[style*='hidden'] {
		display: none;
	}

	.popover.top {
		position: fixed;
		z-index: 3;
		height: 50%;
		top: 25% !important;
		box-shadow: 0 0 0 75vh rgba(0, 0, 0, 0.5);
		transition: .5s;
	}

	/* NAV */

	.navbar-nav {
		flex-direction: column;
		background: white;
		margin: 0 0;
	}

	.dropdown {
		border-bottom: 1px solid dimgrey;
	}

	.nav-label {
		display: inline;
		margin-left: 15px;
		line-height: 60px;
	}

	.navbar-default .navbar-nav>li>a {
		color: black !important;
	}

	.dropdown:nth-child(1) {
		color: black !important;
		font-size: 16px;
	}

	@media only screen and (max-width: 767px) {
		.dropdown:nth-child(1) {
			font-size: 16px;
		}
	}
}

/*------------
	CUSTOM
------------*/

#buttons .row {
	justify-content: flex-start;
}

#wrap {
	background-size: auto;
	background-repeat: repeat;
}

.control-button-left {
	-webkit-clip-path: polygon(10% 0%, 100% 0, 100% 100%, 3% 100%);
	clip-path: polygon(10% 0%, 100% 0, 100% 100%, 3% 100%);
}

.control-button-right {
	-webkit-clip-path: polygon(0 0, 97% 0, 90% 100%, 0 100%);
	clip-path: polygon(0 0, 97% 0, 90% 100%, 0 100%);
}

#header-text {
	font-weight: bold;
}

#controlbuttons {
	background: #222;
}

@media (orientation: landscape) {
	#wrap {
		height: 100% !important;
		width: 100% !important;
	}
}

.kiosk-content .footer-right {
	position: fixed;
	top: 0;
	right: 20px;
}

#splashLogo {
	background: url('../images/splash_logo.png') no-repeat center center;
	background-size: contain;
	height: 200px;
	width: 300px;
}

@media only screen and (max-width: 767px) {
	.text-button #btext {
		text-align: left;
	}
}

#hostedcredit-container {
	height: 445px;
}

#hpc--card-frame {
	height: 445px;
}

#one-time-hosted-payment-credit-container {
    display: flex;
    justify-content: center;
}

#hostedPaymentfriendlyName.form-control {
    width: 95%;
    margin: 10px auto;
}
