:root {
     --blue: #5e72e4;
     --indigo: #5603ad;
     --purple: #8965e0;
     --pink: #f3a4b5;
     --red: #f5365c;
     --hst-red: #fa4b6e;
     --hst-red-darker: #b7173f;
     --orange: #fb6340;
     --yellow: #ffd600;
     --hst-yellow: #f7d401;
     --green: #2dce89;
     --teal: #11cdef;
     --cyan: #2bffc6;
     --gray: #6c757d;
     --gray-dark: #32325d;
     --light: #ced4da;
     --lighter: #e9ecef;
     --primary: #e14eca;
     --secondary: #f4f5f7;
     --success: #00f2c3;
     --info: #1d8cf8;
     --warning: #ff8d72;
     --danger: #fd5d93;
     --dark: #212529;
     --default: #344675;
     --white: #ffffff;
     --neutral: #ffffff;
     --darker: black;
     --text: #dfdfdf;
     --breakpoint-xs: 0;
     --breakpoint-sm: 576px;
     --breakpoint-md: 768px;
     --breakpoint-lg: 992px;
     --breakpoint-xl: 1200px;
     --font-family-pt-sans: "PT Sans"
          --font-family-sans-serif: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
     --font-family-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
}

*,
*::before,
*::after {
     box-sizing: border-box;
}

/* pt-sans-regular - latin */
@font-face {
     font-family: 'PT Sans';
     font-style: normal;
     font-weight: 400;
     src: local(''),
          url('/static/assets/fonts/pt-sans-v17-latin-regular.woff2') format('woff2'),
          /* Chrome 26+, Opera 23+, Firefox 39+ */
          url('/static/assets/fonts/pt-sans-v17-latin-regular.woff') format('woff');
     /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* pt-sans-italic - latin */
@font-face {
     font-family: 'PT Sans';
     font-style: italic;
     font-weight: 400;
     src: local(''),
          url('/static/assets/fonts/pt-sans-v17-latin-italic.woff2') format('woff2'),
          /* Chrome 26+, Opera 23+, Firefox 39+ */
          url('/static/assets/fonts/pt-sans-v17-latin-italic.woff') format('woff');
     /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* pt-sans-700 - latin */
@font-face {
     font-family: 'PT Sans';
     font-style: normal;
     font-weight: 700;
     src: local(''),
          url('/static/assets/fonts/pt-sans-v17-latin-700.woff2') format('woff2'),
          /* Chrome 26+, Opera 23+, Firefox 39+ */
          url('/static/assets/fonts/pt-sans-v17-latin-700.woff') format('woff');
     /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

/* pt-sans-700italic - latin */
@font-face {
     font-family: 'PT Sans';
     font-style: italic;
     font-weight: 700;
     src: local(''),
          url('/static/assets/fonts/pt-sans-v17-latin-700italic.woff2') format('woff2'),
          /* Chrome 26+, Opera 23+, Firefox 39+ */
          url('/static/assets/fonts/pt-sans-v17-latin-700italic.woff') format('woff');
     /* Chrome 6+, Firefox 3.6+, IE 9+, Safari 5.1+ */
}

html {
     font-family: "PT Sans";
     line-height: 1.15;
     -webkit-text-size-adjust: 100%;
     -webkit-tap-highlight-color: rgba(34, 42, 66, 0);
}

article,
aside,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section {
     display: block;
}

body {
     margin: 0;
     font-family: "PT Sans";
     /*, "Poppins", sans-serif;*/
     font-size: 0.875rem;
     font-weight: 400;
     line-height: 1.5;
     color: var(--text);
     text-align: left;
     background-color: rgb(44, 44, 44);
}

[tabindex="-1"]:focus {
     outline: 0 !important;
}

hr {
     box-sizing: content-box;
     height: 0;
     overflow: visible;
}

h1,
h2,
h3,
h4,
h5,
h6 {
     margin-top: 0;
     margin-bottom: 0.5rem;
}

p {
     margin-top: 0;
     margin-bottom: 1rem;
}

abbr[title],
abbr[data-original-title] {
     text-decoration: underline;
     -webkit-text-decoration: underline dotted;
     text-decoration: underline dotted;
     cursor: help;
     border-bottom: 0;
     -webkit-text-decoration-skip-ink: none;
     text-decoration-skip-ink: none;
}

address {
     margin-bottom: 1rem;
     font-style: normal;
     line-height: inherit;
}

ol,
ul,
dl {
     margin-top: 0;
     margin-bottom: 1rem;
}

ol ol,
ul ul,
ol ul,
ul ol {
     margin-bottom: 0;
}

dt {
     font-weight: 600;
}

dd {
     margin-bottom: .5rem;
     margin-left: 0;
}

blockquote {
     margin: 0 0 1rem;
}

b,
strong {
     font-weight: bolder;
}

small {
     font-size: 80%;
}

sub,
sup {
     position: relative;
     font-size: 75%;
     line-height: 0;
     vertical-align: baseline;
}

sub {
     bottom: -.25em;
}

sup {
     top: -.5em;
}

a {
     color: var(--text);
     text-decoration: none;
     background-color: transparent;
}

a:hover {
     color: var(--hst-yellow);
     text-decoration: none;
}

a:not([href]):not([tabindex]) {
     color: inherit;
     text-decoration: none;
}

a:not([href]):not([tabindex]):hover,
a:not([href]):not([tabindex]):focus {
     color: inherit;
     text-decoration: none;
}

a:not([href]):not([tabindex]):focus {
     outline: 0;
}

pre,
code,
kbd,
samp {
     font-family: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
     font-size: 1em;
}

pre {
     margin-top: 0;
     margin-bottom: 1rem;
     overflow: auto;
}

figure {
     margin: 0 0 1rem;
}

img {
     vertical-align: middle;
     border-style: none;
}

svg {
     overflow: hidden;
     vertical-align: middle;
}

table {
     /*border-collapse: collapse; turned off for pixel perfect sticky cells*/
     border-spacing: 0;
}

caption {
     padding-top: 1rem;
     padding-bottom: 1rem;
     color: #6c757d;
     text-align: left;
     caption-side: bottom;
}

th {
     text-align: center;
}

label {
     display: inline-block;
     margin-bottom: 0.5rem;
}

button {
     /*background: linear-gradient(to left, var(--hst-yellow) 0%, #cfbc8c 100%);*/
     background: var(--hst-yellow);
     color: rgb(44, 44, 44);
     border-radius: 10px;
     text-transform: uppercase;
     text-decoration: none;
     display: inline-block;
     outline: 0;
     cursor: pointer;
     padding: 3px 18px;
     margin-top: 10px;
     border: 1px solid var(--hst-yellow);
     transition: all 0.3s ease;
}

button:focus,
button:hover {
     text-decoration: none;
     background: rgb(44, 44, 44);
     color: var(--hst-yellow);
     border-color: var(--hst-yellow);
     outline: none;
     box-shadow: none;
}

/* button {
     background: linear-gradient(to left, #b368a7 0%, #c221a9 100%);
     border-radius: 10px;
     border-color: #bbbbbb;
     padding: 10px;
     color: white;
     padding: 3px 18px;
     text-align: center;
     text-decoration: none;
     display: inline-block;
     font-size: 16px;
     margin-top: 10px;
     margin-bottom: 10px;
}
 */
/*button:focus {
     outline: 1px dotted;
     outline: 5px auto -webkit-focus-ring-color;
}
 button:hover {
     background: linear-gradient(to left, #8b68b3 0%, #7a21c2 100%);
}
 */
input,
button,
select,
optgroup,
textarea {
     margin: 0;
     font-family: inherit;
     font-size: inherit;
     line-height: inherit;
}

button,
input {
     overflow: visible;
}

button,
select {
     text-transform: none;
}

select {
     word-wrap: normal;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
     -webkit-appearance: button;
}

button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
     cursor: pointer;
}

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
     padding: 0;
     border-style: none;
}

input[type="radio"],
input[type="checkbox"] {
     box-sizing: border-box;
     padding: 0;
}

input[type="date"],
input[type="time"],
input[type="datetime-local"],
input[type="month"] {
     -webkit-appearance: listbox;
}

textarea {
     overflow: auto;
     resize: vertical;
}

fieldset {
     min-width: 0;
     padding: 0;
     margin: 0;
     border: 0;
}

legend {
     display: block;
     width: 100%;
     max-width: 100%;
     padding: 0;
     margin-bottom: .5rem;
     font-size: 1.5rem;
     line-height: inherit;
     color: inherit;
     white-space: normal;
}

progress {
     z-index: 101;
     position: absolute;
     margin: auto;
     width: 200px;
}

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
     height: auto;
}

[type="search"] {
     outline-offset: -2px;
     -webkit-appearance: none;
}

[type="search"]::-webkit-search-decoration {
     -webkit-appearance: none;
}

::-webkit-file-upload-button {
     font: inherit;
     -webkit-appearance: button;
}

output {
     display: inline-block;
}

summary {
     display: list-item;
     cursor: pointer;
}

template {
     display: none;
}

[hidden] {
     display: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
     margin-bottom: 0.5rem;
     font-family: inherit;
     font-weight: 400;
     line-height: 1.2;
     color: var(--hst-yellow);
}

h1,
.h1 {
     font-size: 2.0625rem;
}

h2,
.h2 {
     font-size: 1.6875rem;
}

h3,
.h3 {
     font-size: 1.4375rem;
}

h4,
.h4 {
     font-size: 1.0625rem;
}

h5,
.h5 {
     font-size: 0.8125rem;
}

h6,
.h6 {
     font-size: 0.75rem;
}

.lead {
     font-size: 0.78125rem;
     font-weight: 300;
}

.display-1 {
     font-size: 3.3rem;
     font-weight: 600;
     line-height: 1.2;
}

.display-2 {
     font-size: 2.75rem;
     font-weight: 600;
     line-height: 1.2;
}

.display-3 {
     font-size: 2.1875rem;
     font-weight: 600;
     line-height: 1.2;
}

.display-4 {
     font-size: 1.6275rem;
     font-weight: 600;
     line-height: 1.2;
}

hr {
     margin-top: 2rem;
     margin-bottom: 2rem;
     border: 0;
     border-top: 0.0625rem solid rgba(34, 42, 66, 0.1);
}

small,
.small {
     font-size: 80%;
     font-weight: 400;
}

mark,
.mark {
     padding: 0.2em;
     background-color: #fcf8e3;
}

.list-unstyled {
     padding-left: 0;
     list-style: none;
}

.list-inline {
     padding-left: 0;
     list-style: none;
}

.list-inline-item {
     display: inline-block;
}

.list-inline-item:not(:last-child) {
     margin-right: 0.5rem;
}

.initialism {
     font-size: 90%;
     text-transform: uppercase;
}

.blockquote {
     margin-bottom: 1rem;
     font-size: 0.9625rem;
}

.blockquote-footer {
     display: block;
     font-size: 80%;
     color: #6c757d;
}

.blockquote-footer::before {
     content: "\2014\00A0";
}

.img-fluid {
     max-width: 100%;
     height: auto;
}

.img-thumbnail {
     padding: 0.25rem;
     background-color: #1e1e2f;
     border: 0.0625rem solid #e3e3e3;
     border-radius: 0.25rem;
     box-shadow: 0 1px 2px rgba(34, 42, 66, 0.075);
     max-width: 100%;
     height: auto;
}

.figure {
     display: inline-block;
}

.figure-img {
     margin-bottom: 0.5rem;
     line-height: 1;
}

.figure-caption {
     font-size: 90%;
     color: #6c757d;
}

code {
     font-size: 87.5%;
     color: #f3a4b5;
     word-break: break-word;
}

a>code {
     color: inherit;
}

kbd {
     padding: 0.2rem 0.4rem;
     font-size: 87.5%;
     color: #ffffff;
     background-color: #212529;
     border-radius: 0.2857rem;
     box-shadow: inset 0 -0.1rem 0 rgba(34, 42, 66, 0.25);
}

kbd kbd {
     padding: 0;
     font-size: 100%;
     font-weight: 600;
     box-shadow: none;
}

.alert {
     position: relative;
     padding: 0.9rem 1.25rem;
     margin-bottom: 1rem;
     border: 0.0625rem solid transparent;
     border-radius: 0.2857rem;
}

.alert-heading {
     color: inherit;
}

.alert-link {
     font-weight: 600;
}

.alert-dismissible {
     padding-right: 3.8125rem;
}

.alert-dismissible .close {
     position: absolute;
     top: 0;
     right: 0;
     padding: 0.9rem 1.25rem;
     color: inherit;
}

.alert-primary {
     color: #e14eca;
     background-color: #e66ad2;
     border-color: #e66ad2;
}

.alert-primary hr {
     border-top-color: #e254cb;
}

.alert-primary .alert-link {
     color: #d725bb;
}

.alert-secondary {
     color: #f4f5f7;
     background-color: #f6f7f8;
     border-color: #f6f7f8;
}

.alert-secondary hr {
     border-top-color: #e8eaed;
}

.alert-secondary .alert-link {
     color: #d6dae2;
}

.alert-success {
     color: #00f2c3;
     background-color: #29f4cd;
     border-color: #29f4cd;
}

.alert-success hr {
     border-top-color: #11f3c7;
}

.alert-success .alert-link {
     color: #00bf9a;
}

.alert-info {
     color: #1d8cf8;
     background-color: #419ef9;
     border-color: #419ef9;
}

.alert-info hr {
     border-top-color: #2891f8;
}

.alert-info .alert-link {
     color: #0772db;
}

.alert-warning {
     color: #ff8d72;
     background-color: #ff9f89;
     border-color: #ff9f89;
}

.alert-warning hr {
     border-top-color: #ff8a70;
}

.alert-warning .alert-link {
     color: #ff643f;
}

.alert-danger {
     color: #fd5d93;
     background-color: #fd77a4;
     border-color: #fd77a4;
}

.alert-danger hr {
     border-top-color: #fd5e93;
}

.alert-danger .alert-link {
     color: #fc2b71;
}

.alert-light {
     color: #adb5bd;
     background-color: #bac1c8;
     border-color: #bac1c8;
}

.alert-light hr {
     border-top-color: #acb4bd;
}

.alert-light .alert-link {
     color: #919ca6;
}

.alert-dark {
     color: #212529;
     background-color: #45484b;
     border-color: #45484b;
}

.alert-dark hr {
     border-top-color: #393b3e;
}

.alert-dark .alert-link {
     color: #0a0c0d;
}

.alert-default {
     color: #344675;
     background-color: #54648b;
     border-color: #54648b;
}

.alert-default hr {
     border-top-color: #4a597b;
}

.alert-default .alert-link {
     color: #243152;
}

.alert-white {
     color: white;
     background-color: white;
     border-color: white;
}

.alert-white hr {
     border-top-color: #f2f2f2;
}

.alert-white .alert-link {
     color: #e6e6e6;
}

.alert-neutral {
     color: white;
     background-color: white;
     border-color: white;
}

.alert-neutral hr {
     border-top-color: #f2f2f2;
}

.alert-neutral .alert-link {
     color: #e6e6e6;
}

.alert-darker {
     color: black;
     background-color: #292929;
     border-color: #292929;
}

.alert-darker hr {
     border-top-color: #1c1c1c;
}

.alert-darker .alert-link {
     color: black;
}

.text-white {
     color: #ffffff !important;
}

.text-primary {
     color: #e14eca !important;
}

a.text-primary:hover,
a.text-primary:focus {
     color: #c221a9 !important;
}

.text-secondary {
     color: #f4f5f7 !important;
}

a.text-secondary:hover,
a.text-secondary:focus {
     color: #c8cdd7 !important;
}

.text-success {
     color: #00f2c3 !important;
}

a.text-success:hover,
a.text-success:focus {
     color: #00a685 !important;
}

.text-info {
     color: #1d8cf8 !important;
}

a.text-info:hover,
a.text-info:focus {
     color: #0666c2 !important;
}

.text-warning {
     color: #ff8d72 !important;
}

a.text-warning:hover,
a.text-warning:focus {
     color: #ff4f26 !important;
}

.text-danger {
     color: #fd5d93 !important;
}

a.text-danger:hover,
a.text-danger:focus {
     color: #fc1161 !important;
}

.text-light {
     color: #adb5bd !important;
}

a.text-light:hover,
a.text-light:focus {
     color: #838f9b !important;
}

.text-dark {
     color: #212529 !important;
}

a.text-dark:hover,
a.text-dark:focus {
     color: black !important;
}

.text-default {
     color: #344675 !important;
}

a.text-default:hover,
a.text-default:focus {
     color: #1c2640 !important;
}

.text-white {
     color: #ffffff !important;
}

a.text-white:hover,
a.text-white:focus {
     color: #d9d9d9 !important;
}

.text-neutral {
     color: #ffffff !important;
}

a.text-neutral:hover,
a.text-neutral:focus {
     color: #d9d9d9 !important;
}

.text-darker {
     color: black !important;
}

a.text-darker:hover,
a.text-darker:focus {
     color: black !important;
}

.text-body {
     color: #525f7f !important;
}

.text-muted {
     color: #6c757d !important;
}

.text-black-50 {
     color: rgba(34, 42, 66, 0.5) !important;
}

.text-white-50 {
     color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
     font: 0/0 a;
     color: transparent;
     text-shadow: none;
     background-color: transparent;
     border: 0;
}

.text-decoration-none {
     text-decoration: none !important;
}

.text-break {
     word-break: break-word !important;
     overflow-wrap: break-word !important;
}

.text-reset {
     color: inherit !important;
}

.visible {
     visibility: visible !important;
}

.invisible {
     visibility: hidden !important;
}

.alert {
     border: 0;
     color: #ffffff;
}

.alert .alert-link {
     color: #ffffff;
}

.alert.alert-success {
     background-color: #00bf9a;
}

.alert i.fa,
.alert i.tim-icons {
     font-size: 1rem;
}

.alert .close {
     color: #ffffff;
     opacity: .9;
     text-shadow: none;
     line-height: 0;
     outline: 0;
}

.alert span[data-notify="icon"] {
     font-size: 22px;
     display: block;
     left: 19px;
     position: absolute;
     top: 50%;
     margin-top: -11px;
}

.alert button.close {
     background: none;
     border-radius: 0px;
     text-transform: uppercase;
     text-decoration: none;
     display: inline-block;
     outline: 0;
     cursor: pointer;
     border: none;
     transition: all 0.3s ease;
     position: absolute;
     right: 15px;
     top: 50%;
     margin-top: -13px;
     width: 25px;
     height: 25px;
     padding: 3px;
}

.alert .close~span {
     display: block;
     max-width: 89%;
}

.alert.alert-with-icon {
     padding-left: 65px;
}

.alert-dismissible .close {
     top: 50%;
     right: 1.25rem;
     padding: 0;
     transform: translateY(-50%);
     color: rgba(255, 255, 255, 0.6);
     opacity: 1;
}

.alert-dismissible .close:hover,
.alert-dismissible .close:focus {
     color: rgba(255, 255, 255, 0.9);
     opacity: 1 !important;
}

@media (max-width: 575.98px) {
     .alert-dismissible .close {
          top: 1rem;
          right: .5rem;
     }
}

.alert-dismissible .close>span:not(.sr-only) {
     font-size: 1.5rem;
     background-color: transparent;
     color: rgba(255, 255, 255, 0.6);
}

.alert-dismissible .close:hover>span:not(.sr-only),
.alert-dismissible .close:focus>span:not(.sr-only) {
     background-color: transparent;
     color: rgba(255, 255, 255, 0.9);
}

.table {
     /*width: 100%;*/
     margin-bottom: 1rem;
     color: var(--text);
     background-color: transparent;
}

.table th,
.table td {
     padding: 1rem;
     vertical-align: top;
     border-top: 0.0625rem solid #e3e3e3;
}

.table thead th {
     vertical-align: bottom;
     border-bottom: 0.125rem solid #e3e3e3;
}

.table tbody+tbody {
     border-top: 0.125rem solid #e3e3e3;
}

.table-sm th,
.table-sm td {
     padding: 0.3rem;
}

.table-bordered {
     border: 0.0625rem solid #e3e3e3;
}

.table-bordered th,
.table-bordered td {
     border: 0.0625rem solid #e3e3e3;
}

.table-bordered thead th,
.table-bordered thead td {
     border-bottom-width: 0.125rem;
}

.table-borderless th,
.table-borderless td,
.table-borderless thead th,
.table-borderless tbody+tbody {
     border: 0;
}

.table-striped tbody tr:nth-of-type(odd) {
     background-color: rgba(34, 42, 66, 0.05);
}

.table-hover tbody tr:hover {
     color: var(--text);
     background-color: rgba(34, 42, 66, 0.075);
}

.table>thead>tr>th,
.table>tbody>tr>th,
.table>tfoot>tr>th,
.table>thead>tr>td,
.table>tbody>tr>td,
.table>tfoot>tr>td {
     border-color: rgba(255, 255, 255, 0.1);
     padding: 4px 7px;
     vertical-align: middle;
}

/* freeze th to top when scrolling
** need to set background color on th !
*/
th.sticky {
     position: sticky;
     position: -webkit-sticky;
     top: 0;
     z-index: 1;
}