html,body {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
	min-height: 100vh;
	font-family: 'Inter', sans-serif;
  overscroll-behavior-y: none;
}
body {
  overflow-x: hidden;
}

h1,h2,h3,h4,h5,h6,.btn {
  font-family: 'ProximaNova-700', sans-serif;
  font-weight: 700;
  font-style: normal;
}

.nav-link, .start-link {
  font-family: 'ProximaNova-700', sans-serif;
  font-weight: 700;
  font-style: normal;
}

.large,
.text-large {
	font-size: 1.5rem;
}
.largeish,
.text-largeish {
  font-size: 1.3rem;
}
.medium,
.text-medium {
	font-size: 1.25rem;
}
.larger,
.text-larger {
	font-size: 1.1rem;
}
.standard,
.text-standard {
	font-size: 1rem;
}
.small,
.text-small {
	font-size: 0.75rem;
}

.smallish,
.text-smallish {
	font-size: 0.85rem
}

@media only screen and (max-width: 992px) { 
  .large,
  .text-large {
    font-size: 1.25rem;
  }
  .largeish,
  .text-largeish {
    font-size: 1.15rem;
  }
  .larger,
  .text-larger {
    font-size: 1.05rem;
  }
  .medium,
  .text-medium {
    font-size: 1rem;
  }
  .standard,
  .text-standard {
    font-size: 0.9rem;
  }
  .small,
  .text-small {
    font-size: 0.7rem;
  }
}


/** animations **/
.fadeIn {
    opacity: 0;
    animation: fadeIn 2s forwards;
}
@keyframes fadeIn {
    to {
        opacity: 1;
    }
}

.form-floating>.form-control~label::after, .form-floating>.form-control:focus~label::after, .form-floating>.form-control:not(:placeholder-shown)~label::after, .form-floating>.form-select~label::after {
	background-color:  transparent !important;
}

/* Bootstrap hover background classes */
.bg-primary-hover:hover {
  background-color: var(--bs-primary) !important;
}

.bg-secondary-hover:hover {
  background-color: var(--bs-secondary) !important;
}

.bg-success-hover:hover {
  background-color: var(--bs-success) !important;
}

.bg-danger-hover:hover {
  background-color: var(--bs-danger) !important;
}

.bg-warning-hover:hover {
  background-color: var(--bs-warning) !important;
}

.bg-info-hover:hover {
  background-color: var(--bs-info) !important;
}

.bg-light-hover:hover {
  background-color: var(--bs-light) !important;
}

.bg-dark-hover:hover {
  background-color: var(--bs-dark) !important;
}

.bg-body-hover:hover {
  background-color: var(--bs-body-bg) !important;
}

.bg-body-secondary-hover:hover {
  background-color: var(--bs-secondary-bg) !important;
}

.bg-body-tertiary-hover:hover {
  background-color: var(--bs-tertiary-bg) !important;
}

.bg-success-subtle-hover:hover {
  background-color: var(--bs-success-bg-subtle) !important;
}

.border-primary-hover:hover {
  border: 1px solid var(--bs-primary) !important;
}

.border-secondary-hover:hover {
  border: 1px solid var(--bs-secondary) !important;
}

.border-success-hover:hover {
  border: 1px solid var(--bs-success) !important;
}

.border-danger-hover:hover {
  border: 1px solid var(--bs-danger) !important;
}

.border-warning-hover:hover {
  border: 1px solid var(--bs-warning) !important;
}

.border-info-hover:hover {
  border: 1px solid var(--bs-info) !important;
}

.border-light-hover:hover {
  border: 1px solid var(--bs-light) !important;
}

.border-dark-hover:hover {
  border: 1px solid var(--bs-dark) !important;
}

.border-body-hover:hover {
  border: 1px solid var(--bs-body-color) !important;
}

.border-body-secondary-hover:hover {
  border: 1px solid var(--bs-secondary-color) !important;
}

.border-body-tertiary-hover:hover {
  border: 1px solid var(--bs-tertiary-color) !important;
}

.border-success-subtle-hover:hover {
  border: 1px solid var(--bs-success-border-subtle) !important;
}
.border-primary-subtle-hover:hover {
  border: 1px solid var(--bs-primary-border-subtle) !important;
}

.border-secondary-subtle-hover:hover {
  border: 1px solid var(--bs-secondary-border-subtle) !important;
}

.border-success-subtle-hover:hover {
  border: 1px solid var(--bs-success-border-subtle) !important;
}

.border-danger-subtle-hover:hover {
  border: 1px solid var(--bs-danger-border-subtle) !important;
}

.border-warning-subtle-hover:hover {
  border: 1px solid var(--bs-warning-border-subtle) !important;
}

.border-info-subtle-hover:hover {
  border: 1px solid var(--bs-info-border-subtle) !important;
}

.border-light-subtle-hover:hover {
  border: 1px solid var(--bs-light-border-subtle) !important;
}

.border-dark-subtle-hover:hover {
  border: 1px solid var(--bs-dark-border-subtle) !important;
}

.border-hr-hover:hover {
  border: 1px solid #ff5000 !important;
}

.border-simplex-hover:hover {
  border: 1px solid #40b3fa !important;
}

@media (min-width: 576px) {
  .border-sm-top    { border-top: 1px solid var(--bs-border-color) !important; }
  .border-sm-top-0  { border-top: 0 !important; }

  .border-sm-bottom   { border-bottom: 1px solid var(--bs-border-color) !important; }
  .border-sm-bottom-0 { border-bottom: 0 !important; }
}

@media (min-width: 768px) {
  .border-md-top    { border-top: 1px solid var(--bs-border-color) !important; }
  .border-md-top-0  { border-top: 0 !important; }

  .border-md-bottom   { border-bottom: 1px solid var(--bs-border-color) !important; }
  .border-md-bottom-0 { border-bottom: 0 !important; }
}

@media (min-width: 992px) {
  .border-lg-top    { border-top: 1px solid var(--bs-border-color) !important; }
  .border-lg-top-0  { border-top: 0 !important; }

  .border-lg-bottom   { border-bottom: 1px solid var(--bs-border-color) !important; }
  .border-lg-bottom-0 { border-bottom: 0 !important; }
}

@media (min-width: 1200px) {
  .border-xl-top    { border-top: 1px solid var(--bs-border-color) !important; }
  .border-xl-top-0  { border-top: 0 !important; }

  .border-xl-bottom   { border-bottom: 1px solid var(--bs-border-color) !important; }
  .border-xl-bottom-0 { border-bottom: 0 !important; }
}

@media (min-width: 1400px) {
  .border-xxl-top    { border-top: 1px solid var(--bs-border-color) !important; }
  .border-xxl-top-0  { border-top: 0 !important; }

  .border-xxl-bottom   { border-bottom: 1px solid var(--bs-border-color) !important; }
  .border-xxl-bottom-0 { border-bottom: 0 !important; }
}



@media (min-width: 576px) {
  .bg-sm-body {
    background-color: var(--bs-body-bg) !important;
  }
  .bg-sm-transparent {
    background-color: transparent !important;
  }
}

@media (min-width: 768px) {
  .bg-md-body {
    background-color: var(--bs-body-bg) !important;
  }
  .bg-md-transparent {
    background-color: transparent !important;
  }
}

@media (min-width: 992px) {
  .bg-lg-body {
    background-color: var(--bs-body-bg) !important;
  }
  .bg-lg-transparent {
    background-color: transparent !important;
  }
}

@media (min-width: 1200px) {
  .bg-xl-body {
    background-color: var(--bs-body-bg) !important;
  }
  .bg-xl-transparent {
    background-color: transparent !important;
  }
}

@media (min-width: 1400px) {
  .bg-xxl-body {
    background-color: var(--bs-body-bg) !important;
  }
  .bg-xxl-transparent {
    background-color: transparent !important;
  }
}



/** specifics **/
.sidebar {
  min-height: 100vh;
}
.sidebar .nav-link {
  color: var(--bs-body-color);
}
.sidebar .nav-link:hover {
  background-color: var(--bs-secondary-bg);
}

.sidebar-logo {
  font-weight: bold;
  font-size: 1.25rem;
}
#logo {
  max-width: 220px;
}
#main-logo {
  max-height: 22px;
}

.text-hr { color: #ff5000 !important; }
.text-simplex { color: #40b3fa !important; }
