h1 { margin-bottom: 1.5rem; }
h1>small { display: block; font-size: 70%; }
h1 .sub { display: block; font-size: 1.5rem; }
h3 { margin-top: 1rem; }
h3.popover-header { margin-top: 0; }

.header-logo { width: 100%; max-width: 400px; border: 0; }

.home-page-cards .card-header {
  position: relative;
}
.home-page-cards .card-title {
  background-color: rgba(255, 255, 255, 0.8);
  position: absolute;
  bottom: -1px;
}

.highlight1, .highlight2, .highlight3 {
  font-weight: bold;
  padding: 0.2rem;
  margin: -0.2rem;
}
.highlight1 {
  background-color: #fff3cd;
  color: #554d03;
}
.highlight2 {
  background-color: #cff4fc;
  color: #055160;
}
.highlight3 {
  background-color: #d1e7dd;
  color: #0f5132;
}

.formsub { max-width: 28rem; }

OL.help0 {
  list-style-type: upper-roman;
  font-size: 1.25rem;
}
OL.help1 {
  list-style-type: upper-alpha;
  font-size: 1rem;
}
OL.help2 {
  list-style-type: decimal;
}
OL.help3 {
  list-style-type: lower-alpha;
}

.popover-flush {
  margin: -1rem;
}
.popover-scroll {
  max-height: 80vh;
  overflow-y: auto;
}

.sticky-top.lower-z {
  z-index: 920 !important;
}

.w-5  { width:  5% !important; }
.w-10 { width: 10% !important; }
.w-15 { width: 15% !important; }
.w-20 { width: 20% !important; }
.w-30 { width: 30% !important; }
.w-35 { width: 35% !important; }
.w-40 { width: 40% !important; }
.w-45 { width: 45% !important; }
.w-55 { width: 55% !important; }
.w-60 { width: 60% !important; }
.w-65 { width: 65% !important; }
.w-70 { width: 70% !important; }
.w-80 { width: 80% !important; }
.w-85 { width: 85% !important; }
.w-90 { width: 90% !important; }
.w-95 { width: 95% !important; }

.mw-1e { min-width: 1em; }
.mw-2e { min-width: 2em; }
.mw-3e { min-width: 3em; }
.mw-4e { min-width: 4em; }
.mw-5e { min-width: 5em; }
.mw-6e { min-width: 6em; }
.mw-7e { min-width: 7em; }
.mw-8e { min-width: 8em; }
.mw-9e { min-width: 9em; }
.mw-10e { min-width: 10em; }
.mw-11e { min-width: 11em; }
.mw-12e { min-width: 12em; }
.mw-13e { min-width: 13em; }
.mw-14e { min-width: 14em; }
.mw-15e { min-width: 15em; }

.ps-moreicon {
  padding-left: 2.25em !important;
}

@media screen and (min-width: 576px) {
  .ps-sm-moreicon {
    padding-left: 2.25em !important;
  }
}

/* Adapted from https://bootsnipp.com/snippets/featured/no-more-tables-respsonsive-table */
@media screen and (max-width: 575.98px) {
  .table-fluid thead,
  .table-fluid tbody,
  .table-fluid th,
  .table-fluid td,
  .table-fluid tr {
    display: block;
  }
  .table-fluid thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px;
  }
  .table-fluid tr:nth-child(odd) {
    background-color: rgba(0, 0, 0, 0.05);
  }
  .table-fluid tr {
    border-top: 1px solid #dee2e6;
  }
  .table-fluid td {
    border: none;
    width: 100% !important;
    padding-left: 35%;
    padding-bottom: 0;
    white-space: normal;
    text-align: left !important;
    position: relative;
  }
  .table-fluid td:last-child {
    padding-bottom: .75rem;
  }
  
  .table-fluid td:before {
    position: absolute;
    top: 0.75rem;
    left: .75rem;
    right: 65%;
    padding-right: .5rem;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    text-align: right;
    font-weight: bold;
    font-size: .8em;
  }
  .table-fluid td:before {
    content: attr(data-title);
  }
}
