:root {
  --sm-blue: #284181;
  --sm-gold: #ffcc40;
  --sm-border-white: rgba(255, 255, 255, .75);
  --sm-accent-1: #c69930;
  --sm-accent-5: #9fc9ec;
}

body {
  --bs-body-font-family: "Poppins", sans-serif;
}

h1, h2, h3, h4, h5 {
  font-family: "Lora", serif;
}

h1, h2, h3 {
  color: var(--sm-blue);
}

#logo {
  max-width: 120px;
}

.navbar {
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 0.75%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.navbar-toggler {
  border: var(--bs-border-width) solid var(--sm-border-white);
}

.navbar-toggler:focus {
  box-shadow: 0 0 0 var(--bs-navbar-toggler-focus-width) var(--sm-border-white);
}

main header nav.bg-dark {
  background-color: var(--sm-blue) !important;
}

header .navbar-collapse {
  flex-grow: unset;
}

.navbar-brand {
  color: var(--bs-white) !important;
  font-family: "Lora", serif;
  font-weight: 700;
}

.navbar-brand:hover {
  color: var(--sm-accent-5) !important;
}

header a.nav-link {
  color: var(--bs-white);
  --bs-navbar-active-color: var(--sm-accent-1);
}

header a.nav-link:hover,
header a.nav-link:focus,
header a.nav-link.active:hover,
header a.nav-link.active:focus {
  color: var(--sm-accent-5);
}

main header nav {
  border-width: 1rem 0;
  border-style: var(--bs-border-style) !important;
  border-color: var(--sm-gold) !important;
}

main section {
  margin-top: 13rem;
}

.list-group {
  list-style: disc !important;
  margin-left: 1em !important;
}

.list-group .list-group-item {
  display: revert;
}

.list-group-flush > .list-group-item {
  border: none;
}

.alert .list-group {
  list-style: none !important;
}

.alert .list-group-item {
  background-color: transparent;
}

/* forms */

div.form-group.required .col-form-label::after,
div.form-group.required .control-label::after {
  color: var(--bs-red);
  margin: -4px 0 0 8px;
  font-family: "Font Awesome 6 Pro";
  font-weight: 900;
  content: "\2a";
}

input.nospinner::--webkit-outer-spin-button,
input.nospinner::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input.nospinner {
  -moz-appearance: textfield;
}

.btn i.fa-regular {
  margin-left: .3rem;
}

.about-heading {
  border-top: 1px solid #002b5b;
  font-weight: 700;
  margin-bottom: .5rem !important;
}
