/* roboto-100 - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 100;
  src: url('../fonts/roboto-v29-latin-ext-100.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-100.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-100.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-100.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-100.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-100.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-100italic - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 100;
  src: url('../fonts/roboto-v29-latin-ext-100italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-100italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-100italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-100italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-100italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-100italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-300 - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/roboto-v29-latin-ext-300.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-300.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-300italic - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 300;
  src: url('../fonts/roboto-v29-latin-ext-300italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-300italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-300italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-300italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-300italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-300italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-regular - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/roboto-v29-latin-ext-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-regular.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-500 - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 500;
  src: url('../fonts/roboto-v29-latin-ext-500.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-500.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-500.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-500.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-500.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-italic - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/roboto-v29-latin-ext-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-500italic - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 500;
  src: url('../fonts/roboto-v29-latin-ext-500italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-500italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-500italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-500italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-500italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-500italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-700 - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/roboto-v29-latin-ext-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-700.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-700italic - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/roboto-v29-latin-ext-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-700italic.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-900 - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 900;
  src: url('../fonts/roboto-v29-latin-ext-900.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-900.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-900.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-900.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-900.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-900.svg#Roboto') format('svg'); /* Legacy iOS */
}
/* roboto-900italic - latin-ext */
@font-face {
  font-family: 'Roboto';
  font-style: italic;
  font-weight: 900;
  src: url('../fonts/roboto-v29-latin-ext-900italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('../fonts/roboto-v29-latin-ext-900italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/roboto-v29-latin-ext-900italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-900italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/roboto-v29-latin-ext-900italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/roboto-v29-latin-ext-900italic.svg#Roboto') format('svg'); /* Legacy iOS */
}


/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}

/*--------------------------------------------------------------
#-- Reset
--------------------------------------------------------------*/

:root {
  --primary-color: #2196f3;
  --color-error: #ff5252;
}

* {
  -webkit-box-sizing: border-box;
     -moz-box-sizing: border-box;
          box-sizing: border-box;
}

*:before, *:after {
  -webkit-box-sizing: inherit;
     -moz-box-sizing: inherit;
          box-sizing: inherit;
}

html {
  font-size: 16px;
  font-family: 'Roboto', sans-serif;
  
}

body {
  overflow-x: hidden;
  overflow-y: scroll;
  background-color: #fafafa;
  color: rgba(0, 0, 0, .87);
}

body.dark-mode {
  background-color: #121212;
  color: rgba(255, 255, 255, .87);
}

img {
  image-rendering: -webkit-optimize-contrast;
}

/*--------------------------------------------------------------
#-- Grid System
--------------------------------------------------------------*/

.container {
  padding-left: 16px;
  padding-right: 16px;
  margin-left: auto;
  margin-right: auto;
  max-width: 1264px;
}

.container.full-width {
  max-width: none;
}

.row {
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 16px;
}

.row:after {
  content: "";
  display: table;
  clear: both;
}


/*--------------------------------------------------------------
##- Grid System -> Columns
--------------------------------------------------------------*/

.col {
  float: left;
  width: 100%;
  min-height: 1px;
  padding: 0 8px;
  margin-bottom: 16px;
}

.col[class*="push-"],
.col[class*="pull-"] {
  position: relative;
}

/*--------------------------------------------------------------
### Grid System -> Columns -> Width
--------------------------------------------------------------*/

.col.xs-1 {
  width: 25%;
}

.col.xs-2 {
  width: 50%;
}

.col.xs-3 {
  width: 75%;
}

.col.xs-4 {
  width: 100%;
}

@media (min-width: 600px) {
  .col.sm-1 {
    width: 12.5%;
  }

  .col.sm-2 {
    width: 25%;
  }

  .col.sm-3 {
    width: 37.5%;
  }

  .col.sm-4 {
    width: 50%;
  }

  .col.sm-5 {
    width: 62.5%;
  }

  .col.sm-6 {
    width: 75%;
  }

  .col.sm-7 {
    width: 87.5%;
  }

  .col.sm-8 {
    width: 100%;
  }
}

@media (min-width: 960px) {
  .col.md-1 {
    width: 8.3333333333%;
  }

  .col.md-2 {
    width: 16.6666666667%;
  }

  .col.md-3 {
    width: 25%;
  }

  .col.md-4 {
    width: 33.3333333333%;
  }

  .col.md-5 {
    width: 41.6666666667%;
  }

  .col.md-6 {
    width: 50%;
  }

  .col.md-7 {
    width: 58.3333333333%;
  }

  .col.md-8 {
    width: 66.6666666667%;
  }

  .col.md-9 {
    width: 75%;
  }

  .col.md-10 {
    width: 83.3333333333%;
  }

  .col.md-11 {
    width: 91.6666666667%;
  }

  .col.md-12 {
    width: 100%;
  }
}

@media (min-width: 1264px) {
  .col.lg-1 {
    width: 8.3333333333%;
  }

  .col.lg-2 {
    width: 16.6666666667%;
  }

  .col.lg-3 {
    width: 25%;
  }

  .col.lg-4 {
    width: 33.3333333333%;
  }

  .col.lg-5 {
    width: 41.6666666667%;
  }

  .col.lg-6 {
    width: 50%;
  }

  .col.lg-7 {
    width: 58.3333333333%;
  }

  .col.lg-8 {
    width: 66.6666666667%;
  }

  .col.lg-9 {
    width: 75%;
  }

  .col.lg-10 {
    width: 83.3333333333%;
  }

  .col.lg-11 {
    width: 91.6666666667%;
  }

  .col.lg-12 {
    width: 100%;
  }
}

@media (min-width: 1904px) {
  .col.xl-1 {
    width: 8.3333333333%;
  }

  .col.xl-2 {
    width: 16.6666666667%;
  }

  .col.xl-3 {
    width: 25%;
  }

  .col.xl-4 {
    width: 33.3333333333%;
  }

  .col.xl-5 {
    width: 41.6666666667%;
  }

  .col.xl-6 {
    width: 50%;
  }

  .col.xl-7 {
    width: 58.3333333333%;
  }

  .col.xl-8 {
    width: 66.6666666667%;
  }

  .col.xl-9 {
    width: 75%;
  }

  .col.xl-10 {
    width: 83.3333333333%;
  }

  .col.xl-11 {
    width: 91.6666666667%;
  }

  .col.xl-12 {
    width: 100%;
  }
}

/*--------------------------------------------------------------
### Grid System -> Columns -> Offset
--------------------------------------------------------------*/

.col.offset-xs-1 {
  margin-left: 25%;
}

.col.offset-xs-2 {
  margin-left: 50%;
}

.col.offset-xs-3 {
  margin-left: 75%;
}

.col.offset-xs-4 {
  margin-left: 100%;
}

@media (min-width: 600px) {
  .col.offset-sm-0 {
    margin-left: 0;
  }

  .col.offset-sm-1 {
    margin-left: 12.5%;
  }

  .col.offset-sm-2 {
    margin-left: 25%;
  }

  .col.offset-sm-3 {
    margin-left: 37.5%;
  }

  .col.offset-sm-4 {
    margin-left: 50%;
  }

  .col.offset-sm-5 {
    margin-left: 62.5%;
  }

  .col.offset-sm-6 {
    margin-left: 75%;
  }

  .col.offset-sm-7 {
    margin-left: 87.5%;
  }

  .col.offset-sm-8 {
    margin-left: 100%;
  }
}

@media (min-width: 960px) {
  .col.offset-md-0 {
    margin-left: 0;
  }

  .col.offset-md-1 {
    margin-left: 8.3333333333%;
  }

  .col.offset-md-2 {
    margin-left: 16.6666666667%;
  }

  .col.offset-md-3 {
    margin-left: 25%;
  }

  .col.offset-md-4 {
    margin-left: 33.3333333333%;
  }

  .col.offset-md-5 {
    margin-left: 41.6666666667%;
  }

  .col.offset-md-6 {
    margin-left: 50%;
  }

  .col.offset-md-7 {
    margin-left: 58.3333333333%;
  }

  .col.offset-md-8 {
    margin-left: 66.6666666667%;
  }

  .col.offset-md-9 {
    margin-left: 75%;
  }

  .col.offset-md-10 {
    margin-left: 83.3333333333%;
  }

  .col.offset-md-11 {
    margin-left: 91.6666666667%;
  }

  .col.offset-md-12 {
    margin-left: 100%;
  }
}

@media (min-width: 1264px) {
  .col.offset-lg-0 {
    margin-left: 0;
  }

  .col.offset-lg-1 {
    margin-left: 8.3333333333%;
  }

  .col.offset-lg-2 {
    margin-left: 16.6666666667%;
  }

  .col.offset-lg-3 {
    margin-left: 25%;
  }

  .col.offset-lg-4 {
    margin-left: 33.3333333333%;
  }

  .col.offset-lg-5 {
    margin-left: 41.6666666667%;
  }

  .col.offset-lg-6 {
    margin-left: 50%;
  }

  .col.offset-lg-7 {
    margin-left: 58.3333333333%;
  }

  .col.offset-lg-8 {
    margin-left: 66.6666666667%;
  }

  .col.offset-lg-9 {
    margin-left: 75%;
  }

  .col.offset-lg-10 {
    margin-left: 83.3333333333%;
  }

  .col.offset-lg-11 {
    margin-left: 91.6666666667%;
  }

  .col.offset-lg-12 {
    margin-left: 100%;
  }
}

@media (min-width: 1904px) {
  .col.offset-xl-0 {
    width: 0;
  }

  .col.offset-xl-1 {
    width: 8.3333333333%;
  }

  .col.offset-xl-2 {
    width: 16.6666666667%;
  }

  .col.offset-xl-3 {
    width: 25%;
  }

  .col.offset-xl-4 {
    width: 33.3333333333%;
  }

  .col.offset-xl-5 {
    width: 41.6666666667%;
  }

  .col.offset-xl-6 {
    width: 50%;
  }

  .col.offset-xl-7 {
    width: 58.3333333333%;
  }

  .col.offset-xl-8 {
    width: 66.6666666667%;
  }

  .col.offset-xl-9 {
    width: 75%;
  }

  .col.offset-xl-10 {
    width: 83.3333333333%;
  }

  .col.offset-xl-11 {
    width: 91.6666666667%;
  }

  .col.offset-xl-12 {
    width: 100%;
  }
}

/*--------------------------------------------------------------
### Grid System -> Columns -> Pull
--------------------------------------------------------------*/

.col.pull-xs-1 {
  right: 25%;
}

.col.pull-xs-2 {
  right: 50%;
}

.col.pull-xs-3 {
  right: 75%;
}

.col.pull-xs-4 {
  right: 100%;
}

@media (min-width: 600px) {
  .col.pull-sm-0 {
    right: 0;
  }

  .col.pull-sm-1 {
    right: 12.5%;
  }

  .col.pull-sm-2 {
    right: 25%;
  }

  .col.pull-sm-3 {
    right: 37.5%;
  }

  .col.pull-sm-4 {
    right: 50%;
  }

  .col.pull-sm-5 {
    right: 62.5%;
  }

  .col.pull-sm-6 {
    right: 75%;
  }

  .col.pull-sm-7 {
    right: 87.5%;
  }

  .col.pull-sm-8 {
    right: 100%;
  }
}

@media (min-width:  960px) {
  .col.pull-md-0 {
    right: 0;
  }

  .col.pull-md-1 {
    right: 8.3333333333%;
  }

  .col.pull-md-2 {
    right: 16.6666666667%;
  }

  .col.pull-md-3 {
    right: 25%;
  }

  .col.pull-md-4 {
    right: 33.3333333333%;
  }

  .col.pull-md-5 {
    right: 41.6666666667%;
  }

  .col.pull-md-6 {
    right: 50%;
  }

  .col.pull-md-7 {
    right: 58.3333333333%;
  }

  .col.pull-md-8 {
    right: 66.6666666667%;
  }

  .col.pull-md-9 {
    right: 75%;
  }

  .col.pull-md-10 {
    right: 83.3333333333%;
  }

  .col.pull-md-11 {
    right: 91.6666666667%;
  }

  .col.pull-md-12 {
    right: 100%;
  }
}


@media (min-width: 1264px) {
  .col.pull-lg-0 {
    right: 0;
  }

  .col.pull-lg-1 {
    right: 8.3333333333%;
  }

  .col.pull-lg-2 {
    right: 16.6666666667%;
  }

  .col.pull-lg-3 {
    right: 25%;
  }

  .col.pull-lg-4 {
    right: 33.3333333333%;
  }

  .col.pull-lg-5 {
    right: 41.6666666667%;
  }

  .col.pull-lg-6 {
    right: 50%;
  }

  .col.pull-lg-7 {
    right: 58.3333333333%;
  }

  .col.pull-lg-8 {
    right: 66.6666666667%;
  }

  .col.pull-lg-9 {
    right: 75%;
  }

  .col.pull-lg-10 {
    right: 83.3333333333%;
  }

  .col.pull-lg-11 {
    right: 91.6666666667%;
  }

  .col.pull-lg-12 {
    right: 100%;
  }
}

@media (min-width: 1904px) {
  .col.pull-xl-0 {
    width: 0;
  }

  .col.pull-xl-1 {
    width: 8.3333333333%;
  }

  .col.pull-xl-2 {
    width: 16.6666666667%;
  }

  .col.pull-xl-3 {
    width: 25%;
  }

  .col.pull-xl-4 {
    width: 33.3333333333%;
  }

  .col.pull-xl-5 {
    width: 41.6666666667%;
  }

  .col.pull-xl-6 {
    width: 50%;
  }

  .col.pull-xl-7 {
    width: 58.3333333333%;
  }

  .col.pull-xl-8 {
    width: 66.6666666667%;
  }

  .col.pull-xl-9 {
    width: 75%;
  }

  .col.pull-xl-10 {
    width: 83.3333333333%;
  }

  .col.pull-xl-11 {
    width: 91.6666666667%;
  }

  .col.pull-xl-12 {
    width: 100%;
  }
}

/*--------------------------------------------------------------
### Grid System -> Columns -> Push
--------------------------------------------------------------*/

.col.push-xs-1 {
  left: 25%;
}

.col.push-xs-2 {
  left: 50%;
}

.col.push-xs-3 {
  left: 75%;
}

.col.push-xs-4 {
  left: 100%;
}

@media (min-width: 600px) {
  .col.push-sm-0 {
    left: 0;
  }

  .col.push-sm-1 {
    left: 12.5%;
  }

  .col.push-sm-2 {
    left: 25%;
  }

  .col.push-sm-3 {
    left: 37.5%;
  }

  .col.push-sm-4 {
    left: 50%;
  }

  .col.push-sm-5 {
    left: 62.5%;
  }

  .col.push-sm-6 {
    left: 75%;
  }

  .col.push-sm-7 {
    left: 87.5%;
  }

  .col.push-sm-8 {
    left: 100%;
  }
}

@media (min-width: 960px) {
  .col.push-md-0 {
    left: 0;
  }

  .col.push-md-1 {
    left: 8.3333333333%;
  }

  .col.push-md-2 {
    left: 16.6666666667%;
  }

  .col.push-md-3 {
    left: 25%;
  }

  .col.push-md-4 {
    left: 33.3333333333%;
  }

  .col.push-md-5 {
    left: 41.6666666667%;
  }

  .col.push-md-6 {
    left: 50%;
  }

  .col.push-md-7 {
    left: 58.3333333333%;
  }

  .col.push-md-8 {
    left: 66.6666666667%;
  }

  .col.push-md-9 {
    left: 75%;
  }

  .col.push-md-10 {
    left: 83.3333333333%;
  }

  .col.push-md-11 {
    left: 91.6666666667%;
  }

  .col.push-md-12 {
    left: 100%;
  }
}

@media (min-width: 1264px) {
  .col.push-lg-0 {
    left: 0;
  }

  .col.push-lg-1 {
    left: 8.3333333333%;
  }

  .col.push-lg-2 {
    left: 16.6666666667%;
  }

  .col.push-lg-3 {
    left: 25%;
  }

  .col.push-lg-4 {
    left: 33.3333333333%;
  }

  .col.push-lg-5 {
    left: 41.6666666667%;
  }

  .col.push-lg-6 {
    left: 50%;
  }

  .col.push-lg-7 {
    left: 58.3333333333%;
  }

  .col.push-lg-8 {
    left: 66.6666666667%;
  }

  .col.push-lg-9 {
    left: 75%;
  }

  .col.push-lg-10 {
    left: 83.3333333333%;
  }

  .col.push-lg-11 {
    left: 91.6666666667%;
  }

  .col.push-lg-12 {
    left: 100%;
  }
}

@media (min-width: 1904px) {
  .col.push-xl-0 {
    width: 0;
  }

  .col.push-xl-1 {
    width: 8.3333333333%;
  }

  .col.push-xl-2 {
    width: 16.6666666667%;
  }

  .col.push-xl-3 {
    width: 25%;
  }

  .col.push-xl-4 {
    width: 33.3333333333%;
  }

  .col.push-xl-5 {
    width: 41.6666666667%;
  }

  .col.push-xl-6 {
    width: 50%;
  }

  .col.push-xl-7 {
    width: 58.3333333333%;
  }

  .col.push-xl-8 {
    width: 66.6666666667%;
  }

  .col.push-xl-9 {
    width: 75%;
  }

  .col.push-xl-10 {
    width: 83.3333333333%;
  }

  .col.push-xl-11 {
    width: 91.6666666667%;
  }

  .col.push-xl-12 {
    width: 100%;
  }
}

/*--------------------------------------------------------------
### Radius
--------------------------------------------------------------*/

.radius-xs-0,
.radius-xs-0.sheet:before {
  border-radius: 0px !important;
}

.radius-xs-2,
.radius-xs-2.sheet:before {
  border-radius: 2px !important;
}

.radius-xs-4,
.radius-xs-4.sheet:before {
  border-radius: 4px !important;
}

.radius-xs-8,
.radius-xs-8.sheet:before {
  border-radius: 8px !important;
}

.radius-xs-24,
.radius-xs-24.sheet:before {
  border-radius: 24px !important;
}

.radius-xs-pill,
.radius-xs-pill.sheet:before {
  border-radius: 9999px !important;
}

.radius-xs-circle,
.radius-xs-circle.sheet:before {
  border-radius: 50% !important;
}

@media (min-width: 600px) {
  .radius-sm-0,
  .radius-sm-0.sheet:before {
    border-radius: 0px !important;
  }

  .radius-sm-2,
  .radius-sm-2.sheet:before {
    border-radius: 2px !important;
  }

  .radius-sm-4,
  .radius-sm-4.sheet:before {
    border-radius: 4px !important;
  }

  .radius-sm-8,
  .radius-sm-8.sheet:before {
    border-radius: 8px !important;
  }

  .radius-sm-24,
  .radius-sm-24.sheet:before {
    border-radius: 24px !important;
  }

  .radius-sm-pill,
  .radius-sm-pill.sheet:before {
    border-radius: 9999px !important;
  }

  .radius-sm-circle,
  .radius-sm-circle.sheet:before {
    border-radius: 50% !important;
  }
}

@media (min-width: 960px) {
  .radius-md-0,
  .radius-md-0.sheet:before {
    border-radius: 0px !important;
  }

  .radius-md-2,
  .radius-md-2.sheet:before {
    border-radius: 2px !important;
  }

  .radius-md-4,
  .radius-md-4.sheet:before {
    border-radius: 4px !important;
  }

  .radius-md-8,
  .radius-md-8.sheet:before {
    border-radius: 8px !important;
  }

  .radius-md-24,
  .radius-md-24.sheet:before {
    border-radius: 24px !important;
  }

  .radius-md-pill,
  .radius-md-pill.sheet:before {
    border-radius: 9999px !important;
  }

  .radius-md-circle,
  .radius-md-circle.sheet:before {
    border-radius: 50% !important;
  }
}

@media (min-width: 1264px) {
  .radius-lg-0 ,
  .radius-lg-0.sheet:before{
    border-radius: 0px !important;
  }

  .radius-lg-2,
  .radius-lg-2.sheet:before {
    border-radius: 2px !important;
  }

  .radius-lg-4,
  .radius-lg-4.sheet:before {
    border-radius: 4px !important;
  }

  .radius-lg-8,
  .radius-lg-8.sheet:before {
    border-radius: 8px !important;
  }

  .radius-lg-24,
  .radius-lg-24.sheet:before {
    border-radius: 24px !important;
  }

  .radius-lg-pill,
  .radius-lg-pill.sheet:before {
    border-radius: 9999px !important;
  }

  .radius-lg-circle,
  .radius-lg-circle.sheet:before {
    border-radius: 50% !important;
  }
}

@media (min-width: 1904px) {
  .radius-xl-0,
  .radius-xl-0.sheet:before {
    border-radius: 0px !important;
  }

  .radius-xl-2,
  .radius-xl-2.sheet:before {
    border-radius: 2px !important;
  }

  .radius-xl-4,
  .radius-xl-4.sheet:before {
    border-radius: 4px !important;
  }

  .radius-xl-8,
  .radius-xl-8.sheet:before {
    border-radius: 8px !important;
  }

  .radius-xl-24,
  .radius-xl-24.sheet:before {
    border-radius: 24px !important;
  }

  .radius-xl-pill,
  .radius-xl-pill.sheet:before {
    border-radius: 9999px !important;
  }

  .radius-xl-circle,
  .radius-xl-circle.sheet:before {
    border-radius: 50% !important;
  }
}

/*--------------------------------------------------------------
### Typography
--------------------------------------------------------------*/

h1,
.text-heading-1 {
  font-weight: 300;
  font-size: 96px !important;
  line-height: 120px;
  letter-spacing: -1.5px !important;
  margin: 0 !important;
}

h2,
.text-heading-2 {
  font-weight: 300;
  font-size: 60px !important;
  line-height: 72px;
  letter-spacing: -.5px !important;
  margin: 0;
}

h3,
.text-heading-3 {
  font-weight: 400;
  font-size: 48px !important;
  line-height: 64px;
  letter-spacing: 0 !important;
  margin: 0;
}

h4,
.text-heading-4 {
  font-weight: 400;
  font-size:32px !important;
  line-height: 40px;
  letter-spacing: .25px !important;
  margin: 0;
}

h5,
.text-heading-5 {
  font-weight: 400;
  font-size: 24px !important;
  line-height: 32px;
  letter-spacing: 0 !important;
  margin: 0;
}

h6,
.text-heading-6 {
  font-weight: 400;
  font-size: 20px !important;
  line-height: 32px;
  letter-spacing: .15px !important;
  margin: 0;
}


.text-subtitle-1 {
  font-size: 16px !important;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: .15px !important;
}

.text-subtitle-2 {
  font-size: 14px !important;
  font-weight: 500;
  line-height: 24px;
  letter-spacing: .1px !important;
}

body,
p,
.text-body-1 {
  font-size: 16px !important;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: .5px !important;
  margin-bottom: 16px;
}

.text-body-2 {
  font-size: 14px !important;
  font-weight: 400;
  line-height: 24px;
  letter-spacing: 0.25px !important;
  margin-bottom: 16px;
}

.text-button {
  font-weight: 500;
  line-height: 16px;
  letter-spacing: 1.25px !important;
  text-transform: uppercase!important;
  font-size: 14px !important;
}

.text-caption {
  font-size: 12px !important;
  font-weight: 400;
  line-height: 16px;
  letter-spacing: .4px !important;
}

.text-overline {
  font-size: 10px !important;
  font-weight: 500;
  line-height: 16px;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

code, kbd, pre, samp {
  font-size: 14px;
  line-height: 6px;
  padding: 0 8px;
  font-family: monospace,monospace;
  background-color: rgba(0,0,0,.05);
  border-radius: 4px;
}

.dark-mode code,
.dark-mode kbd,
.dark-mode pre,
.dark-mode samp {
  background-color: rgba(255,255,255,.1);
}

.dark-mode .light-mode code,
.dark-mode .light-mode kbd,
.dark-mode .light-mode pre,
.dark-mode .light-mode samp {
  background-color: rgba(0,0,0,.05);
}

.text-bold {
  font-weight: bold;
}

.line-through {
  text-decoration: line-through !important;
}

/*--------------------------------------------------------------
### Margin
--------------------------------------------------------------*/

.m-xs-0 {
  margin: 0 !important;
}

.m-xs-4 {
  margin: 4px !important;
}

.m-xs-8 {
  margin: 8px !important;
}

.m-xs-16 {
  margin: 16px !important;
}

.m-xs-24 {
  margin: 24px !important;
}

.m-xs-40 {
  margin: 40px !important;
}

.m-xs-80 {
  margin: 80px !important;
}

.ml-xs-0 {
  margin-left: 0 !important;
}

.ml-xs-4 {
  margin-left: 4px !important;
}

.ml-xs-8 {
  margin-left: 8px !important;
}

.ml-xs-16 {
  margin-left: 16px !important;
}

.ml-xs-24 {
  margin-left: 24px !important;
}

.ml-xs-40 {
  margin-left: 40px !important;
}

.ml-xs-80 {
  margin-left: 80px !important;
}

.mr-xs-0 {
  margin-right: 0 !important;
}

.mr-xs-4 {
  margin-right: 4px !important;
}

.mr-xs-8 {
  margin-right: 8px !important;
}

.mr-xs-16 {
  margin-right: 16px !important;
}

.mr-xs-24 {
  margin-right: 24px !important;
}

.mr-xs-40 {
  margin-right: 40px !important;
}

.mr-xs-80 {
  margin-right: 80px !important;
}

.mt-xs-0 {
  margin-top: 0 !important;
}

.mt-xs-4 {
  margin-top: 4px !important;
}

.mt-xs-8 {
  margin-top: 8px !important;
}

.mt-xs-16 {
  margin-top: 16px !important;
}

.mt-xs-24 {
  margin-top: 24px !important;
}

.mt-xs-40 {
  margin-top: 40px !important;
}

.mt-xs-80 {
  margin-top: 80px !important;
}

.mb-xs-0 {
  margin-bottom: 0 !important;
}

.mb-xs-4 {
  margin-bottom: 4px !important;
}

.mb-xs-8 {
  margin-bottom: 8px !important;
}

.mb-xs-16 {
  margin-bottom: 16px !important;
}

.mb-xs-24 {
  margin-bottom: 24px !important;
}

.mb-xs-40 {
  margin-bottom: 40px !important;
}

.mb-xs-80 {
  margin-bottom: 80px !important;
}

@media (min-width: 600px) {
  .m-sm-0 {
    margin: 0 !important;
  }

  .m-sm-4 {
    margin: 4px !important;
  }

  .m-sm-8 {
    margin: 8px !important;
  }

  .m-sm-16 {
    margin: 16px !important;
  }

  .m-sm-24 {
    margin: 24px !important;
  }

  .m-sm-40 {
    margin: 40px !important;
  }

  .m-sm-80 {
    margin: 80px !important;
  }

  .ml-sm-4 {
    margin-left: 4px !important;
  }

  .ml-sm-8 {
    margin-left: 8px !important;
  }

  .ml-sm-16 {
    margin-left: 16px !important;
  }

  .ml-sm-24 {
    margin-left: 24px !important;
  }

  .ml-sm-40 {
    margin-left: 40px !important;
  }

  .ml-sm-80 {
    margin-left: 80px !important;
  }

  .mr-sm-0 {
    margin-right: 0 !important;
  }

  .mr-sm-4 {
    margin-right: 4px !important;
  }

  .mr-sm-8 {
    margin-right: 8px !important;
  }

  .mr-sm-16 {
    margin-right: 16px !important;
  }

  .mr-sm-24 {
    margin-right: 24px !important;
  }

  .mr-sm-40 {
    margin-right: 40px !important;
  }

  .mr-sm-80 {
    margin-right: 80px !important;
  }

  .mt-sm-0 {
    margin-top: 0 !important;
  }

  .mt-sm-4 {
    margin-top: 4px !important;
  }

  .mt-sm-8 {
    margin-top: 8px !important;
  }

  .mt-sm-16 {
    margin-top: 16px !important;
  }

  .mt-sm-24 {
    margin-top: 24px !important;
  }

  .mt-sm-40 {
    margin-top: 40px !important;
  }

  .mt-sm-80 {
    margin-top: 80px !important;
  }

  .mb-sm-0 {
    margin-bottom: 0 !important;
  }

  .mb-sm-4 {
    margin-bottom: 4px !important;
  }

  .mb-sm-8 {
    margin-bottom: 8px !important;
  }

  .mb-sm-16 {
    margin-bottom: 16px !important;
  }

  .mb-sm-24 {
    margin-bottom: 24px !important;
  }

  .mb-sm-40 {
    margin-bottom: 40px !important;
  }

  .mb-sm-80 {
    margin-bottom: 80px !important;
  }
}

@media (min-width: 960px) {
  .m-md-0 {
    margin: 0 !important;
  }

  .m-md-4 {
    margin: 4px !important;
  }

  .m-md-8 {
    margin: 8px !important;
  }

  .m-md-16 {
    margin: 16px !important;
  }

  .m-md-24 {
    margin: 24px !important;
  }

  .m-md-40 {
    margin: 40px !important;
  }

  .m-md-80 {
    margin: 80px !important;
  }

  .ml-md-4 {
    margin-left: 4px !important;
  }

  .ml-md-8 {
    margin-left: 8px !important;
  }

  .ml-md-16 {
    margin-left: 16px !important;
  }

  .ml-md-24 {
    margin-left: 24px !important;
  }

  .ml-md-40 {
    margin-left: 40px !important;
  }

  .ml-md-80 {
    margin-left: 80px !important;
  }

  .mr-md-0 {
    margin-right: 0 !important;
  }

  .mr-md-4 {
    margin-right: 4px !important;
  }

  .mr-md-8 {
    margin-right: 8px !important;
  }

  .mr-md-16 {
    margin-right: 16px !important;
  }

  .mr-md-24 {
    margin-right: 24px !important;
  }

  .mr-md-40 {
    margin-right: 40px !important;
  }

  .mr-md-80 {
    margin-right: 80px !important;
  }

  .mt-md-0 {
    margin-top: 0 !important;
  }

  .mt-md-4 {
    margin-top: 4px !important;
  }

  .mt-md-8 {
    margin-top: 8px !important;
  }

  .mt-md-16 {
    margin-top: 16px !important;
  }

  .mt-md-24 {
    margin-top: 24px !important;
  }

  .mt-md-40 {
    margin-top: 40px !important;
  }

  .mt-md-80 {
    margin-top: 80px !important;
  }

  .mb-md-0 {
    margin-bottom: 0 !important;
  }

  .mb-md-4 {
    margin-bottom: 4px !important;
  }

  .mb-md-8 {
    margin-bottom: 8px !important;
  }

  .mb-md-16 {
    margin-bottom: 16px !important;
  }

  .mb-md-24 {
    margin-bottom: 24px !important;
  }

  .mb-md-40 {
    margin-bottom: 40px !important;
  }

  .mb-md-80 {
    margin-bottom: 80px !important;
  }
}

@media (min-width: 1264px) {
  .m-lg-0 {
    margin: 0 !important;
  }

  .m-lg-4 {
    margin: 4px !important;
  }

  .m-lg-8 {
    margin: 8px !important;
  }

  .m-lg-16 {
    margin: 16px !important;
  }

  .m-lg-24 {
    margin: 24px !important;
  }

  .m-lg-40 {
    margin: 40px !important;
  }

  .m-lg-80 {
    margin: 80px !important;
  }

  .ml-lg-4 {
    margin-left: 4px !important;
  }

  .ml-lg-8 {
    margin-left: 8px !important;
  }

  .ml-lg-16 {
    margin-left: 16px !important;
  }

  .ml-lg-24 {
    margin-left: 24px !important;
  }

  .ml-lg-40 {
    margin-left: 40px !important;
  }

  .ml-lg-80 {
    margin-left: 80px !important;
  }

  .mr-lg-0 {
    margin-right: 0 !important;
  }

  .mr-lg-4 {
    margin-right: 4px !important;
  }

  .mr-lg-8 {
    margin-right: 8px !important;
  }

  .mr-lg-16 {
    margin-right: 16px !important;
  }

  .mr-lg-24 {
    margin-right: 24px !important;
  }

  .mr-lg-40 {
    margin-right: 40px !important;
  }

  .mr-lg-80 {
    margin-right: 80px !important;
  }

  .mt-lg-0 {
    margin-top: 0 !important;
  }

  .mt-lg-4 {
    margin-top: 4px !important;
  }

  .mt-lg-8 {
    margin-top: 8px !important;
  }

  .mt-lg-16 {
    margin-top: 16px !important;
  }

  .mt-lg-24 {
    margin-top: 24px !important;
  }

  .mt-lg-40 {
    margin-top: 40px !important;
  }

  .mt-lg-80 {
    margin-top: 80px !important;
  }

  .mb-lg-0 {
    margin-bottom: 0 !important;
  }

  .mb-lg-4 {
    margin-bottom: 4px !important;
  }

  .mb-lg-8 {
    margin-bottom: 8px !important;
  }

  .mb-lg-16 {
    margin-bottom: 16px !important;
  }

  .mb-lg-24 {
    margin-bottom: 24px !important;
  }

  .mb-lg-40 {
    margin-bottom: 40px !important;
  }

  .mb-lg-80 {
    margin-bottom: 80px !important;
  }
}

@media (min-width: 1904px) {
  .m-xl-0 {
    margin: 0 !important;
  }

  .m-xl-4 {
    margin: 4px !important;
  }

  .m-xl-8 {
    margin: 8px !important;
  }

  .m-xl-16 {
    margin: 16px !important;
  }

  .m-xl-24 {
    margin: 24px !important;
  }

  .m-xl-40 {
    margin: 40px !important;
  }

  .m-xl-80 {
    margin: 80px !important;
  }

  .ml-xl-4 {
    margin-left: 4px !important;
  }

  .ml-xl-8 {
    margin-left: 8px !important;
  }

  .ml-xl-16 {
    margin-left: 16px !important;
  }

  .ml-xl-24 {
    margin-left: 24px !important;
  }

  .ml-xl-40 {
    margin-left: 40px !important;
  }

  .ml-xl-80 {
    margin-left: 80px !important;
  }

  .mr-xl-0 {
    margin-right: 0 !important;
  }

  .mr-xl-4 {
    margin-right: 4px !important;
  }

  .mr-xl-8 {
    margin-right: 8px !important;
  }

  .mr-xl-16 {
    margin-right: 16px !important;
  }

  .mr-xl-24 {
    margin-right: 24px !important;
  }

  .mr-xl-40 {
    margin-right: 40px !important;
  }

  .mr-xl-80 {
    margin-right: 80px !important;
  }

  .mt-xl-0 {
    margin-top: 0 !important;
  }

  .mt-xl-4 {
    margin-top: 4px !important;
  }

  .mt-xl-8 {
    margin-top: 8px !important;
  }

  .mt-xl-16 {
    margin-top: 16px !important;
  }

  .mt-xl-24 {
    margin-top: 24px !important;
  }

  .mt-xl-40 {
    margin-top: 40px !important;
  }

  .mt-xl-80 {
    margin-top: 80px !important;
  }

  .mb-xl-0 {
    margin-bottom: 0 !important;
  }

  .mb-xl-4 {
    margin-bottom: 4px !important;
  }

  .mb-xl-8 {
    margin-bottom: 8px !important;
  }

  .mb-xl-16 {
    margin-bottom: 16px !important;
  }

  .mb-xl-24 {
    margin-bottom: 24px !important;
  }

  .mb-xl-40 {
    margin-bottom: 40px !important;
  }

  .mb-xl-80 {
    margin-bottom: 80px !important;
  }
}

/*--------------------------------------------------------------
### Padding
--------------------------------------------------------------*/

.p-xs-0 {
  padding: 0 !important;
}

.p-xs-4 {
  padding: 4px !important;
}

.p-xs-8 {
  padding: 8px !important;
}

.p-xs-16 {
  padding: 16px !important;
}

.p-xs-24 {
  padding: 24px !important;
}

.p-xs-40 {
  padding: 40px !important;
}

.p-xs-80 {
  padding: 80px !important;
}

.pl-xs-0 {
  padding-left: 0 !important;
}

.pl-xs-4 {
  padding-left: 4px !important;
}

.pl-xs-8 {
  padding-left: 8px !important;
}

.pl-xs-16 {
  padding-left: 16px !important;
}

.pl-xs-24 {
  padding-left: 24px !important;
}

.pl-xs-40 {
  padding-left: 40px !important;
}

.pl-xs-80 {
  padding-left: 80px !important;
}

.pr-xs-0 {
  padding-right: 0 !important;
}

.pr-xs-4 {
  padding-right: 4px !important;
}

.pr-xs-8 {
  padding-right: 8px !important;
}

.pr-xs-16 {
  padding-right: 16px !important;
}

.pr-xs-24 {
  padding-right: 24px !important;
}

.pr-xs-40 {
  padding-right: 40px !important;
}

.pr-xs-80 {
  padding-right: 80px !important;
}

.pt-xs-0 {
  padding-top: 0 !important;
}

.pt-xs-2 {
  padding-top: 2px !important;
}


.pt-xs-4 {
  padding-top: 4px !important;
}

.pt-xs-8 {
  padding-top: 8px !important;
}

.pt-xs-16 {
  padding-top: 16px !important;
}

.pt-xs-24 {
  padding-top: 24px !important;
}

.pt-xs-40 {
  padding-top: 40px !important;
}

.pt-xs-80 {
  padding-top: 80px !important;
}

.pb-xs-0 {
  padding-bottom: 0 !important;
}

.pb-xs-4 {
  padding-bottom: 4px !important;
}

.pb-xs-8 {
  padding-bottom: 8px !important;
}

.pb-xs-16 {
  padding-bottom: 16px !important;
}

.pb-xs-24 {
  padding-bottom: 24px !important;
}

.pb-xs-40 {
  padding-bottom: 40px !important;
}

.pb-xs-80 {
  padding-bottom: 80px !important;
}

@media (min-width: 600px) {
  .p-sm-0 {
    padding: 0 !important;
  }

  .p-sm-4 {
    padding: 4px !important;
  }

  .p-sm-8 {
    padding: 8px !important;
  }

  .p-sm-16 {
    padding: 16px !important;
  }

  .p-sm-24 {
    padding: 24px !important;
  }

  .p-sm-40 {
    padding: 40px !important;
  }

  .p-sm-80 {
    padding: 80px !important;
  }

  .pl-sm-4 {
    padding-left: 4px !important;
  }

  .pl-sm-8 {
    padding-left: 8px !important;
  }

  .pl-sm-16 {
    padding-left: 16px !important;
  }

  .pl-sm-24 {
    padding-left: 24px !important;
  }

  .pl-sm-40 {
    padding-left: 40px !important;
  }

  .pl-sm-80 {
    padding-left: 80px !important;
  }

  .pr-sm-0 {
    padding-right: 0 !important;
  }

  .pr-sm-4 {
    padding-right: 4px !important;
  }

  .pr-sm-8 {
    padding-right: 8px !important;
  }

  .pr-sm-16 {
    padding-right: 16px !important;
  }

  .pr-sm-24 {
    padding-right: 24px !important;
  }

  .pr-sm-40 {
    padding-right: 40px !important;
  }

  .pr-sm-80 {
    padding-right: 80px !important;
  }

  .pt-sm-0 {
    padding-top: 0 !important;
  }

  .pt-sm-4 {
    padding-top: 4px !important;
  }

  .pt-sm-8 {
    padding-top: 8px !important;
  }

  .pt-sm-16 {
    padding-top: 16px !important;
  }

  .pt-sm-24 {
    padding-top: 24px !important;
  }

  .pt-sm-40 {
    padding-top: 40px !important;
  }

  .pt-sm-80 {
    padding-top: 80px !important;
  }

  .pb-sm-0 {
    padding-bottom: 0 !important;
  }

  .pb-sm-4 {
    padding-bottom: 4px !important;
  }

  .pb-sm-8 {
    padding-bottom: 8px !important;
  }

  .pb-sm-16 {
    padding-bottom: 16px !important;
  }

  .pb-sm-24 {
    padding-bottom: 24px !important;
  }

  .pb-sm-40 {
    padding-bottom: 40px !important;
  }

  .pb-sm-80 {
    padding-bottom: 80px !important;
  }
}

@media (min-width: 960px) {
  .p-md-0 {
    padding: 0 !important;
  }

  .p-md-4 {
    padding: 4px !important;
  }

  .p-md-8 {
    padding: 8px !important;
  }

  .p-md-16 {
    padding: 16px !important;
  }

  .p-md-24 {
    padding: 24px !important;
  }

  .p-md-40 {
    padding: 40px !important;
  }

  .p-md-80 {
    padding: 80px !important;
  }

  .pl-md-4 {
    padding-left: 4px !important;
  }

  .pl-md-8 {
    padding-left: 8px !important;
  }

  .pl-md-16 {
    padding-left: 16px !important;
  }

  .pl-md-24 {
    padding-left: 24px !important;
  }

  .pl-md-40 {
    padding-left: 40px !important;
  }

  .pl-md-80 {
    padding-left: 80px !important;
  }

  .pr-md-0 {
    padding-right: 0 !important;
  }

  .pr-md-4 {
    padding-right: 4px !important;
  }

  .pr-md-8 {
    padding-right: 8px !important;
  }

  .pr-md-16 {
    padding-right: 16px !important;
  }

  .pr-md-24 {
    padding-right: 24px !important;
  }

  .pr-md-40 {
    padding-right: 40px !important;
  }

  .pr-md-80 {
    padding-right: 80px !important;
  }

  .pt-md-0 {
    padding-top: 0 !important;
  }

  .pt-md-4 {
    padding-top: 4px !important;
  }

  .pt-md-8 {
    padding-top: 8px !important;
  }

  .pt-md-16 {
    padding-top: 16px !important;
  }

  .pt-md-24 {
    padding-top: 24px !important;
  }

  .pt-md-40 {
    padding-top: 40px !important;
  }

  .pt-md-80 {
    padding-top: 80px !important;
  }

  .pb-md-0 {
    padding-bottom: 0 !important;
  }

  .pb-md-4 {
    padding-bottom: 4px !important;
  }

  .pb-md-8 {
    padding-bottom: 8px !important;
  }

  .pb-md-16 {
    padding-bottom: 16px !important;
  }

  .pb-md-24 {
    padding-bottom: 24px !important;
  }

  .pb-md-40 {
    padding-bottom: 40px !important;
  }

  .pb-md-80 {
    padding-bottom: 80px !important;
  }
}

@media (min-width: 1264px) {
  .p-lg-0 {
    padding: 0 !important;
  }

  .p-lg-4 {
    padding: 4px !important;
  }

  .p-lg-8 {
    padding: 8px !important;
  }

  .p-lg-16 {
    padding: 16px !important;
  }

  .p-lg-24 {
    padding: 24px !important;
  }

  .p-lg-40 {
    padding: 40px !important;
  }

  .p-lg-80 {
    padding: 80px !important;
  }

  .pl-lg-4 {
    padding-left: 4px !important;
  }

  .pl-lg-8 {
    padding-left: 8px !important;
  }

  .pl-lg-16 {
    padding-left: 16px !important;
  }

  .pl-lg-24 {
    padding-left: 24px !important;
  }

  .pl-lg-40 {
    padding-left: 40px !important;
  }

  .pl-lg-80 {
    padding-left: 80px !important;
  }

  .pr-lg-0 {
    padding-right: 0 !important;
  }

  .pr-lg-4 {
    padding-right: 4px !important;
  }

  .pr-lg-8 {
    padding-right: 8px !important;
  }

  .pr-lg-16 {
    padding-right: 16px !important;
  }

  .pr-lg-24 {
    padding-right: 24px !important;
  }

  .pr-lg-40 {
    padding-right: 40px !important;
  }

  .pr-lg-80 {
    padding-right: 80px !important;
  }

  .pt-lg-0 {
    padding-top: 0 !important;
  }

  .pt-lg-4 {
    padding-top: 4px !important;
  }

  .pt-lg-8 {
    padding-top: 8px !important;
  }

  .pt-lg-16 {
    padding-top: 16px !important;
  }

  .pt-lg-24 {
    padding-top: 24px !important;
  }

  .pt-lg-40 {
    padding-top: 40px !important;
  }

  .pt-lg-80 {
    padding-top: 80px !important;
  }

  .pb-lg-0 {
    padding-bottom: 0 !important;
  }

  .pb-lg-4 {
    padding-bottom: 4px !important;
  }

  .pb-lg-8 {
    padding-bottom: 8px !important;
  }

  .pb-lg-16 {
    padding-bottom: 16px !important;
  }

  .pb-lg-24 {
    padding-bottom: 24px !important;
  }

  .pb-lg-40 {
    padding-bottom: 40px !important;
  }

  .pb-lg-80 {
    padding-bottom: 80px !important;
  }
}

@media (min-width: 1904px) {
  .p-xl-0 {
    padding: 0 !important;
  }

  .p-xl-4 {
    padding: 4px !important;
  }

  .p-xl-8 {
    padding: 8px !important;
  }

  .p-xl-16 {
    padding: 16px !important;
  }

  .p-xl-24 {
    padding: 24px !important;
  }

  .p-xl-40 {
    padding: 40px !important;
  }

  .p-xl-80 {
    padding: 80px !important;
  }

  .pl-xl-4 {
    padding-left: 4px !important;
  }

  .pl-xl-8 {
    padding-left: 8px !important;
  }

  .pl-xl-16 {
    padding-left: 16px !important;
  }

  .pl-xl-24 {
    padding-left: 24px !important;
  }

  .pl-xl-40 {
    padding-left: 40px !important;
  }

  .pl-xl-80 {
    padding-left: 80px !important;
  }

  .pr-xl-0 {
    padding-right: 0 !important;
  }

  .pr-xl-4 {
    padding-right: 4px !important;
  }

  .pr-xl-8 {
    padding-right: 8px !important;
  }

  .pr-xl-16 {
    padding-right: 16px !important;
  }

  .pr-xl-24 {
    padding-right: 24px !important;
  }

  .pr-xl-40 {
    padding-right: 40px !important;
  }

  .pr-xl-80 {
    padding-right: 80px !important;
  }

  .pt-xl-0 {
    padding-top: 0 !important;
  }

  .pt-xl-4 {
    padding-top: 4px !important;
  }

  .pt-xl-8 {
    padding-top: 8px !important;
  }

  .pt-xl-16 {
    padding-top: 16px !important;
  }

  .pt-xl-24 {
    padding-top: 24px !important;
  }

  .pt-xl-40 {
    padding-top: 40px !important;
  }

  .pt-xl-80 {
    padding-top: 80px !important;
  }

  .pb-xl-0 {
    padding-bottom: 0 !important;
  }

  .pb-xl-4 {
    padding-bottom: 4px !important;
  }

  .pb-xl-8 {
    padding-bottom: 8px !important;
  }

  .pb-xl-16 {
    padding-bottom: 16px !important;
  }

  .pb-xl-24 {
    padding-bottom: 24px !important;
  }

  .pb-xl-40 {
    padding-bottom: 40px !important;
  }

  .pb-xl-80 {
    padding-bottom: 80px !important;
  }
}

/*--------------------------------------------------------------
### Elevation
--------------------------------------------------------------*/

.elevation-0 {
  box-shadow: 0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)!important;
}
.elevation-1 {
  box-shadow: 0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)!important;
}
.elevation-2 {
  box-shadow: 0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)!important;
}
.elevation-3 {
  box-shadow: 0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)!important;
}
.elevation-4 {
  box-shadow: 0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)!important;
}
.elevation-5 {
  box-shadow: 0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)!important;
}
.elevation-6 {
  box-shadow: 0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)!important;
}
.elevation-7 {
  box-shadow: 0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)!important;
}
.elevation-8 {
  box-shadow: 0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)!important;
}
.elevation-9 {
  box-shadow: 0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)!important;
}
.elevation-10 {
  box-shadow: 0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)!important;
}
.elevation-11 {
  box-shadow: 0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)!important;
}
.elevation-12 {
  box-shadow: 0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)!important;
}
.elevation-13 {
  box-shadow: 0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)!important;
}
.elevation-14 {
    box-shadow: 0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)!important;
}
.elevation-15 {
  box-shadow: 0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)!important;
}
.elevation-16 {
  box-shadow: 0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)!important;
}
.elevation-17 {
    box-shadow: 0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)!important;
}
.elevation-18 {
  box-shadow: 0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)!important;
}
.elevation-19 {
  box-shadow: 0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)!important;
}
.elevation-20 {
  box-shadow: 0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)!important;
}
.elevation-21 {
  box-shadow: 0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)!important;
}
.elevation-22 {
  box-shadow: 0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)!important;
}
.elevation-23 {
  box-shadow: 0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)!important;
}
.elevation-24 {
  box-shadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)!important;
}

/*--------------------------------------------------------------
### Elevation -> Hover
--------------------------------------------------------------*/

.elevation-hover-0:hover {
  box-shadow: 0 0 0 0 rgba(0,0,0,.2),0 0 0 0 rgba(0,0,0,.14),0 0 0 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-1:hover {
  box-shadow: 0 2px 1px -1px rgba(0,0,0,.2),0 1px 1px 0 rgba(0,0,0,.14),0 1px 3px 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-2:hover {
  box-shadow: 0 3px 1px -2px rgba(0,0,0,.2),0 2px 2px 0 rgba(0,0,0,.14),0 1px 5px 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-3:hover {
  box-shadow: 0 3px 3px -2px rgba(0,0,0,.2),0 3px 4px 0 rgba(0,0,0,.14),0 1px 8px 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-4:hover {
  box-shadow: 0 2px 4px -1px rgba(0,0,0,.2),0 4px 5px 0 rgba(0,0,0,.14),0 1px 10px 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-5:hover {
  box-shadow: 0 3px 5px -1px rgba(0,0,0,.2),0 5px 8px 0 rgba(0,0,0,.14),0 1px 14px 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-6:hover {
  box-shadow: 0 3px 5px -1px rgba(0,0,0,.2),0 6px 10px 0 rgba(0,0,0,.14),0 1px 18px 0 rgba(0,0,0,.12)!important;
}
.elevation-hover-7:hover {
  box-shadow: 0 4px 5px -2px rgba(0,0,0,.2),0 7px 10px 1px rgba(0,0,0,.14),0 2px 16px 1px rgba(0,0,0,.12)!important;
}
.elevation-hover-8:hover {
  box-shadow: 0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12)!important;
}
.elevation-hover-9:hover {
  box-shadow: 0 5px 6px -3px rgba(0,0,0,.2),0 9px 12px 1px rgba(0,0,0,.14),0 3px 16px 2px rgba(0,0,0,.12)!important;
}
.elevation-hover-10:hover {
  box-shadow: 0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)!important;
}
.elevation-hover-11:hover {
  box-shadow: 0 6px 7px -4px rgba(0,0,0,.2),0 11px 15px 1px rgba(0,0,0,.14),0 4px 20px 3px rgba(0,0,0,.12)!important;
}
.elevation-hover-12:hover {
  box-shadow: 0 7px 8px -4px rgba(0,0,0,.2),0 12px 17px 2px rgba(0,0,0,.14),0 5px 22px 4px rgba(0,0,0,.12)!important;
}
.elevation-hover-13:hover {
  box-shadow: 0 7px 8px -4px rgba(0,0,0,.2),0 13px 19px 2px rgba(0,0,0,.14),0 5px 24px 4px rgba(0,0,0,.12)!important;
}
.elevation-hover-14:hover {
    box-shadow: 0 7px 9px -4px rgba(0,0,0,.2),0 14px 21px 2px rgba(0,0,0,.14),0 5px 26px 4px rgba(0,0,0,.12)!important;
}
.elevation-hover-15:hover {
  box-shadow: 0 8px 9px -5px rgba(0,0,0,.2),0 15px 22px 2px rgba(0,0,0,.14),0 6px 28px 5px rgba(0,0,0,.12)!important;
}
.elevation-hover-16:hover {
  box-shadow: 0 8px 10px -5px rgba(0,0,0,.2),0 16px 24px 2px rgba(0,0,0,.14),0 6px 30px 5px rgba(0,0,0,.12)!important;
}
.elevation-hover-17:hover {
    box-shadow: 0 8px 11px -5px rgba(0,0,0,.2),0 17px 26px 2px rgba(0,0,0,.14),0 6px 32px 5px rgba(0,0,0,.12)!important;
}
.elevation-hover-18:hover {
  box-shadow: 0 9px 11px -5px rgba(0,0,0,.2),0 18px 28px 2px rgba(0,0,0,.14),0 7px 34px 6px rgba(0,0,0,.12)!important;
}
.elevation-hover-19:hover {
  box-shadow: 0 9px 12px -6px rgba(0,0,0,.2),0 19px 29px 2px rgba(0,0,0,.14),0 7px 36px 6px rgba(0,0,0,.12)!important;
}
.elevation-hover-20:hover {
  box-shadow: 0 10px 13px -6px rgba(0,0,0,.2),0 20px 31px 3px rgba(0,0,0,.14),0 8px 38px 7px rgba(0,0,0,.12)!important;
}
.elevation-hover-21:hover {
  box-shadow: 0 10px 13px -6px rgba(0,0,0,.2),0 21px 33px 3px rgba(0,0,0,.14),0 8px 40px 7px rgba(0,0,0,.12)!important;
}
.elevation-hover-22:hover {
  box-shadow: 0 10px 14px -6px rgba(0,0,0,.2),0 22px 35px 3px rgba(0,0,0,.14),0 8px 42px 7px rgba(0,0,0,.12)!important;
}
.elevation-hover-23:hover {
  box-shadow: 0 11px 14px -7px rgba(0,0,0,.2),0 23px 36px 3px rgba(0,0,0,.14),0 9px 44px 8px rgba(0,0,0,.12)!important;
}
.elevation-hover-24:hover {
  box-shadow: 0 11px 15px -7px rgba(0,0,0,.2),0 24px 38px 3px rgba(0,0,0,.14),0 9px 46px 8px rgba(0,0,0,.12)!important;
}

/*--------------------------------------------------------------
# BUTTONS
--------------------------------------------------------------*/

.button {
  display: inline-flex;
  flex: 0 0 auto;
  position: relative;
  height: 32px;
  line-height: 32px;
  align-items: center;
  justify-content: center;
  gap: 8px;
  cursor: pointer;
  padding: 0 12px;
  margin: 0 8px 8px 0;
  white-space: nowrap;
  border: none;
  vertical-align: middle;
  outline: none;
  font-size: 14px !important;
  letter-spacing: 1.25px !important;
  font-weight: 500;
  text-transform: uppercase !important;
  color: rgba(0,0,0,.87);
  background-color: #f5f5f5;
  text-decoration: none;
  border-radius: 4px;
  user-select: none;
  overflow: hidden;
}

.dark-mode .button {
  background-color: #373737;
  color: #FFFFFF;
}

.button:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

/*--------------------------------------------------------------
# BUTTONS -> FAB
--------------------------------------------------------------*/
.button.fab, .button.fab-mini {
  overflow: hidden;
  position: relative;
  margin: auto;
  padding: 0;
  line-height: normal;
  border-radius: 50%;
}

.button.fab {
  width: 56px;
  height: 56px;
  font-size: 28px;
}

.button.fab-mini {
  width: 40px;
  height: 40px;
  font-size: 24px;
}


/*--------------------------------------------------------------
# BUTTONS -> SIZE
--------------------------------------------------------------*/

.button.button-xs {
  height: 20px;
  margin-top: 2px;
  margin-bottom: 2px;
  padding: 0 8px;
  line-height: 24px !important;
  font-size: 10px !important;
}

.button.button-sm {
  height: 32px;
  padding: 0 12px;
  line-height: 32px !important;
  font-size: 12px !important;
}

.button.button-md {
  height: 36px;
  margin-top: 2px;
  margin-bottom: 2px;
  padding: 0 12px;
  line-height: 36px !important;
  font-size: 14px !important;
}


.button.button-lg {
  height: 48px;
  padding: 0 20px;
  line-height: 48px !important;
}

.button.button-xl {
  height: 56px;
  padding: 0 24px;
  line-height: 56px;
  font-size: 16px !important;
}

.button-full {
  display: flex;
  width: 100%;
}

/*--------------------------------------------------------------
# BUTTONS -> STATS
--------------------------------------------------------------*/

.button:hover:after {
  background-color: currentColor;
  opacity: .04;
}

.button:focus:after {
  background-color: currentColor;
  opacity: .12;
}

.button.disabled,
.button[disabled] {
  cursor: default !important;
/*  background-color: rgba(0,0,0,.12) !important;
  color: rgba(0,0,0,.26) !important;
*/  box-shadow: none !important;
  pointer-events: none;
  opacity: .46;
}

.dark-mode .button.disabled,
.dark-mode .button[disabled] {
/*  background-color: rgba(255, 255, 255,.12) !important;
  color: rgba(255, 255, 255,.26) !important;
*/}

.button.disabled:hover:after,
.button[disabled]:hover:after {
  background-color: rgba(0,0,0,0);
}

.button.disabled:focus:after,
.button[disabled]:focus:after {
  background-color: rgba(0,0,0,0);
}

.button.button-text {
  box-shadow: none !important;
  background-color: transparent !important;
}

.button.button-text:hover {
  background-color: transparent !important;
  box-shadow: none !important;
}

.button.button-text.disabled,
.button.button-text[disabled] {
  color: rgba(0, 0, 0, 0.46) !important;
  background-color: transparent !important;
}

.dark-mode .button.button-text.disabled,
.dark-mode .button.button-text[disabled] {
  color: rgba(255, 255, 255, 0.46) !important;
}
/*--------------------------------------------------------------
# SHEETS
--------------------------------------------------------------*/

.sheet {
  position: relative;
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, .87);
  z-index: 1;
}

.dark-mode .sheet,
.dark-mode.sheet {
  background-color: #212121;
  color: rgba(255, 255, 255, .87);
}

.dark-mode .light-mode.sheet,
.dark-mode .light-mode .sheet {
  background-color: #FFFFFF;
  color: rgba(0, 0, 0, .87);
}

.sheet:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  background-color: currentColor;
  opacity: 0;
}

.sheet.elevation-0:before {
  opacity: 0;
}
.sheet.elevation-1:before {
  opacity: .05;
}
.sheet.elevation-2:before {
  opacity: .07;
}
.sheet.elevation-3:before {
  opacity: .08;
}
.sheet.elevation-4:before {
  opacity: .09;
}
.sheet.elevation-5:before {
  opacity: .09;
}
.sheet.elevation-6:before {
  opacity: .11;
}
.sheet.elevation-7:before {
  opacity: .11;
}
.sheet.elevation-8:before {
  opacity: .12;
}
.sheet.elevation-9:before {
  opacity: .12;
}
.sheet.elevation-10:before {
  opacity: .12;
}
.sheet.elevation-11:before {
  opacity: .12;
}
.sheet.elevation-12:before {
  opacity: .14;
}
.sheet.elevation-13:before {
  opacity: .14;
}
.sheet.elevation-14:before {
  opacity: .14;
}
.sheet.elevation-15:before {
  opacity: .14;
}
.sheet.elevation-16:before {
  opacity: .15;
}
.sheet.elevation-17:before {
  opacity: .15;
}
.sheet.elevation-18:before {
  opacity: .15;
}
.sheet.elevation-19:before {
  opacity: .15;
}
.sheet.elevation-20:before {
  opacity: .14;
}
.sheet.elevation-21:before {
  opacity: .14;
}
.sheet.elevation-22:before {
  opacity: .14;
}
.sheet.elevation-23:before {
  opacity: .14;
}
.sheet.elevation-24:before {
  opacity: .14;
}

/*--------------------------------------------------------------
# HEIGHTS
--------------------------------------------------------------*/
.height-4 {
  height: 4px !important;
}

.height-40 {
  height: 40px !important;
}

.height-56 {
  height: 56px !important;
}

.height-64 {
  height: 64px !important;
}

.height-72 {
  height: 72px !important;
}

.height-80 {
  height: 80px !important;
}

.height-128 {
  height: 128px !important;
}

.height-160 {
  height: 160px !important;
}

.height-200 {
  height: 200px !important;
}

.height-256 {
  height: 256px !important;
}

.height-320 {
  height: 320px !important;
}

.height-480 {
  height: 480px !important;
}

.height-512 {
  height: 512px !important;
}

.height-640 {
  height: 640px !important;
}

.height-720 {
  height: 720px !important;
}

.height-full {
  height: 100% !important;
}

/*--------------------------------------------------------------
# CHECKBOXES
--------------------------------------------------------------*/

.checkbox {
  width: 100%;
  position: relative;
  margin: 0 0 16px 0;
  user-select: none;
}

.checkbox input {
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 24px;
  opacity: 0;
  z-index: 2;
}

.checkbox label {
  display: block;
  padding: 0 0 0 32px;
  cursor: pointer;
}

.checkbox label:before {
  font-family: 'Material Icons';
  content: "check_box_outline_blank";
  font-size: 22px;
  position: absolute;
  display: block;
  top: 0;
  left: 2px;
  width: 24px;
  height: 24px;
  z-index: 1;
}

.checkbox input:checked + label:before {
  content: "check_box";
  color: #2196f3;
}

.checkbox label:after {
  content: "";
  display: block;
  position: absolute;
  top: -8px;
  left: -8px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #2196f3;
  opacity: 0;
}

.checkbox input:hover ~ label:after {
  opacity: .04;
}

.checkbox input:focus ~ label:after {
  opacity: .12;
}

/*--------------------------------------------------------------
# RADIO BUTTONS
--------------------------------------------------------------*/

.radio {
  position: relative;
  margin: 0 0 16px 0;
  user-select: none;
}

.radio input {
  position: absolute;
  top: 0;
  left: 0;
  width: 32px;
  height: 24px;
  opacity: 0;
  z-index: 0;
}

.radio label {
  display: block;
  padding: 0 0 0 32px;
  cursor: pointer;
}

.radio label:before {
  font-family: 'Material Icons';
  content: "radio_button_unchecked";
  font-size: 22px;
  position: absolute;
  display: block;
  top: 0;
  left: 2px;
  width: 24px;
  height: 24px;
  z-index: 1;
}

.radio input:checked + label:before {
  content: "radio_button_checked";
  color: #2196f3;
}

.radio label:after {
  content: "";
  display: block;
  position: absolute;
  top: -8px;
  left: -8px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background-color: #2196f3;
  opacity: 0;
}

.radio input:hover + label:after {
  opacity: .04;
}

.radio input:focus + label:after {
  opacity: .12;
}

/*--------------------------------------------------------------
# DRAWER
--------------------------------------------------------------*/

.nav-drawer {
  position: fixed;
  width: 320px;
  top: 0;
  left: 0;
  bottom: 0;
  z-index: 2147483610;
  transition: all .2s cubic-bezier(.4,0,.2,1);
}

.drawer-right .nav-drawer {
  left: auto;
  right: 0;
}

.drawer-mandatory #nav-drawer,
.drawer-temporary #nav-drawer,
.drawer-mandatory-full #nav-drawer {
  transform: translateX(-100%);
}

.drawer-right.drawer-temporary #nav-drawer {
  transform: translateX(100%);
}

.drawer-opened.drawer-mandatory #nav-drawer {
  transform: translateX(0);
}

.drawer-opened.drawer-mandatory-full #nav-drawer,
.drawer-opened.drawer-temporary #nav-drawer {
  transform: translateX(0);
  box-shadow: 0 6px 6px -3px rgba(0,0,0,.2),0 10px 14px 1px rgba(0,0,0,.14),0 4px 18px 3px rgba(0,0,0,.12)!important;
}

#nav-drawer-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  background-color: rgba(0,0,0,.46);
  transition: all .2s cubic-bezier(.4,0,.2,1);
  z-index: 2147483609;
}

.drawer-mandatory-full.drawer-opened #nav-drawer-overlay,
.drawer-mandatory.drawer-opened #nav-drawer-overlay,
.drawer-temporary.drawer-opened #nav-drawer-overlay {
  opacity: 1;
  visibility: visible;
}



@media (min-width: 960px) {
  .drawer-mandatory #nav-drawer,
  .drawer-mandatory-full #nav-drawer {
    transform: translateX(0);
  }

  .drawer-opened.drawer-mandatory-full #nav-drawer{
    box-shadow: none !important;
  }

  .drawer-mandatory.topbar-height-80 #nav-drawer {
    top: 80px;
  }

  .drawer-mandatory.drawer-opened #nav-drawer-overlay,
  .drawer-mandatory-full.drawer-opened #nav-drawer-overlay {
    opacity: 0;
    visibility: hidden;
  }
}

/*--------------------------------------------------------------
# CONTENT
--------------------------------------------------------------*/

@media (min-width: 960px) {
  .drawer-mandatory-full #content > .scene > .scene-inner {
    padding-left: 320px;
  }

  .drawer-mandatory #content > .scene > .scene-inner {
    padding-left: 320px;
  }

  .drawer-right.drawer-mandatory-full #content > .scene > .scene-inner {
    padding-left: 0;
    padding-right: 320px;
  }

  .drawer-right.drawer-mandatory #content > .scene > .scene-inner {
    padding-left: 0;
    padding-right: 320px;
  }
}

/*--------------------------------------------------------------
# IMAGES
--------------------------------------------------------------*/

.image img {
  display: block;
}

.image.cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.image.contain img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.image.no-resize img {
  width: 100%;
  height: 100%;
  object-fit: none;
}

/*--------------------------------------------------------------
# TOPBAR
--------------------------------------------------------------*/

.topbar-height-80 #topbar {
  height: 80px;
}

.topbar-sticky #topbar {
  position: sticky;
  top: 0;
  z-index: 2147483608;
}

@media (min-width: 960px) {
  .drawer-mandatory-full #topbar {
    padding-left: 320px;
  }
}

.drawer-right.drawer-mandatory-full #topbar {
  padding-left: 0;
  padding-right: 320px;
}

/*--------------------------------------------------------------
# LIST
--------------------------------------------------------------*/

.list {
  margin: 0;
  padding: 8px 0;
  list-style: none;
}

.list > li {
  width: 100%;
  height: 40px;
  padding: 0 16px;
  align-items: center;
    display: flex;
    flex: 1 1 100%;
}

/*--------------------------------------------------------------
# GRADIENT
--------------------------------------------------------------*/

.bg-gradient {
  background: linear-gradient(90deg, #692B85, #C91E6B) !important;
}

/*--------------------------------------------------------------
# BACKGROUND COLORS
--------------------------------------------------------------*/


.bg-secondary {
  background-color: #C91E6B !important;
  color: #FFFFFF !important;
}

.bg-black {
  background-color: #000000 !important;
  color: #FFFFFF !important;
}

.bg-white {
  background-color: #FFFFFF !important;
  color: #000000 !important;
}

.bg-error {
  background-color: #f44336 !important;
  color: #FFFFFF !important;
}

.bg-success {
  background-color: #4caf50 !important;
  color: #FFFFFF !important;
}


.bg-primary {
  background-color: #692B85 !important;
  color: #FFFFFF !important;
}

/*--------------------------------------------------------------
# COLORS
--------------------------------------------------------------*/

.color-primary {
  color: #692B85 !important;
}

.color-secondary {
  color: #C91E6B !important;
}

.color-black {
  color: #000000 !important;
}

.color-white {
  color: #FFFFFF !important;
}

.color-error {
  color: #f44336 !important;
}

.color-info {
  color: #03a9f4 !important;
}

.color-success {
  color: #4caf50 !important;
}

.color-warning {
  color: #ffc107 !important;
}


/*--------------------------------------------------------------
# DISPLAY
--------------------------------------------------------------*/

.display-xs-block {
  display: block !important;
}

.display-xs-flex {
  display: flex !important;
}

.display-xs-inline {
  display: inline !important;
}

.display-xs-inline-block {
  display: inline-block !important;
}

.display-xs-none {
  display: none !important;
}

@media (min-width: 600px) {
  .display-sm-block {
    display: block !important;
  }

  .display-sm-flex {
    display: flex !important;
  }

  .display-sm-inline {
    display: inline !important;
  }

  .display-sm-inline-block {
    display: inline-block !important;
  }

  .display-sm-none {
    display: none !important;
  }
}

@media (min-width: 960px) {
  .display-md-block {
    display: block !important;
  }

  .display-md-flex {
    display: flex !important;
  }

  .display-md-inline {
    display: inline !important;
  }

  .display-md-inline-block {
    display: inline-block !important;
  }

  .display-md-none {
    display: none !important;
  }
}

@media (min-width: 1264px) {
  .display-lg-block {
    display: block !important;
  }

  .display-lg-flex {
    display: flex !important;
  }

  .display-lg-inline {
    display: inline !important;
  }

  .display-lg-inline-block {
    display: inline-block !important;
  }

  .display-lg-none {
    display: none !important;
  }
}

@media (min-width: 1904px) {
  .display-xl-block {
    display: block !important;
  }

  .display-xl-flex {
    display: flex !important;
  }

  .display-xl-inline {
    display: inline !important;
  }

  .display-xl-inline-block {
    display: inline-block !important;
  }

  .display-xl-none {
    display: none !important;
  }
}

.text-xs-center {
  text-align: center;
}

.sticky-xs {
  position: sticky;
  top: 0;
  z-index: 2147483600;
}

.absolute-xs {
  position: absolute;
}

.top {
  top: 0 !important;
}

.right {
  right: 0 !important;
}

.left {
  left: 0 !important;
}

.bottom {
  bottom: 0 !important;
}

.overflow-hidden {
  overflow: hidden !important
}

.image {
  position: relative;
}

.image .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.text-xs-left {
  text-align: left !important;
}

.position-xs-fixed {
  position: fixed !important;
}

/*--------------------------------------------------------------
# MODALS
--------------------------------------------------------------*/

.modal {
  display: none;
  position: fixed;
  top: 50%;
  left: 50%;
  transform: scale(1) translate(-50%, -50%);
  z-index: 2147483612;
}

.modal.active {
  display: block;
}

.modal.persistent.modal-animated {
  transform-style: preserve-3d;
  transform-origin: 0 0;
  -webkit-animation-duration: .15s;
          animation-duration: .15s;
  -webkit-animation-name: animate-modal;
          animation-name: animate-modal;
  -webkit-animation-timing-function: cubic-bezier(.25,.8,.25,1);
          animation-timing-function: cubic-bezier(.25,.8,.25,1);
}

@-webkit-keyframes animate-modal {
  0% {
    transform: scale(1) translate(-50%, -50%);
  }
  50% {
    transform: scale(1.03) translate(-50%, -50%);
  }
  to {
    transform: scale(1) translate(-50%, -50%);
  }
}

@keyframes animate-modal {
  0% {
    transform: scale(1) translate(-50%, -50%);
  }
  50% {
    transform: scale(1.03) translate(-50%, -50%);
  }
  to {
    transform: scale(1) translate(-50%, -50%);
  }
}

#modal-overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  background-color: rgba(0,0,0,.46);
  transition: all .2s cubic-bezier(.4,0,.2,1);
  z-index: 2147483611;
}

#modal-overlay.active {
  opacity: 1;
  visibility: visible;
}


#overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0;
  visibility: hidden;
  background-color: rgba(0,0,0,.32);
  transition: all .2s cubic-bezier(.4,0,.2,1);
  z-index: 2147483611;
}

#overlay.active {
  opacity: 1;
  visibility: visible;
}

/*--------------------------------------------------------------
# TEXT FIELDS
--------------------------------------------------------------*/

.text-field {
  position: relative;
  width: 100%;
  margin-bottom: 16px;
}

.text-field > input {
  height: 56px;
  width: 100%;
  padding: 24px 0 8px 0;
  border: none;
  border-bottom: 1px solid rgba(0,0,0,.42);
  outline: none;
  border-radius: 4px 4px 0 0;
  background-color: transparent;
}

.text-field.filled > input {
  padding: 24px 16px 8px 16px;
  background-color: #FFFFFF;
}

.text-field.outlined > input,
.text-field.single-line > input {
  border: 1px solid rgba(0,0,0,.42);
  padding: 20px 16px 20px 16px;
  border-radius: 4px;
}

.text-field > input:hover {
  border-bottom: 1px solid rgba(0,0,0,.87);
}

.text-field.outlined > input:hover,
.text-field.single-line > input:hover {
  border: 1px solid rgba(0,0,0,.87);
}

.text-field.error.outlined > input,
.text-field.focus.outlined > input,
.text-field.error.single-line > input,
.text-field.focus.single-line > input {
  border: 1px solid rgba(0,0,0,.87);
}

.text-field.error > input,
.text-field.error.outlined > input,
.text-field.error.single-line > input {
  border-color: var(--color-error) !important;
}

.text-field:after {
  top: 54px;
    content: "";
    left: 0;
    position: absolute;
    transition: .3s cubic-bezier(.25,.8,.5,1);
    width: 100%;
    background-color: currentColor;
    border-color: var(--primary-color);
    border-style: solid;
    border-width: thin 0 thin 0;
    transform: scaleX(0);
}

.text-field.outlined:after {
  top: 0;
  left: 0;
  right: 0;
  height: 56px;
  pointer-events: none;
  border: 2px solid;
  background-color: transparent;
  transform: scaleX(1);
  opacity: 0;
  visibility: hidden;
  z-index: -1;
  border-radius: 4px;
  border-color: var(--primary-color);
}

.text-field.single-line:after {
  display: none;
}

.text-field.error:after {
  border-color: var(--color-error);
}

.text-field.focus:after {
  transform: scaleX(1);
}

.text-field.outlined.focus:after {
  opacity: 1;
  visibility: visible;
}

.text-field > label {
  position: absolute;
  left: 0;
    right: auto;
    top: 16px;
    pointer-events: none;
    transform-origin: left top;
    transition: transform .15s cubic-bezier(.4,0,.2,1),color .15s cubic-bezier(.4,0,.2,1),-webkit-transform .15s cubic-bezier(.4,0,.2,1);
}

.text-field.single-line > label {
  display: none;
}

.text-field.filled > label,
.text-field.outlined > label {
  left: 16px;
}

.text-field.focus > label,
.text-field.value > label {
  transform: translateY(-12px) scale(.75);
}

.text-field.outlined.focus > label,
.text-field.outlined.value > label {
  transform: translateY(-24px) scale(.75);
}

.text-field.outlined.focus > label:before,
.text-field.outlined.value > label:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: -4px;
  right: -4px;
  bottom: 0;
  background-color: #F0F0F0;
  z-index: -1;
}

.text-field.focus > label {
  color: var(--primary-color);
}

.text-field.error > label {
  color: var(--color-error) !important;
  animation: shake .6s cubic-bezier(.25,.8,.5,1);
}

.text-field.outlined.error > label {
  color: var(--color-error) !important;
  animation: shake-outlined .6s cubic-bezier(.25,.8,.5,1);
}

.text-field > input::placeholder {
  opacity: 0;
  visibility: hidden;
  transition: .3s cubic-bezier(.25,.8,.5,1);
}

.text-field.focus > input::placeholder {
  opacity: 1;
  visibility: visible;
}

.text-field.single-line > input::placeholder {
  opacity: 1;
  visibility: visible;
}

.text-field.disabled {
  pointer-events: none;
}

.text-field.disabled,
.text-field.disabled > input {
  color: rgba(0,0,0,.38);
}

.text-field.disabled > input {
  user-select: none;
  border-bottom: 1px dotted rgba(0,0,0,.38);
}

.text-field > .hint {
  display: block;
  width: 100%;
  margin-top: 4px;
  font-size: 12px !important;
  font-weight: 400;
  line-height: 20px;
  letter-spacing: .4px !important;
  height: 20px;
  overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.text-field.single-line > .hint {
  display: none;
}

.text-field.error > .hint {
  color: var(--color-error) !important;
}

.text-field > .hint > span {
  display: block;
  height: 20px;
  transform: translateY(-20px);
  transition: .3s cubic-bezier(.25,.8,.5,1);
}

.text-field.persistent-hint > .hint > span {
  transform: translateY(0);
}

.text-field.focus > .hint > span,
.text-field.error > .hint > span {
  transform: translateY(0);
}

.text-field.filled > .hint {
  padding-left: 16px;
}

@keyframes shake {
  10%, 90% {
    transform: translate3d(-1px, -12px, 0) scale(.75);
  }
  20%, 80% {
    transform: translate3d(2px, -12px, 0) scale(.75);
  }
  30%, 50%, 70% {
    transform: translate3d(-4px, -12px, 0) scale(.75);
  }
  40%, 60% {
    transform: translate3d(4px, -12px, 0) scale(.75);
  }
}

@keyframes shake-outlined {
  10%, 90% {
    transform: translate3d(-1px, -24px, 0) scale(.75);
  }
  20%, 80% {
    transform: translate3d(2px, -24px, 0) scale(.75);
  }
  30%, 50%, 70% {
    transform: translate3d(-4px, -24px, 0) scale(.75);
  }
  40%, 60% {
    transform: translate3d(4px, -24px, 0) scale(.75);
  }
}

/*--------------------------------------------------------------
# MENUS
--------------------------------------------------------------*/

