@charset 'UTF-8';

@import url('https://fonts.googleapis.com/css2?family=Lora:ital@1&display=swap');

@font-face {
  font-family: 'Causten Round';
  src:
    url('/fonts/causten-round/causten-round-regular-webfont.woff2') format('woff2'),
    url('/fonts/causten-round/causten-round-regular-webfont.woff') format('woff');
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Causten Round';
  src:
    url('/fonts/causten-round/causten-round-regular-oblique-webfont.woff2') format('woff2'),
    url('/fonts/causten-round/causten-round-regular-oblique-webfont.woff') format('woff');
  font-weight: 400;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: 'Causten Round';
  src:
    url('/fonts/causten-round/causten-round-medium-webfont.woff2') format('woff2'),
    url('/fonts/causten-round/causten-round-medium-webfont.woff') format('woff');
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Causten Round';
  src:
    url('/fonts/causten-round/causten-round-bold-webfont.woff2') format('woff2'),
    url('/fonts/causten-round/causten-round-bold-webfont.woff') format('woff');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: 'Causten';
  src:
    url('/fonts/causten/causten-regular-webfont.woff2') format('woff2'),
    url('/fonts/causten/causten-regular-webfont.woff') format('woff');
  font-weight: 400;
  font-display: swap;
}

@font-face {
  font-family: 'Causten';
  src:
    url('/fonts/causten/causten-medium-webfont.woff2') format('woff2'),
    url('/fonts/causten/causten-medium-webfont.woff') format('woff');
  font-weight: 500;
  font-display: swap;
}

@font-face {
  font-family: 'Causten';
  src:
    url('/fonts/causten/causten-bold-webfont.woff2') format('woff2'),
    url('/fonts/causten/causten-bold-webfont.woff') format('woff');
  font-weight: 600;
  font-display: swap;
}

/* Sanitize v12.0.1
 * ========================================================================== */

/**
 * Add border box sizing in all browsers (opinionated).
 */

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

/**
  * 1. Add text decoration inheritance in all browsers (opinionated).
  * 2. Add vertical alignment inheritance in all browsers (opinionated).
  */

::before,
::after {
  text-decoration: inherit; /* 1 */
  vertical-align: inherit; /* 2 */
}

/**
  * 1. Use the default cursor in all browsers (opinionated).
  * 2. Change the line height in all browsers (opinionated).
  * 3. Use a 4-space tab width in all browsers (opinionated).
  * 4. Remove the grey highlight on links in iOS (opinionated).
  * 5. Prevent adjustments of font size after orientation changes in
  *    IE on Windows Phone and in iOS.
  * 6. Breaks words to prevent overflow in all browsers (opinionated).
  */

html {
  cursor: default; /* 1 */
  line-height: 1.5; /* 2 */ /* 3 */
  tab-size: 4; /* 3 */
  -webkit-tap-highlight-color: transparent /* 4 */;
  -ms-text-size-adjust: 100%; /* 5 */
  -webkit-text-size-adjust: 100%; /* 5 */
  word-break: break-word; /* 6 */
}

/* Sections
  * ========================================================================== */

/**
  * Remove the margin in all browsers (opinionated).
  */

body {
  margin: 0;
}

/**
  * Correct the font size and margin on `h1` elements within `section` and
  * `article` contexts in Chrome, Edge, Firefox, and Safari.
  */

/** h1 {
  * font-size: 2em;
  * margin: 0.67em 0;
  * }
*/

/* Grouping content
  * ========================================================================== */

/**
  * Remove the margin on nested lists in Chrome, Edge, IE, and Safari.
  */

dl dl,
dl ol,
dl ul,
ol dl,
ul dl {
  margin: 0;
}

/**
  * Remove the margin on nested lists in Edge 18- and IE.
  */

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

/**
  * 1. Correct the inheritance of border color in Firefox.
  * 2. Add the correct box sizing in Firefox.
  * 3. Show the overflow in Edge 18- and IE.
  */

hr {
  color: inherit; /* 1 */
  height: 0; /* 2 */
  overflow: visible; /* 3 */
}

/**
  * Add the correct display in IE.
  */

main {
  display: block;
}

/**
  * Remove the list style on navigation lists in all browsers (opinionated).
  */

nav ol,
nav ul {
  list-style: none;
  padding: 0;
}

/**
  * Prevent VoiceOver from ignoring list semantics in Safari (opinionated).
  */

nav li::before {
  content: '\200B';
}

/**
  * 1. Correct the inheritance and scaling of font size in all browsers.
  * 2. Correct the odd `em` font sizing in all browsers.
  * 3. Prevent overflow of the container in all browsers (opinionated).
  */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
  overflow: auto; /* 3 */
  -ms-overflow-style: scrollbar; /* 3 */
}

/* Text-level semantics
  * ========================================================================== */

/**
  * Remove the gray background on active links in IE 10.
  */

a {
  background-color: transparent;
}

/**
  * Add the correct text decoration in Edge 18-, IE, and Safari.
  */

abbr[title] {
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted;
}

/**
  * 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%;
}

/* Embedded content
  * ========================================================================== */

/*
  * Change the alignment on media elements in all browsers (opinionated).
  */

audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}

/**
  * Add the correct display in IE 9-.
  */

audio,
video {
  display: inline-block;
}

/**
  * Add the correct display in iOS 4-7.
  */

audio:not([controls]) {
  display: none;
  height: 0;
}

/**
  * Remove the border on iframes in all browsers (opinionated).
  */

iframe {
  border-style: none;
}

/**
  * Remove the border on images within links in IE 10-.
  */

img {
  border-style: none;
}

/**
  * Change the fill color to match the text color in all browsers (opinionated).
  */

svg:not([fill]) {
  fill: currentColor;
}

/**
  * Hide the overflow in IE.
  */

svg:not(:root) {
  overflow: hidden;
}

/* Tabular data
  * ========================================================================== */

/**
  * 1. Collapse border spacing in all browsers (opinionated).
  * 2. Correct table border color inheritance in all Chrome, Edge, and Safari.
  * 3. Remove text indentation from table contents in Chrome, Edge, and Safari.
  */

table {
  border-collapse: collapse; /* 1 */
  border-color: inherit; /* 2 */
  text-indent: 0; /* 3 */
}

/* Forms
  * ========================================================================== */

/**
  * Remove the margin on controls in Safari.
  */

button,
input,
select {
  margin: 0;
}

/**
  * 1. Show the overflow in IE.
  * 2. Remove the inheritance of text transform in Edge 18-, Firefox, and IE.
  */

button {
  overflow: visible; /* 1 */
  text-transform: none; /* 2 */
}

/**
  * Correct the inability to style buttons in iOS and Safari.
  */

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

/**
  * 1. Change the inconsistent appearance in all browsers (opinionated).
  * 2. Correct the padding in Firefox.
  */

fieldset {
  border: 1px solid #a0a0a0; /* 1 */
  padding: 0.35em 0.75em 0.625em; /* 2 */
}

/**
  * Show the overflow in Edge 18- and IE.
  */

input {
  overflow: visible;
}

/**
  * 1. Correct the text wrapping in Edge 18- and IE.
  * 2. Correct the color inheritance from `fieldset` elements in IE.
  */

legend {
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  white-space: normal; /* 1 */
}

/**
  * 1. Add the correct display in Edge 18- and IE.
  * 2. Add the correct vertical alignment in Chrome, Edge, and Firefox.
  */

progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}

/**
  * Remove the inheritance of text transform in Firefox.
  */

select {
  text-transform: none;
}

/**
  * 1. Remove the margin in Firefox and Safari.
  * 2. Remove the default vertical scrollbar in IE.
  * 3. Change the resize direction in all browsers (opinionated).
  */

textarea {
  margin: 0; /* 1 */
  overflow: auto; /* 2 */
  resize: vertical; /* 3 */
  resize: block; /* 3 */
}

/**
  * Remove the padding in IE 10-.
  */

[type='checkbox'],
[type='radio'] {
  padding: 0;
}

/**
  * 1. Correct the odd appearance in Chrome, Edge, and Safari.
  * 2. Correct the outline style in Safari.
  */

[type='search'] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
  * Correct the cursor style of increment and decrement buttons in Safari.
  */

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/**
  * Correct the text style of placeholders in Chrome, Edge, and Safari.
  */

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.54;
}

/**
  * Remove the inner padding in Chrome, Edge, and Safari on macOS.
  */

::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
  * 1. Correct the inability to style upload buttons in iOS and Safari.
  * 2. Change font properties to `inherit` in Safari.
  */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/**
  * Remove the inner border and padding of focus outlines in Firefox.
  */

::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
  * Restore the focus outline styles unset by the previous rule in Firefox.
  */

:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
  * Remove the additional :invalid styles in Firefox.
  */

:-moz-ui-invalid {
  box-shadow: none;
}

/* Interactive
  * ========================================================================== */

/*
  * Add the correct display in Edge 18- and IE.
  */

details {
  display: block;
}

/*
  * Add the correct styles in Edge 18-, IE, and Safari.
  */

dialog {
  background-color: white;
  border: solid;
  color: black;
  display: block;
  height: -moz-fit-content;
  height: -webkit-fit-content;
  height: fit-content;
  left: 0;
  margin: auto;
  padding: 1em;
  position: absolute;
  right: 0;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
}

dialog:not([open]) {
  display: none;
}

/*
  * Add the correct display in all browsers.
  */

summary {
  display: list-item;
}

/* Scripting
  * ========================================================================== */

/**
  * Add the correct display in IE 9-.
  */

canvas {
  display: inline-block;
}

/**
  * Add the correct display in IE.
  */

template {
  display: none;
}

/* User interaction
  * ========================================================================== */

/*
  * Remove the tapping delay in IE 10.
  */

a,
area,
button,
input,
label,
select,
summary,
textarea,
[tabindex] {
  -ms-touch-action: manipulation;
}

/**
  * Add the correct display in IE 10-.
  */

[hidden] {
  display: none;
}

/* Accessibility
  * ========================================================================== */

/**
  * Change the cursor on busy elements in all browsers (opinionated).
  */

[aria-busy='true'] {
  cursor: progress;
}

/*
  * Change the cursor on control elements in all browsers (opinionated).
  */

[aria-controls] {
  cursor: pointer;
}

/*
  * Change the cursor on disabled, not-editable, or otherwise
  * inoperable elements in all browsers (opinionated).
  */

[aria-disabled='true'],
[disabled] {
  cursor: not-allowed;
}

/*
  * Change the display on visually hidden accessible elements
  * in all browsers (opinionated).
  */

[aria-hidden='false'][hidden] {
  display: inline;
  display: initial;
}

[aria-hidden='false'][hidden]:not(:focus) {
  clip: rect(0, 0, 0, 0);
  position: absolute;
}

html {
  margin: 0;
  font-size: 16px;
  font-family: 'Causten Round', Helvetica, Arial, sans-serif;
  scroll-behavior: smooth;
}

body,
html {
  padding: 0;
  min-height: 100%;
}

body {
  display: flex;
  flex-direction: column;
  overflow-y: scroll;
  width: 100%;
  color: #666;
  font-size: 1rem;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-tap-highlight-color: transparent;
  -moz-osx-font-smoothing: grayscale;
}

::selection {
  background: #8792b5;
  color: #fff;
}

header {
  flex: none;
}

main {
  flex: 1 0 auto;
  overflow: hidden;
  width: 100%;
}

footer {
  flex: none;
  margin-top: auto;
  min-height: 480px;
  width: 100%;
  background: #fff;
}

sub,
sup {
  vertical-align: baseline;
  position: relative;
}

sup {
  top: -0.25rem;
}

sub {
  bottom: -0.25rem;
}

a {
  color: #0fcdba;
  cursor: pointer;
  transition: color 0.3s;
}

a,
a:hover {
  text-decoration: none;
}

a:hover {
  color: #1f9971;
}

a:not('.button'):active {
  color: #8792b5;
}

/* Add new focus styles */
:focus-visible {
  outline: 2px solid dodgerblue;
  border-radius: 2px;
  outline-offset: 2px;
}

/* Remove focus outline for mouse users */
:focus:not(:focus-visible) {
  outline: none;
}

/* Ensure focus styles are visible for keyboard users */
button:focus-visible,
[role='button']:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible,
a:focus-visible {
  outline: 2px solid dodgerblue;
  border-radius: 2px;
  outline-offset: 2px;
}

/* Custom focus styles for specific elements */
input[type='range']:focus-visible {
  outline: none;
}

input[type='range']:focus-visible::-webkit-slider-thumb {
  box-shadow:
    0 0 0 2px #fff,
    0 0 0 4px #0fcdba;
}

input[type='range']:focus-visible::-moz-range-thumb {
  box-shadow:
    0 0 0 2px #fff,
    0 0 0 4px #0fcdba;
}

input[type='range']:focus-visible::-ms-thumb {
  box-shadow:
    0 0 0 2px #fff,
    0 0 0 4px #0fcdba;
}

/* Ensure focus styles are visible in high contrast mode */
@media (forced-colors: active) {
  :focus-visible {
    outline: 2px solid CanvasText;
    outline-offset: 2px;
  }
}

ol,
ul {
  margin-bottom: 1em;
  padding: 0;
  list-style: none;
  font-size: inherit;
}

ol > li,
ul > li {
  position: relative;
  margin-top: 0.5em;
  text-align: left;
}

ul:not([class*='list-unstyled']) > li {
  padding-left: 45px;
  line-height: 1.5;
}

ul:not([class*='list-unstyled']) > li:before {
  position: absolute;
  left: 12px;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  color: inherit;
  content: '•';
  font-weight: 700;
}

ul:not([class*='list-unstyled']).no-bullets > li {
  padding: 0;
}

ul:not([class*='list-unstyled']).no-bullets > li:before {
  padding: 0;
  content: '';
}

ul:not([class*='list-unstyled']).arrows > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: inherit;
  content: '▻';
  font-weight: 400;
  font-size: 0.85em;
}

ul:not([class*='list-unstyled']).checks > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: #0fcdba;
  content: '✓';
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
    'Open Sans', 'Helvetica Neue', sans-serif;
  line-height: 1;
  font-weight: 400;
  font-size: 1.5em;
  text-align: center;
}

/** DatoCMS styles... TODO: Get rid of this. */
.dato-cms {
  width: 100%;
}

.dato-cms li p {
  margin-left: 12px;
}

/* THIS CLASS IS USED WITHIN THE BLOCK RENDERER COMPONENT */
.dato-cms ul:not([class*='list-unstyled']) > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: #0fcdba;
  content: '✓';
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
    'Open Sans', 'Helvetica Neue', sans-serif;
  line-height: 1;
  font-weight: 400;
  font-size: 1.5em;
  text-align: center;
}

.dato-cms hr {
  max-width: 150px;
  height: 1px;
  background-color: lightgray;
  border: none;
  margin: 12px 0px;
  margin-right: auto;
}

ul:not([class*='list-unstyled']).crosses > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: #d12424;
  content: '\2421';
  font-weight: 400;
  font-size: 1.5em;
  text-align: center;
}

ul:not([class*='list-unstyled']).pros > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: #0fcdba;
  content: '+';
  font-weight: 400;
  line-height: 1;
  font-size: 1.5em;
  text-align: center;
}

ul:not([class*='list-unstyled']).cons > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: #d12424;
  content: '-';
  font-weight: 400;
  font-size: 1.5em;
  text-align: center;
}

ul:not([class*='list-unstyled']).questions > li:before {
  padding-left: 0;
  padding-right: 15px;
  color: inherit;
  content: '\EE11';
  font-weight: 400;
  font-size: 1.5em;
  text-align: center;
}

ul:not([class*='list-unstyled']).checkboxes > li:before {
  padding-left: 0;
  padding-right: 15px;
  position: absolute;
  top: 50%;
  right: auto;
  left: 12px;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  overflow: hidden;
  width: 1em;
  height: 1em;
  border: 1px solid #ccc;
  border-radius: 3px;
  background: #fff;
  content: '';
  vertical-align: middle;
  transition: all 0.125s;
}

ul:not([class*='list-unstyled']).checkboxes > li.checked:before {
  color: #0fcdba;
  content: '✓';
  vertical-align: middle;
  text-decoration: none;
  font-weight: 400;
  line-height: 1.2;
}

ol {
  counter-reset: item;
}

ol > li {
  padding-left: 45px;
  counter-increment: item;
}

ol > li:before {
  position: absolute;
  left: 6px;
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  border-radius: 100px;
  background: #0fcdba;
  color: #fff;
  content: counter(item);
  text-align: center;
  font-weight: 500;
}

ol > li.red-li:before {
  background: #d12424;
}

ol > li.gold-li:before {
  background: #faaf40;
}

ol > li.blue-li:before {
  background: #4bb7e2;
}

ol > li.purple-li:before {
  background: #8792b5;
}

ol > li.orange-li:before {
  background: #fc6e51;
}

li > ol,
li > ul {
  margin-top: 0.5rem;
}

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

input::-webkit-input-placeholder {
  color: #ccc;
  opacity: 1;
  -webkit-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

input:-moz-placeholder,
input::-moz-placeholder {
  color: #ccc;
  opacity: 1;
  -moz-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

input:-ms-input-placeholder {
  color: #ccc !important;
  opacity: 1;
  -ms-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

input::-ms-input-placeholder {
  color: #ccc !important;
  opacity: 1;
  -ms-transition: opacity 0.25s;
  transition: opacity 0.25s;
}

input:focus::-webkit-input-placeholder {
  opacity: 0;
}

input:focus:-moz-placeholder,
input:focus::-moz-placeholder {
  opacity: 0;
}

input:focus:-ms-input-placeholder {
  opacity: 0;
}

input:focus::-ms-input-placeholder {
  opacity: 0;
}

fieldset {
  margin: 0;
  padding: 0;
  border: 0;
}

textarea {
  resize: both;
}

textarea.no-resize {
  resize: none;
}

textarea.v-resize {
  resize: vertical;
}

textarea.h-resize {
  resize: horizontal;
}

input[type='range'] {
  margin: 0;
  padding: 0;
  width: 100%;
  cursor: pointer;
  transition: background 0.25s;
  -webkit-appearance: none;
}

input[type='range']:focus {
  outline: none;
}

input[type='range']::-webkit-slider-runnable-track {
  width: 100%;
  height: 6px;
  border: 1px solid #25b887;
  border-radius: 100px;
  background: #0fcdba;
}

input[type='range']::-webkit-slider-thumb {
  margin-top: -8px;
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  border-radius: 50%;
  background: #eee;
  -webkit-appearance: none;
}

input[type='range']:focus::-webkit-slider-runnable-track {
  background: #25b887;
}

input[type='range']:focus::-webkit-slider-thumb {
  background: #d6d6d6;
}

input[type='range']::-moz-range-track {
  width: 100%;
  height: 6px;
  border: 1px solid #25b887;
  border-radius: 100px;
  background: #0fcdba;
}

input[type='range']::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  border-radius: 50%;
  background: #eee;
}

input[type='range']:focus::-moz-range-track {
  background: #25b887;
}

input[type='range']::-ms-track {
  border-width: 20px;
  border-color: transparent;
  border-radius: 6px;
  background: transparent;
  color: transparent;
}

input[type='range']::-ms-fill-lower {
  border-top-left-radius: 100px;
  border-bottom-left-radius: 100px;
  border: 1px solid #25b887;
  background: #0fcdba;
}

input[type='range']::-ms-fill-upper {
  border-top-right-radius: 100px;
  border-bottom-right-radius: 100px;
  border: 1px solid #25b887;
  background: rgba(185, 238, 220, 0.9);
}

input[type='range']::-ms-thumb {
  width: 20px;
  height: 20px;
  border: 1px solid #ccc;
  border-radius: 50%;
  background: #eee;
}

input[type='range']::-ms-tooltip {
  display: none;
}

input[type='range']:focus::-ms-fill-lower {
  background: #25b887;
}

input[type='range']:focus::-ms-fill-upper {
  background: rgba(185, 238, 220, 0.9);
}

[aria-haspopup='true'] {
  cursor: help;
}

@-webkit-keyframes slide-in {
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes slide-in {
  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@-webkit-keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-100vw);
            transform: translateX(-100vw);
  }

  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes slide-in-left {
  0% {
    -webkit-transform: translateX(-100vw);
            transform: translateX(-100vw);
  }

  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@-webkit-keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(100vw);
            transform: translateX(100vw);
  }

  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@keyframes slide-in-right {
  0% {
    -webkit-transform: translateX(100vw);
            transform: translateX(100vw);
  }

  to {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
}

@-webkit-keyframes slide-out-left {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(-100vw);
            transform: translateX(-100vw);
  }
}

@keyframes slide-out-left {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(-100vw);
            transform: translateX(-100vw);
  }
}

@-webkit-keyframes slide-out-right {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(100vw);
            transform: translateX(100vw);
  }
}

@keyframes slide-out-right {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }

  to {
    -webkit-transform: translateX(100vw);
            transform: translateX(100vw);
  }
}

@-webkit-keyframes float-in {
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes float-in {
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes float-in-bottom {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes float-in-bottom {
  0% {
    opacity: 0;
    -webkit-transform: translateY(50%);
            transform: translateY(50%);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes float-in-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@keyframes float-in-top {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-50%);
            transform: translateY(-50%);
  }

  to {
    opacity: 1;
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

@-webkit-keyframes spin {
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

@keyframes spin {
  to {
    -webkit-transform: rotate(1turn);
            transform: rotate(1turn);
  }
}

@-webkit-keyframes spinner-bounce {
  0%,
  to {
    -webkit-transform: scale(0);
            transform: scale(0);
  }

  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@keyframes spinner-bounce {
  0%,
  to {
    -webkit-transform: scale(0);
            transform: scale(0);
  }

  50% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}

@-webkit-keyframes checkmark {
  0% {
    width: 0;
    height: 0;
    opacity: 1;
  }

  20% {
    width: 24px/2/2;
    height: 0;
    opacity: 1;
  }

  40% {
    width: 24px/2/2;
    height: 24px/2;
    opacity: 1;
  }

  to {
    width: 24px/2/2;
    height: 24px/2;
    opacity: 1;
  }
}

@keyframes checkmark {
  0% {
    width: 0;
    height: 0;
    opacity: 1;
  }

  20% {
    width: 24px/2/2;
    height: 0;
    opacity: 1;
  }

  40% {
    width: 24px/2/2;
    height: 24px/2;
    opacity: 1;
  }

  to {
    width: 24px/2/2;
    height: 24px/2;
    opacity: 1;
  }
}

@-webkit-keyframes tri-dot {
  0%,
  80%,
  to {
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@keyframes tri-dot {
  0%,
  80%,
  to {
    -webkit-transform: scale(0);
    transform: scale(0);
  }

  40% {
    -webkit-transform: scale(1);
    transform: scale(1);
  }
}

@-webkit-keyframes joyride-tooltip {
  0% {
    -webkit-transform: scale(0.1);
            transform: scale(0.1);
  }

  to {
    opacity: 1;
    -webkit-transform: perspective(1px) scale(1);
            transform: perspective(1px) scale(1);
  }
}

@keyframes joyride-tooltip {
  0% {
    -webkit-transform: scale(0.1);
            transform: scale(0.1);
  }

  to {
    opacity: 1;
    -webkit-transform: perspective(1px) scale(1);
            transform: perspective(1px) scale(1);
  }
}

@-webkit-keyframes scroll-down {
  0%,
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px);
  }
}

@keyframes scroll-down {
  0%,
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-30px);
            transform: translateY(-30px);
  }
}

@-webkit-keyframes scroll-up {
  0%,
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-60px);
            transform: translateY(-60px);
  }
}

@keyframes scroll-up {
  0%,
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-60px);
            transform: translateY(-60px);
  }
}

@-webkit-keyframes hovering {
  0%,
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-2.5%);
            transform: translateY(-2.5%);
  }
}

@keyframes hovering {
  0%,
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }

  50% {
    -webkit-transform: translateY(-2.5%);
            transform: translateY(-2.5%);
  }
}

@-webkit-keyframes hovering-shadow {
  0%,
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  50% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}

@keyframes hovering-shadow {
  0%,
  to {
    -webkit-transform: scale(1);
            transform: scale(1);
  }

  50% {
    -webkit-transform: scale(0.9);
            transform: scale(0.9);
  }
}

@-webkit-keyframes glitch {
  0% {
    clip: rect(95px, 9999px, 35px, 0);
  }

  5% {
    clip: rect(55px, 9999px, 34px, 0);
  }

  10% {
    clip: rect(41px, 9999px, 71px, 0);
  }

  15% {
    clip: rect(88px, 9999px, 76px, 0);
  }

  20% {
    clip: rect(12px, 9999px, 82px, 0);
  }

  25% {
    clip: rect(1px, 9999px, 88px, 0);
  }

  30% {
    clip: rect(40px, 9999px, 98px, 0);
  }

  35% {
    clip: rect(2px, 9999px, 18px, 0);
  }

  40% {
    clip: rect(67px, 9999px, 72px, 0);
  }

  45% {
    clip: rect(86px, 9999px, 52px, 0);
  }

  50% {
    clip: rect(2px, 9999px, 88px, 0);
  }

  55% {
    clip: rect(37px, 9999px, 71px, 0);
  }

  60% {
    clip: rect(26px, 9999px, 69px, 0);
  }

  65% {
    clip: rect(48px, 9999px, 85px, 0);
  }

  70% {
    clip: rect(76px, 9999px, 92px, 0);
  }

  75% {
    clip: rect(13px, 9999px, 25px, 0);
  }

  80% {
    clip: rect(3px, 9999px, 10px, 0);
  }

  85% {
    clip: rect(71px, 9999px, 2px, 0);
  }

  90% {
    clip: rect(2px, 9999px, 39px, 0);
  }

  95% {
    clip: rect(13px, 9999px, 50px, 0);
  }

  to {
    clip: rect(39px, 9999px, 21px, 0);
  }
}

@keyframes glitch {
  0% {
    clip: rect(95px, 9999px, 35px, 0);
  }

  5% {
    clip: rect(55px, 9999px, 34px, 0);
  }

  10% {
    clip: rect(41px, 9999px, 71px, 0);
  }

  15% {
    clip: rect(88px, 9999px, 76px, 0);
  }

  20% {
    clip: rect(12px, 9999px, 82px, 0);
  }

  25% {
    clip: rect(1px, 9999px, 88px, 0);
  }

  30% {
    clip: rect(40px, 9999px, 98px, 0);
  }

  35% {
    clip: rect(2px, 9999px, 18px, 0);
  }

  40% {
    clip: rect(67px, 9999px, 72px, 0);
  }

  45% {
    clip: rect(86px, 9999px, 52px, 0);
  }

  50% {
    clip: rect(2px, 9999px, 88px, 0);
  }

  55% {
    clip: rect(37px, 9999px, 71px, 0);
  }

  60% {
    clip: rect(26px, 9999px, 69px, 0);
  }

  65% {
    clip: rect(48px, 9999px, 85px, 0);
  }

  70% {
    clip: rect(76px, 9999px, 92px, 0);
  }

  75% {
    clip: rect(13px, 9999px, 25px, 0);
  }

  80% {
    clip: rect(3px, 9999px, 10px, 0);
  }

  85% {
    clip: rect(71px, 9999px, 2px, 0);
  }

  90% {
    clip: rect(2px, 9999px, 39px, 0);
  }

  95% {
    clip: rect(13px, 9999px, 50px, 0);
  }

  to {
    clip: rect(39px, 9999px, 21px, 0);
  }
}

@-webkit-keyframes glitch-2 {
  0% {
    clip: rect(15px, 9999px, 93px, 0);
  }

  5% {
    clip: rect(80px, 9999px, 54px, 0);
  }

  10% {
    clip: rect(18px, 9999px, 15px, 0);
  }

  15% {
    clip: rect(91px, 9999px, 80px, 0);
  }

  20% {
    clip: rect(94px, 9999px, 56px, 0);
  }

  25% {
    clip: rect(40px, 9999px, 30px, 0);
  }

  30% {
    clip: rect(95px, 9999px, 82px, 0);
  }

  35% {
    clip: rect(82px, 9999px, 1px, 0);
  }

  40% {
    clip: rect(8px, 9999px, 21px, 0);
  }

  45% {
    clip: rect(68px, 9999px, 13px, 0);
  }

  50% {
    clip: rect(79px, 9999px, 16px, 0);
  }

  55% {
    clip: rect(84px, 9999px, 20px, 0);
  }

  60% {
    clip: rect(42px, 9999px, 25px, 0);
  }

  65% {
    clip: rect(78px, 9999px, 70px, 0);
  }

  70% {
    clip: rect(32px, 9999px, 85px, 0);
  }

  75% {
    clip: rect(88px, 9999px, 95px, 0);
  }

  80% {
    clip: rect(60px, 9999px, 86px, 0);
  }

  85% {
    clip: rect(54px, 9999px, 38px, 0);
  }

  90% {
    clip: rect(18px, 9999px, 37px, 0);
  }

  95% {
    clip: rect(40px, 9999px, 60px, 0);
  }

  to {
    clip: rect(82px, 9999px, 87px, 0);
  }
}

@keyframes glitch-2 {
  0% {
    clip: rect(15px, 9999px, 93px, 0);
  }

  5% {
    clip: rect(80px, 9999px, 54px, 0);
  }

  10% {
    clip: rect(18px, 9999px, 15px, 0);
  }

  15% {
    clip: rect(91px, 9999px, 80px, 0);
  }

  20% {
    clip: rect(94px, 9999px, 56px, 0);
  }

  25% {
    clip: rect(40px, 9999px, 30px, 0);
  }

  30% {
    clip: rect(95px, 9999px, 82px, 0);
  }

  35% {
    clip: rect(82px, 9999px, 1px, 0);
  }

  40% {
    clip: rect(8px, 9999px, 21px, 0);
  }

  45% {
    clip: rect(68px, 9999px, 13px, 0);
  }

  50% {
    clip: rect(79px, 9999px, 16px, 0);
  }

  55% {
    clip: rect(84px, 9999px, 20px, 0);
  }

  60% {
    clip: rect(42px, 9999px, 25px, 0);
  }

  65% {
    clip: rect(78px, 9999px, 70px, 0);
  }

  70% {
    clip: rect(32px, 9999px, 85px, 0);
  }

  75% {
    clip: rect(88px, 9999px, 95px, 0);
  }

  80% {
    clip: rect(60px, 9999px, 86px, 0);
  }

  85% {
    clip: rect(54px, 9999px, 38px, 0);
  }

  90% {
    clip: rect(18px, 9999px, 37px, 0);
  }

  95% {
    clip: rect(40px, 9999px, 60px, 0);
  }

  to {
    clip: rect(82px, 9999px, 87px, 0);
  }
}

@-webkit-keyframes shake {
  10%,
  90% {
    -webkit-transform: translate3d(-1px, 0, 0);
            transform: translate3d(-1px, 0, 0);
  }

  20%,
  80% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0);
  }

  30%,
  50%,
  70% {
    -webkit-transform: translate3d(-4px, 0, 0);
            transform: translate3d(-4px, 0, 0);
  }

  40%,
  60% {
    -webkit-transform: translate3d(4px, 0, 0);
            transform: translate3d(4px, 0, 0);
  }
}

@keyframes shake {
  10%,
  90% {
    -webkit-transform: translate3d(-1px, 0, 0);
            transform: translate3d(-1px, 0, 0);
  }

  20%,
  80% {
    -webkit-transform: translate3d(2px, 0, 0);
            transform: translate3d(2px, 0, 0);
  }

  30%,
  50%,
  70% {
    -webkit-transform: translate3d(-4px, 0, 0);
            transform: translate3d(-4px, 0, 0);
  }

  40%,
  60% {
    -webkit-transform: translate3d(4px, 0, 0);
            transform: translate3d(4px, 0, 0);
  }
}

.slide-in {
  -webkit-animation-name: slide-in !important;
          animation-name: slide-in !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.slide-in--right {
  -webkit-transform: translateX(100vw);
          transform: translateX(100vw);
  -webkit-animation-name: slide-in-right !important;
          animation-name: slide-in-right !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.slide-in--left {
  -webkit-transform: translateX(-100vw);
          transform: translateX(-100vw);
  -webkit-animation-name: slide-in-left !important;
          animation-name: slide-in-left !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.slide-out--right {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-animation-name: slide-out-right !important;
          animation-name: slide-out-right !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.slide-out--left {
  -webkit-transform: translateX(0);
          transform: translateX(0);
  -webkit-animation-name: slide-out-left !important;
          animation-name: slide-out-left !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.float-in {
  -webkit-animation-name: float-in !important;
          animation-name: float-in !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.float-in--bottom {
  opacity: 0;
  -webkit-animation-name: float-in-bottom !important;
          animation-name: float-in-bottom !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.float-in--top {
  opacity: 0;
  -webkit-animation-name: float-in-top !important;
          animation-name: float-in-top !important;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
}

.tri-dot {
  text-align: center;
}

.tri-dot .dot {
  display: inline-block;
  margin-right: 3px;
  width: 12px;
  height: 12px;
  border-radius: 100%;
  -webkit-animation: tri-dot 1.4s ease-in-out infinite both;
          animation: tri-dot 1.4s ease-in-out infinite both;
}

.tri-dot .dot--1 {
  -webkit-animation-delay: -0.32s;
          animation-delay: -0.32s;
}

.tri-dot .dot--2 {
  -webkit-animation-delay: -0.16s;
          animation-delay: -0.16s;
}

.tri-dot .dot--3 {
  margin-right: 0;
  -webkit-animation-delay: 0;
          animation-delay: 0;
}

.tri-dot--green .dot {
  background: #0fcdba;
}

.tri-dot--gold .dot {
  background: #faaf40;
}

.tri-dot--gray .dot {
  background: #999;
}

.spin,
.ss-spin:before {
  -webkit-animation: spin 2s linear infinite both;
          animation: spin 2s linear infinite both;
}

.scroll-down {
  -webkit-animation: scroll-down 1.5s infinite;
          animation: scroll-down 1.5s infinite;
}

.scroll-up {
  -webkit-animation: scroll-up 3s 1;
          animation: scroll-up 3s 1;
  -webkit-animation-timing-function: ease-in;
          animation-timing-function: ease-in;
  -webkit-animation-delay: 3s;
          animation-delay: 3s;
}

.hovering {
  -webkit-animation: hovering 5s infinite;
          animation: hovering 5s infinite;
}

.hovering__shadow {
  -webkit-animation: hovering-shadow 5s infinite;
          animation: hovering-shadow 5s infinite;
}

.glitch {
  position: relative;
}

.glitch:after {
  right: 0;
  left: 3px;
  text-shadow: -1px 0 #d12424;
  animation: glitch 2s linear infinite alternate-reverse;
}

.glitch:after,
.glitch:before {
  position: absolute;
  top: 0;
  overflow: hidden;
  clip: rect(0, 900px, 0, 0);
  background: transparent;
  color: #0fcdba;
  content: attr(data-text);
}

.glitch:before {
  right: 3px;
  left: 0;
  text-shadow: 1px 0 #8792b5;
  animation: glitch-2 3s linear infinite alternate-reverse;
}

.error-shake {
  -webkit-transform: translateZ(0);
          transform: translateZ(0);
  -webkit-animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
          animation: shake 0.82s cubic-bezier(0.36, 0.07, 0.19, 0.97) both;
  -webkit-animation-iteration-count: 1;
          animation-iteration-count: 1;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  -webkit-perspective: 1000px;
          perspective: 1000px;
}

.circle-loader {
  position: relative;
  display: inline-block;
  margin: 0 0 30px 10px;
  border: 2px solid rgba(0, 0, 0, 0.2);
  border-left-color: #0fcdba;
  vertical-align: top;
  -webkit-animation: spin 1s linear infinite;
          animation: spin 1s linear infinite;
}

.circle-loader,
.circle-loader:after {
  width: 24px;
  height: 24px;
  border-radius: 50%;
}

.load-complete {
  border-color: '#fff';
  transition: border 0.5s ease-out;
  -webkit-animation: none;
          animation: none;
}

.hide {
  display: none !important;
}

.show {
  display: block !important;
}

@media screen and (max-width: 424px) {
  .hide-sm {
    display: none !important;
  }
}

@media screen and (min-width: 425px) and (max-width: 767px) {
  .hide-md {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .hide-lg {
    display: none !important;
  }
}

@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .hide-xl {
    display: none !important;
  }
}

@media screen and (min-width: 1200px) {
  .hide-xxl {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .hide-mobile {
    display: none !important;
  }
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .hide-tablet {
    display: none !important;
  }
}

@media screen and (min-width: 1024px) {
  .hide-desktop {
    display: none !important;
  }
}

.show-sm {
  display: none !important;
}

@media screen and (max-width: 424px) {
  .show-sm {
    display: block !important;
  }

  .show-sm--inline-block {
    display: inline-block !important;
  }
}

.show-md {
  display: none !important;
}

@media screen and (min-width: 425px) and (max-width: 767px) {
  .show-md {
    display: block !important;
  }

  .show-md--inline-block {
    display: inline-block !important;
  }
}

.show-lg {
  display: none !important;
}

@media screen and (min-width: 768px) and (max-width: 1023px) {
  .show-lg {
    display: block !important;
  }

  .show-lg--inline-block {
    display: inline-block !important;
  }
}

.show-xl {
  display: none !important;
}

@media screen and (min-width: 1024px) and (max-width: 1199px) {
  .show-xl {
    display: block !important;
  }

  .show-xl--inline-block {
    display: inline-block !important;
  }
}

.show-xxl {
  display: none !important;
}

@media screen and (min-width: 1200px) {
  .show-xxl {
    display: block !important;
  }

  .show-xxl--inline-block {
    display: inline-block !important;
  }
}

.show-mobile {
  display: none !important;
}

@media screen and (max-width: 767px) {
  .show-mobile {
    display: block !important;
  }

  .show-mobile--inline-block {
    display: inline-block !important;
  }
}

.show-tablet {
  display: none !important;
}

@media screen and (max-width: 1023px) {
  .show-tablet {
    display: block !important;
  }

  .show-tablet--inline-block {
    display: inline-block !important;
  }
}

.show-desktop {
  display: none !important;
}

@media screen and (min-width: 1024px) {
  .show-desktop {
    display: block !important;
  }

  .show-desktop--inline-block {
    display: inline-block !important;
  }
}

.show-desktop-lg {
  display: none !important;
}

@media screen and (min-width: 1920px) {
  .show-desktop-lg {
    display: block !important;
  }

  .show-desktop-lg--inline-block {
    display: inline-block !important;
  }
}

.hide-scrollbar::-webkit-scrollbar {
  width: 0;
  height: 0;
  background: transparent;
}

.block {
  display: block !important;
}

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

.inline {
  display: inline !important;
}

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

.inline-table,
.table {
  table-layout: fixed !important;
}

.table {
  display: table !important;
  width: 100%;
}

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

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

.full-height {
  height: 100% !important;
}

.full-width {
  width: 100% !important;
}

.half-width {
  width: 50% !important;
}

.third-width {
  width: 33.33333% !important;
}

.quarter-width {
  width: 25% !important;
}

.page-height {
  min-height: calc(100vh - 470px) !important;
}

.has-footer {
  margin-bottom: -240px;
}

@media (min-height: 768px) {
  .has-footer {
    margin-bottom: -480px;
  }
}

.img-responsive {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 100%;
  height: auto;
}

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

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

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

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

.va-top {
  vertical-align: top;
}

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

.va-bottom {
  vertical-align: bottom;
}

.va-baseline {
  vertical-align: baseline;
}

.va-sub {
  vertical-align: sub;
}

.va-super {
  vertical-align: super;
}

.pull-left {
  float: left !important;
}

.pull-right {
  float: right !important;
}

.margin-auto {
  margin-right: auto;
  margin-left: auto;
}

.absolute-center {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
}

.clearfix:after,
.clearfix:before {
  display: table;
  content: ' ';
}

.clearfix:after {
  clear: both;
}

.relative {
  position: relative !important;
}

.absolute {
  position: absolute !important;
}

.smaller {
  font-size: 0.75em !important;
}

.regular,
.small {
  font-size: 0.85em !important;
}

@media (min-width: 425px) {
  .regular {
    font-size: 1rem !important;
  }
}

.large {
  font-size: 1rem !important;
}

@media (min-width: 425px) {
  .large {
    font-size: 1.15em !important;
  }
}

.larger {
  font-size: 1rem !important;
}

@media (min-width: 425px) {
  .larger {
    font-size: 1.15em !important;
  }
}

@media (min-width: 768px) {
  .larger {
    font-size: 1.5em !important;
  }
}

.caps {
  text-transform: uppercase !important;
}

.title-case {
  text-transform: capitalize !important;
}

.no-case {
  text-transform: none !important;
}

.italic {
  font-style: italic;
}

.nowrap {
  white-space: nowrap;
}

.tight {
  letter-spacing: -0.5px;
}

.tighter {
  letter-spacing: -0.025em;
}

.loose {
  letter-spacing: 0.5px;
}

.looser {
  letter-spacing: 0.025em;
}

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

.overflow-x {
  overflow-x: visible !important;
}

.overflow-y {
  overflow-y: visible !important;
}

.overflow-hidden {
  overflow: hidden !important;
}

.strikethrough {
  position: relative;
}

.strikethrough:before {
  position: absolute;
  top: 50%;
  right: 0;
  left: 0;
  border-color: #d12424;
  border-top: 1px solid;
  content: '';
  -webkit-transform: rotate(-5deg);
  transform: rotate(-5deg);
}

.title-case:first-letter {
  text-transform: uppercase;
}

.no-spacing {
  letter-spacing: 0 !important;
}

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

.inline-icon {
  margin-right: 6px;
}

.bold {
  font-weight: 700;
}

.medium {
  font-weight: 500;
}

.normal {
  font-weight: 400;
}

.no-top-margin {
  margin-top: 0 !important;
}

.no-right-margin {
  margin-right: 0 !important;
}

.no-bottom-margin {
  margin-bottom: 0 !important;
}

.no-left-margin {
  margin-left: 0 !important;
}

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

.border-radius--sm {
  border-radius: 3px;
}

.border-radius--md {
  border-radius: 6px;
}

.border-radius--100 {
  border-radius: 100px;
}

.border-radius--full {
  border-radius: 50%;
}

.divider {
  margin: 18px auto;
  height: 1px;
  border-bottom: 1px solid #eee;
}

.divider--xs {
  margin: 6px auto;
}

.divider--sm {
  margin: 12px auto;
}

.divider--lg {
  margin: 30px auto;
}

.divider--xl {
  margin: 60px auto;
}

.divider--25 {
  width: 25%;
}

.divider--50 {
  width: 50%;
}

.divider--75 {
  width: 75%;
}

.divider--black {
  border-color: #666;
}

.divider--dark {
  border-color: #999;
}

.divider--white {
  border-color: #fff;
}

.divider--green {
  border-color: #72ddba;
}

.deb-divider {
  margin-top: 12px;
  margin-bottom: 12px;
  text-align: center;
}

.deb-divider:before {
  display: block;
  margin: 0 auto;
  width: 50px;
  height: 50px;
  content: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='50' height='10'%3E%3Ccircle fill='%2329CC96' cx='8' cy='5' r='4'/%3E%3Ccircle fill='%2329CC96' cx='42' cy='5' r='4'/%3E%3Ccircle fill='%2329CC96' cx='25' cy='5' r='4'/%3E%3C/svg%3E");
  background-position: 50%;
  background-size: contain;
  transition: all 0.25s;
}

.no-pointer-events {
  pointer-events: none !important;
}

.default-cursor {
  cursor: default;
}

.pointer {
  cursor: pointer;
}

.no-selection {
  -webkit-user-select: none;
  -moz-user-select: none;
  -khtml-user-select: none;
  -ms-user-select: none;
}

.module {
  margin-bottom: 15px;
  position: relative;
  min-width: 290px;
  border-radius: 3px;
  background: #fff;
  box-shadow:
    0 2px 7px -2px rgba(33, 163, 120, 0.2),
    0 3px 4px 0 rgba(0, 0, 0, 0.1);
}

@media (min-width: 768px) {
  .module {
    margin-bottom: 30px;
  }
}

.grayscale {
  filter: url("data:image/svg+xml;utf8, <svg xmlns='https://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0'/></filter></svg>%23grayscale");
  -webkit-filter: gray;
          filter: gray;
  filter: grayscale(100%);
  -webkit-filter: grayscale(100%);
  transition: all 0.25s ease;
}

.undo-grayscale {
  filter: url("data:image/svg+xml;utf8, <svg xmlns='https://www.w3.org/2000/svg'><filter id='grayscale'><feColorMatrix type='matrix' values='1 0 0 0 0, 0 1 0 0 0, 0 0 1 0 0, 0 0 0 1 0'/></filter></svg>%23grayscale");
  -webkit-filter: grayscale(0);
  transition: all 0.25s ease;
}

.disabled {
  opacity: 0.5;
  transition: all 0.25s;
  pointer-events: none !important;
}

.anchor-offset:before {
  display: block;
  visibility: hidden;
  margin-top: -100px;
  height: 100px;
  content: ' ';
}

.green {
  color: #0fcdba;
}

.white {
  color: #fff;
}

.black {
  color: #000;
}

.gray-black {
  color: #333;
}

.gray-darker {
  color: #666;
}

.gray-dark {
  color: #999;
}

.gray {
  color: #ccc;
}

.purple {
  color: #8792b5;
}

.gold {
  color: #faaf40;
}

.red {
  color: #d12424;
}

.orange {
  color: #fc6e51;
}

.blue {
  color: #4bb7e2;
}

.transition-wrapper {
  min-height: calc(100vh - 520px) !important;
  width: 100%;
}

@media print {
  .transition-wrapper {
    overflow: hidden;
  }
}

.embed-responsive {
  position: relative;
  display: block;
  overflow: hidden;
  padding: 0;
  height: 0;
}

.embed-responsive--4x3 {
  padding-bottom: 75%;
}

.embed-responsive--16x9 {
  padding-bottom: 56.25%;
}

.embed-responsive__item,
.embed-responsive iframe {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border: 0;
}

[class*='link-'] {
  cursor: pointer;
  transition: all 0.25s;
}

.image-link:after {
  display: none !important;
}

.link-green {
  color: #0fcdba !important;
}

.link-green:focus,
.link-green:hover {
  color: #25b887 !important;
}

.link-green:active {
  color: #21a378 !important;
}

.link-green-dark {
  color: #25b887 !important;
}

.link-green-dark:focus,
.link-green-dark:hover {
  color: #21a378 !important;
}

.link-green-dark:active {
  color: #1e936c !important;
}

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

.link-white:focus,
.link-white:hover {
  color: #25b887 !important;
}

.link-white:active {
  color: #21a378 !important;
}

.link-gray {
  color: #666 !important;
}

.link-gray:focus,
.link-gray:hover {
  color: #0fcdba !important;
}

.link-lightgray {
  color: #ccc !important;
}

.link-lightgray:focus,
.link-lightgray:hover {
  color: #999 !important;
}

.link-lightgray:active {
  color: #666 !important;
}

.link-lightgray {
  color: #ccc;
}

.link-lightgray:hover {
  color: #666;
}

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

.list-unstyled li {
  margin-bottom: 0;
  text-align: inherit;
}

.list-unstyled li:before {
  content: none !important;
}

/* Slider */

.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list:focus {
  outline: none;
}

.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
}

.slick-track:before,
.slick-track:after {
  display: table;
  content: '';
}

.slick-track:after {
  clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: inline-block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block !important;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

.headroom {
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
}

.headroom--unfixed {
  position: relative;
  -webkit-transform: translateY(0);
          transform: translateY(0);
}

.headroom--scrolled {
  transition: -webkit-transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out;
  transition: transform 0.5s ease-in-out, -webkit-transform 0.5s ease-in-out;
}

.headroom--unpinned {
  position: fixed;
  -webkit-transform: translateY(-100%);
          transform: translateY(-100%);
}

.headroom--pinned {
  position: fixed;
  -webkit-transform: translateY(0%);
          transform: translateY(0%);
}

/** Sanitize for consistency */

/** Init global styles */

/** Legacy */

/** Plugins */


/*# sourceMappingURL=1d5102dc39150a76.css.map*/