body {
  background-color: #f8f9fa;
  font-family: Roboto, Arial, helvetica, sans-serif;
  color: #575757;
}
header {
  background-color: #fff;
  padding: 15px 0;
}
header .eland-logo {
  max-width: 90px;
  height: auto;
}
header h1 {
  font-weight: normal!important;
  color: black;
}
.faded-top-border {
  position: relative;
}
.faded-top-border::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  height: 1px;
  /* border thickness */
  background: linear-gradient(to right, rgba(204, 204, 204, 0) 0%, #aaa 15%, #aaa 85%, rgba(204, 204, 204, 0) 100%);
  pointer-events: none;
}
.faded-bottom-border {
  position: relative;
}
.faded-bottom-border::after {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  /* border thickness */
  background: linear-gradient(to right, rgba(204, 204, 204, 0) 0%, #aaa 15%, #aaa 85%, rgba(204, 204, 204, 0) 100%);
  pointer-events: none;
}
.container {
  /* order item selection screen */
  /* order summary screen: order summary table */
  /* credit card payment screen */
}
.container h5 {
  color: black;
}
.container .required {
  color: red;
}
.container select.form-control {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: url('data:image/svg+xml;utf8,<svg fill="black" height="16" viewBox="0 0 24 24" width="16" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>') no-repeat right 0.75rem center / 1em;
  padding-right: 2.5em;
  background-color: white;
}
.container .store-login-form label,
.container .store-login label {
  color: red;
}
.container .store-login-form button[type="submit"],
.container .store-login button[type="submit"] {
  width: 100%;
}
.container .order-items > .row.item {
  margin-top: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid #ddd;
}
.container .order-items > .row.item > div {
  border: 0;
  padding: 10px;
}
.container .order-items > .row.item > div:nth-child(3) {
  text-align: left;
}
.container .order-items > .row.item > div:nth-child(3) > span {
  display: inline-block;
  padding: 5px;
  text-align: left;
}
.container .order-summary table.table > thead > tr > th {
  font-size: 8pt!important;
  font-weight: normal!important;
  background-color: #eee;
}
.container .order-summary table.table > tbody > tr > td,
.container .order-summary table.table > tfoot > tr > td,
.container .order-summary table.table > tbody > tr > th,
.container .order-summary table.table > tfoot > tr > th {
  font-size: 12pt!important;
  font-weight: normal!important;
}
.container .order-summary table.table > tbody > tr:nth-child(1) th,
.container .order-summary table.table > tfoot > tr:nth-child(1) th,
.container .order-summary table.table > tbody > tr:nth-child(4) th,
.container .order-summary table.table > tfoot > tr:nth-child(4) th {
  font-weight: bold!important;
  border-top: 1px solid #666;
  background-color: #cef;
}
.container .order-summary table.table > tbody > tr:nth-child(2) th,
.container .order-summary table.table > tfoot > tr:nth-child(2) th,
.container .order-summary table.table > tbody > tr:nth-child(3) th,
.container .order-summary table.table > tfoot > tr:nth-child(3) th {
  font-size: 10pt!important;
  font-style: italic;
}
.container #pnlPaymentInfo {
  font-size: 12pt;
}
.container .accepted-cc {
  display: inline-block;
  margin-left: 10px;
  vertical-align: middle;
}
.container .accepted-cc img {
  vertical-align: middle;
  height: 17px;
  margin-right: 2px;
}
.container .row-ccnumber,
.container .row-ccexp,
.container .row-cccvc,
.container .row-ccname,
.container .row-ponumber,
.container .row-mailinginfo {
  width: 100%;
  margin-bottom: 5px;
}
.container div[class^="row-"] > label.form-label {
  width: 100px;
  float: left;
  text-align: left;
  font-size: 12px;
  padding-top: 7px;
}
.container input[name="ccNumber"],
.container input[name="ccName"] {
  font-size: 12px;
  width: 250px;
}
.container input[name="ccExp"],
.container input[name="ccCVC"] {
  font-size: 12px;
  width: 100px;
}
.container input[name="poNumber"] {
  font-size: 12px;
  width: 100%;
}
.container button#btnSubmitPayment,
.container button#btnPrintPaymentInvoice {
  font-size: 12pt;
  width: 100%;
  margin-top: 7px;
}
@media (min-width: 768px) {
  .container .row-ccnumber {
    display: inline-block;
    width: 180px;
  }
  .container .row-ccexp {
    display: inline-block;
    width: 80px;
  }
  .container .row-cccvc {
    display: inline-block;
    width: 60px;
  }
  .container .row-ccname {
    display: inline-block;
    width: 180px;
  }
  .container .row-ponumber,
  .container .row-mailinginfo {
    display: block;
    width: 100%;
  }
  .container div[class^="row-"] > label.form-label {
    width: auto;
    float: none;
    display: block;
    text-align: left;
  }
  .container input[name="ccNumber"],
  .container input[name="ccName"],
  .container input[name="ccExp"],
  .container input[name="ccCVC"],
  .container input[name="poNumber"] {
    font-size: 11pt;
    width: 100%;
  }
  .container button#btnSubmitPayment,
  .container button#btnPrintPaymentInvoice {
    width: 250px;
    max-width: none;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 768px) {
  header .eland-logo {
    max-width: 120px;
  }
  header h1 {
    font-size: 20px;
  }
  .container button[type="submit"] {
    max-width: 200px;
  }
  .container .order-items > .row.item {
    margin-top: 15px;
    margin-bottom: 15px;
    border-bottom: 1px solid #ddd;
  }
  .container .order-items > .row.item > div:nth-child(3) {
    text-align: right;
  }
  .container .order-items > .row.item > div:nth-child(3) > span {
    padding: 10px;
  }
  .container .order-items > .row.item > div:nth-child(3) > span:nth-child(1) {
    border-right: 1px solid #ccc;
  }
}
