@charset "UTF-8";


/* ==== ( Helper Classes ) ================================================== */

/* ---- ( Position ) -------------------------------------------------------- */

.p-static {
  position: static !important;
}

.p-relative {
  position: relative !important;
}

.p-absolute {
  position: absolute !important;
}

.p-sticky {
  position: -webkit-sticky !important;
  position: sticky !important;
}

.p-fixed {
  position: fixed !important;
}

/* ---- ( Display ) --------------------------------------------------------- */

.d-none {
  display: none !important;
}

.d-inline {
  display: inline !important;
}

.d-block {
  display: block !important;
}

.d-inline-block {
  display: inline-block !important;
}

.d-contents {
  display: contents !important;
}

.d-list-item {
  display: list-item !important;
}

.d-inline-list-item {
  display: inline-list-item !important;
}

.d-table {
  display: table !important;
}

.d-inline-table {
  display: inline-table !important;
}

.d-table-cell {
  display: table-cell !important;
}

.d-table-column {
  display: table-column !important;
}

.d-table-column-group {
  display: table-column-group !important;
}

.d-table-footer-group {
  display: table-footer-group !important;
}

.d-table-header-group {
  display: table-header-group !important;
}

.d-table-row {
  display: table-row !important;
}

.d-table-row-group {
  display: table-row-group !important;
}

.d-table-caption {
  display: table-caption !important;
}

.d-flex {
  display: -ms-flexbox !important;
  display: flex !important;
}

.d-inline-flex {
  display: -ms-inline-flexbox !important;
  display: inline-flex !important;
}

.d-grid {
  display: grid !important;
}

.d-inline-grid {
  display: inline-grid !important;
}

.d-ruby {
  display: ruby !important;
}

.d-ruby-base {
  display: ruby-base !important;
}

.d-ruby-text {
  display: ruby-text !important;
}

.d-ruby-base-container {
  display: ruby-base-container !important;
}

.d-ruby-text-container {
  display: ruby-text-container !important;
}

.d-run-in {
  display: run-in !important;
}

/* ---- ( Width ) ----------------------------------------------------------- */

.w-1 {
  width: 25% !important;
}

.w-2 {
  width: 50% !important;
}

.w-3 {
  width: 75% !important;
}

.w-4 {
  width: 100% !important;
}

/* ---- ( Height ) ---------------------------------------------------------- */

.h-1 {
  height: 25% !important;
}

.h-2 {
  height: 50% !important;
}

.h-3 {
  height: 75% !important;
}

.h-4 {
  height: 100% !important;
}

/* ---- ( Cursor ) ---------------------------------------------------------- */

.c-default {
  cursor: default !important;
}

.c-help {
  cursor: help !important;
}

.c-pointer {
  cursor: pointer !important;
}

/* ---- ( Float ) ----------------------------------------------------------- */

.left {
  float: left !important;
}

.right {
  float: right !important;
}

/* ---- ( Background ) ------------------------------------------------------ */

.b-primary {
  background-color: #3f51b5 !important;
}

.b-secondary {
  background-color: #009688 !important;
}

.b-success {
  background-color: #4caf50 !important;
}

.b-info {
  background-color: #2196f3 !important;
}

.b-warning {
  background-color: #ff9800 !important;
}

.b-danger {
  background-color: #f44336 !important;
}

.b-light {
  background-color: #f5f5f5 !important;
}

.b-dark {
  background-color: #424242 !important;
}

.b-white {
  background-color: #fff !important;
}

/* ---- ( Color ) ----------------------------------------------------------- */

.t-primary {
  color: #3f51b5 !important;
}

.t-secondary {
  color: #009688 !important;
}

.t-success {
  color: #4caf50 !important;
}

.t-info {
  color: #2196f3 !important;
}

.t-warning {
  color: #ff9800 !important;
}

.t-danger {
  color: #f44336 !important;
}

.t-light {
  color: #f5f5f5 !important;
}

.t-dark {
  color: #212121 !important;
}

.t-white {
  color: #fff !important;
}

.t-muted {
  color: #757575 !important;
}

.t-body {
  color: #424242 !important;
}

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

.t-black-50 {
  color: rgba(0, 0, 0, .5) !important;
}

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

/* ---- ( Text Align ) ------------------------------------------------------ */

.t-start {
  text-align: start !important;
}

.t-end {
  text-align: end !important;
}

.t-left {
  text-align: left !important;
}

.t-right {
  text-align: right !important;
}

.t-center {
  text-align: center !important;
}

.t-justify {
  text-align: justify !important;
}

/* ---- ( Text Transform ) -------------------------------------------------- */

.t-lower {
  text-transform: lowercase !important;
}

.t-upper {
  text-transform: uppercase !important;
}

.t-capital {
  text-transform: capitalize !important;
}

/* ---- ( Text Decoration ) -------------------------------------------------- */

.t-no-line {
  text-decoration: none !important;
}

.t-overline {
  text-decoration: overline !important;
}

.t-line-through {
  text-decoration: line-through !important;
}

.t-underline {
  text-decoration: underline !important;
}

/* ---- ( White Space ) ----------------------------------------------------- */

.t-no-wrap {
  white-space: nowrap !important;
}

/* ---- ( Font Style ) ------------------------------------------------------ */

.t-normal {
  font-style: normal !important;
}

.t-italic {
  font-style: italic !important;
}

/* ---- ( Text Misc ) ------------------------------------------------------- */

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

.t-hack {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

/* ---- ( Font Size ) ------------------------------------------------------- */

.s-10 {
  font-size: .625rem !important;
}

.s-12 {
  font-size: .75rem !important;
}

.s-small,
.s-14 {
  font-size: .875rem !important;
}

.s-normal,
.s-default,
.s-16 {
  font-size: 1rem !important;
}

.s-large,
.s-18 {
  font-size: 1.125rem !important;
}

.s-20 {
  font-size: 1.25rem !important;
}

.s-24 {
  font-size: 1.5rem !important;
}

.s-32 {
  font-size: 2rem !important;
}

/* ---- ( Font Weight ) ----------------------------------------------------- */

.w-thin,
.w-100 {
  font-weight: 100 !important;
}

.w-extra-light,
.w-200 {
  font-weight: 200 !important;
}

.w-light,
.w-300 {
  font-weight: 300 !important;
}

.w-normal,
.w-default,
.w-regular,
.w-400 {
  font-weight: 400 !important;
}

.w-medium,
.w-500 {
  font-weight: 500 !important;
}

.w-semi-bold,
.w-600 {
  font-weight: 600 !important;
}

.w-bold,
.w-700 {
  font-weight: 700 !important;
}

.w-extra-bold,
.w-800 {
  font-weight: 800 !important;
}

.w-black,
.w-900 {
  font-weight: 900 !important;
}

/* ---- ( Vertical Align ) -------------------------------------------------- */

.v-baseline {
  vertical-align: baseline !important;
}

.v-sub {
  vertical-align: sub !important;
}

.v-super {
  vertical-align: super !important;
}

.v-text-top {
  vertical-align: text-top !important;
}

.v-text-bottom {
  vertical-align: text-bottom !important;
}

.v-middle {
  vertical-align: middle !important;
}

.v-top {
  vertical-align: top !important;
}

.v-bottom {
  vertical-align: bottom !important;
}

/* ---- ( Visibility ) ------------------------------------------------------ */

.v-hidden {
  visibility: hidden !important;
}

.v-visible {
  visibility: visible !important;
}

.v-collapse {
  visibility: collapse !important;
}

/* ---- ( Align Content ) --------------------------------------------------- */

.a-content-center {
  -ms-flex-line-pack: center !important;
      align-content: center !important;
}

.a-content-start {
  -ms-flex-line-pack: start !important;
      align-content: start !important;
}

.a-content-end {
  -ms-flex-line-pack: end !important;
      align-content: end !important;
}

.a-content-flex-start {
  -ms-flex-line-pack: start !important;
      align-content: flex-start !important;
}

.a-content-flex-end {
  -ms-flex-line-pack: end !important;
      align-content: flex-end !important;
}

.a-content-around {
  -ms-flex-line-pack: distribute !important;
      align-content: space-around !important;
}

.a-content-between {
  -ms-flex-line-pack: justify !important;
      align-content: space-between !important;
}

.a-content-evenly {
  -ms-flex-line-pack: space-evenly !important;
      align-content: space-evenly !important;
}

.a-content-stretch {
  -ms-flex-line-pack: stretch !important;
      align-content: stretch !important;
}

/* ---- ( Align Items ) ----------------------------------------------------- */

.a-items-center {
  -ms-flex-align: center !important;
      align-items: center !important;
}

.a-items-start {
  -ms-flex-align: start !important;
      align-items: start !important;
}

.a-items-end {
  -ms-flex-align: end !important;
      align-items: end !important;
}

.a-items-flex-start {
  -ms-flex-align: start !important;
      align-items: flex-start !important;
}

.a-items-flex-end {
  -ms-flex-align: end !important;
      align-items: flex-end !important;
}

.a-items-stretch {
  -ms-flex-align: stretch !important;
      align-items: stretch !important;
}

/* ---- ( Align Self ) ------------------------------------------------------ */

.a-self-center {
  -ms-flex-item-align: center !important;
      align-self: center !important;
}

.a-self-start {
  -ms-flex-item-align: start !important;
      align-self: start !important;
}

.a-self-end {
  -ms-flex-item-align: end !important;
      align-self: end !important;
}

.a-self-flex-start {
  -ms-flex-item-align: start !important;
      align-self: flex-start !important;
}

.a-self-flex-end {
  -ms-flex-item-align: end !important;
      align-self: flex-end !important;
}

.a-self-stretch {
  -ms-flex-item-align: stretch !important;
      align-self: stretch !important;
}

/* ---- ( Justify Content ) ------------------------------------------------- */

.j-content-center  {
  -ms-flex-pack: center !important;
      justify-content: center !important;
}

.j-content-start {
  -ms-flex-pack: start !important;
      justify-content: start !important;
}

.j-content-end {
  -ms-flex-pack: end !important;
      justify-content: end !important;
}

.j-content-flex-start {
  -ms-flex-pack: start !important;
      justify-content: flex-start !important;
}

.j-content-flex-end {
  -ms-flex-pack: end !important;
      justify-content: flex-end !important;
}

.j-content-left {
  -ms-flex-pack: left !important;
      justify-content: left !important;
}

.j-content-right {
  -ms-flex-pack: right !important;
      justify-content: right !important;
}

.j-content-between {
  -ms-flex-pack: justify !important;
      justify-content: space-between !important;
}

.j-content-around {
  -ms-flex-pack: distribute !important;
      justify-content: space-around !important;
}

.j-content-evenly {
  -ms-flex-pack: space-evenly !important;
      justify-content: space-evenly !important;
}

.j-content-stretch {
  -ms-flex-pack: stretch !important;
      justify-content: stretch !important;
}

/* ---- ( Margin ) ---------------------------------------------------------- */

.m-auto {
  margin: auto !important;
}

.m-0 {
  margin: 0 !important;
}

.m-4 {
  margin: .25rem !important;
}

.m-8 {
  margin: .5rem !important;
}

.m-12 {
  margin: .75rem !important;
}

.m-16 {
  margin: 1rem !important;
}

.m-24 {
  margin: 1.5rem !important;
}

.m-32 {
  margin: 2rem !important;
}

.m-top-auto,
.m-y-auto {
  margin-top: auto !important;
}

.m-top-0,
.m-y-0 {
  margin-top: 0 !important;
}

.m-top-4,
.m-y-4 {
  margin-top: .25rem !important;
}

.m-top-8,
.m-y-8 {
  margin-top: .5rem !important;
}

.m-top-12,
.m-y-12 {
  margin-top: .75rem !important;
}

.m-top-16,
.m-y-16 {
  margin-top: 1rem !important;
}

.m-top-24,
.m-y-24 {
  margin-top: 1.5rem !important;
}

.m-top-32,
.m-y-32 {
  margin-top: 2rem !important;
}

.m-bottom-auto,
.m-y-auto {
  margin-bottom: auto !important;
}

.m-bottom-0,
.m-y-0 {
  margin-bottom: 0 !important;
}

.m-bottom-4,
.m-y-4 {
  margin-bottom: .25rem !important;
}

.m-bottom-8,
.m-y-8 {
  margin-bottom: .5rem !important;
}

.m-bottom-12,
.m-y-12 {
  margin-bottom: .75rem !important;
}

.m-bottom-16,
.m-y-16 {
  margin-bottom: 1rem !important;
}

.m-bottom-24,
.m-y-24 {
  margin-bottom: 1.5rem !important;
}

.m-bottom-32,
.m-y-32 {
  margin-bottom: 2rem !important;
}

.m-left-auto,
.m-x-auto {
  margin-left: auto !important;
}

.m-left-0,
.m-x-0 {
  margin-left: 0 !important;
}

.m-left-4,
.m-x-4 {
  margin-left: .25rem !important;
}

.m-left-8,
.m-x-8 {
  margin-left: .5rem !important;
}

.m-left-12,
.m-x-12 {
  margin-left: .75rem !important;
}

.m-left-16,
.m-x-16 {
  margin-left: 1rem !important;
}

.m-left-24,
.m-x-24 {
  margin-left: 1.5rem !important;
}

.m-left-32,
.m-x-32 {
  margin-left: 2rem !important;
}

.m-right-auto,
.m-x-auto {
  margin-right: auto !important;
}

.m-right-0,
.m-x-0 {
  margin-right: 0 !important;
}

.m-right-4,
.m-x-4 {
  margin-right: .25rem !important;
}

.m-right-8,
.m-x-8 {
  margin-right: .5rem !important;
}

.m-right-12,
.m-x-12 {
  margin-right: .75rem !important;
}

.m-right-16,
.m-x-16 {
  margin-right: 1rem !important;
}

.m-right-24,
.m-x-24 {
  margin-right: 1.5rem !important;
}

.m-right-32,
.m-x-32 {
  margin-right: 2rem !important;
}

/* ---- ( Padding ) ---------------------------------------------------------- */

.p-0 {
  padding: 0 !important;
}

.p-4 {
  padding: 0.25rem !important;
}

.p-8 {
  padding: 0.5rem !important;
}

.p-12 {
  padding: 0.75rem !important;
}

.p-16 {
  padding: 1rem !important;
}

.p-24 {
  padding: 1.5rem !important;
}

.p-32 {
  padding: 2rem !important;
}

.p-top-0,
.p-y-0 {
  padding-top: 0 !important;
}

.p-top-4,
.p-y-4 {
  padding-top: 0.25rem !important;
}

.p-top-8,
.p-y-8 {
  padding-top: 0.5rem !important;
}

.p-top-12,
.p-y-12 {
  padding-top: 0.75rem !important;
}

.p-top-16,
.p-y-16 {
  padding-top: 1rem !important;
}

.p-top-24,
.p-y-24 {
  padding-top: 1.5rem !important;
}

.p-top-32,
.p-y-32 {
  padding-top: 2rem !important;
}

.p-bottom-0,
.p-y-0 {
  padding-bottom: 0 !important;
}

.p-bottom-4,
.p-y-4 {
  padding-bottom: 0.25rem !important;
}

.p-bottom-8,
.p-y-8 {
  padding-bottom: 0.5rem !important;
}

.p-bottom-12,
.p-y-12 {
  padding-bottom: 0.75rem !important;
}

.p-bottom-16,
.p-y-16 {
  padding-bottom: 1rem !important;
}

.p-bottom-24,
.p-y-24 {
  padding-bottom: 1.5rem !important;
}

.p-bottom-32,
.p-y-32 {
  padding-bottom: 2rem !important;
}

.p-left-0,
.p-x-0 {
  padding-left: 0 !important;
}

.p-left-4,
.p-x-4 {
  padding-left: 0.25rem !important;
}

.p-left-8,
.p-x-8 {
  padding-left: 0.5rem !important;
}

.p-left-12,
.p-x-12 {
  padding-left: 0.75rem !important;
}

.p-left-16,
.p-x-16 {
  padding-left: 1rem !important;
}

.p-left-24,
.p-x-24 {
  padding-left: 1.5rem !important;
}

.p-left-32,
.p-x-32 {
  padding-left: 2rem !important;
}

.p-right-0,
.p-x-0 {
  padding-right: 0 !important;
}

.p-right-4,
.p-x-4 {
  padding-right: 0.25rem !important;
}

.p-right-8,
.p-x-8 {
  padding-right: 0.5rem !important;
}

.p-right-12,
.p-x-12 {
  padding-right: 0.75rem !important;
}

.p-right-16,
.p-x-16 {
  padding-right: 1rem !important;
}

.p-right-24,
.p-x-24 {
  padding-right: 1.5rem !important;
}

.p-right-32,
.p-x-32 {
  padding-right: 2rem !important;
}

/* ---- ( Border Radius ) --------------------------------------------------- */

.r-0 {
  border-radius: 0 !important;
}

.r-4 {
  border-radius: .25rem !important;
}

.r-8 {
  border-radius: .5rem !important;
}

.r-top-0 {
  border-top-left-radius: 0 !important;
  border-top-right-radius: 0 !important;
}

.r-top-4 {
  border-top-left-radius: .25rem !important;
  border-top-right-radius: .25rem !important;
}

.r-top-8 {
  border-top-left-radius: .5rem !important;
  border-top-right-radius: .5rem !important;
}

.r-bottom-0 {
  border-bottom-left-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.r-bottom-4 {
  border-bottom-left-radius: .25rem !important;
  border-bottom-right-radius: .25rem !important;
}

.r-bottom-8 {
  border-bottom-left-radius: .5rem !important;
  border-bottom-right-radius: .5rem !important;
}

.r-left-0 {
  border-top-left-radius: 0 !important;
  border-bottom-left-radius: 0 !important;
}

.r-left-4 {
  border-top-left-radius: .25rem !important;
  border-bottom-left-radius: .25rem !important;
}

.r-left-8 {
  border-top-left-radius: .5rem !important;
  border-bottom-left-radius: .5rem !important;
}

.r-right-0 {
  border-top-right-radius: 0 !important;
  border-bottom-right-radius: 0 !important;
}

.r-right-4 {
  border-top-right-radius: .25rem !important;
  border-bottom-right-radius: .25rem !important;
}

.r-right-8 {
  border-top-right-radius: .5rem !important;
  border-bottom-right-radius: .5rem !important;
}

.r-pill {
  border-radius: 50rem !important;
}

.r-circle {
  border-radius: 50% !important;
}

/* ---- ( Breakpoint ) ------------------------------------------------------ */

/* up */
@media (min-width: 576px) {
  .b-up-576 {
    display: none !important;
  }
}

@media (min-width: 768px) {
  .b-up-768 {
    display: none !important;
  }
}

@media (min-width: 992px) {
  .b-up-992 {
    display: none !important;
  }
}

@media (min-width: 1200px) {
  .b-up-1200 {
    display: none !important;
  }
}

/* down */
@media (max-width: 575.98px) {
  .b-down-575 {
    display: none !important;
  }
}

@media (max-width: 767.98px) {
  .b-down-767 {
    display: none !important;
  }
}

@media (max-width: 991.98px) {
  .b-down-991 {
    display: none !important;
  }
}

@media (max-width: 1199.98px) {
  .b-down-1199 {
    display: none !important;
  }
}

/* ---- ( Misc ) ------------------------------------------------------------ */

.hidden {
  display: none;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

.sr-only--focusable:active,
.sr-only--focusable:focus {
  position: static;
  width: auto;
  height: auto;
  overflow: visible;
  clip: auto;
  white-space: normal;
}

.clear {
  clear: both;
}

.clear-fix::after {
  display: block;
  clear: both;
  content: "";
}

.spacer {
  -ms-flex-positive: 1;
      flex-grow: 1;
}

.fixed-top {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1030;
}

.fixed-bottom {
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1030;
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
  .sticky-top {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 1020;
  }
}
