:root {
  --primaryLight: #9deac9;
  --primary: #2bca85;
  --primaryDark: #22a26a;
  --cyanLight: #9ddfea;
  --cyan: #2bb2ca;
  --cyanDark: #228fa2;
  --tealLight: #9deacf;
  --teal: #2bca92;
  --tealDark: #22a275;
  --greenLight: #9deaa9;
  --green: #2bca43;
  --greenDark: #22a235;
  --limeLight: #b8ea9d;
  --lime: #63ca2b;
  --limeDark: #4fa222;
  --yellowLight: #dfea9d;
  --yellow: #b2ca2b;
  --yellowDark: #8fa222;
  --orangeLight: #eacf9d;
  --orange: #ca922b;
  --orangeDark: #a27522;
  --redLight: #eaa99d;
  --red: #ca432b;
  --redDark: #a23522;
  --magentaLight: #ea9db8;
  --magenta: #ca2b63;
  --magentaDark: #a2224f;
  --pinkLight: #ea9ddf;
  --pink: #ca2bb2;
  --pinkDark: #a2228f;
  --indigoLight: #cf9dea;
  --indigo: #922bca;
  --indigoDark: #7522a2;
  --royalblueLight: #a99dea;
  --royalblue: #432bca;
  --royalblueDark: #3522a2;
  --blueLight: #9db8ea;
  --blue: #2b63ca;
  --blueDark: #224fa2;
  --grey900: #14272e;
  --grey800: #264550;
  --grey700: #39616f;
  --grey600: #4f7b8d;
  --grey500: #7ca2b0;
  --grey400: #b3c5cc;
  --grey300: #d3dcdf;
  --grey200: #f1f3f4;
  --grey100: #fff;
  --greyWhite: #fff;
}

:root {
  --buttonfocus: 0 0 0 .2rem rgba(108, 117, 125, 0.35);
  --smallshadow: 0px 0px 16px rgba(0, 0, 0, 0.09), 0px 0.1px 0.9px rgba(0, 0, 0, 0.07), 0px 0.5px 1.9px rgba(0, 0, 0, 0.065), 0px 1px 3px rgba(0, 0, 0, 0.052), 0px 1.9px 4.4px rgba(0, 0, 0, 0.04), 0px 3px 6.4px rgba(0, 0, 0, 0.038), 0px 4px 10px rgba(0, 0, 0, 0.1);
  --regularshadow: 0px 0px 16px rgba(0, 0, 0, 0.09), 0px 2.3px 8.8px rgba(0, 0, 0, 0.049), 0px 7.3px 18.6px rgba(0, 0, 0, 0.045), 0px 16.2px 30.1px rgba(0, 0, 0, 0.037), 0px 29.6px 44.5px rgba(0, 0, 0, 0.028), 0px 45.9px 64px rgba(0, 0, 0, 0.027), 0px 62px 100px rgba(0, 0, 0, 0.07);
  --largeshadow: 0px 0px 16px rgba(0, 0, 0, 0.09), 0px 2.8px 7.4px rgba(0, 0, 0, 0.077), 0px 9px 15.6px rgba(0, 0, 0, 0.071), 0px 20.1px 25.3px rgba(0, 0, 0, 0.057), 0px 36.8px 37.4px rgba(0, 0, 0, 0.044), 0px 57px 53.8px rgba(0, 0, 0, 0.042), 0px 77px 84px rgba(0, 0, 0, 0.11);
  --transition0: all 0s cubic-bezier(0.3, 0, 0, 1.25);
  --transition10: all .1s cubic-bezier(0.3, 0, 0, 1.25);
  --snap: all .5s cubic-bezier(0, 1, 0.5, 1);
  --bigbounce: all .25s cubic-bezier(0, 0, 0, 1.5);
}

/* important------------------------------------- */

.bg-primary {
  background-color: var(--primaryDark)!important;
}

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

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

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

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

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

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

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

.bg-white {
  background-color: var(--greyWhite)!important;
}

.text-primary {
  color: var(--primary)!important;
}

.text-secondary {
  color: var(--grey600)!important;
}

.text-success {
  color: var(--green)!important;
}

.text-danger {
  color: var(--red)!important;
}

.text-warning {
  color: var(--yellow)!important;
}

.text-info {
  color: var(--cyan)!important;
}

.text-light {
  color: var(--grey100)!important;
}

.text-dark {
  color: var(--grey800)!important;
}

.text-white {
  color: var(--greyWhite)!important;
}

.text-muted {
  color: var(--grey600)!important;
}

.text-body {
  color: var(--grey900)!important;
}

/* Animation------------------------------------- */

.btn, .page-link, .page-link:hover, a, .table-hover tbody tr:hover {
  transition: var(--snap);
}

/* butons------------------------------------- */

.btn-primary, .badge-primary {
  background-color: var(--primary);
}

.btn-secondary, .badge-secondary {
  background-color: var(--grey600);
}

.btn-success, .badge-success {
  background-color: var(--green);
}

.btn-danger, .badge-danger {
  background-color: var(--red);
}

.btn-warning, .badge-warning {
  background-color: var(--yellowLight);
}

.btn-info, .badge-info {
  background-color: var(--cyan);
}

.btn-light, .badge-light {
  background-color: var(--grey100);
}

.btn-dark, .badge-dark {
  background-color: var(--grey800);
}

.btn-white, .badge-white {
  background-color: var(--greyWhite);
}

.btn-outline-primary, .btn-primary {
  border-color: var(--primary);
}

.btn-outline-secondary, .btn-secondary {
  border-color: var(--grey600);
}

.btn-outline-success, .btn-success {
  border-color: var(--green);
}

.btn-outline-danger, .btn-danger {
  border-color: var(--red);
}

.btn-outline-warning, .btn-warning {
  border-color: var(--yellowLight);
}

.btn-outline-info, .btn-info {
  border-color: var(--cyan);
}

.btn-outline-light, .btn-light {
  border-color: var(--grey100);
}

.btn-outline-dark, .btn-dark {
  border-color: var(--grey800);
}

.btn-outline-primary {
  color: var(--primary);
}

.btn-outline-secondary {
  color: var(--grey600);
}

.btn-outline-success {
  color: var(--green);
}

.btn-outline-danger {
  color: var(--red);
}

.btn-outline-warning {
  color: var(--yellow);
}

.btn-outline-info {
  color: var(--cyan);
}

.btn-outline-light {
  color: var(--grey100);
}

.btn-outline-dark {
  color: var(--grey800);
}

/* butons hover------------------------------------- */

.btn-primary:hover, a.badge-primary:hover, .btn-outline-primary:hover {
  background-color: var(--primaryDark);
}

.btn-secondary:hover, a.badge-secondary:hover, .btn-outline-secondary:hover {
  background-color: var(--grey700);
}

.btn-success:hover, a.badge-success:hover, .btn-outline-success:hover {
  background-color: var(--greenDark);
}

.btn-danger:hover, a.badge-danger:hover, .btn-outline-danger:hover {
  background-color: var(--redDark);
}

.btn-warning:hover, a.badge-warning:hover, .btn-outline-warning:hover {
  background-color: var(--yellow);
}

.btn-info:hover, a.badge-info:hover, .btn-outline-info:hover {
  background-color: var(--cyanDark);
}

.btn-light:hover, a.badge-light:hover, .btn-outline-light:hover {
  background-color: var(--grey200);
}

.btn-dark:hover, a.badge-dark:hover, .btn-outline-dark:hover {
  background-color: var(--grey900);
}

.btn-outline-primary:hover, .btn-primary:hover {
  border-color: var(--primaryDark);
}

.btn-outline-secondary:hover, .btn-secondary:hover {
  border-color: var(--grey700);
}

.btn-outline-success:hover, .btn-success:hover {
  border-color: var(--greenDark);
}

.btn-outline-danger:hover, .btn-danger:hover {
  border-color: var(--redDark);
}

.btn-outline-warning:hover, .btn-warning:hover {
  border-color: var(--yellow);
}

.btn-outline-info:hover, .btn-info:hover {
  border-color: var(--cyanDark);
}

.btn-outline-light:hover, .btn-light:hover {
  border-color: var(--grey200);
}

.btn-outline-dark:hover, .btn-dark:hover {
  border-color: var(--grey900);
}

/* butons active, focus etc------------------------------------- */

.btn:not(:disabled):not(.disabled):active:focus, .btn:active:focus, .btn-block:active:focus, .btn:active, .btn:focus, .btn-primary:not(:disabled):not(.disabled).active, .dropdown-item.active, .dropdown-item:active {
  background-color: var(--primaryDark);
  border-color: var(--primaryDark);
  color: #fff;
}

.btn:not(:disabled):not(.disabled):active:focus, .btn-outline:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus {
  box-shadow: var(--buttonfocus);
}

/* Table Hovers------------------------------------- */

/* .table-hover .table-primary:hover > td{background-color:var(--primaryDark);}
/* .table-hover .table-secondary:hover > td{background-color:var(--grey700);}
/* .table-hover .table-success:hover > td{background-color:var(--greenDark);}
/* .table-hover .table-danger:hover > td{background-color:var(--redDark);}
/* .table-hover .table-warning:hover > td{background-color:var(--yellowDark);}
/* .table-hover .table-info:hover > td{background-color:var(--cyanDark);}
/* .table-hover .table-light:hover > td{background-color:var(--grey200);}
/* .table-hover .table-dark:hover > td{background-color:var(--grey900);}

.table-hover tbody tr:hover{background-color:var(--grey800);color:var(--greyWhite);}


/* Alerts------------------------------------- */

.alert-primary, .list-group-item-primary {
  border-color: var(--primaryDark);
  color: var(--primaryDark);
}

.alert-secondary, .list-group-item-secondary {
  border-color: var(--grey700);
  color: var(--grey700);
}

.alert-success, .list-group-item-success {
  border-color: var(--greenDark);
  color: var(--greenDark);
}

.alert-danger, .list-group-item-danger {
  border-color: var(--redDark);
  color: var(--redDark);
}

.alert-warning, .list-group-item-warning {
  border-color: var(--yellowDark);
  color: var(--yellowDark);
}

.alert-info, .list-group-item-info {
  border-color: var(--cyanDark);
  color: var(--cyanDark);
}

.alert-light, .list-group-item-light {
  border-color: var(--grey200);
  color: var(--grey200);
}

.alert-dark, .list-group-item-dark {
  border-color: var(--grey900);
  color: var(--grey900);
}

.alert-primary, .table-primary td, .list-group-item-primary {
  background-color: var(--primaryLight);
}

.alert-secondary, .table-secondary td, .list-group-item-secondary {
  background-color: var(--grey500);
}

.alert-success, .table-success td, .list-group-item-success {
  background-color: var(--greenLight);
}

.alert-danger, .table-danger td, .list-group-item-danger {
  background-color: var(--redLight);
}

.alert-warning, .table-warning td, .list-group-item-warning {
  background-color: var(--yellowLight);
}

.alert-info, .table-info td, .list-group-item-info {
  background-color: var(--cyanLight);
}

.alert-light, .table-light td, .list-group-item-light {
  background-color: var(--greyWhite);
}

.alert-dark, .list-group-item-dark {
  background-color: var(--grey700);
}

/* greys------------------------------------- */

.card, .card-header, .page-link, .table thead th, .table td, hr, .nav-tabs, .list-group-item {
  border-color: var(--grey300);
}

.nav-tabs .nav-link.active {
  border-color: var(--grey300) var(--grey300) var(--greyWhite);
}

.nav-tabs .nav-link:hover {
  border-color: var(--grey200) var(--grey200) var(--grey300);
}

.alert-secondary {
  color: #383d41;
  background-color: var(--grey300);
  border-color: #d6d8db;
}

.breadcrumb, .progress, .jumbotron, .input-group-text, .page-link:hover {
  background-color: var(--grey200);
}

.card-header {
  background-color: var(--greyWhite);
}

.table-dark {
  color: var(--greyWhite) !important;
}

.form-control, .input-group-text, .alert-secondary, .custom-select {
  border-color: var(--grey500);
}

.table-striped tbody tr:nth-of-type(2n + 1) {
  background-color: var(--grey100);
}

.table-active, .table-active > td, .table-secondary, .table-secondary > td, .alert-dark, .list-group-item-secondary {
  background-color: var(--grey400);
}

.alert-dark {
  border-color: var(--grey600);
}

.list-group-item-dark, .table-dark > td {
  background-color: var(--grey600);
}

.form-control::placeholder, .breadcrumb-item.active, .breadcrumb-item + .breadcrumb-item::before, .nav-link.disabled {
  color: var(--grey600);
}

.input-group-text, .nav-tabs .nav-link.active {
  color: var(--grey700);
}

.table-dark.table-striped tbody tr:nth-of-type(2n + 1) {
  background-color: var(--grey700);
}

.table-dark.table-striped tbody tr {
  background-color: var(--grey800);
}

.table-hover tbody tr:hover {
  background-color: var(--grey200);
}

.btn-dark, .table-dark {
  background-color: var(--grey800);
}

.btn-dark, .btn-outline-dark {
  border-color: var(--grey800);
}

body, .form-control, .table, .btn-light, .btn-outline-dark, .form-control-plaintext {
  color: var(--grey900);
}

/* primary------------------------------------- */

.btn-primary, .nav-pills .nav-link.active, .page-item.active .page-link, .btn-outline-primary:not(:disabled):not(.disabled).active, .badge-primary, .progress-bar, .list-group-item.active, .show > .btn-primary.dropdown-toggle {
  background-color: var(--primary);
}

.btn-primary, .btn-outline-primary, .page-item.active .page-link, .btn-outline-primary:not(:disabled):not(.disabled).active, .list-group-item.active, .show > .btn-primary.dropdown-toggle {
  border-color: var(--primary);
}

a, .page-link, .btn-outline-primary, .btn-link {
  color: var(--primary);
}

.btn:focus, .show > .btn-primary.dropdown-toggle:focus, .btn-outline-primary:not(:disabled):not(.disabled).active:focus, .page-link:focus {
  box-shadow: var(--buttonfocus);
}

.btn-warning:not(:disabled):not(.disabled):active:focus, .custom-range:focus::-moz-range-thumb {
  box-shadow: 0 0 0 1px var(--greyWhite),var(--buttonfocus);
}

.table-hover tbody tr:hover {
  background-color: var(--primaryLight);
}

a:hover, .page-link:hover {
  color: var(--primaryDark);
}

.custom-control-input:checked ~ .custom-control-label::before {
  color: var(--greyWhite);
  border-color: var(--green);
  background-color: var(--green);
}

.form-control:focus {
  border-color: var(--primary);
  box-shadow: none;
}

.general-gallery {
  border: 0.125em solid var(--greyWhite);
  border-radius: 0.25em;
}

.custom-range::-moz-range-thumb {
  background-color: var(--primary)!important;
}

/* secondary------------------------------ */

.fa.fa-info-circle.help, .btn-link:hover {
  color: var(--grey600);
}

body {
  background-color: var(--greyWhite);
}

.nav-link.active {
  color: var(--greyWhite);
}

/* shadows------------------------------ */

.shadow-sm {
  box-shadow: var(--smallshadow)!important;
}

.shadow {
  box-shadow: var(--regularshadow)!important;
}

.shadow-lg {
  box-shadow: var(--largeshadow)!important;
}

h1.shadow-sm, h2.shadow-sm, h3.shadow-sm, p.shadow-sm {
  text-shadow: var(--smallshadow)!important;
  box-shadow: none !important;
}

h1.shadow, h2.shadow, h3.shadow, p.shadow {
  text-shadow: var(--regularshadow)!important;
  box-shadow: none !important;
}

h1.shadow-lg, h2.shadow-lg, h3.shadow-lg, p.shadow-lg {
  text-shadow: var(--largeshadow)!important;
  box-shadow: none !important;
}

/* modal animations------------------------------ */

.modal.fade .modal-dialog {
  transition: var(--bigbounce);
}

.fade {
  transition: var(--transition10);
}

/* Column Heights */

.colheight20, .colheight25, .colheight33, .colheight40, .colheight50, .colheight66, .colheight75, .colheight100 {
  padding: 0;
}

.colheight20 {
  min-height: 20vh;
}

.colheight25 {
  min-height: 25vh;
}

.colheight33 {
  min-height: 33.34vh;
}

.colheight40 {
  min-height: 40vh;
}

.colheight50 {
  min-height: 50vh;
}

.colheight66 {
  min-height: 66.6vh;
}

.colheight75 {
  min-height: 75vh;
}

.colheight80 {
  min-height: 80vh;
}

.colheight100 {
  min-height: 100vh;
}

