:root {
  --primary-color: #358ca7;
  --secondary-color: #ff9e3e;
  --fg-color: #6a6a6a;
  --bg-color: #ffffff;
  --border-color: #d3d3d3;
  --primary-color-rgba-50: rgba(53, 140, 167, 0.5);
  --secondary-color-rgba-50: rgba(255, 158, 62, 0.5);
}

body {
  font-family: "Red Hat Display", sans-serif;
  background-color: var(--bg-color);
  color: var(--fg-color);
  font-size: 14px;
  line-height: 18px;
  font-weight: 500;
}

header {
  background: #ffffff;
}

a,
a:hover {
  color: var(--primary-color);
}

.navbar-light .navbar-nav .nav-link {
  color: var(--primary-color);
}

h1,
h2,
.h2,
.h1 {
  font-weight: 600;
  color: var(--primary-color);
}

h1,
.h1 {
  font-size: 35px;
  line-height: 47px;
}

h2,
.h2 {
  font-size: 20px;
  line-height: 26px;
}

.inverted-color,
.inverted-color h1,
.inverted-color h2,
.inverted-color h3,
.inverted-color p {
  color: var(--bg-color);
}

::selection {
  background-color: var(--primary-color);
  color: var(--bg-color);
}

.inverted-color ::selection {
  background-color: var(--bg-color);
  color: var(--primary-color);
}

.btn {
  font-size: 14px;
  line-height: 18px;
  font-weight: 500;
  color: var(--primary-color);
  padding: 9px 12px;
  border-radius: 0px;
  border: 1px var(--primary-color) solid;
}

.btn:hover,
.btn:active,
.btn:focus {
  color: var(--primary-color);
  box-shadow: 0 0 0 0.125rem var(--primary-color-rgba-50);
}

.btn-primary {
  color: var(--secondary-color);
  border: 1px var(--secondary-color) solid;
  background-color: inherit;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus,
.btn-primary:active:focus {
  background-color: inherit;
  color: var(--secondary-color);
  border: 1px var(--secondary-color) solid;
  box-shadow: 0 0 0 0.125rem var(--secondary-color-rgba-50);
}

.btn-primary:disabled {
  color: var(--fg-color);
  border: 1px var(--fg-color) solid;
  background-color: inherit;
}

.form-control {
  border-radius: 0px;
  border: 1px var(--border-color) solid;
}

.form-control-lg {
  min-height: inherit;
  font-size: inherit;
  padding: 20px;
}

.form-control:hover,
.form-control:active,
.form-control:focus,
.form-control:active:focus {
  border: 1px var(--border-color) solid;
  box-shadow: 0 0 0 0.125rem var(--primary-color-rgba-50);
}

.form-control::placeholder {
  color: #000000;
}

.inverted-color .btn {
  color: var(--bg-color);
  border: 1px var(--bg-color) solid;
}

nav a {
  text-decoration: none;
}

nav a:hover {
  text-decoration: underline;
}

nav a.btn {
  text-decoration: none;
}

.divider {
  border-top: 1px var(--border-color) solid;
}

.grecaptcha-badge {
  visibility: hidden;
}

#logo {
  height: 70px;
}

#dialog-logo {
  height: 40px;
}

.sticky {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 1000;
}

li {
  font-size: 11pt;
  color: white;
  text-decoration: none;
}

li a {
  color: white !important;
  text-decoration: none;
}

.org-logo {
  height: 64px;
}

.rm-underline {
  text-decoration: none;
}

.col-container {
  display: table; /* Make the container element behave like a table */
  width: 100%; /* Set full-width to expand the whole page */
}

.col {
  display: table-cell; /* Make elements inside the container behave like table cells */
}

.card-footer {
  background-color: white;
}

.org-list .card-group {
  margin-bottom: 10px !important;
}
.org-list .card-group > .card {
  border-left: 1px solid rgba(0, 0, 0, 0.125) !important;
  height: 200px;
}
.org-list .card-group > .card.border-0 {
  border-left: none !important;
}
.org-list .card-group > .card img {
  max-height: 120px;
}

.responsive-iframe-2x1 {
  position: relative;
  width: 100%;
  height: 0px;
  padding-top: 50%;
}
.responsive-iframe-2x1 iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.map-overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 1;

  background-color: rgba(0, 0, 0, 0);
  transition: background-color 0.25s;

  text-align: center;
  font-size: 200%;
  text-shadow: black 0px 0px 5px;
}
.responsive-iframe-2x1 .map-overlay {
  padding-top: 25%;
}
.map-overlay:hover {
  background-color: rgba(0, 0, 0, 0.25);
}

.map-overlay * {
  opacity: 0;
  transition: opacity 0.25s;
  cursor: default;
  user-select: none;
}
.map-overlay:hover * {
  opacity: 1;
}
