p {
  color: #777; }
  p strong {
    color: #2a2a65; }

h1, h2, h3, h4, h5, h6 {
  color: #2a2a65; }

h2 {
  margin-bottom: 20px; }

table {
  table-layout: fixed;
  word-wrap: break-word; }
  table, table tr, table th, table td {
    border: none !important; }
  table th {
    color: #2a2a65; }
  table th[scope="row"] {
    font-weight: normal; }
  table thead tr th {
    width: 15%;
    text-align: center;
    vertical-align: middle; }
    table thead tr th:first-of-type, table thead tr th:last-of-type {
      width: 7%;
      text-align: right; }
    table thead tr th:nth-of-type(2) {
      width: 27%; }
    table thead tr th:nth-last-of-type(2) {
      font-size: 0.9rem;
      padding-left: 0;
      padding-right: 0; }
  table tbody tr th {
    width: 27%; }
  table tbody tr td {
    width: 15%;
    text-align: center; }
    table tbody tr td:first-of-type, table tbody tr td:last-of-type {
      width: 7%;
      text-align: right; }
  table td.material-price,
  table td.merchant-total {
    color: #ccc; }
  table td.material-price.lowest,
  table td.merchant-total.lowest {
    font-weight: bold;
    color: #f4b40e; }

.merchant-total {
  white-space: nowrap; }

#productList {
  margin-top: -72px; }
  #productList form {
    padding: 0; }
    #productList form table th[scope="row"],
    #productList form table td.material-price,
    #productList form table td.local-merchant-saving {
      background: #f2f2f2; }
    #productList form table tr.material th, #productList form table tr.material td {
      border-bottom: 1px solid #fff !important;
      white-space: nowrap; }
    #productList form table tr.material td:first-of-type {
      padding-left: 0; }
    #productList form table .filter-col {
      padding-left: 0;
      padding-right: 0; }
      #productList form table .filter-col .input-group {
        margin-bottom: 5px; }
        #productList form table .filter-col .input-group .form-control {
          border-right: none; }
          #productList form table .filter-col .input-group .form-control::placeholder {
            color: #ccc; }
      #productList form table .filter-col .input-group-append .input-group-text {
        background: none;
        border-left: none;
        color: #ccc; }
    #productList form table td.local-merchant-saving {
      font-weight: bold; }
    #productList form table .merchant-image {
      max-height: 50px; }

#pagination {
  padding-left: 7%;
  padding-right: 7%; }

.fa-arrow-right {
  margin-left: 5px; }

.fa-arrow-left {
  margin-right: 5px; }

#pageSelectContainer {
  padding-top: 10px;
  padding-bottom: 10px; }
  #pageSelectContainer select {
    border-radius: .25rem;
    border: 1px solid #ced4da; }

#updatedContainer {
  margin-top: 20px; }
  #updatedContainer p {
    font-size: 0.9rem;
    color: #ccc; }

#totals {
  position: fixed;
  bottom: 0;
  width: 100%;
  background: #fff;
  box-shadow: 0px -5px 5px 0px rgba(0, 0, 0, 0.2);
  display: none; }
  #totals table {
    margin-bottom: 0; }
    #totals table td {
      padding-left: 0;
      padding-right: 0; }
      #totals table td.local-merchant-total {
        font-weight: bold; }
    #totals table tr:first-of-type td, #totals table tr:first-of-type th {
      padding-bottom: 0; }
    #totals table tr:nth-of-type(2) td {
      padding-top: 0; }
  #totals a {
    color: #aaa;
    text-decoration: underline;
    font-size: .9rem; }
  #totals .btn-primary {
    color: #fff;
    font-size: 0.6rem;
    background: #2a2a65 !important;
    border-radius: 3px;
    padding: 3px 6px; }
  #totals #showSelected {
    color: #2a2a65; }

/* Checkboxes */
input[type='checkbox'].icon-checkbox {
  display: none; }

input[type='checkbox'].icon-checkbox + label .checked {
  display: none; }

input[type='checkbox']:checked.icon-checkbox {
  display: none; }

input[type='checkbox']:checked.icon-checkbox + label .checked {
  display: inline; }

input[type=checkbox] + label, label.checkbox {
  display: inline-block;
  vertical-align: top;
  height: 25px;
  width: 25px;
  border-radius: 5px;
  border: 1px solid #ddd;
  text-align: center;
  line-height: 23px;
  cursor: pointer;
  margin: 0; }

.form-check {
  padding: 0; }

.btn {
  border-radius: 100px;
  border: none !important; }

.btn-primary,
.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background-color: #2a2a65;
  color: #f4b40e;
  border: none !important; }

.btn-secondary,
.btn-secondary:hover,
.btn-secondary:active,
.btn-secondary:focus {
  background-color: #f4b40e;
  color: #2a2a65;
  font-size: 0.8rem;
  border: none !important;
  padding: 6px 20px 7px; }

.btn-light {
  color: #ccc; }

span.btn,
span.btn:hover,
span.btn:active,
span.btn:focus {
  cursor: default !important;
  background: none !important;
  border: none !important; }

header.container img {
  margin: 50px 0; }

section#main {
  padding-top: 102px; }

section.row {
  margin: 140px 0; }

section.row:first-of-type {
  margin-top: 0; }

@media screen and (max-width: 420px) {
  table thead tr th:nth-last-of-type(2) {
    font-size: 0.6rem; }
  #productList form table .merchant-image {
    max-height: 40px; } }

@media screen and (max-width: 991px) {
  #totals .container,
  .materials-table {
    padding-left: 0;
    padding-right: 0; }
  .table th {
    padding: 0; }
  .table td {
    padding: 15px 3px; }
  .hidden-mobile {
    display: none; } }

@media screen and (min-width: 992px) {
  .hidden-desktop {
    display: none; } }

.mobile-material-row {
  width: auto; }

.mobile-material-row .form-check {
  text-align: left; }

.mobile-material-row .form-check label {
  margin-right: 15px !important;
  margin-left: 15px !important; }

.material-mobile label i {
  display: none; }

.material-mobile label.checked i {
  display: inline; }

.desktop-sidebar {
  text-align: left; }

.desktop-sidebar:last-child {
  text-align: right; }

.mobile-sidebar img {
  max-width: 100%; }

@media screen and (max-width: 991px) {
  .desktop-sidebar {
    display: none; } }

@media screen and (min-width: 992px) {
  .mobile-sidebar {
    display: none; } }

#errorMessage {
  display: none; }
  #errorMessage p {
    margin-bottom: 0; }

#enquire p,
#enquire .form-group label {
  color: #2a2a65; }

#enquire .btn-primary {
  padding: 8px 18px; }
  #enquire .btn-primary .fa-arrow-right {
    margin-left: 10px; }

#enquire .form-check {
  margin-bottom: 50px; }

.check-icon {
  position: relative;
  display: inline-block;
  vertical-align: top;
  text-align: center;
  line-height: 23px;
  margin: 0 0 -4px; }
  .check-icon, .check-icon:before, .check-icon:after {
    height: 25px;
    width: 25px;
    border-radius: 5px;
    border: 1px solid #ddd;
    background: #fff; }
  .check-icon:before, .check-icon:after {
    position: absolute; }
  .check-icon:before {
    content: '';
    top: -4px;
    left: -4px;
    z-index: -1; }
  .check-icon:after {
    content: '';
    top: -7px;
    left: -7px;
    z-index: -2; }

#successMessage {
  display: none; }
  #successMessage h2 {
    margin: 0.5rem 0 1rem; }

#copy {
  font-size: .7rem; }
  #copy p {
    color: #ccc; }
  #copy a {
    color: #ccc;
    text-decoration: underline; }

#loading {
  display: none;
  text-align: center; }
  #loading h2 {
    margin-bottom: 0; }
  #loading .lds-ellipsis {
    display: inline-block;
    position: relative;
    width: 64px;
    height: 64px; }
  #loading .lds-ellipsis div {
    position: absolute;
    top: 27px;
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: #2a2a65;
    animation-timing-function: cubic-bezier(0, 1, 1, 0); }
  #loading .lds-ellipsis div:nth-child(1) {
    left: 6px;
    animation: lds-ellipsis1 0.6s infinite; }
  #loading .lds-ellipsis div:nth-child(2) {
    left: 6px;
    animation: lds-ellipsis2 0.6s infinite; }
  #loading .lds-ellipsis div:nth-child(3) {
    left: 26px;
    animation: lds-ellipsis2 0.6s infinite; }
  #loading .lds-ellipsis div:nth-child(4) {
    left: 45px;
    animation: lds-ellipsis3 0.6s infinite; }

@keyframes lds-ellipsis1 {
  0% {
    transform: scale(0); }
  100% {
    transform: scale(1); } }

@keyframes lds-ellipsis3 {
  0% {
    transform: scale(1); }
  100% {
    transform: scale(0); } }

@keyframes lds-ellipsis2 {
  0% {
    transform: translate(0, 0); }
  100% {
    transform: translate(19px, 0); } }
