@font-face {
  font-family: 'robotoregular';
  src: url('../fonts/roboto-regular-webfont.woff2') format('woff2'),
    url('../fonts/roboto-regular-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;

}

@font-face {
  font-family: 'robotomedium';
  src: url('../fonts/roboto-medium-webfont.woff2') format('woff2'),
    url('../fonts/roboto-medium-webfont.woff') format('woff');
  font-weight: normal;
  font-style: normal;

}


body {
  background: whitesmoke;
  font-family: 'robotoregular', 'Open Sans', 'Helvetica Neue', Hevetica, Arial, Sans-Serif !important;
}

html {
  box-sizing: border-box;
}

*,
*:before,
*:after {
  box-sizing: inherit;
}

.center {
  text-align: center;
}

.kiosk,
.kiosk * {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
}

#logo_ticket {
  width: 200px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: -8px;
}


#seal_ticket {
  width: 100px;
  padding: 10px;
  margin-left: auto;
  margin-right: auto;
  float: left;
}

#qr_ticket {
  width: 150px;
  padding: 5px;
  float: left;
}

.popup_time {
  float: right;
}

.requiredFieldsMsg {
  color: red;
  padding: 10px;
  font-weight: bold;
}

#eligibility {
  text-align: center;
}

#expire-eligible {
  text-align: center;
}

#info {
  width: 350px;
  text-align: left;
}

#info_confirmation {
  font-size: 1em;
}

.progress {
  text-align: center;
}

.time::after {
  content: ' HST';
  font-size: .6em;
}

#header {
  margin-top: 20px;
  color: black;
  font-weight: normal;
  border-bottom: 1px solid #ccc;
}

#header>.fa {
  padding: 10px;
  color: rgb(0, 129, 255);
}

#headerSub {
  color: #333;
  font-weight: normal;
  font-size: 1.1em;
}

.aloha_logo {
  margin: 0px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 300px;
  ;
  margin-bottom: -15px;
}

.step {
  display: inline-block;
  color: #888;
  text-align: center;
  font-size: 0.75em;
}

.step>.fa,
.step>.fa-stack {
  display: block;
  width: auto;
}

.line {
  display: inline-block;
  width: 50px;
  height: 20px;
  border-top: 2px solid #888;
}

.completed-line {
  border-top: 2px solid #080;
}



.completed>span {
  color: #080;
}

.active>span {
  color: rgb(0, 129, 255);
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}



input,
select {
  box-sizing: border-box;
  padding: 10px;
  margin: 5px;
  border-radius: 5px;
  border: 1px solid #AAA;
  width: 315px;
  border-bottom: 2px solid rgba(0, 0, 0, 0.1);
}

.wrapper {
  max-width: 100%;
  width: 960px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 20px;
  background-color: white;
  padding: 20px;
  box-shadow: 1px 1px 10px 1px rgba(0, 0, 0, 0.12);
  border-radius: .5em;
}


.time_wrap {
  width: 530px;
  max-width: 100%;
}

.time_wrap_msg {
  margin-bottom: 20px;
}

.time {
  display: inline-block;
  margin-bottom: 5px;
}

.time_label {
  width: 110px;
  display: inline-block;
  vertical-align: top;
  padding-left: 20px;
  padding-top: 20px;
  text-align: right;
}


#user_input>form {
  display: inline-block;
}



.fa-check-circle {
  color: rgb(0, 178, 29);
}

#user_input>form {
  display: inline-block;
}





#info>span {
  display: block;
}

#info>span>span {}

.info_lab {}

#creatingTicket,
.loading {
  display: block;
  padding: 15%;
  text-align: center;
  font-size: 1.5em;
  color: #555;
}

#info_warnings {
  font-weight: bold;
  padding: 0px 15px 15px;
}

#info_instructions {
  font-weight: bold;
  padding: 0px 15px 15px;
}

#info_title {
  font-size: 1.75em;
  width: 100%;
  display: block;
  border-bottom: 1px solid #ccc;
  text-align: center;
  margin-bottom: 15px;
}

#info_footer {
  font-size: .95em;
  border-top: 1px solid #ccc;
  display: none;
  word-wrap: break-word;
}

.info_label {
  font-size: .75em;
  font-weight: bold;
}

.popup_label {
  font-size: .75em;
  font-weight: bold;
  padding-right: 5px;
}

#verification {
  color: black;
}

#info,
.time_wrap {
  vertical-align: top;
  display: inline-block;
  margin: 10px;
  border-radius: 10px;
  border: 1px solid #AAA;
  border-bottom: 2px solid rgba(0, 0, 0, 0.1);
  padding: 10px;
  margin-top: 0;
  background-color: white;
}

.side-right {
  display: inline-block;
}

.appoint_times_wrap {
  vertical-align: top;
  display: inline-block;
  margin-top: 0;
  background-color: white;
}

.appoint_header .button-look {
  font-size: 0.9em;
}


#datepicker {
  text-align: center;
  vertical-align: top;
  display: inline-block;
  max-width: 100%;
  margin-bottom: 10px;

}

.ui-icon {
  display: none;
}

.ui-datepicker-prev:before {
  content: "\f137";
  font: normal normal normal 14px/1 FontAwesome;
  cursor: pointer;
  padding: 10px;
  font-size: .8em;
  color: white;
}

.ui-datepicker-next:before {
  content: "\f138";
  font: normal normal normal 14px/1 FontAwesome;
  cursor: pointer;
  padding: 10px;
  font-size: .8em;
  color: white;
}

.ui-datepicker-prev {
  float: left;
  font-size: 2em;
}

.ui-datepicker-next {
  float: right;
  font-size: 2em;
}

.ui-datepicker-title {
  font-size: 1.5em;
  background: rgb(0, 129, 255);
  color: white;
  padding: 0.25em;
  border-radius: .25em .25em 0em 0em;
}

.ui-datepicker-calendar {
  border: 1px solid #CCC;
  border-radius: 0em 0em .25em .25em;
  display: block;
  background: white;
  border-bottom: 2px solid rgba(0, 0, 0, 0.1);
}

.ui-datepicker-calendar>thead {
  display: none;
}

.ui-corner-all.ui-state-disabled {
  visibility: hidden;
}

.ui-state-default {
  display: block;
  padding: 15px;
  text-decoration: none;
  color: black;
}

.ui-state-active {
  background-color: rgb(0, 129, 255);
  color: white;
  border-radius: 50px;
}

.ui-datepicker-unselectable>span {
  color: #CCC;
}

#popup_wrapper {
  position: fixed;
  top: 10%;
  left: 0;
  right: 0;
  width: 50%;
  max-height: 80%;
  background-color: white;
  border: 10px solid white;
}

#popup_wrapper .fa-times {
  color: white;
}

#popup_wrapper h3 {
  margin: 0;
  color: #444;
  padding: 5px;
}

.popup_close {
  color: rgb(0, 129, 255);
  cursor: pointer;
}

.close_div {
  text-align: right;
}

.location_block {
  padding: 10px;
  border-bottom: 1px solid #CCC;
  margin-bottom: 40px;
}

.location_block:nth-last-child(1) {
  border-bottom: none;
  margin-bottom: 0px;
}

.location_block ul {
  margin: 0;
  display: block;
  padding: 5px;
}

.location_block ul>li {
  margin-left: 10px;
  padding: 10px;
  font-size: .8em;
  border-bottom: 1px solid #ccc;
}

.location_block ul>li:nth-last-child(1) {
  border-bottom: none;
  padding-bottom: 0;
}

.location_block li {
  display: block;
  padding: 5px;
}

.location_block .fa {
  color: #777;
  float: left
}

#popup_wrapper>.fa-stack {
  position: fixed;
  top: 0px;
}



#footer {
  display: block;
  width: 100%;
  border-top: 1px solid#CCC;
  margin-top: 10px;
  color: #3F3F3F;
}

#location {
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-around;
}

.locationCol {
  max-width: 285px;
  flex-direction: column;
}

.location.button-look {
  padding: 0;
  padding-top: 3px;
  padding-bottom: 3px;
  min-height: 4.5em;
  justify-content: center;
  align-items: center;
  display: flex;
}

#locationsAndServices {
  text-decoration: underline;
  text-align: left;
  cursor: pointer;
}


.footer_item {
  width: 50%;
  display: inline-block;
  padding: 5px 14px 0px 14px;
}

.footer_right {
  text-align: right;
}

#language {
  text-align: center;
  cursor: pointer;
  text-decoration: underline;
}

#popup {
  height: 100%;
  width: 100%;
  background-color: rgba(50, 50, 50, 0.75);
  position: fixed;
  top: 0;
  z-index: 100;
}

#popup_inner {
  overflow: auto;
  height: 85%;
  margin-top: 20px;
}

#currentTime {
  display: inline-block;
  text-align: right;
  font-size: 1.25em;
  text-decoration: none;
}


.button-look,
.time {
  background-color: rgb(0, 129, 255);
  border: 0;
  border-radius: .25em;
  text-align: center;
  cursor: pointer;
  width: 285px;
  padding: 1.5em 0em 1.5em 0em;
  margin: .5em;
  display: inline-block;
  color: white;
  box-shadow: 1px 1px 3px 1px rgba(0, 0, 0, 0.27);
  border-bottom: 2px solid rgba(0, 0, 0, 0.1);
  vertical-align: bottom;
  transition: all 0.2s ease-out;
}

.button-look .fa {
  padding: 0px 5px;
}


.fa-asterisk {
  color: #F30;
}

.submitCancel {
  margin-left: 25px;
}

.submit {
  margin-left: auto;
  margin-right: auto;
}

.back {
  margin-top: 30px;
}

.nav_buttons {
  display: block;
  width: 100%;
  text-align: center;
}

.back {
  float: left;
}

.startOver {
  float: right;
}

.back,
.startOver {
  width: 120px;
  background-color: #555;
  color: white;
  display: inline-block;
  margin: 5px;
}

#verify-button {
  margin: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 10px;
  color: white;
}

.time {
  width: 95px;
  padding: 1em .5em 1em .5em;
}

.cl_verification {
  display: none;
  color: white;
}

#button-subtext {
  font-size: .75em;
  margin-top: 20px;
  width: 250px;
  color: black;
}

#verification_text {
  margin-top: 10px;
  width: 340px;
  color: black;
}

#timerstring {
  color: white;
  font-weight: bold;
  text-align: center;
  padding: 10px;
  margin: 5px;
  background: rgb(228, 62, 62);
  border-radius: .5em;
  margin-left: auto;
  margin-right: auto;
}

.btn-disabled {
  background: #DDD;
  color: #777;
  cursor: not-allowed;
}

.btn-alternative {
  background: #F80;
  color: #FFF;
  cursor: not-allowed;
}

.btn-contains-subtext {
  padding: 1em .5em 1em .5em;
}

.btn-subtext {
  display: block;
  font-size: .8em;
  font-weight: bold;
}

.default-hidden {
  display: none;
}

.emergency-message {
  text-align: center;
  font-weight: bold;
  font-size: 1.4em;
}

input[type='text'],
input[type='number'] {
  font-size: 16px;
}

.error_icon {
  font-size: 5em !important;
  color: orange;
  vertical-align: middle;
}

.error_text {
  vertical-align: middle;
}

.location-category-button-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.location-category-button {
  /* padding: unset !important; */
  height: 72px;
  display: flex;
  justify-content: center;
  align-items: center;

}

.bg-red {
  background-color: red;
}

@media only screen and (max-width : 1200px) {}

@font-face {
  text-rendering: optimizeLegibility;
}

@media only screen and (max-width : 979px) {
  .wrapper {
    width: 800px;
    padding: 0;
    box-shadow: none;
    background: none;
  }

  #popup_wrapper {
    width: 90%;
  }

  .time_wrap {
    width: 400px;
    margin: 0;
  }

  body {
    background-color: white;
  }

  .back,
  .startOver {
    width: 100px;
  }
}

@media only screen and (min-width : 979px) {

  .back,
  .startOver {
    padding-top: 1em;
    padding-bottom: 1em;
  }


}

@media only screen and (max-width : 767px) {
  .wrapper {
    width: 700px;
    text-align: center;
  }

  .popup_wrapper {
    text-align: left;
  }

  .time_wrap {
    width: 100%;
    padding: 0px;
  }

  .back,
  .startOver {
    margin-left: auto;
    margin-right: auto;
  }

  .line {
    width: 25px;
  }

  .error_text {
    display: block;
  }

  .footer_item {
    width: 26%;
  }


}

@media only screen and (max-width : 640px) {

  .back>span,
  .startOver>span {
    display: none;
  }

  #footer {
    padding: 0;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
  }

  .popup_time,
  .popup_label {
    display: block;
    float: none;
  }

  .footer_item {
    display: block;
    width: 100%;
    text-align: center;
    float: none;
    padding: 0;
  }

  .line {
    display: none !important;
  }

  .step {
    display: none !important;
  }
}

@media only screen and (max-width : 480px) {

  .back>span,
  .startOver>span {
    display: inline-block;
  }



  #user_input>form {
    display: block;
  }

  #info {
    display: block;
  }

  .aloha_logo {
    width: 90%;
  }

  .submitCancel {
    margin-left: 0px;
  }

  .button-look,
  .time {
    display: block;
    width: 95%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }

  .locationCol {
    width: 100%;
    max-width: 100%;
  }

  #footer {
    padding: 0;
  }


  input,
  select {
    width: 90%;
    width: calc(100% - 40px);
    padding-top: 1em;
    padding-bottom: 1em;
  }

  .time {
    padding-top: 1em;
    padding-bottom: 1em;
    width: calc(50% - 10px);
    display: inline-block;
    margin: 5px;
  }

  .ui-state-default {
    padding: 10px;
  }



  #info {
    width: 95%;
    width: calc(100% - 20px);
    padding: 5px;
    margin: 5px;
  }

  #datepicker tr {
    width: 100%;
  }

  #datepicker td {
    width: 15%;
  }

  .back,
  .startOver {
    width: 45%;
  }

}

@media only screen and (max-width : 320px) {

  input,
  select {
    width: 80%;
    width: calc(100% - 40px);
  }


  .time {
    width: 100%;
    display: block;
    margin: 0px;
    margin-bottom: 5px;
    margin-top: 5px;
  }

  .ui-state-default {
    padding: 5px;
  }

  .wrapper {
    margin-top: 0;
  }

}

@media only screen and (max-width : 200px) {

  input,
  select {
    width: 70%;
    width: calc(100% - 40px);
  }

  .time {
    width: 100%;
    display: block;
  }

  .ui-state-default {
    padding: 1px;
  }



}

@media screen and (-webkit-min-device-pixel-ratio:0) {

  select:focus,
  textarea:focus,
  input:focus {
    font-size: 16px;
  }
}

@media print {
  .headerwrap {
    display: none;
  }

  .footerwrap {
    display: none;
  }

  .wrapper {
    box-shadow: none;
    padding: 0;
    margin: 0;
  }


}