/*

CUSTOMER & THEME INFO

  Customer: ARA
  Theme: JohnHancock

*/

/* ============================================================================================
            MASTER CSS FILE FOR KIOSK & ONLINE/MOBILE - SEE NOTES BELOW
============================================================================================= */

/*

PATCH & UPDATE INFO

V2.0 Release of updated cleaned up css file for use

*/



/* ============================================================================================
            ***         FONTS SECTION           ***
============================================================================================= */

        @font-face {
          font-family: 'FA';
          src: url('https://static.nextepsystems.com/fonts/fa-solid-900.eot');
          src: url('https://static.nextepsystems.com/fonts/fa-solid-900.eot?#iefix') format('embedded-opentype'),
            url('https://static.nextepsystems.com/fonts/fa-solid-900.ttf') format('truetype');
        }

        @font-face {
          font-family: 'FAB';
          src: url('https://static.nextepsystems.com/fonts/fa-brands-400.eot');
          src: url('https://static.nextepsystems.com/fonts/fa-brands-400.eot?#iefix') format('embedded-opentype'),
            url('https://static.nextepsystems.com/fonts/fa-brands-400.ttf') format('truetype');
        }

        @font-face {
          font-family: 'Futura Light';
          src: url('https://static.nextepsystems.com/fonts/Futura\ Light.ttf') format('truetype');
        }

        @font-face {
          font-family: 'Futura Regular';
          src: url('https://static.nextepsystems.com/fonts/Futura\ Regular.ttf') format('truetype');
        }

        @font-face {
          font-family: 'Futura Bold';
          src: url('https://static.nextepsystems.com/fonts/Futura\ Bold.ttf') format('truetype');
        }

        @font-face {
          font-family: 'Futura Light';
          src: url('../fonts/Futura\ Light.ttf') format('truetype');
        }

        @font-face {
          font-family: 'Futura Regular';
          src: url('../fonts/Futura\ Regular.ttf') format('truetype');
        }

        @font-face {
          font-family: 'Futura Bold';
          src: url('../fonts/Futura\ Bold.ttf') format('truetype');
        }

/* ============================================================================================
            ***         BUILT IN OPTIONS - VARIABLES SECTION           ***
============================================================================================= */

:root {
  --Accent_Color: #005470;
  --Main_Background: url('../images/.png') no-repeat center
    center/cover;

  /* LOGO VARIABLES */
  --Logo_Image: url('../images/');
  --Logo_Fit: contain;
  --Logo_Width: 0px;
  --Logo_Spacing: 0px;

  /* HEADER VARIABLES */
  --Header_Size: 30px;
  --Description_Size: 18px;
  --Header_Case: none;
  --Header_Weight: normal;

  /* TOP TOOLBAR VARIABLES*/
  --Top_Toolbar_Background: white;
  --Top_Toolbar_Height: 65px;
  --Top_Toolbar_Font_Color: #005470;
  --Top_Toolbar_Font_Family: 'Futura Regular';

  /* BOTTOM TOOLBAR VARIABLES*/
  --Bottom_Toolbar_Background: white;
  --Bottom_Toolbar_Height: 65px;
  --Bottom_Toolbar_Font_Color: #253B56;
  --Bottom_Toolbar_Size: 16px;
  --Bottom_Toolbar_Case: inital;
  --Bottom_Toolbar_Font_Family: 'Futura Regular';

  /* CONTROL BUTTON VARIABLES */
  --Control_Button_Background: white;
  --Control_Button_Height: 45px;
  --Control_Button_Font_Color: #005470;
  --Control_Button_Size: 25px;
  --Control_Button_Outer_Curve: 5px;
  --Control_Button_Inner_Curve: 5px;
  --Control_Button_Font_Family: 'Futura Bold';

  /* MENU BUTTON / IMAGE BUTTON / TEXT BUTTON - VARIABLES */
  --Item_Background: white;
  --Item_Font_Color: #2B2B2B;
  --Item_Border: 1px solid #2B2B2B;
  --Item_Box_Shadow: 1px 1px 3px rgba(0, 0, 0, 0.25);
  --Item_Curve: 10px;
  --Item_Font_Family: 'Futura Bold';
  --Image_Button_Size: 20px;
  --Text_Button_Size: 24px;
  --Item_Details_Size: 16px;
  --Item_Case: none;
  --Item_Weight: bold;
  --Controls_Background:#005470;
  --Controls_Font_Color: white;

  /* DYNAMIC SPLASH SCREEN */
  --Splash_Entrance_Animation: bounceInRight 1s;
  --Splash_Exit_Animation: bounceOutLeft 1s;
  --Splash_Static_Background: none;
  --Splash_Display_Video: none;
  --Splash_Guest_Video: none;
  --Splash_Display_Logo: none;
  --Splash_Display_Number: none;
  --Splash_Color: white;
  --Splash_Size: 80px;
  --Splash_Weight: normal;

  /* FEATURE TOGGLES (Use 'block' or 'none') */
  --Special_Instrutions_on_Order_Review: block;
  --Guest_Login: none;
  --Offline_Logo: block;
}


/* ============================================================================================
            ***         OVERRIDES FOR OUTSIDE CSS FILES           ***
============================================================================================= */

a:hover, a:focus {
    color: var(--Item_Font_Color);
    text-decoration: none;
    outline: none;
}

a.nex-button:hover, a.nex-button:focus {
  color: white;
}

.btn:focus {
  outline: none;
}


/* ============================================================================================
            ***         KIOSK THEME ELEMENTS STYLING           ***
============================================================================================= */

.previewer-only {
  display: none;
}

#previewer .previewer-only {
  display: block;
}

body[data-language='kvi'] #BGV {
  display: none;
}

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: calc(100% - var(--Top_Toolbar_Height) - var(--Bottom_Toolbar_Height));
}

.kiosk-content #template,
.carousel,
.carousel-inner,
.slide,
.item {
  width: 100%;
  height: 100%;
}

#ordering {
  background-size: cover;
  background-position: center center;
}

/* KIOSK MAIN BACKGROUND IMAGE */
#wrap {
  background: var(--Main_Background);
  width: 100% !important;
  position: fixed !important;
  left: 0 !important;
}

.box {
  display: block;
  position: relative;
  overflow: hidden;
  background: var(--Item_Background);
  border: var(--Item_Border);
  border-radius: var(--Item_Curve);
  font-family: var(--Item_Font_Family);
  font-size: var(--Image_Button_Size);
  text-transform: var(--Item_Case);
  color: var(--Item_Font_Color);
  box-shadow: var(--Item_Box_Shadow);
}

.mainmenu .box {
  border-radius: 50%;
  border: 3px solid #707070;
  height: 170px;
  color: #796468;
}

.kiosk-content .row {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: row wrap;
  width: 100%;
  margin: 0;
}

/* ============================================================================================
            ***         KIOSK NAVIGATION STYLES          ***
============================================================================================= */

.nex-button,
#languageSwitcher,
form .btn {
  height: 40px;
  line-height: 40px;
  text-align: center;
  font-size: 20px;
  background: var(--Controls_Background);
  color: var(--Controls_Font_Color);
  border: 0;
  text-decoration: none;
}

.nex-button:before,
#languageSwitcher:before,
.fa:before,
#bicon:before {
  font-family: 'FA';
  display: block;
}

.item.active,
.item.next,
.item.prev {
  height: 100%;
  display: flex;
  align-items: center;
  transition: 0.25s;
}


/* ============================================================================================
            ***         KIOSK HEADER ELEMENTS STYLES          ***
============================================================================================= */

#clip-header,
#clip-footer {
  display: flex;
  height: var(--Bottom_Toolbar_Height);
  width: 100%;
  padding: 0 20px;
  background: var(--Top_Toolbar_Background);
  border-bottom: 1px solid #707070;
  text-transform: var(--Bottom_Toolbar_Case);
  z-index: 5;
}

#clip-header {
  height: var(--Top_Toolbar_Height);
  font-family: var(--Top_Toolbar_Font_Family);
  color: var(--Top_Toolbar_Font_Color);
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.29);
}

.logo,
#logoOff {
  background-image: var(--Logo_Image);
  background-size: contain;
  background-position: center center;
  background-repeat: no-repeat;
  flex-shrink: 0;
}

.logo {
  height: 100%;
  width: var(--Logo_Width);
  margin-right: var(--Logo_Spacing);
  background-size: var(--Logo_Fit);
}

#logoOff {
  height: 200px;
  width: 200px;
  background-color: var(--Top_Toolbar_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;
  color: var(--Controls_Font_Color);
}

.iorderfast-content .header-wrapper {
  max-width: calc(100vw - var(--Logo_Width) - var(--Logo_Spacing) - 425px);
}

#header-text {
  font-size: var(--Header_Size);
  line-height: var(--Header_Size);
  text-transform: var(--Header_Case);
  font-weight: var(--Header_Weight);
  color: var(--Top_Toolbar_Font_Color);
  text-align: center;
}

#menuDescription {
  font-size: var(--Description_Size);
}

/* ============================================================================================
            ***         KIOSK FOOTER ELEMENTS STYLES          ***
============================================================================================= */

#clip-footer {
  background: var(--Bottom_Toolbar_Background);
  border-bottom: 0;
  border-top: 1px solid #707070;
  position: fixed;
  bottom: 0;
  box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.29);
}

.footer-left,
.footer-right {
  line-height: var(--Bottom_Toolbar_Height);
  width: 25%;
  color: var(--Bottom_Toolbar_Font_Color);
  font-size: var(--Bottom_Toolbar_Size);
  font-family: var(--Bottom_Toolbar_Font_Family);
}

#controlbuttons {
  display: flex;
  align-items: center;
  width: 50%;
  padding: 0 10px;
  overflow: hidden;
  font-family: var(--Control_Button_Font_Family);
  font-size: var(--Control_Button_Size);
}

#controlbuttons > div {
  width: 33.33%;
  text-align: center;
  padding: 0 5px;
}

.control-button {
  width: 100%;
  height: var(--Control_Button_Height);
  padding: 0;
  line-height: var(--Control_Button_Size);
  border: 1px solid #707070;
  color: var(--Control_Button_Font_Color);
  background: var(--Control_Button_Background);
  border-radius: var(--Control_Button_Inner_Curve);
  font-family: var(--Control_Button_Font_Family);
  box-shadow: 0px 0px 6px #00000029;
}

.control-button-left .control-button {
  border-top-left-radius: var(--Control_Button_Outer_Curve);
  border-bottom-left-radius: var(--Control_Button_Outer_Curve);
  -webkit-clip-path: var(--Control_Button_Left_Clip_Path);
  clip-path: var(--Control_Button_Left_Clip_Path);
  /*animation: fadeInLeft 0.25s;*/
}

.control-button-right .control-button {
  border-top-right-radius: var(--Control_Button_Outer_Curve);
  border-bottom-right-radius: var(--Control_Button_Outer_Curve);
  -webkit-clip-path: var(--Control_Button_Right_Clip_Path);
  clip-path: var(--Control_Button_Right_Clip_Path);
  /*animation: fadeInRight 0.25s;*/
}

#receipt {
  height: 60px;
  float: right;
  width: 100%;
  text-align: right;
}

#payment #receipt {
  visibility: visible!important;
}

/* ============================================================================================
            ***         NUTRITION COUNTER STYLES          ***
============================================================================================= */

/* #clip-nutritionSummary {
  display: flex;
  justify-content: space-evenly;
  align-items: center;
  height: 100px;
  font-family: Arial, Helvetica, sans-serif;
}

#nutritionSummary {
  width: 100%;
  overflow-x: hidden;
}

#nutritionLabelCalories,
#nutritionLabelTotalFat {
  width: 50%;
  float: left;
  background: #707070;
}

#nutritionTextCalories,
#nutritionLabelProtein,
#nutritionTextTotalFat {
  width: 50%;
  float: left;
  background: #707070;
}

#nutritionTextProtein,
#nutritionTextTotalCarbs {
  width: 50%;
  float: right;
  background: #707070;
}

#nutritionLabelTotalCarbs {
  width: 50%;
  float: left;
  background: #707070;
} */

/* ============================================================================================
            ***         IMAGE BUTTONS STYLES          ***
============================================================================================= */

.image-button {
  position: relative;
  width: 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 {
  width: 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: 12px 2.5% 0 2.5%;
}

.mainmenu .image-button #bimage {
  height: 0px!important;
}

[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: left;
}

.image-button #btext {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
  height: 2.5em;
  line-height: 1em;
  padding: 0 10px;
  font-size: var(--Image_Button_Size);
  font-weight: var(--Item_Weight);
}

.mainmenu .image-button #btext {
  font-size: 30px;
  height: 140px;
  justify-content: center;
}

.details {
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: flex-start;
  padding: 0 5px;
  height: 25px;
  width: 100%;
  font-size: var(--Item_Details_Size);
}

.image-button .overlaycontainer,
.image-button #price,
.image-button #nutritionInfo {
  height: 100%;
  line-height: 24px;
  padding: 0 6px;
  flex-grow: 0;
  /* border-top: var(--Item_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*='Qty'] .lnm,
[class*='LNM'] .qty {
  display: none;
}

#subButtons {
  visibility: hidden;
}

#subButtons {
  display: flex;
  justify-content: space-evenly;
  border-radius: 10px;
  overflow: hidden;
  width: 200px;
}

.order-review-quantity {
  display: flex;
  justify-content: space-evenly;
  border-radius: 10px;
  overflow: hidden;
}

.qty {
  width: 53px;
  height: 53px;
  line-height: 45px;
  border-radius: 50%;
  background: white;
  border: 4px solid #253B56;
  color: #253B56;
  font-family: 'FA';
}

.order-review-quantity > div {
  width: 53px;
  height: 53px;
  line-height: 45px;
  border-radius: 50%;
  background: white;
  border: 4px solid #253B56;
  color: #253B56;
}

#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;
}

[class*='LNM'] .image-button #subButtons {
  width: 66.66%;
	flex-direction: column;
	border: 4px solid var(--Controls_Background);
	background: var(--Controls_Background);
}

.lnm {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
  font-size: var(--Image_Button_Size);
  font-weight: bold;
}

.button-down-state #check,
.button-down-state #subButtons {
  visibility: visible;
  /*animation: zoomIn -0.25s 0.5s;*/
}

.gray-out {
  pointer-events: none;
  opacity: 0.5;
}

/* ============================================================================================
            ***         TEXT BUTTONS STYLES          ***
============================================================================================= */

.text-button {
  position: relative;
  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 {
  width: 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.button-down-state .box {
  /*background: #dddddd;*/
}

.text-button .caption {
  display: flex;
	align-items: center;
	justify-content: space-between !important;
  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-align: left;
}

.text-button {
  top: calc(50% - 20px);
}

.text-button #check {
  position: absolute;
  right: 10px;
  top: calc(50% - 20px);
  background: transparent;
  color: #253B56;
}

.checkbutton-text.button-down-state .caption {
  margin-right: 40px;
  transition: 0.15s;
}

.text-button .details {
  align-items: flex-start;
  justify-content: flex-start;
  height: var(--Text_Button_Size);
  font-size: var(--Item_Details_Size);
}

.text-button #nutritionInfo {
  flex-grow: 0;
  padding-right: 0px;
  border-top: 0;
  max-width: 80px;
}

.text-button #nutritionInfo:before {
  content: '|';
}

.text-button #nutritionButton,
.text-button #addButton {
  scale: 0.8;
  bottom: -20px;
}

.text-button #subButtons {
    position: absolute;
    top: 20px;
    right: 15px;
}

.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;
}

/* ============================================================================================
            ***         iBUTTON & POPOVERS STYLES          ***
============================================================================================= */

.ibutton {
  position: absolute;
  right: 15px;
  bottom: 15px;
  border-radius: 20px;
  width: 20px;
  height: 20px;
  z-index: 2;
  background: white;
  color: #707070;
  line-height: 20px;
  font-size: 15px;
  box-shadow: 0px 0px 3px #00000029;
}

.ibutton:before {
  font-family: 'FA';
  content: '\f129';
}

.sub-button-down-state {
  background: var(--Controls_Font_Color) !important;
  color: var(--Controls_Background) !important;
}

.text-button .ibutton {
  height: 20px;
  line-height: 20px;
  width: 20px;
  font-size: 14px;
}

.text-button .ibutton:after {
  content: '';
  display: block;
  position: absolute;
  top: -5px;
  right: -5px;
  width: 45px;
  height: 45px;
}

/* Old ibutton code??? hidding to see if we need it
.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(--Controls_Background);
  color: var(--Controls_Font_Color);
  font-size: var(--Item_Details_Size);
  line-height: calc(var(--Item_Details_Size) + 2px);
  font-family: var(--Item_Font_Family);
  border: none;
  border-radius: var(--Item_Curve);
  transition: none;
  z-index: 1;
}

.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(--Controls_Background);
  background: var(--Controls_Font_Color);
  padding: 0 10px;
  border-radius: 10px;
}*/


/*  I-BUTTON POPUP TAKEOVER  */
#popup-ibutton .MainContainer {
  width: 860px;
  color: var(--Item_Font_Color);
  text-align: left;
  padding: 30px;
  background-color: #FFF;
  border-radius: 10px;
  border: 0px solid rgba(0, 0, 0, 0.20);
  font-family: 'Futura Regular';
}

#popup-ibutton #closeBtn {
  background-color: white;
  border: 2px solid #253B56;
  border-radius: 50%;
  color: #253B56;
  font-size: 0px;
  width: 40px;
  height: 40px;
  float: right;
  text-align: center;
  /* margin: -15px -15px 0 0; */
  padding: 2px;
  box-shadow: var(--Item_Box_Shadow);
}

#popup-ibutton #closeBtn:after {
    content: '\f00d';
    font-family: 'FA';
    font-size: 28px;
    line-height: 34px;
}

#popup-ibutton .MainTitle {
  font-size: 40px;
  line-height: 46px;
  width: 85%;
  text-transform: uppercase;
  font-family: 'Futura Bold';
  font-weight: bold;
}

#popup-ibutton .DescriptionText {
  width: 90%;
  font-size: 18px;
  font-family: normal;
  margin: 5px 0 25px 0;
  font-family: 'Futura Regular';
  border-bottom: 2px solid rgba(0, 0, 0, 0.20);
  padding-bottom: 10px;
}

#popup-ibutton .DietaryTitle,
#popup-ibutton .NutritionsTitle {
  font-weight: bold;
  font-size: 20px;
  margin-top: 15px;
  margin-bottom: 10px;
}

#popup-ibutton #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;
  color: var(--Item_Font_Color);
  margin: 0 10px 10px 0;
  width: 130px;
  min-height: 60px;
  padding: 8px;
  font-family: 'Futura Regular';
  text-align: center;
  background: var(--Item_Background);
  border: var(--Item_Border);
  border-radius: var(--Item_Curve);
  box-shadow: var(--Item_Box_Shadow);
}

#popup-ibutton .NutritionsText {
  font-size: 22px;
  line-height: 22px;
  text-transform: capitalize;
}

#popup-ibutton .NutritionsLabel {
  font-size: 13px;
  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;
  font-family: 'Futura Regular';
  font-weight: bold;
}

#popup-ibutton .OrderBtn {
  font-size: 20px;
  padding: 0px 45px;
  border-radius: 0px;
  border: 0px solid rgba(0, 0, 0, 0.20);
  line-height: 50px;
  height: 50px;
  text-transform: uppercase;
  background: #253B56;
  color: white;
  border-radius: var(--Item_Curve);
  font-family: var(--Item_Font_Family);
  font-weight: bold;
}
#popup-ibutton .OrderBtn:focus,
#popup-ibutton .OrderBtn:active {
  background: rgba(0, 0, 0, 0.20);
  color: var(--Item_Font_Color);
}

/* 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;
  font-family: 'Futura Regular';
}
#cholesterol:after,
#sodium:after {
  content: 'mg';
  font-size: 14px;
  margin-left: 2px;
  text-transform: uppercase;
  font-family: 'Futura Regular';
}
#popup-ibutton #calories:after {
  font-size: 13px;
  margin-left: 2px;
  text-transform: uppercase;
  font-family: 'Futura Regular';
}
/* nothing here, unless needed. need the blank 'after' to match spacing of others */
#popup-ibutton #serving:after {
  content: '';
  font-size: 13px;
  margin-left: 2px;
  text-transform: uppercase;
  font-family: 'Futura Regular';
}


/* changes the generated 'Calories Per Serving' label to 'Total Cals' */
#popup-ibutton #caloriesLabel:before {
  content: 'Total Cals';
  font-size: 13px;
  text-transform: uppercase;
  font-family: 'Futura Regular';
}
/* 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: 13px;
  font-family: 'Futura Regular';
  text-transform: inherit;
}
/* hides generated Total Carbohydrates label so the above code can show */
#popup-ibutton #totalCarbsLabel {
  font-size: 0px;
}


/* ============================================================================================
            ***         SCAN ELEMENTS STYLES          ***
============================================================================================= */

#scanItems {
  height: 100%;
  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 #707070;
}

.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: 0.25em;
  font-size: var(--Text_Button_Size);
}

#scan-item-description {
  flex-grow: 1;
}

.running-total {
  border-radius: 10px;
  width: 50%;
  position: relative;
}

#fakeScan {
  position: relative;
  top: -100%;
  width: 20vw;
  opacity: 0;
}

#scan-to-pay-message {
  display: none;
}
  
#scan-to-pay-message.showing-scan-to-pay-message {
  display: block;
  position: absolute;
      width: 100%;
      bottom: 100px;
      left: 0;
      right: 0;
      text-align: center;
      text-transform: uppercase;
      font-family: 'Segoe UI SemiBold';
      font-size: 45px;
}

/* ============================================================================================
            ***         WEIGH ELEMENTS STYLES          ***
============================================================================================= */

#weighItem {
  height: 100%;
  width: 100%;
  background: url('../images/scale.png') center center no-repeat;
  filter: drop-shadow(0 0 10px black);
}

.WeighItems #buttons {
  height: 100%;
}

/* ============================================================================================
            ***         ORDER REVIEW ELEMENTS STYLES          ***
============================================================================================= */

.kiosk-content #buttons.order-review-buttons {
  display: block;
  margin: 0 0 0 7%;
  padding: 30px 5px;
  height: calc(100% - 20px);
  overflow-y: scroll !important;
  background: transparent;
}

.kiosk-content #buttons.order-review-buttons::-webkit-scrollbar {
  width: 70px;
}

.kiosk-content #buttons.order-review-buttons::-webkit-scrollbar-track {
  box-shadow: inset 0 0 10px 10px rgba(0, 0, 0, 0.33);
  border: solid 30px transparent;
  border-radius: 5px;
  border-radius: 10px;
}

.kiosk-content #buttons.order-review-buttons::-webkit-scrollbar-thumb {
  box-shadow: inset 0 0 10px 10px rgba(0, 0, 0, 0.75);
  border: solid 30px transparent;
}

#orderreview {
  width: 100%;
  padding: 10px;
}

#orderreview:not(:last-of-type) {
  margin-bottom: 20px;
}

.order-review-row {
    display: flex;
    flex-flow: column;
    height: 53px;
    align-items: flex-start;
    font-size: var(--Text_Button_Size);
}

#receipttext {
  flex-grow: 1;
  font-weight: var(--Item_Weight);
  line-height: var(--Text_Button_Size);
}

#receipt:after {
  font-family: 'FA';
  content: '\f543';
  margin-left: 5px;
}

#payment #receipt:after, 
.order-review #receipt:after {
  display: none;
}

#amountdue,
.order-review-quantity {
  margin-left: 10px;
}

.order-review-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

#modtext {
  font-size: var(--Item_Details_Size);
  font-family: 'Futura Regular';
  padding-left: 5px;
}

.order-review-modtext:empty {
  display: none;
}

.order-review-special-instructions #comment {
  width: 100%;
  padding: 5px 10px;
  margin-top: 10px;
  border-radius: 10px;
  border: 1px solid #707070;
  font-size: var(--Item_Details_Size);
  display: var(--Special_Instrutions_on_Order_Review);
}

.order-review-special-instructions input {
  margin-bottom: 0;
}

.order-review-quantity-text {
    margin-left: 10px;
    margin-right: 10px;
    font-family: 'Futura Regular';
}

/* ============================================================================================
            ***         PAGINATION ELEMENTS STYLES          ***
============================================================================================= */

.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;
}

/* ============================================================================================
            ***         PAYMENT / TENDER / UTILITY SCREEN ELEMENTS STYLES          ***
============================================================================================= */

.paymentclip,
#repeatOrderPhase,
#previousorders-form,
#orders,
#greenreceipt,
#complete-hitarea,
#clip-offline-kiosk {
  display: flex;
  justify-content: center;
  align-items: center;
}

.offlinemessage {
  text-align: center;
  font-size: 24pt;
}

#clip-choices,
#previousorders-form,
#clip-offline-kiosk,
#accountmanagement {
  width: 100%;
  height: 100%;
}

#previousorders-form {
  overflow: scroll;
}

#paymentclip-select .row {
  height: auto;
  display: flex !important;
  /*animation: fadeInRight 0.25s;*/
}

#repeatOrderPrompt,
#repeatOrderOptions {
  display: flex;
  /*animation: fadeInRight 0.25s;*/
}

#repeatOrderPrompt,
#repeatOrderHeader,
#facePopup,
#cardSwipePopup,
#phonePopup,
#gotoReceipt,
#button0,
#button1,
#button2,
#button3,
#button4,
#button5,
#button6,
#button7,
#button8,
#button9,
#button10,
#button11,
#button12,
#button13,
#button14,
#button15 {
  display: none;
}

#repeatOrderPhase {
  height: 100%;
}

.payment-button,
.repeatOrderPromptButton,
.repeatOrderButton {
  display: inline-block;
  border: var(--Item_Border);
  margin: 10px;
  overflow: hidden;
  width: 200px;
}

.payment-button #btext {
  border-top: var(--Item_Border);
  height: 2em;
  line-height: 2em;
  font-size: var(--Image_Button_Size);
  text-align: center;
}

.repeatOrderPromptButton #btext,
.repeatOrderButton #btext {
  border-top: var(--Item_Border);
  height: 2em;
  line-height: 2em;
  font-size: 18px;
  text-align: center;
}

.payment-media-wrapper {
  position: relative;
  z-index: 1;
}

.payment-media-wrapper #bicon {
  z-index: -1;
  font-family: 'fa';
}

.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;
}

/* universal tender fit for tender builder */
#bimage img {
    object-fit: contain;
    width: 100px;
    height: 100px;
}
.paymentclip img {
    width: 200px;
    height: 200px;
    object-fit: contain;
}


/*.credit #bicon:before,
#btnTenderGeneric1 #bicon:before,
#btnTenderCredit #bicon:before,
#btnTenderLoyalty #bicon:before {
  content: '\f09d';
}

#btnTenderCounter #bicon:before {
  content: '\f3d1';
}

#btnTenderEmployee #bicon:before {
  content: '\f2bb';
}

#btnTenderCoupon #bicon:before {
  content: '\f3ff';
}*/

[id*='newOrder'] #bicon:before {
  content: '\f067';
}

[id*='repeatButton'] #bicon:before {
  content: '\f2f9';
}

[id*='PinButton'] #bicon:before {
  content: '\f00a';
}

[id*='cancel'] #bicon:before,
.cancel #bicon:before {
  content: '\f00d';
}

.phone #bicon:before {
  content: '\f10b';
}

.face #bicon:before {
  content: '\f4fc';
}

.payment-container,
#ordercomplete {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  height: 450px;
  width: 600px;
  /*animation: fadeInRight 0.25s;*/
}

#selectPaymentMessage {
  position: absolute;
  top: 25%;
  width: 100%;
  text-align: center;
}

.payment-message {
  font-family: var(--Top_Toolbar_Font_Family);
  font-size: var(--Header_Size);
  color: var(--Item_Font_Color);
}

.payment-image {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 200px;
  width: 200px;
  margin-bottom: 30px;
}

#swipeImageCredit,
#swipeImage {
  background: url('../images/tenders/promptImage_Swipe.png') no-repeat;
  background-position: center center;
  background-size: contain;
}

#swipeImage2 {
  background: url('../images/tenders/Swipe_2.png') no-repeat;
  background-position: center center;
  background-size: contain;
}

#credit-form .payment-message {
  margin-bottom: 30px;
}

.card-image {
  display: inline;
  font-family: FAB;
  font-size: 40px;
  margin: 0 5px;
}

.visa:before {
  content: '\f1f0';
}

.mastercard:before {
  content: '\f1f1';
}

.amex:before {
  content: '\f1f3';
}

.discover:before {
  content: '\f1f2';
}

.diners:before {
  content: '\f24c';
}

.jcb:before {
  content: '\f24b';
}

#testpayment {
  display: none;
}


/* ============================================================================================
            ***         PREVIOUS ORDERS & MY AVAILABLE FAVORITES STYLES          ***
============================================================================================= */
/* inline styling that was removed from html */
#previousorder,
#previousOrderItem,
#itemDescriptionContent,
#pulldownReceipt,
#clip-templatebuttons #buttons,
.displayNone {
  display: none; /* must have for JS to work */
}

.visibilityHidden {
  visibility: hidden;
}

.page-header {
  position: absolute;
  top: -190px;
  text-align: center;
  width: 100%;
  font-size: 45px;
  font-family: Arial, Helvetica, sans-serif;
  margin: 0;
  padding-bottom: 0;
  border-bottom: none;
  display: none;
}

#welcome {
  width: 100%;
  position: absolute;
  /*top: 2%;*/
  font-size: 18px;
  line-height: 18px;
  font-family: Arial, Helvetica, sans-serif;
  text-align: center;
  margin: 25px auto 0;
  color: #707070;
}

.previous-orders-welcome {
  font-size: 24px;
  font-weight: bold;
  padding: 0px 0px;
}

.previous-orders-instructions {
  padding: 10px 0;
  font-size: 16px;
}

.previous-order {
  margin: 10px;
  width: 300px;
  height: 450px;
  overflow: scroll;
  padding: 8px;
  font-family: Arial, Helvetica, sans-serif;
  color: #727272;
  background: var(--Item_Background);
}

.item-header {
  margin-bottom: 10px;
  width: 100%;
  padding: 0px;
  top: 0;
  left: 0;
  z-index: 10;
}

#orderdate {
  font-size: 16px;
  margin: 0;
}

#totalPreviousOrder {
  font-size: 12px;
  font-style: italic;
  margin-left: 0 0 5px 5px;
}

.previousorder-button  {
  font-weight: bold;
  position: absolute;
  overflow: auto;
  top: 5px;
  right: 5px;
}

.previous-order-item {
  background: white;
  padding: 8px;
  border-radius: 5px;
  margin-bottom: 10px;
  box-shadow: var(--Item_Box_Shadow);
  display: flex;
  font-size: 16px;
  line-height: 16px;
}

.previous-order-item a {
  color: #707070;
  width: 100%;
}

.previous-order-item.remove a {
  color: rgba(112,112,112,.2); 
}

.previous-order-item.remove {
  background: rgba(112,112,112,.5);
}

.previous-order-item .previous-order-itemtext,
.previous-order-item .previous-order-pricetext {
  display: inline-block;
}

.previous-order-item .previous-order-itemtext {
  width: 75%;
}

.previous-order-item .previous-order-pricetext {
  float: right;
}

.previous-order-item #modtext {
  font-size: 11px;
  width: 75%;
}

.previous-order-addremovebutton {
  background: #707070;
  border-radius: 5px;
  font-size: 10px;
  color: white;
  position: relative;
  float: right;
  border: 0;
}

#loadOrder > div {
  color: white;
  width: 100%;
  text-align: center;
}

#previousItemsPopOut .previous-order {
  text-align: left;
  background: #F9F9F9;
}

.previous-order:nth-child(n + 7) {
  display: none;
}

.previous-orders #items {
  padding: 5px 0;
}

#previousorders .previousorder-button .popup-button,
#previousorders .previousorder-button .popup-button:hover,
#previousItemsPopOut .previousorder-button .popup-button,
#previousItemsPopOut .previousorder-button .popup-button:hover {
  background: #707070;
  color: white;
  width: 100%;
  font-size: 14px;
  border: 0;
  min-width: 75px;
}

.previousItemsArea {
  position:absolute;
  right: 2%;
}

#popOutButton {
  color: #707070;
  font-size: 16px;
  text-transform: uppercase;
  font-weight: bold;
}

.wider {
  width: 100%;
  height: 75%
}

.load-order-btn,
.load-order-btn:hover {
  text-align: center;
  width: 100%;
  display: inline-block !important;
  margin-bottom: 0;
  font-weight: normal;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  background-image: none;
  border: 1px solid transparent;
  white-space: nowrap;
  padding: 6px 12px;
  font-size: 11pt;
  line-height: 1.42857143;
  border: 2px solid white;
  border-radius: 5px;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  -o-user-select: none;
  user-select: none;
}

.modal-content .load-order-btn {
  display: block;
}

#clip-complete,
#complete-hitarea {
  height: 100%;
}

#ordercomplete > div:not(:empty) {
  font-size: var(--Header_Size);
  text-align: center;
  margin: 10px 0;
}

#ordercomplete > #ordernumber:not(:empty) {
  font-size: 5em;
  line-height: 1em;
}

/* ============================================================================================
            ***         SPLASH SCREEN ELEMENTS STYLES          ***
============================================================================================= */

#splash {
  background: var(--Splash_Static_Background);
}

#dynamicsplashvideo {
  display: var(--Splash_Display_Video);
  position: absolute;
  top: 0;
  height: 100vh;
  width: 100vw;
  pointer-events: none;
}

#splashGuestVideoTarget {
  display: var(--Splash_Guest_Video);
  position: fixed;
  top: calc(100% - 30px - 240px);
  left: calc(100% - 15px - 340px);
  border-radius: 30px;
  overflow: hidden;
  border: 3px solid var(--Accent_Color);
  background: dimgray;
  box-shadow: 2px 4px 4px rgba(0, 0, 0, 0.66);
}

#splashGuestVideoTarget > img {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  border: none;
  background-color: 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;
  z-index: 1;
}

#splashLogo {
  display: var(--Splash_Display_Logo);
  height: 200px;
  width: 200px;
  background: var(--Logo_Image) no-repeat center center;
  background-size: contain;
  margin-bottom: 20px;
}

#splashInstructionHeader {
  display: none;
}

#splashInstructions {
  width: 100%;
  height: calc(2 * var(--Splash_Size));
}

.splashInstruction {
  width: 100%;
  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(--Item_Curve);
  border-top-right-radius: var(--Item_Curve);
}

.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(--Item_Font_Color);
}

#statusMessageContainer > div {
  line-height: 2em;
  padding: 0 1em;
  text-align: center;
}

#splashGuestVideoTarget {
  position: fixed;
  top: 30px;
  left: 30px;
}

#splashGuestVideoTarget > img {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  bottom: auto !important;
  left: auto !important;
  border: none;
  background-color: transparent;
}





/* ============================================================================================
            ***         ACCOUNT MANAGEMENT          ***
============================================================================================= */
/* ACCOUNT MANAGEMENT SPLASH BUTTON */
#accountManContainer {
  position: absolute;
  z-index: 1050;
  top: 30px;
  right: 10px;
  border-radius: 50px;
  background: #727272;
  color: #FFF;
  height: 60px;
  width: 175px;
  padding: 8px;
  }

#accountManContainer #accountManText {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 175px;
  height: 45px;
  font-size: 13px;
  line-height: 14px;
  text-transform: uppercase;
}

#accountManContainer #accountManText:before {
	content: '\f4fe';
  font-family: 'FA';
  font-size: 25px;
  line-height: 25px;
  color: #727272;
  background: #FFF;
  padding: 10px 6px 10px 10px;
  border-radius: 50%;
  margin-right: 8px;
}


/* ACCOUNT MANAGEMENT PAGES */
#account-info,
#account-credit-form,
#account-management-complete {
  height: calc(100vh - var(--Bottom_Toolbar_Height) - var(--Top_Toolbar_Height));
  display: flex;
  align-items: center;
  justify-content: center;
}

.accountgeneric {
  height: calc(100vh - var(--Bottom_Toolbar_Height) - var(--Top_Toolbar_Height));
  display: flex;
  align-items: center;
  justify-content: center;
}

.accountManageInner {
  flex-flow: column;
  align-content: center;
  justify-content: center;
  align-items: center;
  display: flex;
}

#menu-header {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
}
#accountmanagement #header-text {
  color: white;
  font-size: 30px;
  font-family: var(--Top_Toolbar_Font_Family);
  text-align: center;
}
#accountmanagement #controlbuttons {
  justify-content: center;
  width: 100%;
}
#accountmanagement #controlbuttons > button {
  width: 20%;
}
#accountmanagement #swipeImageCredit,
#accountmanagement #swipeImage {
  margin-top: 25px;
}

.swipeCardCreditContainer {
  display: flex;
  flex-flow: column;
  justify-content: center;
  align-items: center;
  font-size: 22px;
  color: var(--Item_Font_Color);
  padding: 50px 25px 25px 25px;
}

#swipeCardCreditAmount {
  font-weight: bold;
  font-size: 28px;
}


/* ============================================================================================
            ***         MODALS & POPUP ELEMENTS STYLES          ***
============================================================================================= */

.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: #000;
  border: var(--Item_Border);
  border-radius: var(--Control_Button_Outer_Curve);
  font-family: var(--Item_Font_Family);
  color: white;
  min-width: 50%;
  /*animation: zoomIn -0.25s 0.5s;*/
}

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .modal-content {
    /*animation: none;*/
  }
}

.modal-content > *:nth-child(1) {
  border-top: 0;
}

/* PopUp Title */
#messageText {
  font-size: 30px;
  font-weight: bold;
  text-align: center;
}

#receiptText {
  margin: 0;
  text-align: center;
  font-size: var(--Text_Button_Size);
}

.modal-content #descriptionText {
  max-width: 90%;
  margin: 10px auto 20px auto;
  padding: 0;
  text-align: center;
  font-size: 16px;
}

.popup-button,
.popup-button:hover,
.popup-button:active,
.popup-button:focus,
.btn-default[disabled] {
  background: white;
  color: black;
  margin: 0 0;
  min-width: 125px;
}

.popup-button[disabled] {
  color: rgba(0,0,0,0.75);
  background: rgba(255, 255, 255, 0.75);
}

.modal-footer .btn + .btn {
  margin: 15px 0 0 0;
}

.modal-footer {
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 15px;
  border-top: 0px solid #707070;
}

div.numpadOutput,
div.phonepadOutput {
  overflow: hidden;
  width: 60%!important;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px!important;
}

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;
}

input.phonepadPhone1, input.phonepadPhone2, input.phonepadPhone3 {
  margin-bottom: 0px; 
}

input.phonepadPhone2 {
  margin-left: 10px;
}

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;
  width: 25%;
}

#popup-tip-other .numpadOutput {
  position: relative;
}

#popup-tip-other .numpadOutput:before {
  content: '$';
  position: absolute;
  left: 10px;
}

#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;
}

#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;
}

.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(--Controls_Background);
  color: var(--Controls_Font_Color);
  border-radius: 20px;
  transition: 0.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-lookupvideo .modal-content {
  min-width: unset;
}

#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: 10px;
  text-align: center;
  font-family: var(--Item_Font_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(--Item_Font_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: Arial, Helvetica, sans-serif;
  text-transform: initial;
}

.nutrition-header {
  font-weight: bold;
  border-bottom: 1px solid #707070;
  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,
#receipt + .popover .popover-content {
  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);
}

#receiptContent {
  position: absolute;
  overflow: hidden;
  top: 20%;
  left: 25%;
  height: 60%;
  width: 50%;
  overflow-y: scroll;
  padding: 15px 25px;
  border-radius: var(--Control_Button_Outer_Curve);
  background: white;
  color: black;
  font-family: Arial, Helvetica, sans-serif;
  animation: none;
  /*animation: zoomIn -0.25s 0.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(--Controls_Font_Color);
  font-size: 30px;
  /*animation: zoomIn 0.5s;*/
}

#receiptMurderizer:before {
  content: '\f00d';
}

.popover + #receiptMurderizer {
  display: flex;
}

#popup-charity-yes-no #descriptionText {
  margin-bottom: 1em;
}


/* ============================================================================================
            ***         KIOSK ANIMATION STYLES          ***
============================================================================================= */

.kiosk-content .slide {
  /*animation: fadeInRight 0.25s;*/
}

@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;
  }
}

.paused circle {
  animation-play-state: paused;
}

@keyframes border-timer {
  to {
    stroke-dasharray: 101 100;
    stroke: red;
    stroke-width: 1;
  }
}

@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;
} */

/* ============================================================================================
            ***         ONLINE / MOBILE ELEMENTS STYLES          ***
============================================================================================= */
button, html input[type="button"], input[type="reset"], input[type="submit"] {
    border: 0;
}

.iorderfast-content .carousel-buttons,
.iorderfast-content #clip-header {
  display: none;
}

.iorderfast-content {
  /* margin: var(--Top_Toolbar_Height) 0 0 0; */
  position: absolute;
  left: 0;
  top: var(--Top_Toolbar_Height);
  bottom: 0px;
  width: 100%;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.iorderfast-content #clip-template {
    height: calc(100vh - var(--Top_Toolbar_Height) - var(--Bottom_Toolbar_Height));
}

.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: flex;
  flex-flow: row wrap;
  justify-content: center;
  padding: 15px;
  margin: 0;
}

.iorderfast-content .image-button {
  width: 25%;
  display: inline-flex;
}

.iorderfast-content .text-button {
  width: 50%;
  display: inline-flex;
}

.iorderfast-content .image-button .box,
.iorderfast-content .text-button .box {
  width: 100%;
}

.iorderfast-content .details {
  justify-content: left;
}

.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;
}

/* ============================================================================================
            ***         ONLINE / MOBILE NAVIGATION ELEMENTS STYLES          ***
============================================================================================= */

.navbar {
  display: flex;
  height: var(--Top_Toolbar_Height);
  background: var(--Top_Toolbar_Background);
  padding: 0 20px;
  border-bottom: 1px solid #707070;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

.navbar-fixed-top {
  position: absolute !important;
  -webkit-backface-visibility: 0;
  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(--Top_Toolbar_Height);
  flex-shrink: 0;
}

.navbar-toggle {
  margin: 0;
  background: transparent !important;
  border: 0;
  padding: 0;
}

.navbar-default .navbar-toggle .icon-bar {
  background-color: var(--Top_Toolbar_Font_Color);
  height: 3px;
}

.navbar-collapse {
  padding: 0;
}

#navDesktop .navbar-nav {
  display: flex;
}

.navbar-default .navbar-nav > li > a,
.dropdown:nth-child(1) {
  color: var(--Top_Toolbar_Font_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: unset;
  text-overflow: unset;
  width: 100%;
  text-align: center;
}

.nav-label {
  display: none;
}

.iorderfast-content #clip-receipt {
  pointer-events: none;
}


/* ============================================================================================
            ***         ONLINE / MOBILE FORM ELEMENTS STYLES          ***
============================================================================================= */

.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(--Header_Size);
  margin-bottom: 20px;
}

form a {
  color: var(--Item_Font_Color);
}

.form .btn:not(.popup-button):not(.control-button) {
  border-radius: 10px;
  padding: 0 20px;
  border: 0;
  line-height: 40px;
  text-align: center;
  background: var(--Controls_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: 0.75em;
}

label {
  font-weight: normal;
}

.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 #707070;
}

.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;
}


/* AUTO FUNDING PORTAL */
.account-row,
.account-footer {
  max-width: 450px;
  display: flex;
  justify-content: space-between;
  margin: 5px auto;
  
}

.account-information .account-footer {
  flex-flow: column;
}

.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-form .toggle-wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 10px;
  padding-right: 10px;
}

#removeCard, #addCard {
  color: var(--Accent_Color);
}

#auto-funding-form .toggle-component {
  display: flex;
  justify-content: center;
  padding: 10px 25px;
}

.local-account-activity, 
.local-account-funding,
.local-account-autofund {
    margin: 5px 0;
    width: 100%;
}

span.fa.fa-minus:before {
  content: "\f068";
  font-family: 'FA';
}

span.fa.fa-plus:before {
  content: "\f067";
  font-family: 'FA';
}

/* enable auto funding toggle switch */
.toggle-component {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 30px;
	margin: 30px 0;
	position: relative;
}

.toggle-component [type="checkbox"]:before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: '';
}

.toggle-wrapper {
	position: relative;
	height: 30px;
	width: 50px;
	margin-right: 15px;
}

.toggle {
	height: 20px;
	width: 50px;
	background: #888;
	box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.25);
	border-radius: 10px;
	position: absolute;
	top: 5px;
	left: -5px;
	pointer-events: none;
}

.toggle-slider {
	position: absolute;
	left: 0;
	top: -5px;
	height: 30px;
	width: 30px;
	background: white;
	box-shadow: 0 2px 5px rgba(0, 0, 0, 0.5);
	border-radius: 15px;
	pointer-events: none;
}

.toggle-component [type="checkbox"]:checked+.toggle .toggle-slider  {
	right: -5px;
	left: auto;
	background: var(--Accent_Color);
}

.toggle-component label {
	margin: 0;
}

.toggle-component label:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

#enabled[type='checkbox'] {
  margin-right: 5px;
}

.rewards-links {
  display: flex;
  display: none;
  background: black;
  width: 360px;
  position: absolute;
  left: calc(50% - 180px);
  padding: 10px;
  margin-top: -30px;
  justify-content: space-evenly;
  border-bottom-left-radius: 10px;
  border-bottom-right-radius: 10px;
}

.rewards-links a {
  color: white;
  font-size: 12px;
}

form #myModal .btn {
  background: white;
  color: black;
  line-height: initial;
}

.help-block {
  position: relative;
  top: -8px;
}

.save-payment-div,
.save-payment-state {
  text-align: left;
}

.save-payment-state {
  border-bottom: 2px solid;
}

.glyphicon-remove:before {
  content: '\f00d';
  color: #bb0000;
}

/* SCROLL MARGIN */

.iorderfast-content #template,
.form.container,
.iorderfast-content #orderreview:last-of-type {
  margin-bottom: 150px !important;
}


/* ============================================================================================
            ***         GENERAL PHONE & TABLET STYLES          ***
============================================================================================= */

@media only screen and (max-width: 767px) {
  #header-text,
  #menuDescription {
    width: calc(100vw - var(--Logo_Width) - var(--Logo_Spacing) - 100px);
  }

  .iorderfast-content #buttons .row {
    padding: 0;
    display: block;
  }

  .iorderfast-content .image-button,
  .iorderfast-content .text-button {
    float: left;
    padding: 0;
    width: 50%;
    border-bottom: var(--Item_Border);
    max-width: none;
  }

  .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: var(--Item_Border);
  }

  .overlaycontainer {
    display: block;
  }

  .site-nav-collapse {
    position: fixed;
    top: var(--Top_Toolbar_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) {
    top: 0px;
    right: 0px;
    background: transparent;
    color: var(--Item_Font_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: 0.5s;
  }

  /* NAV */
  .navbar-nav {
    flex-direction: column;
    background: white;
    margin: 0 0;
  }

  .dropdown {
    border-bottom: 1px solid #707070;
  }

  .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(--Header_Size);
  }
}


/* ============================================================================================
            ***         DEVICE SPECIFIC MEDIA QUERIES           ***
============================================================================================= */

/* DT5 */

@media only screen and (width: 768px) and (min-height: 1280px) {
  #wrap {
    height: 50% !important;
  }

  #moveUp,
  #moveDown {
    position: relative;
    top: -60px;
    height: 60px;
    background: #333;
    color: white;
    text-align: center;
    line-height: 60px;
    font-size: var(--Header_Size);
  }

  #moveDown {
    top: calc(100% - 60px);
  }

  #moveUp:before,
  #moveDown:before {
    content: 'MOVE ';
  }

  #moveUp:after,
  #moveDown:after {
    font-family: FA;
    content: '\f0aa';
  }

  #moveDown:after {
    content: '\f0ab';
  }

}

@media only screen and (width: 1024px) and (height: 768px) {
  :root {
  /* CONTROL BUTTON VARIABLES */
  --Control_Button_Size: 20px;
  }

  #orders {
    justify-content: flex-start;
  }

  #previousorders #header-text {
    font-size: 36px;
  }

  #previousItemsPopOut .previous-order #pricetext, #previousItemsPopOut .previous-order #receipttext {
    font-size: 14px;
    line-height: 14px;
  }

  #previousItemsPopOut #totalPreviousOrder {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: calc(91% - 60px);
  }

  .modal-content .load-order-btn {
    font-size: 8pt;
  }

}

@media only screen and (width: 1366px) and (height: 768px) {
  .kiosk-content #buttons.order-review-buttons {
    margin: 0 0 0 5%;
  }

  #orders {
    justify-content: flex-start;
  }
  
}


/* OVERRIDES FOR X22 & DT5*/
@media only screen and (width: 1080px) and (height: 1920px) {
  :root {
    --Top_Toolbar_Height: 150px;
    --Bottom_Toolbar_Height: 150px;
    --Control_Button_Height: 75px;
    --Bottom_Toolbar_Size: 20px;
    --Image_Button_Size: 24px;
    --Item_Details_Size: 20px;
    --Header_Size: 45px;
  }

  #wrap {
    height: 100%!important;
  }

  #template .image-button {
    width: 50%;
  }

  [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 {
    margin: 0 1px;
  }

  #template .text-button {
    width: 75%;
    margin: 0 1px;
  }

  #previousItemsPopOut .previous-order-addremovebutton {
    font-size: 14px;
    left: 92%;
  }
  
  #previousorders #welcome {
    font-size: 22px!important;
    line-height: 22px;
    text-align: center;
  }

  #previousorders-form,
  #orders {
    display: block;
  }

  .previous-order, .previous-order:hover {
    margin: 0;
    width: 100%;
    height: 300px;
    margin-bottom: 5%;
  }

  .previous-orders {
    padding-top: 10%;
    padding-left: 2%;
    padding-right: 2%;
  }

  .previous-order-addremovebutton {
    font-size: 14px;
    left: 93%;
  }

  #popup-previousOrders .modal-content {
    width: 90%;
  }
}

@media (orientation: landscape) {
  #wrap {
    min-height: 100%;
    top: 0 !important;
  }
}

/* OVERRIDES FOR MOBILE DEVICES*/
@media only screen and (max-width: 767px) {
  :root {
    --Header_Size: 18px;
    --Description_Size: 12px;
    --Logo_Width: 30px;
    --Logo_Spacing: 10px;
    --Top_Toolbar_Height: 45px;
  }
}

@media only screen and (max-width: 1023px) {
  .iorderfast-content .image-button {
    width: 100%;
  }

  .iorderfast-content .text-button {
    width: 100%;
  }

  .image-button #btext {
    height: 4em;
  }

  .modal-content {
    min-width: 66%;
  }
}


/* ====================================================================================================================================
***         MAIN MENU STYLES SPECIFICALLY FOR SCAN AND WEIGH ITEMS BUTTONS (OPTIONAL) - ONLY APPLIES TO THE MAINMENU TEMPLATE       ***
==================================================================================================================================== */

@media only screen and (min-width:1024px) and (max-width:1366px) and (height: 768px) {

  .Main-Menu-buttons .image-button:nth-child(n + 9) {
    width: 50% !important;
  }

  .Main-Menu-buttons .details {
    display: none;
  }

  .Main-Menu-buttons .image-button:nth-child(n + 9) #bimage,
    .iorderfast-content
    .Main-Menu-buttons
    .image-button:nth-child(n + 9),
  .Main-Menu-buttons .image-button:nth-child(n + 9) .details {
    display: none;
  }

  .Main-Menu-buttons .image-button:nth-child(n + 9) #btext {
    font-size: 22px;
    padding: 1.75em 10px;
  }

  .Main-Menu-buttons #bimage {
    height: 150px;
  }
}


/* ============================================================================================
***         STYLES FOR BUNDLE BUTTON        ***
============================================================================================= */

#template.showingBundleButton {
  display: flex;
  justify-content: center;
  align-items: center;
}

.showingBundleButton .row {
  width: 50%;
  align-items: flex-end;
  justify-content: center;
  flex-flow: column;
  position: absolute;
  right: 20%;
}

#bundle.image-button {
  width: 200px;
  z-index: 5;
  position: absolute;
    left: 27%;
}

.showingBundleButton .text-button {
  width: 75%!important;
  max-width: 75%!important;
}

#bundle #bimage {
  height: 280px;
  width: 100%;
  border-radius: 0;
  border: none;
  background-size: 100%;
  background-position: center;
}

#bundle .caption {
  background: white;
}

#bundle #btext {
  height: 2em;
  font-size: 13px;
  padding: 0 5px;
  justify-content: flex-start;
}

#bundle #textDesc {
  font-size: 12px;
  bottom: 0;
  padding: 5px;
}

#bundle .details {
  height: 1em;
}

#bundle #price {
  font-size: 13px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.bundle-selected .box {
  box-shadow: 0 0 5px #313B42;
  border-radius: 10px;
}

.bundle-selected #check {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  visibility: visible;
  position: absolute;
  top: 30px;
  right: -8px;
  z-index: 1;
  line-height: 50px;
}

#bundle #check:before {
  content: '\f00c';
  font-size: 25px;
}

/* ============================================================================================
***         STYLES FOR FLOATING ADD ITEM BUTTON - 4.20.2020       ***
============================================================================================= */

#floating-controlbuttons {
  top: 71%;
  right: 0;
  z-index: 0;
  position: absolute;
  width: 170px !important;
  height: 230px !important;
}
.control-button-float-right {
  width: 170px !important;
  height: 230px !important;
}
.floating-control-button-additem {
  width: 170px !important;
  height: 230px !important;
  border: 3px solid white;
  border-radius: 150px 0 0 150px;
  z-index: 2;
  background-color: #313C42;
  font-size: 30px;
  color: white;
  margin-top: 5%;
  box-shadow: 0 4px 10px 1px grey;
}
.floating-controlbuttons-hidden {
  visibility: hidden;
  z-index: -1;
}

@media  screen and (min-width: 1366px) {
  #floating-controlbuttons {
      top: 25%;
  }
}


/* ============================================================================================
***         DISABLE TOUCHLESS BUTTON - 10.27.2020       ***
============================================================================================= */
/* X22 Positioning */
@media only screen and (max-width: 1080px) and (max-height: 1920px) {
  #touchlesswrapper {
    right: 10px;
    bottom: 160px;
  }
}
/* TD18, XN18 Positioning */
@media only screen and (min-width: 1366px) and (min-height: 768px), screen and (orientation: landscape)  {
  #touchlesswrapper {
    right: 10px;
    bottom: 75px;
  }
}

#touchlesswrapper {
  position: fixed;
  display: flex;
  z-index: 10;
  bottom: 75px;
  right: 10px;
}
#disabletouchlessimg {
  display: inline-flex;
  height: 60px;
  width: 60px;
  padding: 8px;
	content: url('../../html/images/touchless_icon_ON_02.svg');
  background: #727272;
  border-top-left-radius: 50px;
  border-bottom-left-radius: 50px;
}
#disabletouchlesstext {
  display: inline-flex;
  align-items: center;
  font-size: 13px;
  line-height: 14px;
  text-transform: uppercase;
  background: #727272;
  border-top-right-radius: 50px;
  border-bottom-right-radius: 50px;
  color: #FFF;
  height: 60px;
  width: 115px;
  padding: 2px 0 0 0;
}



/* ============================================================================================
***         STYLES FOR BUTTON PULSE HIGHLIGHT - 4.20.2020       ***
============================================================================================= */

.highlight-button #bimage {
box-shadow: 0 0 0 0 rgba(49, 60, 66, 1);
transform: scale(1);
animation: pulse 3s infinite;
  border: solid 1px #686868;
}

@keyframes pulse {
0% {
  transform: scale(1);
  box-shadow: 0 0 0 0 rgba(49, 60, 66, 0.7);
}

70% {
  transform: scale(1);
  box-shadow: 0 0 0 10px rgba(49, 60, 66, 0);
}

100% {
  transform: scale(1);
  box-shadow: 0 0 0 0 rgba(49, 60, 66, 0);
}
}


/* ============================================================================================
***         TESTING FOR SPLASH STYLES BUILT INTO THE KIOSK FILE       ***
============================================================================================= */

.splashPlaylistX22-p img,
.splashPlaylistTD18-p  img {
  height: 100%;
  width: auto;
  top: 0;
  left: 0;
  position: fixed;
  display: block;
}

.splashPlaylistX22-l  img,
.splashPlaylistTD18-l  img {
  height: auto;
  width: 100%;
  top: 0;
  left: 0;
  position: fixed;
  display: block;
}


/* ============================================================================================
***         STYLES FOR UPDATED SPLASH SCREEN ADVERTISEMENTS - 4.24.2020       ***
============================================================================================= */

#statusMessageContainer {
  position: absolute;
  top: 0px;
  right: 0px;
  text-align: right;
  color: rgb(192, 192, 192);
}

div#content {
  display: block;
}

.disabled {
  pointer-events: none;
  opacity: 0.5;
}

#dmd {
position: absolute;
height: 100vh;
width: 100vw;
left: 0px;
top: 0px;
background-size: cover;
background-position: right 50px;
}

/*the to level div for all dmd layouts will have this class
  the layouts will be named layout0, layout1, layout2, etc
  you can address them by name to each layout a separate look
*/
.dmdLayout {
  height:100%;
  width:100%;
}

/*when there are multiple layouts this style is added before a layout is shown to animate in*/
.dmdLayoutHidden {
  top: -100vh;
  z-index: -1000;
}

/* used when a layout div is about to be replaced with a new layout div*/
.dmdLayoutHiding{
  z-index:-1;
}

/* used when a layout div is about to be shown over the existing layout div. the layout with this style will animate over the prior layout*/
.dmdLayoutShown{
  z-index:1;
}

/* the top level div for all dmd sections will have this class. 
  the sections will have ids of dmdSection0, dmdSection1, dmdSection2 etc
  you can address them by name to give each section a separate look
*/
.dmdSection {
  overflow: hidden;
}

/* all playlist background divs will have this class. a playlist create this div to load the assigned background image into*/
.dmdPlaylistSectionBackground {
  top: 0px;
  left: 0px;
  z-index: -1000;
}

/* 
  STANDARD TRANSITION ANIMATION CLASSES AND KEYFRAMES FOR DMD PLAYLISTS
  the names "fadeIn", "fadeOut", etc are defined my mynextep.
*/

.dmdPlaylistAnimation_fadeIn {
  animation: fadeIn 1.5s;
  visibility: visible;
  opacity: 1;
}

.dmdPlaylistAnimation_fadeOut {
  animation: fadeOut 1.5s;
  visibility: hidden;
  opacity: 0;
}

/* @keyframes fadeIn {
  from {
      opacity: 0;
      visibility: hidden;
  }

  to {
      opacity: 1;
      visibility: visible;
  }
}

@keyframes fadeOut {
  from {
      opacity: 1;
      visibility: visible;
  }

  to {
      opacity: 0;
      visibility: hidden;
  }
} */

.dmdPlaylistAnimation_slidettbIn {
  animation: slideTopToBottomIn 1.5s;
  top: 0;
}

.dmdPlaylistAnimation_slidettbOut {
  animation: slideTopToBottomOut 1.5s;
  top: -100vh;
}

.dmdLayoutTransition_slidettbIn {
  animation: slideTopToBottomIn 1.5s;
  top: 0;
}

.dmdLayoutTransition_slidettbOut {
  animation: slideTopToBottomOut 1.5s;
  top: -100vh;
}

/* @keyframes slideTopToBottomIn {
  from {
      top: -100vh;
  }

  to {
      top: 0;
  }
}

@keyframes slideTopToBottomOut {
  from {
      top: 0;
  }

  to {
      top: -100vh;
  }
} */

.dmdPlaylistAnimation_slideltrIn {
  animation: slideLeftToRightIn 1.5s;
  left: 0;
}

.dmdPlaylistAnimation_slideltrOut {
  animation: slideLeftToRightOut 1.5s;
  left: -100vw;
}

/* @keyframes slideLeftToRightIn {
  from {
      left: -100vw;
  }

  to {
      left: 0;
  }
}

@keyframes slideLeftToRightOut {
  from {
      left: 0;
  }

  to {
      left: -100vw;
  }
} */

.dmdPlaylistAnimation_slidertlIn {
  animation: slideRightToLeftIn 1.5s;
  left: 0;
}

.dmdPlaylistAnimation_slidertlOut {
  animation: slideRightToLeftOut 1.5s;
  left: -100vw;
}

/* @keyframes slideRightToLeftIn {
  from {
      left: 100vw;
  }

  to {
      left: 0;
  }
}

@keyframes slideRightToLeftOut {
  from {
      left: 0;
  }

  to {
      left: 100vw;
  }
} */

.dmdPlaylistAnimation_zoomoutIn {
  animation: zoomIn 1.5s;
}

.dmdPlaylistAnimation_zoomoutOut {
  animation: zoomOut 1.5s;
}

/* @keyframes zoomIn {
  from {
      height: 0px;
      width: 0px;
      top: 50%;
      left: 50%;
  }

  to {
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
  }
}

@keyframes zoomOut {
  from {
      height: 100%;
      width: 100%;
      top: 0;
      left: 0;
  }

  to {
      height: 0px;
      width: 0px;
      top: 50%;
      left: 50%;
  }
} */


/* ============================================================================================
***         MULTI REVENUE KIOSK SPLASH SCREEN TILES       ***
============================================================================================= */

#splashGuestVideoTarget {display:none;} /*--- ITEAM CAN BE REMOVED AFTER TAKEN OUT OF SPLASH ---*/
#locationscontainer {
  width: 50%;
  /*padding-top: 50%; */
  margin:0 auto;
  text-align:center;
}
div[class^="location_"] {
  height: 400px;
  width: 400px;
  margin:0 auto;
  background-color: #CCCCCC;
  border: solid 2px #AAAAAA;
  margin-bottom: 25px;
  padding: 200px;
}
.location {
  height: 400px;
  width: 400px;
  margin:0 auto;
  background-color: #CCCCCC;
  border: solid 2px #AAAAAA;
  margin-bottom: 25px;
  padding: 200px;
}
.locationtitle {
  padding-left: 20px;
padding-top: 175px;
margin-left: -190px;
}
.Splash_Headline {}
.Splash_Subhead {}



/* ============================================================================================
***         AVAILABLE TENDERS LOYALTY TENDERS       ***
============================================================================================= */
#popup-available-tenders .modal-content {
  min-width: 50%;
  max-width: 75%;
}

#noTender {
	font-size: 35px;
	text-align: center;
	vertical-align: middle;
  font-weight: bold;
}
/*
#popup-available-tenders #messageText {
  font-size: 35px;
  font-weight: bold;
}

#popup-available-tenders #descriptionText {
  max-width: 100%;
  font-size: 16px;
  margin: 10px 0 20px 0;
}*/

#popup-available-tenders #amountText {
  font-size: 16px;
  font-weight: bold;
  text-transform: uppercase;
  padding: 10px 0 10px 1px;
}

#popup-available-tenders .tenderTextContainer {
  margin: 0 35px;
}

#popup-available-tenders .tenderContainer {
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-flow: row wrap;
  align-items: stretch;
  margin: 0 30px;
}

#popup-available-tenders .tender {
  background: rgba(255, 255, 255, 0.75);
  color:  rgba(0,0,0,0.75);
  border-radius: 5px;
  margin: 5px;
  width: 48%;
  min-height: 125px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

#popup-available-tenders .tender.tenderSelected {
  background: #FFF;
  color: #000;
}

#popup-available-tenders .tender-item {
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition-duration: .4s;
  transition-duration: .4s;
  transition-delay: 0s;
  text-align: center;
  padding: 15px;
  margin-bottom: 0;
  min-width: 100%;
}

#popup-available-tenders #tenderText {
  font-weight: bold;
  width: 100%;
  margin-bottom: 10px;
}

#popup-available-tenders #tenderDiscount {
  width: 100%;
  font-size: 12px;
  margin-bottom: 10px;
}

#popup-available-tenders #tenderAmount {
  width: 100%;
  font-size: 16px;
  font-weight: bold;
}

#popup-available-tenders #check_select {
  display: none;
}

#popup-available-tenders .modal-footer .btn + .btn {
  margin: 0;
}


/* Remove checkmark 
#popup-available-tenders .check:checked ~ .tender-item #check_select:before {
  content: '\f058';
  font-family: 'fa';
  color: #000;
  z-index: 99;
  visibility: visible;
}

#popup-available-tenders #check_select {
  font-size: 40px;
  display: flex;
  justify-content: center;
  align-items: center;

} */

#hosted-credit-form, #hpc--card-frame {
  height: 450px;
}

.takeover-container {
    background: white;
    padding: 15px;
    border-radius: 15px;
}

.takeover-title {
    width: 85%;
    font-family: var(--PrimaryBoldFontFamily) !important;
    font-weight: bold !important;
    font-size: var(--HeaderSize2) !important;
    line-height: 40px !important;
    text-align: left !important;
    text-transform: uppercase;
}

.takeover-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    border-top: 0;
    margin-top: 10px;
}

.btn-takeover {
    font-size: 20px;
    border: 0px solid rgba(0, 0, 0, 0.20);
    min-width: 150px;
    height: 40px;
    padding: 0px 15px;
    display: flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    background: #253B56;
    color: white;
    border-radius: var(--Item_Curve);
    font-family: var(--Item_Font_Family);
    font-weight: bold;
}

#removeCombo {
    display: none;
}