/* FONTS */
@font-face {
  font-family: "DontRemoveThis";
  src: url("../../../../../../../fonts/Oswald-Regular.ttf") format("truetype");
}

@font-face {
  font-family: 'Bold';
  src: url('../../../../../../../fonts/Agenda-BoldExtraCondensed.eot');
  src: url('../../../../../../../fonts/Agenda-BoldExtraCondensed.eot?#iefix') format('embedded-opentype'),
  url('../../../../../../../fonts/Agenda-BoldExtraCondensed.ttf') format('truetype');
}

@font-face {
  font-family: 'Semi';
  src: url('../../../../../../../fonts/Agenda-SemiboldExtraCondensed.eot');
  src: url('../../../../../../../fonts/Agenda-SemiboldExtraCondensed.eot?#iefix') format('embedded-opentype'),
  url('../../../../../../../fonts/Agenda-SemiboldExtraCondensed.ttf') format('truetype');
}

@font-face {
  font-family: 'Light';
  src: url('../../../../../../../fonts/Agenda-LightExtraCondensed.eot');
  src: url('../../../../../../../fonts/Agenda-LightExtraCondensed.eot?#iefix') format('embedded-opentype'),
  url('../../../../../../../fonts/Agenda-LightExtraCondensed.ttf') format('truetype');
}

@font-face {
  font-family: 'Light';
  src: url('../../../../../../../fonts/Agenda-LightExtraCondItalic.eot');
  src: url('../../../../../../../fonts/Agenda-LightExtraCondItalic.eot?#iefix') format('embedded-opentype'),
  url('../../../../../../../fonts/Agenda-LightExtraCondItalic.ttf') format('truetype');
  font-style: italic;
}

/* VARIABLES
	• The logo is used by the offline screen too, but you can hide that with '--Offline_Logo: none;'
	• '--CB_Border\Shadow' is a box-shadow so you can use commas to set mulitple borders */

:root {
  /* BRAND ASSETS */
  --Red: rgb(246, 80, 84);
  --Green: rgb(138, 197, 73);
  --Yellow: rgb(247, 169, 73);
  --Accent_Color: var(--Green);
  --Main_Background: white;
  --Logo: url("../images/");
  --Logo_Size: 156px;
  --Logo_Margin: 0;
  /* HEADER & FOOTER */
  --Header_Height: 60px;
  --Header_Background: black;
  --Footer_Background: var(--Header_Background);
  --Toolbar_Family: Semi;
  --Toolbar_Case: capitalize;
  --H1_Family: Bold;
  --H1_Color: white;
  --H1_Size: 45px;
  --H1_Case: uppercase;
  --H1_Weight: normal;
  --H2_Color: var(--H1_Color);
  --H2_Size: 14px;
  --Footer_Color: var(--H1_Color);
  --Footer_Size: 25px;
  --Inner_Content_Height: calc(100% - var(--Header_Height) - 80px);
  /* CONTROL BUTTONS */
  --CB_Background: white;
  --CB_Color: black;
  --CB_Family: Bold;
  --CB_Size: 30px;
  --CBL_Background: var(--CB_Background);
  --CBC_Background: var(--CB_Background);
  --CBR_Background: var(--CB_Background);
  --CBL_Color: var(--CB_Color);
  --CBC_Color: var(--CB_Color);
  --CBR_Color: var(--CB_Color);
  --CB_Border\Shadow: 0 0 0 1px black;
  --CB_Outer_Radius: var(--Box_Radius);
  --CB_Inner_Radius: var(--Box_Radius);
  /* BOXES */
  --Box_Background: white;
  --Box_Border: 1px solid black;
  --Box_Radius: 8px;
  --Accent_Border: var(--Box_Border);
  /* MENU BUTTON CONTROLS */
  --Button_Background: var(--Accent_Color);
  --Button_Color: white;
  /* BODY TEXT */
  --Family: Semi;
  --Color: black;
  --Image_Button_Size: 24px;
  --Text_Button_Size: 25px;
  --Details_Size: 16px;
  --Item_Popover_Size: 16px;
  --Case: auto;
  --Item_Weight: bold;
  /* DYNAMIC SPLASH SCREEN */
  --Splash_Entrance_Animation: bounceInRight 1s;
  --Splash_Exit_Animation: bounceOutLeft 1s;
  --Splash_Static_Background: rgba(0, 0, 0, 0.33);
  --Splash_Display_Logo: none;
  --Splash_Display_Number: none;
  --Splash_Color: white;
  --Splash_Size: 80px;
  --Splash_Weight: normal;
  /* TOGGLE FEATURES (USE 'block' OR 'none') */
  --Special_Instrutions_on_Order_Review: none;
  --Guest_Login: none;
  --Offline_Logo: none;
}

/* OVERRIDES FOR X22 */
@media only screen and (width: 1080px) and (height: 1920px) {

  :root {
    --Header_Height: 150px;
    --H1_Size: 80px;
    --Text_Button_Size: 40px;
    --Details_Size: 18px;
    --CB_Size: 50px;
    --Footer_Size: 40px;
    --Image_Button_Size: 36px;
  }
}

/* OVERRIDES FOR SMALL TABLETS AND DOWN*/
@media only screen and (max-width: 1023px) {
  :root {
    --Accent_Border: var(--Box_Border);
  }
}

/* OVERRIDES FOR MOBILE DEVICES*/
@media only screen and (max-width: 767px) {
  :root {
    --H1_Size: 18px;
    --H2_Size: 12px;
    --Logo_Size: 100px;
    --Logo_Margin: 0px;
    --Header_Height: 45px;
  }
}

body {
  background: #222 url('../images/drive_thru_background.png');
  background-position: center center;
  font-family: var(--Family);
  font-size: 16px;
  text-transform: var(--Case);
}

#wrap {
  background: var(--Main_Background);
  background-size: cover;
  width: 100% !important;
}

@media (orientation: landscape) {
  #wrap {
    min-height: 100%;
  }
}

.box,
.box:hover,
.box:focus {
  display: block;
  position: relative;
  background: var(--Box_Background);
  border: var(--Box_Border);
  border-radius: var(--Box_Radius);
  border-left: var(--Accent_Border);
  color: var(--Color);
}

*,
*: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,
.nex-button:focus,
.nex-button:hover,
.nex-button:active,
#languageSwitcher,
form .btn {
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 20px;
  background: var(--Button_Background);
  color: var(--Button_Color);
  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,
.paymentclip,
.kiosk-content #clip-repeatorders,
.kiosk-content #clip-orders {
  position: relative;
  height: var(--Inner_Content_Height);
}

.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,
#clip-footer {
  display: flex;
  height: 60px;
  width: 100%;
  padding: 0 20px;
  background: var(--Header_Background);
  border-bottom: 1px solid dimgrey;
  font-family: var(--Toolbar_Family);
  text-transform: var(--Toolbar_Case);
  z-index: 5;
}

#clip-header {
  height: var(--Header_Height);
}

.logo {
  height: 100%;
  width: var(--Logo_Size);
  margin-right: var(--Logo_Margin);
}

.logo,
#logoOff {
    background-image: var(--Logo);
    background-size: contain;
    background-position: center center;
    background-repeat: no-repeat;
}

.GNTB2526 .logo,
.GNTB2526 #logoOff {
    background-image: url('../images/B26_Logo.png');
}

#logoOff {
  height: 200px;
  width: 200px;
  background-color: var(--Header_Background);
  background-size: 50%;
  border-radius: 50%;
  margin: 20px auto;
  display: var(--Offline_Logo);
}

.header-wrapper {
  display: flex;
  flex-direction: column;
  flex-grow: 1;
  height: 100%;
  justify-content: center;
}

#header {
  display: block !important;
}

#header-text {
  font-family: var(--H1_Family);
  color: var(--H1_Color);
  font-size: var(--H1_Size);
  line-height: var(--H1_Size);
  text-transform: var(--H1_Case);
  font-weight: var(--H1_Weight);
}

#menuDescription {
  color: var(--H2_Color);
  font-size: var(--H2_Size);
}

/* FOOTER */

#clip-footer {
  background: var(--Footer_Background);
  border-bottom: 0;
  border-top: 1px solid dimgrey;
  position: fixed;
  bottom: 0;
}

.footer-left,
.footer-right {
  line-height: 60px;
  width: 25%;
  color: var(--Footer_Color);
  font-size: var(--Footer_Size);
}

#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: var(--CB_Family);
  font-size: var(--CB_Size);
}

#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: var(--CB_Inner_Radius);
  box-shadow: var(--CB_Border\Shadow);
}

.control-button-left .control-button {
  background: var(--CBL_Background);
  color: var(--CBL_Color);
  border-top-left-radius: var(--CB_Outer_Radius);
  border-bottom-left-radius: var(--CB_Outer_Radius);
  animation: fadeInLeft .25s;

}

.control-button-center .control-button {
  background: var(--CBC_Background);
  color: var(--CBC_Color);
}

.control-button-right .control-button {
  background: var(--CBR_Background);
  color: var(--CBR_Color);
  border-top-right-radius: var(--CB_Outer_Radius);
  border-bottom-right-radius: var(--CB_Outer_Radius);
  animation: fadeInRight .25s;
}

#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: var(--Color);
  font-size: var(--Image_Button_Size);
  font-weight: var(--Item_Weight);
}

.details {
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
  height: 25px;
  width: 100%;
  font-size: var(--Details_Size);
}

.image-button .overlaycontainer,
.image-button #price,
.image-button #nutritionInfo {
  height: 100%;
  line-height: 24px;
  padding: 0 4px;
  flex-grow: 1;
  border-top: var(--Box_Border);
}

.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*="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,
#quantity {
  border-left: 1px solid var(--Button_Color);
  border-right: 1px solid var(--Button_Color);
  box-sizing: content-box;
}

[class*="LNM"] .image-button #subButtons {
  width: 66.66%;
  height: 100%;
  flex-direction: column;
}

.lnm,
.lnm:hover {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
  font-size: var(--Image_Button_Size);
  font-weight: bold;
}

#normal {
  border-top: 1px solid var(--Button_Color);
  border-bottom: 1px solid var(--Button_Color);
}

.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: var(--Text_Button_Size) 15px 0 15px;
  font-size: var(--Text_Button_Size);
}

.text-button .caption {
  display: flex;
  align-items: center;
  height: calc(2 * var(--Text_Button_Size));
}

.text-button #btext {
  flex-grow: 1;
  font-weight: var(--Item_Weight);
  line-height: var(--Text_Button_Size);
}

.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: var(--Color);
}

.checkbutton-text.button-down-state .caption {
  margin-right: 40px;
  transition: .15s;
}

.text-button .details {
  align-items: flex-start;
  justify-content: space-between;
  height: var(--Text_Button_Size);
  font-size: var(--Details_Size);
}

.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,
.sub-button-down-state {
  background: var(--Button_Color) !important;
  color: var(--Button_Background) !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: var(--Button_Background);
  color: var(--Button_Color);
  font-size: var(--Item_Popover_Size);
  line-height: calc(var(--Item_Popover_Size) + 2px);
  font-family: var(--Family);
  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: var(--Button_Background);
  background: var(--Button_Color);
  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: var(--Text_Button_Size);
}

#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: var(--Item_Weight);
}

#receipt:after {
  font-family: FA;
  content: '\f543';
  margin-left: 5px;
}

#amountdue,
.order-review-quantity {
  margin-left: 10px;
}

#modtext {
  font-size: var(--Details_Size);
  padding: 10px 0;
}

.order-review-special-instructions #comment {
  width: 100%;
  padding: 5px 10px;
  border-radius: 20px;
  border: var(--Box_Border);
  font-size: var(--Details_Size);
  display: var(--Special_Instrutions_on_Order_Review);
}

/* 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,
.payment-button:hover,
.repeatOrderPromptButton,
.repeatOrderPromptButton:hover,
.repeatOrderButton,
.repeatOrderButton:hover {
  display: inline-block;
  border: var(--Box_Border);
  margin: 10px;
  overflow: hidden;
  width: 200px;
}

.payment-button #btext,
.repeatOrderPromptButton #btext,
.repeatOrderButton #btext {
  border-top: var(--Box_Border);
  height: 2em;
  line-height: 2em;
  font-size: var(--Image_Button_Size);
  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: var(--H1_Size);
  max-width: 90%;
  text-align: center;
  line-height: 1em;
}

.payment-image {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  width: 200px;
  border: 4px solid var(--Color);
  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,
.previous-order:hover {
  margin: 10px;
  width: 225px;
  height: 450px;
  overflow: hidden;
  border: var(--Box_Border);
  padding: 0 5px;
}

.thumbnail {
  background: transparent;
  border: 0;
}

#loadOrder > div {
  color: var(--Color);
  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: var(--H1_Size);
  text-align: center;
  margin: 10px 0;
}

#ordercomplete > #ordernumber:not(:empty) {
  font-size: 5em;
  line-height: 1em;
}

#splash {
  background: var(--Splash_Static_Background);
}

#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: var(--Splash_Display_Logo);
  height: 200px;
  width: 200px;
  background: var(--Logo) no-repeat center center;
  background-size: contain;
  margin-bottom: 20px;
}

#splashInstructionHeader {
  display: none;
}

#splashInstructions {
  width: 100%;
  height: calc(2 * var(--Splash_Size));
}

.splashInstruction {
  opacity: 0;
  position: absolute;
  line-height: 1em;
  padding: 0 15%;
  text-align: center;
  color: var(--Splash_Color);
  font-size: var(--Splash_Size);
  font-weight: var(--Splash_Weight);
}

.splashMessage {
  display: inline-block;
}

.splashSequence {
  display: var(--Splash_Display_Number);
}

.splashSequence:after {
  content: '.';
}

.splash-in {
  animation: var(--Splash_Entrance_Animation);
  opacity: 1;
}

.splash-out {
  animation: var(--Splash_Exit_Animation);
  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: var(--Box_Radius);
  border-top-right-radius: var(--Box_Radius);
}

.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: var(--Color);
}

#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: var(--Box_Border);
  border-radius: var(--CB_Outer_Radius);
  font-family: var(--Family);
  color: white;
  min-width: 33%;
  animation: zoomIn -.25s .5s;
}

.modal-content > *:nth-child(1) {
  border-top: 0;
}

#messageText,
#receiptText {
  margin: 0;
  text-align: center;
  font-size: var(--Text_Button_Size);
}

.modal-content #descriptionText {
  max-width: 350px;
  margin: 0 auto 30px auto;
  padding: 0;
  text-align: center;
}

.popup-button,
.popup-button:hover,
.popup-button:active,
.popup-button:focus,
.btn-default[disabled] {
  background: white;
  color: black;
  margin: 0 0;
  font-size: var(--Text_Button_Size);
}

.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,
.phonepadTextOut,
.pagerpadTextOut {
  width: 100%;
  text-align: center;
  height: calc(2 * var(--Text_Button_Size));
  border: 0;
  margin: 0;
}

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: var(--Button_Background);
  color: var(--Button_Color);
  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 * var(--Text_Button_Size));
  line-height: calc(2 * var(--Text_Button_Size));
  border-radius: var(--Text_Button_Size);
  text-align: center;
  font-family: var(--Family);
}

#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: var(--Family);
  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: var(--CB_Outer_Radius);
  background: white;
  color: black;
  font-family: DontRemoveThis;
  animation: none;
  animation: zoomIn -.25s .5s;
}

.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: var(--Accent_Color);
  color: var(--Button_Color);
  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;
}

/*------------
	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: var(--Header_Height);
  bottom: 0px;
  width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.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: var(--Header_Height);
  background: var(--Header_Background);
  padding: 0 20px;
  border-bottom: 1px solid dimgrey;
  -webkit-backface-visibility: hidden;
}

.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: var(--Header_Height);
  flex-shrink: 0;
}

#navMobile {
  display: flex;
}

.navbar-scan-items {
  margin: 0 15px 0 0;
  background: transparent !important;
  border: 0;
  padding: 0;
}
.navbar-scan-items .scan-items-icon {
  color: white;
}
#navScanItems .fa:before {
  content: '\f02a';
  font-size: 22px;
}


.navbar-toggle {
  margin: 0;
  background: transparent !important;
  border: 0;
  padding: 0;
}

.navbar-default .navbar-toggle .icon-bar {
  background-color: var(--H2_Color);
  height: 3px;
}

.navbar-collapse {
  padding: 0;
}

#navDesktop .navbar-nav {
  display: flex;
}

.navbar-default .navbar-nav > li > a,
.dropdown:nth-child(1) {
  color: var(--H2_Color);
  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,
#menuDescription {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  width: calc(100vw - var(--Logo_Size) - var(--Logo_Margin) - 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: var(--H1_Size);
  margin-bottom: 20px;
}

form a {
  color: var(--Color);
}

.form .btn {
  border-radius: 20px;
  padding: 0 20px;
  border: 0;
  line-height: 40px;
  text-align: center;
  background: var(--Button_Background) !important;
}

#btnLogin {
  float: left;
}

#guestLogin {
  display: var(--Guest_Login)
}

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,
.add-credit-card {
  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;
}


/*  I-BUTTON POPUP TAKEOVER  */
#popup-ibutton .MainContainer {
    width: 860px;
    color: #000;
    text-align: left;
    padding: 30px;
    background-color: #fff;
    border-radius: 8px;
}

#popup-ibutton #closeBtn {
    background-color: var(--Accent_Color);
    color: #000;
    border: 0 solid #000;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    float: right;
    text-align: center;
    font-size: 25px;
    margin: -15px -15px 0 0;
    padding: 1px 0 0 0px;
    line-height: 40px;
    font-family: Helvetica, Arial, sans-serif;
}

#popup-ibutton .MainTitle {
    font-size: 40px;
    line-height: 46px;
    width: 80%;
    text-transform: uppercase;
}

#popup-ibutton .DescriptionText {
    width: 90%;
    font-size: 20px;
    font-family: 'light';
    margin: 15px 0 25px 0;
}

#popup-ibutton .DietaryTitle,
#popup-ibutton .NutritionsTitle {
  font-weight: normal;
  font-size: 20px;
  margin-top: 15px;
  margin-bottom: 10px;
}

#overlayContainer {
    display: flex;
    flex-flow: row wrap;
}

/* Dynamically Applied! */
#popup-ibutton .OverlayContainer {
  margin-right: 20px;
  text-align: center;
}

#popup-ibutton .DietaryContainer {
    display: block;
    height: auto;
    width: 100%;
}

/* Dynamically applied! */
#popup-ibutton .OverlayImage {
  height: 40px;
  min-width: 40px;
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
}

/* Dynamically applied! */
#popup-ibutton .OverlayText {
  font-size: 12px;
  text-transform: capitalize;
}

#popup-ibutton .NutritionsInfoContainer {
    display: block;
    height: auto;
    width: 100%;
    margin: 25px 0;
}

#popup-ibutton .nutritionContent {
  display: flex;
  flex-flow: row wrap;
  justify-content: left;
  align-items: center;
}

#popup-ibutton .nutritionBox {
    background-color: #fff;
    border: 1px solid #000;
    margin: 0 10px 10px 0;
    width: 130px;
    height: 60px;
    padding: 8px;
    border-radius: 8px;
    text-align: center;
}

#popup-ibutton .NutritionsText {
  font-size: 22px;
  line-height: 22px;
  text-transform: capitalize;
}

#popup-ibutton .NutritionsLabel {
  font-size: 14px;
  text-align: center;
  text-transform: uppercase;
}

#popup-ibutton .PriceContainer {
  display: flex;
  margin: 25px 0 0 0;
  justify-content: space-between;
}

#popup-ibutton .Price {
  font-size: 28px;
  padding-top: 10px;
}

#popup-ibutton .OrderBtn {
    font-size: 28px;
    padding: 0px 50px;
    border-radius: 8px;
    border: 1px solid #000;
    height: 50px;
    line-height: 50px;
    text-transform: uppercase;
}
#popup-ibutton .OrderBtn:focus,
#popup-ibutton .OrderBtn:active {
    background: #000;
    color: #fff;;
}

/* add G and MG after numbers */
#totalFat:after, #transFat:after, #totalCarbs:after, #sugars:after, #protein:after, #satFat:after, #fiber:after {
  content: 'g';
  font-size: 14px;
  margin-left: 2px;
  text-transform: uppercase;
}
#cholesterol:after,
#sodium:after {
  content: 'mg';
  font-size: 14px;
  margin-left: 2px;
  text-transform: uppercase;
}
#popup-ibutton #calories:after {
  font-size: 14px;
  margin-left: 2px;
  text-transform: uppercase;
}
/* nothing here, unless needed. need the blank 'after' to match spacing of others */
#popup-ibutton #serving:after {
  content: '';
  font-size: 14px;
  margin-left: 2px;
  text-transform: uppercase;
}


/* changes the generated 'Calories Per Serving' label to 'Total Cals' */
#popup-ibutton #caloriesLabel:before {
  content: 'Total Cals';
  font-size: 14px;
  text-transform: uppercase;
}
/* hides generated 'Calories Per Serving' label so the above code can show */
#popup-ibutton #caloriesLabel {
  font-size: 0px;
}

/* changes the generated 'Total Carbohydrates' label to 'Total Carbs' */
#popup-ibutton #totalCarbsLabel:before {
  content: 'Total Carbs';
  font-size: 14px;
  text-transform: inherit;
}
/* hides generated Total Carbohydrates label so the above code can show */
#popup-ibutton #totalCarbsLabel {
  font-size: 0px;
}


@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,
  #menuDescription {
    width: calc(100vw - var(--Logo_Size) - var(--Logo_Margin) - 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: var(--Header_Height);
    left: 0;
    width: 100vw;
    height: 244px !important;
    overflow: hidden;
  }

  .order-review-row {
    flex-direction: column;
    height: auto;
  }

  .order-review-modtext {
    text-align: center;
  }

  #amountdue {
    margin: 10px 0;
  }

  .ibutton:not(.ibutton-showing),
  .ibutton:not(.ibutton-showing):focus,
  .ibutton:not(.ibutton-showing):active,
  .ibutton:not(.ibutton-showing):hover {
    top: 0px;
    right: 0px;
    background: transparent;
    color: var(--Color);
  }

  .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;
    font-size: 15px;
  }

  [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: var(--H1_Size);
  }
}




/* MOBILE SCANNING */
.iorderfast-content #scanItemsForm {
	padding: 20px;
  }
  
  .mobileScan .scannerForm {
	height: 100%;
  }
  
  .mobileScan .iorderfast-content #clip-template {
	display: none;
  }
  
  .iorderfast-content #scanItemsForm .control-button {
	background: var(--Accent_Color);
	color: white;
	height: 60px;
  }
  
  .iorderfast-content #scanItemsForm .control-button:last-child {
	margin-top: 20px;
  }
  
  .mobileScan #orderinstore ,
  .mobileScan #orderinstore a { /* keep to override main-bs.css */
	color: var(--Accent_Color);
  }
  
  .mobileScan #orderinstore .form.box {
	max-width: 100%;
  }
  
  .mobileScan #orderinstore .scanTop {
	height: 40%;
  }
  
  .mobileScan #orderinstore #scanner-container {
	  height: 180px !important;
	  width: 100% !important;
  }
  
  .mobileScan #orderinstore .scanItemsHeader {
	text-transform: uppercase;
	font-weight: bold;
	margin-top: 10px;
	margin-bottom: 0px;
  }
  
  .mobileScan #orderinstore .yourOrderHeader {
	text-transform: uppercase;
	font-weight: bold;
	margin-bottom: 5px;
  }
  
  .mobileScan #scanningHeader {
	font-size: 16px;
	text-align: center;
	margin: 10px 0;
	padding: 0 20px;
	color: forestgreen;
	font-weight: bold;
  }
  
  .mobileScan #orderinstore #scanningError {
	font-size: 16px;
	text-align: center;
	margin: 10px 0;
	padding: 0px 30px;
	color: red;
	font-weight: bold;
  }
  
  .mobileScan #orderinstore .scanOrder.form.box {
	background: rgba(242, 242, 242, 0.95);
	box-shadow: 1px -1px 5px 3px rgba(0, 0, 0, 0.25);
	overflow: scroll;
	height: 100vh;
	border: none;
	padding: 15px 0;
	border-bottom-left-radius: 0px;
	border-bottom-right-radius: 0px;
  }
  
  .mobileScan #orderinstore .scanOrder .scannedItem {
	display: flex;
	justify-content: space-between;
	margin: 5px 0;
	padding: 10px 20px;
	border-bottom: 1px solid black;
	background: rgba(225,225,225,.5);
  }
  
  .mobileScan #orderinstore #scannedItemDesc {
	  width: 60%;
	  text-align: left;
	  font-size: 18px;
	  font-weight: bold;
  }
  
  .mobileScan #orderinstore #scannedItemPrice {
	  width: 20%;
	  font-size: 18px;
  }
  
  .mobileScan #orderinstore .scanLessMore {
	display: flex;
	width: 25%;
	font-size: 18px;
  }
  
  .mobileScan #orderinstore .quantMinus,
  .mobileScan #orderinstore .quantPlus {
	height: 25px;
	width: 25px;
	line-height: 20px;
	font-size: 25px;
	border: 1px solid black;
	border-radius: 50%;
	margin: 0 10px;
  }
  
  .mobileScan #orderinstore .quantMinus {
	padding: 0px 6px 0px 6px;
  }
  
  .mobileScan #orderinstore .quantPlus {
	padding: 0px 6px 0px 6px;
  }
  
  .mobileScan #orderinstore .scan-total .total-label {
	padding-right: 5px;
	text-transform: uppercase;
	font-weight: bold;
  }
  
  .mobileScan #orderinstore .running-total {
	width: 100%;
  }
  
  .mobileScan #orderinstore .scan-total {
	height: 50px;
	border-top: 0;
	text-align: right;
	font-size: 16px;
	padding: 0 20px;
  }
  
  .mobileScan #controlbuttons > div {
	width: 100%;
  }
  
  /* animations for mobile scan. pls keep */
  .scale-up-center {
	  -webkit-animation: scale-up-center 0.4s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
			  animation: scale-up-center 0.4s cubic-bezier(0.390, 0.575, 0.565, 1.000) both;
  }
  /**
   * ----------------------------------------
   * animation scale-up-center
   * ----------------------------------------
   */
  @-webkit-keyframes scale-up-center {
	0% {
	  -webkit-transform: scale(0.5);
			  transform: scale(0.5);
	}
	100% {
	  -webkit-transform: scale(1);
			  transform: scale(1);
	}
  }
  @keyframes scale-up-center {
	0% {
	  -webkit-transform: scale(0.5);
			  transform: scale(0.5);
	}
	100% {
	  -webkit-transform: scale(1);
			  transform: scale(1);
	}
  }


/*------------
	CUSTOM
------------*/

.order-review-modtext:empty {
  display: none;
}

.kiosk-content #clip-header,
.kiosk-content #clip-footer,
.kiosk-content #controlbuttons {
  border: none;
  box-shadow: none;
}

.kiosk-content #clip-footer {
  height: 80px;
  padding: 0px;
}

.kiosk-content .control-button {
  width: 80%;
  height: 50px;
}

.kiosk-content #controlbuttons {
  width: 100%;
}

.kiosk-content .control-button:active,
.kiosk-content #buttons:not([class*="Quantity"]) .text-button:active .box {
  background: black;
  color: white;
}

.kiosk-content .text-button {
  flex-basis: 50% !important;
  max-width: 50%;
}

.kiosk-content .text-button .box {
  padding-top: var(--Details_Size);
}

.kiosk-content .text-button #btext {
  line-height: 20px;
}

.kiosk-content .text-button .details {
  height: var(--Details_Size);
  position: relative;
  top: -4px;
}

.kiosk-content #orderreview {
  font-size: var(--Text_Button_Size);
}

.kiosk-content #buttons.order-review-buttons {
  padding: 20px 20px;
}

.kiosk-content #buttons.order-review-buttons::-webkit-scrollbar {
  display: none;
}

.kiosk-content .carousel .item {
  transition: .25s !important;
}

.kiosk-content #subButtons {
  right: calc(50% - 100px);
}

.kiosk-content #payment #header-text:before {
  content: 'Payment';
}

@media (orientation: landscape) {

  .kiosk-content #targets > div:not(#greenreceipt):not(#splash),
  .kiosk-content #clip-footer {
    left: 33%;
    width: 67% !important;
  }

  .kiosk-content #targets > div {
    box-shadow: 0 0 10px black;
    background: white !important;
  }

  .kiosk-content #ad,
  .kiosk-content .order-review-buttons:before,
  .kiosk-content #targets > div:not(#ordering):not(#splash):before {
    position: fixed;
    top: 0;
    left: 0;
    width: 33%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    z-index: -2;
  }

  .kiosk-content #targets > div:not(#ordering):not(#splash):before {
    content: '';
    background-image: url('../images/Go.jpg');
    z-index: -3;
  }

  .kiosk-content .order-review-buttons:before {
    content: '';
    background-image: url('../images/Global.jpg');
    z-index: -1;
  }

  #previousorder3 {
    display: none;
  }

  .kiosk-content .carousel-control-prev,
  .kiosk-content .carousel-control-next {
    top: calc(50% - 30px);
  }

  .kiosk-content .carousel-control-prev {
    left: calc(33% + 15px);
  }

  .kiosk-content #header-text {
    min-height: var(--H1_Size);
  }

  .kiosk-content .header-wrapper:after {
    content: '';
    background: url('../images/dots.png');
    background-size: contain;
    background-position: center;
    height: 5px;
    width: calc(100% + 8px);
    position: relative;
    left: -4px;
    top: 8px;
  }

  .kiosk-content .footer-right {
    position: fixed;
    top: 0;
    right: 20px;
  }

  .kiosk-content .footer-left {
    display: none;
  }
}

@media (orientation: portrait) {
  .kiosk-content #ordering {
    position: fixed !important;
    height: 33% !important;
  }

  .kiosk-content #ordering #clip-header {
    position: fixed;
    top: 33%;
    text-align: center;
    z-index: 0;
  }

  .kiosk-content #ordering #clip-header:after {
    content: '';
    position: absolute;
    width: 60%;
    height: 16px;
    top: calc(100% - 8px);
    left: 20%;
    background: url('../images/dots.png') center center;
  }

  .kiosk-content #ordering #clip-template {
    position: fixed;
    top: calc(33% + 150px);
    height: calc(67% - 150px - 120px - 40px);
    width: 100%;
  }

  .kiosk-content #clip-footer {
    height: 180px !important;
    flex-direction: column-reverse;
    justify-content: space-between;

  }

  .kiosk-content .footer-left {
    display: none;
  }

  .kiosk-content .control-button {
    height: 80px;
  }

  .kiosk-content .footer-right {
    width: 100%;
    text-align: center;
    height: 40px !important;
  }

  .kiosk-content #controlbuttons {
    padding: 0 100px;
    height: 120px;
  }

  .kiosk-content #clip-receipt {
    height: 40px !important;
  }

  .kiosk-content #receipt {
    float: initial;
    height: 40px !important;
    line-height: 40px !important;
  }

  #clip-receipt .popover .popover-content {
    width: 66%;
    left: 17%;
  }

  #receiptMurderizer {
    right: calc(17% - 20px);
  }

  .kiosk-content .carousel-control-prev,
  .kiosk-content .carousel-control-next {
    top: calc(33% + 150px + 488px - 60px);
    height: 120px;
    width: 120px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    font-size: 40px;
  }

  .kiosk-content .carousel-control-prev {
    left: -60px;
    justify-content: flex-end;
    padding-right: 15px;
  }

  .kiosk-content .carousel-control-next {
    right: -60px;
    justify-content: flex-start;
    padding-left: 15px;
  }

  .kiosk-content .order-review-buttons {
    height: 890px !important;
    position: absolute;
    top: 50px;
    left: -10px;
    width: calc(100% + 20px);
    padding: 60px 15% !important;
    border-top: 1px solid dimgrey;
    border-bottom: 1px solid dimgrey;
    box-shadow: 0 0 15px inset black;
  }

  .kiosk-content .order-review-buttons::-webkit-scrollbar {
    display: none !important;
  }

  .kiosk-content .modal-content {
    min-width: 50%;
  }

  .kiosk-content #header-text {
    width: 100%;
    text-align: center;
  }

  .kiosk-content .payment-container,
  .kiosk-content .payment-container:hover,
  .kiosk-content #ordercomplete,
  .kiosk-content #ordercomplete:hover {
    width: 75%;
    height: 600px;
  }

  #wrap {
    height: 100% !important;
  }

  .control-button {
    font-size: 50px !important;
  }

  .write {
    font-size: var(--Text_Button_Size);
  }

  #previousorders-form #orders {
    flex-direction: column !important;
  }

  .previous-order {
    height: 315px !important;
    width: 600px !important;
    font-size: var(--Text_Button_Size);
    overflow-y: scroll !important;
  }

  .text-button #btext {
    line-height: var(--Text_Button_Size) !important;
  }
}

.navbar-default .navbar-nav > li > a:hover {
  color: white;
  font-size: 16px;
  height: 60px;
  line-height: 60px;
  padding: 0 0 0 20px;
}

@media screen and (max-width: 767px) {
  .control-button {
    font-size: 28px !important;
  }

  .ibutton:not(.ibutton-showing) {
    color: var(--Accent_Color);
  }
}

.WD6110CA #checkout-service #specialInstructions {
  display: none;
}

.DERDMFCB .logo {
  display: block;
  height: 100px;
  width: 100px;
  margin: 5px 20px;
  background-image: url("../images/Zettabite_ICON.png");
}

.DERDMFCA .logo {
  display: block;
  height: 100px;
  width: 100px;
  margin: 5px 20px;
  background-image: url("../images/Gigabite_ICON.png");
}

.GNTCHB33 .logo {
  background-image: url("../images/B33-Logo.png");
}
.GNTCHB33 #specialInstructions {
  display: none;
}

.GNTCHB35 .logo {
  background-image: url("../images/B35logo.png");
  background-size: cover;
}
.GNTCHEDG .logo {
  background-image: url("../images/Edgelogo.png");
  background-size: cover;
}
.GNTVACVL .logo {
  background-image: url("../images/VVlogo.png");
  background-size: cover;
}
.GNTHILLS .logo {
  background-image: url("../images/HBlogo.png");
  background-size: cover;
}
.GNTCHPSA .logo {
  background-image: url("../images/PSAlogo.png");
  background-size: cover;
}
.GNTB40CS .logo {
  background-image: url("../images/B40logo.png");
  background-size: cover;
}
.GNTCHB42 .logo {
  background-image: url("../images/B42logo.png");
  background-size: cover;
}
.GNTOCEAN .logo {
  background-image: url("../images/OClogo.png");
  background-size: cover;
}
.WORKDAY1 .logo {
  background-image: url("../images/Cloud_Cafe_Logo.png");
  background-size: cover;
  margin-right: 15px;
}
.WD6110CA .logo {
  background-image: url("../images/Data-Diner.png");
  background-size: contain;
  margin-right: 15px;
}
.WD5928CB .logo {
    background-image: url("../images/Java_Bar_Logo.png");
    background-size: contain;
    margin-right: 15px;
}
.WD6140CH .logo {
    background-image: url("../images/.png");
    background-size: contain;
    margin-right: 15px;
}
.WD6110CF .logo {
    background-image: url("../images/XpressO_Logo.png");
    background-size: contain;
    margin-right: 15px;
}

/* for HBS locations - keep */
.allergen-warning {
  padding-left: 15px;
  padding-right: 15px;
  padding-bottom: 100px;
}

#hpc--card-frame {
  height: 450px;
  width: 100%;
}

#locationlocaltypeaccounts .toggle-component {
    display: flex;
    justify-content: center;
}

#locationlocaltypeaccounts .toggle-component label {
    font-size: 0px;
}

#locationlocaltypeaccounts .toggle-component label:after {
    content: 'Display All Account Types';
    font-size: 16px;
    margin-left: 10px;
}

#btnOptInOut {
  width: 100px;
}

#btnBackToChangeAccount {
    width: 100px;
}

#btnNavToManageAccounts {
    justify-content: center;
    display: flex;
    width: 25%;
    align-items: center;
    margin: 0 auto 30px auto;
}

.file-preview-frame {
    width: 160px;
}

#privacy-policy {
    display: none;
}

.modal-info {
    background: white;
    max-width: 85%;
} 

.info-text {
    color: black;
    text-align: left !important;
}

.accept-button, .accept-button:hover {
  color: white;
  background: var(--Accent_Color);
}

.no-button, .no-button:hover {
  border: 3px solid black;
}