/* 30% linen composited */
/* 30% linnen composited and brightened to 98% L */
/* calculated widths at different sizes */
@media (min-width: 768px) {
  .vh-md-100 {
    height: 100vh !important;
  }
  .w-md-75 {
    width: 75% !important;
  }
  .w-md-50 {
    width: 50% !important;
  }
}
@media (min-width: 992px) {
  .w-lg-75 {
    width: 75% !important;
  }
  .w-lg-50 {
    width: 50% !important;
  }
  .w-lg-85 {
    width: 85% !important;
  }
  .w-lg-100 {
    width: 100% !important;
  }
}
@media (min-width: 1200px) {
  .w-xl-50 {
    width: 50% !important;
  }
}
/* object fit utility */
.object-fit-cover {
  object-fit: cover;
}

.object-fit-contain {
  object-fit: contain;
}

.object-position-top {
  object-position: top;
}

.top-25 {
  top: 25% !important;
}

.start-75 {
  left: 75% !important;
}

@media (min-width: 576px) {
  .mb-sm-n3 {
    margin-bottom: -1rem !important;
  }
}
@media (min-width: 1441px) { /* tweak from bs breakpoints */
  .fixed-bottom-xl {
    position: fixed;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1030;
  }
}
/* override */
.rounded-start-1 {
  border-bottom-left-radius: var(--bs-border-radius-sm) !important;
  border-top-left-radius: var(--bs-border-radius-sm) !important;
}

.rounded-end-1 {
  border-bottom-right-radius: var(--bs-border-radius-sm) !important;
  border-top-right-radius: var(--bs-border-radius-sm) !important;
}

.border-2 {
  border-width: 2px !important;
}

.border-dashed {
  border-style: dashed;
}

.shadow-sm {
  box-shadow: 0 0.125rem 0.25rem rgba(0, 0, 0, 0.075) !important; /* how it started */
  box-shadow: 0 0.125rem 0.1875rem rgba(36, 30, 15, 0.35) !important; /* how its going */
}

.toast {
  --bs-toast-font-size: 1rem;
}

.btn:not(.btn-sm) {
  padding: 0.4375rem 1.5rem 0.3125rem;
  /* bottom padding less because font is not centered */
  font-family: "Freight Sans Compressed Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1rem;
  text-transform: uppercase;
  border-radius: 0.125rem;
}

.btn.btn-link {
  padding: 0.75rem 0.375rem;
  font-family: "Freight Sans Pro Book", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: none;
  border-radius: 0;
}

.btn-alt {
  white-space: nowrap;
  padding: 0.375rem 1.5rem;
  font-family: "Freight Sans Pro Book", "Helvetica Neue", Helvetica, Arial, sans-serif;
  text-transform: none;
}

.btn-outline-secondary.btn-sm {
  font-family: "Freight Sans Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.btn-linkedin {
  font-weight: 800;
}

.btn-linkedin i {
  opacity: 0.75;
}

.btn {
  --bs-btn-color: #333333;
  --bs-btn-bg: #cccccc;
  --bs-btn-hover-color: #333333;
  --bs-btn-hover-bg: #b8b8b8;
  --bs-btn-active-color: #333333;
  --bs-btn-active-bg: #b3b3b3;
  --bs-btn-active-border-color: #b3b3b3;
}

.btn.btn-lg {
  padding: 0.55rem 1.5rem 0.4rem;
  font-family: "Freight Sans Compressed Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 1.55rem;
}

.btn-primary {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #00457d;
  --bs-btn-border-color: #00457d;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #0070b9;
  --bs-btn-hover-border-color: #0070b9;
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #004175;
  --bs-btn-active-border-color: #004175;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: #cccccc;
  --bs-btn-disabled-border-color: #cccccc;
}

.btn-secondary {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #212529;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #424649;
  --bs-btn-hover-border-color: #424649;
  --bs-btn-focus-shadow-rgb: 66, 70, 73;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #4d5154;
  --bs-btn-active-border-color: #4d5154;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: #cccccc;
  --bs-btn-disabled-border-color: #cccccc;
}

.btn-tertiary {
  --bs-btn-color: #00000090;
  --bs-btn-bg: #e8e3d2;
  --bs-btn-border-color: #e8e3d2;
  --bs-btn-hover-color: #000000;
  --bs-btn-hover-bg: #d7c59c;
  --bs-btn-hover-border-color: #d7c59c;
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #d4c196;
  --bs-btn-active-border-color: #d4c196;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: #cccccc;
  --bs-btn-disabled-border-color: #cccccc;
}

.btn-link {
  --bs-btn-color: #0070b9;
  --bs-btn-bg: transparent;
  --bs-btn-hover-color: #00457d;
  --bs-btn-hover-bg: transparent;
  --bs-btn-active-bg: transparent;
}

.btn-primary.btn-alt {
  --bs-btn-color: #d7c59c;
  --bs-btn-bg: #002855;
  --bs-btn-border-color: #002855;
  --bs-btn-hover-color: #d7c59c;
  --bs-btn-hover-bg: #00457d;
  --bs-btn-hover-border-color: #00457d;
  --bs-btn-active-color: #d7c59c;
  --bs-btn-active-bg: #00244d;
  --bs-btn-active-border-color: #00244d;
}

.btn-tertiary.btn-alt {
  --bs-btn-color: #00457d;
  --bs-btn-hover-color: #002855;
  --bs-btn-active-color: #00244d;
}

/* LinkedIn branding, not using variables */
.btn-linkedin.btn-alt {
  --bs-btn-color: #fff;
  --bs-btn-bg: #0077b5;
  --bs-btn-border-color: #0077b5;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #00457d;
  --bs-btn-hover-border-color: #00457d;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #00244d;
  --bs-btn-active-border-color: #00244d;
}

/* outlines */
.btn-outline-primary {
  border-width: 2px;
  --bs-btn-color: #0070b9;
  --bs-btn-bg: transparent;
  --bs-btn-border-color: #0070b9;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #0070b9;
  --bs-btn-hover-border-color: #0070b9;
  --bs-btn-focus-shadow-rgb: 13, 110, 253;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #0070b9;
  --bs-btn-active-border-color: #0070b9;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #999999;
  --bs-gradient: none;
}

.btn-outline-secondary {
  border-width: 2px;
  --bs-btn-color: #212529;
  --bs-btn-bg: transparent;
  --bs-btn-border-color: #212529;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #212529;
  --bs-btn-hover-border-color: #212529;
  --bs-btn-focus-shadow-rgb: 33, 37, 41;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #212529;
  --bs-btn-active-border-color: #212529;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #999999;
  --bs-gradient: none;
}

.btn-outline-tertiary {
  border-width: 2px;
  --bs-btn-color: #00000090; /* shifted darker for WCAG */
  --bs-btn-bg: transparent;
  --bs-btn-hover-color: #00000090;
  --bs-btn-border-color: #d7c59c;
  --bs-btn-hover-bg: #d7c59c;
  --bs-btn-hover-border-color: #d7c59c;
  --bs-btn-focus-shadow-rgb: 211, 212, 213;
  --bs-btn-active-color: #000000;
  --bs-btn-active-bg: #d4c196;
  --bs-btn-active-border-color: #d4c196;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #000000;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #999999;
}

.btn-outline-danger {
  --bs-btn-color: #dc3545;
  --bs-btn-bg: transparent;
  --bs-btn-border-color: #dc3545;
  --bs-btn-hover-color: #ffffff;
  --bs-btn-hover-bg: #dc3545;
  --bs-btn-hover-border-color: #dc3545;
  --bs-btn-focus-shadow-rgb: 220, 53, 69;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #dc3545;
  --bs-btn-active-border-color: #dc3545;
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0,0,0, 0.125);
  --bs-btn-disabled-color: #dc3545;
  --bs-btn-disabled-bg: transparent;
  --bs-btn-disabled-border-color: #dc3545;
  --bs-gradient: none;
}

.text-collapse-link a[aria-expanded=true] {
  display: none;
}

/* cards */
.card {
  --bs-card-border-radius: .25rem;
  --bs-card-inner-border-radius: calc(.25rem - 1px);
}

.card.border-0 {
  --bs-card-inner-border-radius: .25rem;
}

.card .list-group-flush li:hover,
.dropdown-menu-alerts .list-group-flush li:hover {
  background-color: rgba(232, 227, 210, 0.4); /* 60 hex linen is like .38 opacity */
}

/* dashboard */
.bg-online-courses {
  background-size: cover;
  background-position: bottom center;
}

.bg-online-courses .card-header {
  background: linear-gradient(180deg, rgba(26, 26, 26, 0.75) 30%, rgba(26, 26, 26, 0.4) 55%, rgba(26, 26, 26, 0));
}

.bg-online-courses .card-body {
  font-size: 1.125rem;
  line-height: 125%;
  background: linear-gradient(1turn, #1a1a1a 0.1%, rgba(26, 26, 26, 0.8) 25%, rgba(26, 26, 26, 0.7) 45%, rgba(26, 26, 26, 0.4) 65%, rgba(26, 26, 26, 0) 80%);
}

@media (max-width: 767px) {
  .bg-online-courses {
    min-height: 400px;
  }
}
/* list groups */
.list-group {
  --bs-list-group-action-hover-bg: #e8e3d260;
  --bs-list-group-border-radius: 0.25rem;
  --bs-list-group-active-color: #000000;
  --bs-list-group-active-bg: #e8e3d260;
  --bs-list-group-active-border-color: #e8e3d2;
  /* match accordion defaults */
  --bs-list-group-item-padding-x: 1.25rem;
  --bs-list-group-item-padding-y: .875rem;
}

.list-group-item {
  border-top: 0;
  border-right: 0;
  border-left: 0;
}
.list-group-item:last-child {
  border-bottom: 0;
}

.card .list-group-flush .list-group-heading:hover {
  background: transparent;
}

/* accordions */
.accordion {
  --bs-accordion-border-width: 0;
  --bs-accordion-btn-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M233.4 406.6c12.5 12.5 32.8 12.5 45.3 0l192-192c12.5-12.5 12.5-32.8 0-45.3s-32.8-12.5-45.3 0L256 338.7 86.6 169.4c-12.5-12.5-32.8-12.5-45.3 0s-12.5 32.8 0 45.3l192 192z'/%3e%3c/svg%3e");
  --bs-accordion-btn-icon-width: 1.0625rem;
  --bs-accordion-btn-active-icon: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 512 512' fill='%23212529'%3e%3cpath fill-rule='evenodd' d='M233.4 105.4c12.5-12.5 32.8-12.5 45.3 0l192 192c12.5 12.5 12.5 32.8 0 45.3s-32.8 12.5-45.3 0L256 173.3 86.6 342.6c-12.5 12.5-32.8 12.5-45.3 0s-12.5-32.8 0-45.3l192-192z'/%3e%3c/svg%3e");
  --bs-accordion-btn-focus-border-color: #e8e3d230;
  --bs-accordion-btn-focus-box-shadow: 0 0 0 0.25rem rgba(51,51,51, 0.25);
  --bs-accordion-active-color: #000000;
  --bs-accordion-active-bg: #e8e3d260; /* linen 60, match list hover */
}

.accordion-button:not(.collapsed) {
  box-shadow: inset 0 -1px 0 var(--bs-accordion-border-color);
}

.accordion-item {
  border-bottom: 1px solid var(--bs-accordion-border-color);
}
.accordion-item:last-child {
  border-bottom: 0;
}

@media (max-width: 767px) {
  table.table-phone-stacked thead {
    display: none;
  }
  table.table-phone-stacked tbody td {
    width: 100%;
    display: block;
  }
  table.table-phone-stacked tbody td:before {
    content: attr(attr-header);
    display: block;
    font-weight: bold;
  }
}
body {
  padding-top: 146px;
  min-height: 100vh;
}

body.site-admin .header-nav {
  min-height: 89px;
  border-top: 1px solid rgba(255, 255, 255, 0.2);
}

header .header-ribbon {
  color: #ffffff;
  background-color: #002855;
}
header .img-logo {
  height: 2rem;
}
header .header-nav {
  color: #ffffff;
  background-color: #00457d;
}
header .header-nav h1 a {
  color: #ffffff;
  text-decoration: none;
  position: relative;
}
header .header-nav h1 a i {
  position: absolute;
  top: 0.25rem; /* Minion screwed this up */
  left: -1.25rem;
  color: rgba(255, 255, 255, 0);
  transition: 0.2s ease-in-out;
}
header .header-nav h1 a:hover i {
  color: rgba(255, 255, 255, 0.5);
}
header .header-nav p.h4 {
  font-size: 1.125rem;
  font-family: "Freight Sans Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.container-logo {
  max-width: 1360px;
}

/* phone tweak for header */
@media (max-width: 767px) {
  header h1 {
    font-size: 1.35rem;
    line-height: 1.5rem;
  }
  header .header-nav p.h4 {
    font-size: 1rem;
  }
}
@media (min-width: 768px) {
  header h1 {
    line-height: 2rem;
  }
}
.btn.btn-toggle {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: #0070b9;
  --bs-btn-hover-color: #0070b9;
  --bs-btn-hover-bg: #ffffff;
  --bs-btn-hover-border-color: #ffffff;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #002855;
  --bs-btn-active-border-color: #002855;
  padding: 0.3125rem;
  width: 2.625rem;
  height: 2.625rem;
  font-size: 1.5rem;
  border-radius: 2rem !important;
}
.btn.btn-toggle i {
  margin-right: 0.125rem;
}
.btn.btn-toggle i:last-child {
  margin-right: 0;
}

.btn.btn-toggle-transparent {
  --bs-btn-bg: transparent;
}

.dropdown-toggle.btn-toggle:after {
  display: none;
}

.btn-toggle + .dropdown-menu {
  --bs-dropdown-min-width: calc(100vw - 1.5rem);
  --bs-dropdown-bg: #fbfbf9;
  border: 2px solid rgba(51, 51, 51, 0.5);
  box-shadow: 0 0 0 0.25rem rgba(51, 51, 51, 0.25) !important;
}
@media (min-width: 576px) {
  .btn-toggle + .dropdown-menu {
    --bs-dropdown-min-width: 20rem;
  }
}
.btn-toggle + .dropdown-menu .col a {
  display: block;
  text-decoration: none;
  transition: 0.2s ease-in-out;
}
.btn-toggle + .dropdown-menu .col a i {
  display: block;
  line-height: 3rem;
}
.btn-toggle + .dropdown-menu .col a span {
  color: #333333;
  font-family: "Freight Sans Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
}
.btn-toggle + .dropdown-menu .col a:hover {
  background-color: rgba(232, 227, 210, 0.4);
}

/* admin */
.header-admin .btn.btn-toggle {
  --bs-btn-color: #ffffff;
  --bs-btn-bg: rgb(var(--bs-dark-rgb));
  --bs-btn-hover-color: rgb(var(--bs-dark-rgb));
  --bs-btn-hover-bg: #ffffff;
  --bs-btn-hover-border-color: #ffffff;
  --bs-btn-active-color: #ffffff;
  --bs-btn-active-bg: #000000;
  --bs-btn-active-border-color: #000000;
}

.btn-toggle + .dropdown-menu .col a {
  color: rgb(var(--bs-dark-rgb));
}
.btn-toggle + .dropdown-menu .col a:hover {
  color: #000;
}

/* alerts */
.btn-toggle-alert .badge {
  padding-top: 0;
  padding-bottom: 0;
  min-width: 1.35rem;
  min-height: 1.35rem;
  font-size: 0.75rem;
  line-height: 0.875rem;
  align-content: center;
  font-weight: normal;
}

.btn-toggle-account .img-headshot {
  width: auto;
  height: auto;
}
.btn-toggle-account .img-headshot img {
  top: -0.65625rem; /* wild */
  left: -0.375rem;
}
.btn-toggle-account .img-headshot span.rounded-circle {
  font-size: 1.3125rem;
  line-height: 1;
  color: inherit;
  background: transparent;
}

.btn-toggle-account:hover .img-headshot img,
.btn-toggle-account.show .img-headshot img {
  box-shadow: 0 0 0 0.125rem rgba(255, 255, 255, 0.2); /* glow */
}

/* user profile */
.img-headshot {
  position: relative;
  width: 5rem; /* default size - 80px */
  height: 5rem;
}
.img-headshot img {
  position: absolute;
  left: 0;
  object-fit: cover;
  object-position: center;
}
.img-headshot span.rounded-circle {
  display: block;
  font-family: "Freight Sans Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 2.5rem; /* font is 50% width */
  line-height: 5rem;
  text-align: center;
  color: #ffffff;
  background: #0070b9;
}

/* account icon in 9 dot grid */
.dropdown-menu-apps .img-headshot {
  margin: 0 auto;
  height: 3rem;
  width: 3rem;
}
.dropdown-menu-apps .img-headshot span.rounded-circle {
  width: 3rem;
  font-size: 1.5rem;
  line-height: 3rem;
  color: #ffffff !important;
}

/* big one on profile page */
.img-headshot-lg {
  width: 10rem;
  height: 10rem;
}
.img-headshot-lg span.rounded-circle {
  font-size: 5rem;
  line-height: 10rem;
}

/* editable alumni profile pic */
.img-headshot input {
  display: none;
}
.img-headshot .file-label {
  position: absolute;
  bottom: -0.25rem;
  right: -0.25rem;
  width: 2rem;
  line-height: 2rem;
  color: #0070b9;
  background: rgba(255, 255, 255, 0.9);
  z-index: 1001;
  cursor: pointer;
}
.img-headshot .img-headshot .file-label:hover {
  color: #00457d;
  background: #ffffff;
}

/* toggles */
.form-check-input:checked {
  background-color: #00457d;
  border-color: #00457d;
}
.form-check-input:focus {
  border-color: #0070b9;
  box-shadow: 0 0 0 0.25rem rgba(0, 111, 185, 0.25);
}

.form-switch .form-check-input:focus {
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2300457D'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
  background-position: right center;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}

/* large toggle */
.form-switch-lg .form-check-input {
  width: 3rem;
  height: 1.5rem;
  margin-right: 0.675rem;
}

.form-check.form-switch-lg label {
  margin-top: 0.25rem;
}

/* validation override */
.alert-danger {
  background-color: #ffeeef;
  color: #333333;
  border: 0;
  border-left: 7px solid #dc3545 !important;
  border-radius: 0.125rem;
}
.alert-danger i {
  color: #dc3545;
}

.form-select.is-valid,
.was-validated .form-select:valid {
  border-color: #198754 !important;
}

.form-control.is-invalid,
.was-validated .form-control:invalid {
  border-color: #dc3545 !important;
}

.form-control.is-valid,
.was-validated .form-control:valid,
.form-control.is-invalid,
.was-validated .form-control:invalid {
  padding-right: 1rem;
  background-image: none !important;
}

.form-select.is-valid:not([multiple]):not([size]),
.form-select.is-valid:not([multiple])[size="1"],
.was-validated .form-select:valid:not([multiple]):not([size]),
.was-validated .form-select:valid:not([multiple])[size="1"] {
  padding-right: 2.25rem;
  background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='m2 5 6 6 6-6'/%3e%3c/svg%3e");
}

footer {
  color: #ffffff;
  background-color: #002855;
}
footer a:link,
footer a:visited,
footer a:active {
  color: #d7c59c;
}
footer a.nav-link {
  color: #ffffff;
}
footer a:hover,
footer a.nav-link:hover {
  color: #e8e3d2;
}
footer .img-logo {
  height: 4rem;
}

/* print utilities */
@media only screen {
  .p-display-5 {
    padding: 5rem;
  }
}
@media only print {
  body.receipt {
    padding-top: 0 !important;
  }
  body.receipt .container {
    max-width: 100%;
  }
  body.receipt .container > div {
    padding: 0 !important;
    box-shadow: none !important;
  }
  body.receipt h2.text-primary {
    color: #333333 !important;
  }
  body.receipt h3 {
    font-size: 1.5rem;
  }
  body.receipt p.lead {
    font-size: 1rem;
  }
  body.receipt p,
body.receipt ul,
body.receipt table {
    font-size: 0.875rem;
  }
  body.receipt .border.border-dark {
    border-color: transparent !important;
  }
  body.receipt table.my-5 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
}
/* specific pages */
.search-main .dropdown-menu.show {
  z-index: 1021; /* over filter */
}

/* page specific */
/* login */
@media (max-width: 767px) {
  .col-accent {
    position: fixed;
    z-index: -1;
  }
}
@media (min-width: 768px) and (max-width: 992px) {
  .col-accent {
    position: absolute;
    z-index: -1;
  }
}

.input-group .btn-link:active {
  border-color: transparent;
}

/* badges */
.badge-lg {
  font-size: 1rem;
}

.badge-lg.text-bg-light i {
  color: #99999980;
}

h2.month-divider {
  align-items: center;
  display: flex;
}

h2.month-divider:after {
  content: "";
  display: block;
  flex: auto;
  height: 1px;
  margin-left: 1rem;
  background-color: #ccc;
}

.fa-custom-stack {
  position: relative;
  text-decoration: none;
}
.fa-custom-stack :first-child {
  position: absolute;
  font-size: 0.4rem;
  top: 45%;
  left: 27%;
}

/* main styles */
@font-face {
  font-family: "Minion Pro Regular";
  font-style: normal;
  font-weight: normal;
  src: url("/css/fonts/MinionPro/MinionPro-Regular.woff") format("woff");
}
@font-face {
  font-family: "Minion Pro Medium";
  font-style: normal;
  font-weight: normal;
  src: url("/css/fonts/MinionPro/MinionPro-Medium.woff") format("woff");
}
@font-face {
  font-family: "Minion Pro Bold";
  font-style: normal;
  font-weight: normal;
  src: url("/css/fonts/MinionPro/MinionPro-Bold.woff") format("woff");
}
@font-face {
  font-family: "Freight Sans Pro Book";
  src: url(/css/fonts/FreightProBook/freigsanprobook-webfont.woff2) format("woff2"), url(/css/fonts/FreightProBook/freigsanprobook-webfont.woff) format("woff"), url(/css/fonts/FreightProBook/freigsanprobook-webfont.ttf) format("truetype");
}
@font-face {
  font-family: "Freight Sans Pro Medium";
  src: url(/css/fonts/FreightSansProMedium/freigsanpromed-webfont.woff2) format("woff2"), url(/css/fonts/FreightSansProMedium/freigsanpromed-webfont.woff) format("woff"), url(/css/fonts/FreightSansProMedium/freigsanpromed-webfont.ttf) format("truetype");
}
@font-face {
  font-family: "Freight Sans Compressed Pro Medium";
  src: url(/css/fonts/FreightSansCmpProMedium/freightsanscmppro-med-webfont.woff2) format("woff2"), url(/css/fonts/FreightSansCmpProMedium/freightsanscmppro-med-webfont.woff) format("woff"), url(/css/fonts/FreightSansCmpProMedium/freightsanscmppro-med-webfont.ttf) format("truetype");
}
:root {
  --bs-primary-rgb: 0, 69, 125;
  --bs-body-bg-rgb: 250, 249, 246;
}

body {
  --bs-link-color: #0070b9;
  --bs-link-hover-color: #00457d;
  font-family: "Freight Sans Pro Book", "Helvetica Neue", Helvetica, Arial, sans-serif;
  color: #333333;
  background: #faf9f6;
}

body.site-admin {
  background: #f8f8f8;
}

h1,
.h1 {
  font-family: "Minion Pro Medium", "Georgia", "Times New Roman", Times, serif;
  font-variant: small-caps;
}

h2,
.h2,
h3,
.h3 {
  font-family: "Freight Sans Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

p strong,
.fw-bold {
  font-family: "Freight Sans Pro Medium", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-weight: 400;
}

dl dd {
  margin-bottom: 1rem;
}

.text-minion-medium {
  font-family: "Minion Pro Medium", "Georgia", "Times New Roman", Times, serif;
  font-variant: small-caps;
}

.text-minion-regular {
  font-family: "Minion Pro Regular", "Georgia", "Times New Roman", Times, serif;
}

.text-freight-sans {
  font-family: "Freight Sans Pro Book", "Helvetica Neue", Helvetica, Arial, sans-serif;
}

.text-freight-sans-medium {
  font-family: "Freight Sans Pro Medium", Helvetica, Arial, sans-serif;
}

.text-freight-sans-condensed {
  font-family: "Freight Sans Compressed Pro Medium", Helvetica, Arial, sans-serif;
}

.text-wheat {
  color: #d7c59c;
}

.text-info {
  color: #0070b9 !important;
}

.text-bg-info {
  --bs-bg-opacity: .2;
  color: #000000 !important;
  background-color: RGBA(0, 112, 185, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-success {
  color: #ffffff !important;
  background-color: RGBA(0, 125, 69, var(--bs-bg-opacity, 1)) !important;
}

.text-bg-primary {
  color: #ffffff !important;
  background-color: #00457d !important;
}

.text-bg-wheat {
  color: #333333;
  background-color: #d7c59c;
}

.text-bg-navy {
  color: #ffffff !important;
  background-color: #091633 !important;
}

.text-bg-white {
  color: #333333;
  background-color: #ffffff;
}

.text-bg-light {
  background-color: rgba(215, 197, 156, 0.19) !important; /* 30 hex is actually 19% */
}

.bg-very-dark {
  background-color: #333333 !important;
}

.progress-bar.bg-secondary {
  background-color: #e0e0e0 !important;
}

.text-larger {
  font-size: 1.125rem;
}

ul.text-larger li {
  margin-bottom: 0.25rem;
}

.text-normal {
  font-family: var(--bs-body-font-family);
}

/* skeleton style/animation */
.Circle_circle__gFBFV {
  background: linear-gradient(270deg, hsla(0deg, 0%, 75%, 0.65), hsla(0deg, 0%, 63%, 0.585) 25%, hsla(0deg, 0%, 50%, 0.52) 50%, hsla(0deg, 0%, 63%, 0.585) 75%, hsla(0deg, 0%, 75%, 0.65));
  background-size: 200%;
  border-radius: 100%;
  animation: Circle_shimmer__02AMX 2s linear infinite;
}

.Rectangle_rectangle__SL_MS {
  border-radius: 3px;
  background: linear-gradient(270deg, hsla(0deg, 0%, 75%, 0.65), hsla(0deg, 0%, 63%, 0.585) 25%, hsla(0deg, 0%, 50%, 0.52) 50%, hsla(0deg, 0%, 63%, 0.585) 75%, hsla(0deg, 0%, 75%, 0.65));
  background-size: 200%;
  animation: Rectangle_shimmer__V_XWy 2s linear infinite;
}

.skeleton {
  border-radius: 3px;
  background: linear-gradient(270deg, hsla(0deg, 0%, 75%, 0.65), hsla(0deg, 0%, 63%, 0.585) 25%, hsla(0deg, 0%, 50%, 0.52) 50%, hsla(0deg, 0%, 63%, 0.585) 75%, hsla(0deg, 0%, 75%, 0.65));
  background-size: 200%;
  animation: Rectangle_shimmer__V_XWy 2s linear infinite;
}

.skeleton-title {
  margin: 0.25rem 0 0;
  height: 1.25rem;
}

.skeleton-text {
  margin: 0.375rem 0 0.4375rem;
  height: 1rem;
}

@keyframes Rectangle_shimmer__V_XWy {
  0% {
    background-position: 100%;
  }
  100% {
    background-position: -100%;
  }
}
@keyframes Circle_shimmer__02AMX {
  0% {
    background-position: 100%;
  }
  100% {
    background-position: -100%;
  }
}

/*# sourceMappingURL=theme.css.map */
