:root,
[data-bs-theme="light"] {
  --my-navbar-rgb: 107 62 0;

  --my-header-color: #292621;
  --my-header-bg: #d5ab70;
  --my-header-border: #d5ab70;

  --my-footer-bg: #d5ab70;
  --my-footer-border: #d5ab70;

  --bs-link-color: #0d6dfd;
  --bs-link-hover-color: #0250c5;
  --bs-link-color-rgb: 13, 109, 253;
  --bs-link-hover-color-rgb: 2, 80, 197;
  --bs-border-color: #8894a5;
}
[data-bs-theme="dark"] {
  --my-header-color: #fa9200;
  --my-header-bg: #5c3600;
  --my-header-border: #5c3600;

  --my-footer-bg: #5c3600;
  --my-footer-border: #5c3600;

  --bs-link-color: #3e8bfe;
  --bs-link-hover-color: #81b3fe;
  --bs-link-color-rgb: 62, 139, 254;
  --bs-link-hover-color-rgb: 129, 179, 254;
  --bs-border-color: #646f78;
}
#header,
#footer,
[data-bs-theme="light"] #header,
[data-bs-theme="light"] #footer {
  --bs-link-color: #003ba8;
  --bs-link-hover-color: #002261;
  --bs-link-color-rgb: 0, 59, 168;
  --bs-link-hover-color-rgb: 0, 34, 97;
}
[data-bs-theme="dark"] #header,
[data-bs-theme="dark"] #footer {
  --bs-link-color: #7babfe;
  --bs-link-hover-color: #bed5fe;
  --bs-link-color-rgb: 123, 171, 254;
  --bs-link-hover-color-rgb: 190, 213, 254;
}

#header {
  color: var(--my-header-color);
  background-color: var(--my-header-bg);
  border: var(--bs-border-width) solid var(--my-header-border);
}
#footer {
  background-color: var(--my-footer-bg);
  border: var(--bs-border-width) solid var(--my-footer-border);
}
svg #logo {
   fill: #2d942b;
}
[data-bs-theme="dark"] img.logo,
[data-bs-theme="dark"] img.map {
  filter: brightness(75%);
}
textarea#message {
  height: 12rem;
}
.sectionBlue {
  background-color: #b3b3ff;
  color: #212529;
}
.sectionBrown {
  background-color: #d9ad82;
  color: #212529;
}
.sectionGreen {
  background-color: #b3ffb3;
  color: #212529;
}
.sectionOrange {
  background-color: #ff9900;
  color: #212529;
}
.sectionPink {
  background-color: #ffb3b3;
  color: #212529;
}
.sectionPurple {
  background-color: #d9b3ff;
  color: #212529;
}
.sectionYellow {
  background-color: #ffff80;
  color: #212529;
}
textarea#description {
  height: 7rem;
}
/* The following CSS is necessary to avoid a PageSpeed warning: "Image elements do not have explicit width and height" */
.map {
  width: 91%;
  aspect-ratio: 900 / 583;
}
@media (min-width: 992px) {
  .map {
    width: 900px;
  }
}

a,
button {
  min-width: 44px !important;
  min-height: 44px !important;
}
#header a,
#page a,
#footer a {
  display: inline-block !important;
}
html {
  scroll-padding-top: 4rem;
}
.fa,
.bi {
  display: inline-block;
  width: 1em;
  height: 1em;
  vertical-align: -.125em;
  fill: currentcolor
}
#theme-dropdown {
  --bs-dropdown-min-width: 8rem;
}
textarea#description {
  height: 7rem;
}
.eye-icon {
  cursor: pointer;
}
input:required+label::after,
select:required+label::after,
textarea:required+label::after {
  content: " *";
  color: var(--bs-danger-text-emphasis);
}

.navbar {
  background-color: rgb(var(--my-navbar-rgb));
  box-shadow: 0 .5rem 1rem rgb(0 0 0 / .15), inset 0 -1px 0 rgb(255 255 255 / .15);
}
.navbar .navbar-brand {
  color: #fff;
}
.navbar .nav-link {
  color: rgb(255 255 255 / .85);
}
.navbar .nav-item .vr,
.navbar .nav-item hr,
.navbar .nav-link:hover,
.navbar .nav-link:focus,
.navbar .nav-link.active,
.navbar .nav-link.show {
  color: #fff;
}
.navbar button.nav-link {
  width: 100%;
  text-align: left;
}
.navbar .dropdown-menu {
  --bs-dropdown-link-hover-bg: rgb(var(--my-navbar-rgb) / .1);
  --bs-dropdown-link-active-bg: rgb(var(--my-navbar-rgb));
  --bs-dropdown-padding-x: .25rem;
  --bs-dropdown-padding-y: .25rem;
  border-radius: .5rem;
  box-shadow: 0 .5rem 1rem rgb(var(--bs-body-color-rgb), .15);
}
.navbar .dropdown-menu .dropdown-item {
  border-radius: .25rem
}
.navbar .nav-link.active,
.navbar .dropdown-menu .active {
  font-weight: 600;
}
.navbar .navbar-toggler .bi {
    width: 1.5rem;
    height: 1.5rem
}
.navbar .dropdown-menu .dropdown-item:active .bi {
  color: inherit !important
}
.navbar .dropdown-menu .active .bi {
  display: block !important
}

/* hamburger button colors */
.navbar-toggler {
  color: rgb(255 255 255 / .85);
  border-color: rgb(255 255 255 / .85);
}
.navbar-toggler:hover {
  color: #fff;
  border-color: #fff;
}
.navbar-toggler span.icon-bar {
  background-color: rgb(255 255 255 / .85);
}
.navbar-toggler:hover span.icon-bar {
  background-color: #fff;
}

/* animate hamburger menu button */
.navbar-toggler span {
  -webkit-transition: all .3s ease-out;
  -moz-transition: all .3s ease-out;
  -ms-transition: all .3s ease-out;
  -o-transition: all .3s ease-out;
  transition: all .3s ease-out;
}
.navbar-toggler span.icon-bar {
  position: relative;
  left: 0;
  display: block;
  width: 19px;
  height: 2px;
  margin-top: 4px;
  margin-bottom: 4px;
  opacity: 1;
  transform-origin: center left;
}
.navbar-toggler span.icon-bar.top-bar {
  transform: translate(15%, -33%) rotate(45deg);
}
.navbar-toggler span.icon-bar.middle-bar {
  opacity: 0;
}
.navbar-toggler span.icon-bar.bottom-bar {
  transform: translate(15%, 33%) rotate(-45deg);
}
.navbar-toggler.collapsed span.icon-bar.top-bar {
  transform: translate(0%, 0%) rotate(0deg);
}
.navbar-toggler.collapsed span.icon-bar.middle-bar {
  opacity: 1;
}
.navbar-toggler.collapsed span.icon-bar.bottom-bar {
  transform: translate(0%, 0%) rotate(0deg);
}
