.bg-public {
  background-image: url('../img/trike-background.jpg');
  background-repeat: no-repeat;
  background-position: center;
  background-attachment: fixed;
  background-size: cover;
  background-color: rgba(0, 0, 32, 0.8);
}

.bg-junior {
  --bg-junior-img: url('../img/children-silhouette.svg');
  --bg-junior-img-opacity: 0.3;
  position: relative;
  isolation: isolate;
}

.bg-junior::after {
  content: '';
  position: absolute;
  z-index: -1;
  inset: 0;
  opacity: var(--bg-junior-img-opacity);

  background-image: var(--bg-junior-img);
  background-repeat: no-repeat;
  background-position: center;
  background-attachment: scroll;
  background-color: #f5f5f5;
}

.bd-placeholder-img {
  font-size: 1.125rem;
  text-anchor: middle;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}

@media (min-width: 768px) {
  .bd-placeholder-img-lg {
    font-size: 3.5rem;
  }
}

@font-face {
  font-family: "OpenSans-ExtraBoldItalic";
  src: url("../webfonts/OpenSans-ExtraBoldItalic.woff") format("woff"),
    url("../webfonts/OpenSans-ExtraBoldItalic.ttf") format("truetype"),
    url("../webfonts/OpenSans-ExtraBoldItalic.svg") format("svg");
}

.logo-font {
  font-family: "OpenSans-ExtraBoldItalic";
}

a {
  text-decoration: none;
}

/* begin LS-BAT specific */
.text-ls-bat {
  color: #4d82d6;
}

.bg-ls-bat {
  background-color: #4d82d6;
}

.btn-ls-bat,
.btn-ls-bat:hover {
  background-color: #4d82d6;
  color: #ffffff;
}

/* end LS-BAT specific */

/* noti(e)fication z-index (2) needs to be > fixed-top navbar (1030) */
.notie-container {
  z-index: 2000;
}

/* === begin notie background colours === */

.notie-background-success {
  background-color: #198754;
  /* #57bf57 */
}

.notie-background-warning {
  background-color: #ff8c00;
  /* #d6a14d */
}

.notie-background-error {
  background-color: #dc3545;
  /* #e1715b */
}

.notie-background-info {
  background-color: #4d82d6;
  /* #4d82d6 */
}

.notie-background-neutral {
  background-color: #a0a0a0;
  /* #a0a0a0 */
}

/* ==== end notie background colours ==== */

/* set timerProgressBar colour e.g. toast notifications */
.swal-timer-progress-bar {
  background-color: #dc143c;
}

.cycle-image {
  max-width: 50%;
}

.datepicker {
  z-index: 10000;
}

/* virtual terminal payment receipt table */
#receipt-table tr td:nth-child(1) {
  width: 25%;
  text-align: end;
}

/* donors credit displayed text */
.donors-credit {
  width: 20rem;
  font-size: 0.875rem;
  font-weight: bold;
  color: #f5f5f5;
  text-align: left;
  margin: 0.75rem 0;
}

.donors-background {
  background: rgba(0, 0, 32, 0.65);
  border-radius: 22px;
}

.reservation-info ul {
  color: #11cdef;
  font-size: 1.25rem;
  font-weight: 600;
}

/* administration crew, cycles, reservations & subsidiary dates data table header <tags> */
#crew-table thead tr th,
#cycles-inventory thead tr th,
#new-reservations thead tr th,
#approved-reservations thead tr th,
#subsidiary-dates thead tr th,
#gallery-items thead tr th {
  font-size: 0.875rem;
  font-weight: bolder;
  color: #000;
}

/* ============================================ */

/* improve top navigation bar readability */
#top-navigation ul li>a {
  font-weight: bold;
}

/* override visited, hover & active text colour (all same) for top-navigation, subdomain navbar link */
.subdomain-link,
.subdomain-link:visited,
.subdomain-link:hover,
.subdomain-link:active {
  color: #ffffff;
}

.input-background {
  background: rgba(0, 0, 32, 0.5);
  border-radius: 16px;
}

/* disable pointer events within templates, for appropriate access levels */
.disable-events {
  pointer-events: none;
}

/* class used within <p> tags for bike descriptions stored in database */
.bike-description {
  color: #87cefa;
  font-weight: bold;
  text-indent: 1.25rem;
}