
@font-face {
 font-family: 'ff-Trajan';
 src: url('fonts/Trajan.woff2') format('woff2');
}

@font-face {
 font-family: 'ff-avenir';
 src: url('fonts/avenir.woff2') format('woff2');
}

.ff-theme {
  font-family: 'ff-Trajan';
}

.ff-avenir {
  font-family: 'ff-avenir';
}

:root {
  --theme: #7D69AC;
  --theme-rgb: 125, 105, 172;
}

body {
  display: flex;
  overflow-y: scroll;
  flex-direction: column !important;
  min-height: 100vh;
}

content {
  flex: 1;
}

.bg-theme {
  background: var(--theme)!important;
}

.text-theme,
.form-label,
.has-theme-color {
  color: var(--theme)!important;
}

.border-theme {
  --bs-border-opacity: 1;
  border-color: rgba(var(--theme-rgb), var(--bs-border-opacity)) !important;
}

.hide-me {
  display: none;
}

.pointer {
  cursor: pointer;
}

.navbar-toggler i {
  transition: .25s;
}

.navbar-toggler:focus{
  box-shadow: none!important;
}

.btn-theme {
  border-color: var(--theme)!important;
  background:  rgba(var(--theme-rgb), .80);
  color: white;
}

.btn-outline-theme {
  border-color: var(--theme)!important;
  color: var(--theme);
  
}

.btn-theme:hover,
.btn-outline-theme:hover {
  background:  rgba(var(--theme-rgb), 1);
  color: white;
}

.form-control {
  border-color: var(--theme)!important;
}

.form-control:focus,
.form-check-input:focus {
  box-shadow: 0 0 0 .25rem rgba(var(--theme-rgb),.25)!important;
}

.form-check-input:checked {
  background-color: var(--theme)!important;
  border-color: var(--theme)!important;
}

.card-body p:last-of-type {
  margin: 0!important;
}

.text-shadow {
  text-shadow: 0 0 2px var(--theme)!important;
}

.nav-link {
  color: black;
  font-size: 1.25rem;
  border-bottom: 3px solid transparent;
  padding: 5px 0!important;
}

.nav-item {
  padding: 1rem!important;
}

.nav-item.active > .nav-link, 
.nav-link:hover {
  border-color: var(--theme)!important;
}