/* External Library Includes */
/*! normalize.css v7.0.0 | 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
 *    IE on Windows Phone and in iOS.
 */
html {
  line-height: 1.15; /* 1 */
  -ms-text-size-adjust: 100%; /* 2 */
  -webkit-text-size-adjust: 100%; /* 2 */
}
/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers (opinionated).
 */
body {
  margin: 0;
}
/**
 * Add the correct display in IE 9-.
 */
article,
aside,
footer,
header,
nav,
section {
  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
   ========================================================================== */
/**
 * Add the correct display in IE 9-.
 * 1. Add the correct display in IE.
 */
figcaption,
figure,
main { /* 1 */
  display: block;
}
/**
 * Add the correct margin in IE 8.
 */
figure {
  margin: 1em 40px;
}
/**
 * 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
   ========================================================================== */
/**
 * 1. Remove the gray background on active links in IE 10.
 * 2. Remove gaps in links underline in iOS 8+ and Safari 8+.
 */
a {
  background-color: transparent; /* 1 */
  -webkit-text-decoration-skip: objects; /* 2 */
}
/**
 * 1. Remove the bottom border in Chrome 57- and Firefox 39-.
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  -webkit-text-decoration: underline dotted;
          text-decoration: underline dotted; /* 2 */
}
/**
 * Prevent the duplicate application of `bolder` by the next rule in Safari 6.
 */
b,
strong {
  font-weight: inherit;
}
/**
 * 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 style in Android 4.3-.
 */
dfn {
  font-style: italic;
}
/**
 * Add the correct background and color in IE 9-.
 */
mark {
  background-color: #ff0;
  color: #000;
}
/**
 * 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
   ========================================================================== */
/**
 * 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 images inside links in IE 10-.
 */
img {
  border-style: none;
}
/**
 * Hide the overflow in IE.
 */
svg:not(:root) {
  overflow: hidden;
}
/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers (opinionated).
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: sans-serif; /* 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;
}
/**
 * 1. Prevent a WebKit bug where (2) destroys native `audio` and `video`
 *    controls in Android 4.
 * 2. Correct the inability to style clickable types in iOS and Safari.
 */
button,
html [type="button"], /* 1 */
[type="reset"],
[type="submit"] {
  -webkit-appearance: button; /* 2 */
}
/**
 * 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 */
}
/**
 * 1. Add the correct display in IE 9-.
 * 2. Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
  display: inline-block; /* 1 */
  vertical-align: baseline; /* 2 */
}
/**
 * Remove the default vertical scrollbar in IE.
 */
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 and cancel buttons in Chrome and Safari on macOS.
 */
[type="search"]::-webkit-search-cancel-button,
[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 IE 9-.
 * 1. Add the correct display in Edge, IE, and Firefox.
 */
details, /* 1 */
menu {
  display: block;
}
/*
 * 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;
}
/* Hidden
   ========================================================================== */
/**
 * Add the correct display in IE 10-.
 */
[hidden] {
  display: none;
}
:root {

  overflow-x: hidden;
  height: 100%;
}
/*

  CUSTOM MEDIA QUERIES

  Media query values can be changed to fit your own content.
  There are no magic bullets when it comes to media query width values.
  They should be declared in em units - and they should be set to meet
  the needs of your content. You can also add additional media queries,
  or remove some of the existing ones.

  These media queries can be referenced like so:

  @media (--breakpoint-not-small) {
  }

  @media (--breakpoint-medium) {
  }

  @media (--breakpoint-large) {
  }

*/
/* Media Queries */
* {
  box-sizing: border-box;
}
body {
  font-size: 1rem;
  min-width: 320px;
  text-rendering: optimizeLegibility;
  -webkit-font-feature-settings: "pnum";
          font-feature-settings: "pnum";
  font-variant-numeric: proportional-nums;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
big {
  font-size: 1.5em;
}
small {
  font-size: .75em;
}
img {
  max-width: 100%;
  height: auto;
}
/* need better home for this. possible a sheet for lists? */
.li-none {list-style: none}
/* need beter home */
.bs-cb {
  box-sizing: content-box;
}
.bs-bb {
  box-sizing: border-box;
}
/* Modules */
/* FLEXBOX */
.fx-auto {
  -webkit-box-flex: 1;
          flex: 1 1 auto;
  min-width: 0;
  min-height: 0;
}
.fx { display: -webkit-box; display: flex; }
.fx-n { -webkit-box-flex: 0; flex: none; }
.fx-w-w { flex-wrap: wrap; }
.fx-w-n { flex-wrap: nowrap; }
.fx-w-r { flex-wrap: wrap-reverse; }
.fx-d-c { -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; }
.fx-d-r { -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; }
.fx-d-cr { -webkit-box-orient: vertical; -webkit-box-direction: reverse; flex-direction: column-reverse; }
.fx-d-rr { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; flex-direction: row-reverse; }
.ai-fs { -webkit-box-align: start; align-items: flex-start; }
.ai-fe { -webkit-box-align: end; align-items: flex-end; }
.ai-c { -webkit-box-align: center; align-items: center; }
.ai-b { -webkit-box-align: baseline; align-items: baseline; }
.ai-s { -webkit-box-align: stretch; align-items: stretch; }
.as-fs { align-self: flex-start; }
.as-fe { align-self: flex-end; }
.as-c { align-self: center; }
.as-b { align-self: baseline; }
.as-s { align-self: stretch; }
.jc-fs { -webkit-box-pack: start; justify-content: flex-start; }
.jc-fe { -webkit-box-pack: end; justify-content: flex-end; }
.jc-c { -webkit-box-pack: center; justify-content: center; }
.jc-sb { -webkit-box-pack: justify; justify-content: space-between; }
.jc-sa { justify-content: space-around; }
.jc-se { -webkit-box-pack: space-evenly; justify-content: space-evenly; }
.ac-fs { align-content: flex-start; }
.ac-fe { align-content: flex-end; }
.ac-c { align-content: center; }
.ac-sb { align-content: space-between; }
.ac-sa { align-content: space-around; }
.ac-s { align-content: stretch; }
.ord-0 { -webkit-box-ordinal-group: 1; order: 0; }
.ord-1 { -webkit-box-ordinal-group: 2; order: 1; }
.ord-2 { -webkit-box-ordinal-group: 3; order: 2; }
.ord-3 { -webkit-box-ordinal-group: 4; order: 3; }
.ord-4 { -webkit-box-ordinal-group: 5; order: 4; }
.ord-5 { -webkit-box-ordinal-group: 6; order: 5; }
.ord-6 { -webkit-box-ordinal-group: 7; order: 6; }
.ord-7 { -webkit-box-ordinal-group: 8; order: 7; }
.ord-8 { -webkit-box-ordinal-group: 9; order: 8; }
.ord-last { -webkit-box-ordinal-group: 100000; order: 99999; }
.fx-b-20  {  flex-basis: 20%;       }
.fx-b-25  {  flex-basis: 25%;       }
.fx-b-33  {  flex-basis: 33.333%;   }
.fx-b-50  {  flex-basis: 50%;       }
.fx-b-66  {  flex-basis: 66.666%;   }
.fx-b-75  {  flex-basis: 75%;       }
.fx-b-100 {  flex-basis: 100%;      }
.fx-g-0 { -webkit-box-flex: 0; flex-grow: 0; }
.fx-g-1 { -webkit-box-flex: 1; flex-grow: 1; }
.fx-s-0 { flex-shrink: 0; }
.fx-s-1 { flex-shrink: 1; }
@media screen and (max-width: 48em) {
  .fx-auto-s {
    -webkit-box-flex: 1;
            flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .fx-s { display: -webkit-box; display: flex; }
  .fx-n-s { -webkit-box-flex: 0; flex: none; }

  .fx-w-w-s { flex-wrap: wrap; }
  .fx-w-n-s { flex-wrap: nowrap; }
  .fx-w-r-s { flex-wrap: wrap-reverse; }

  .fx-d-c-s { -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; }
  .fx-d-r-s { -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; }
  .fx-d-cr-s { -webkit-box-orient: vertical; -webkit-box-direction: reverse; flex-direction: column-reverse; }
  .fx-d-rr-s { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; flex-direction: row-reverse; }

  .ai-fs-s { -webkit-box-align: start; align-items: flex-start; }
  .ai-fe-s { -webkit-box-align: end; align-items: flex-end; }
  .ai-c-s { -webkit-box-align: center; align-items: center; }
  .ai-b-s { -webkit-box-align: baseline; align-items: baseline; }
  .ai-s-s { -webkit-box-align: stretch; align-items: stretch; }

  .as-fs-s { align-self: flex-start; }
  .as-fe-s { align-self: flex-end; }
  .as-c-s { align-self: center; }
  .as-b-s { align-self: baseline; }
  .as-s-s { align-self: stretch; }

  .jc-fs-s { -webkit-box-pack: start; justify-content: flex-start; }
  .jc-fe-s { -webkit-box-pack: end; justify-content: flex-end; }
  .jc-c-s { -webkit-box-pack: center; justify-content: center; }
  .jc-sb-s { -webkit-box-pack: justify; justify-content: space-between; }
  .jc-sa-s { justify-content: space-around; }
  .jc-se-s { -webkit-box-pack: space-evenly; justify-content: space-evenly; }

  .ac-fs-s { align-content: flex-start; }
  .ac-fe-s { align-content: flex-end; }
  .ac-c-s { align-content: center; }
  .ac-sb-s { align-content: space-between; }
  .ac-sa-s { align-content: space-around; }
  .ac-s-s { align-content: stretch; }

  .ord-0-s { -webkit-box-ordinal-group: 1; order: 0; }
  .ord-1-s { -webkit-box-ordinal-group: 2; order: 1; }
  .ord-2-s { -webkit-box-ordinal-group: 3; order: 2; }
  .ord-3-s { -webkit-box-ordinal-group: 4; order: 3; }
  .ord-4-s { -webkit-box-ordinal-group: 5; order: 4; }
  .ord-5-s { -webkit-box-ordinal-group: 6; order: 5; }
  .ord-6-s { -webkit-box-ordinal-group: 7; order: 6; }
  .ord-7-s { -webkit-box-ordinal-group: 8; order: 7; }
  .ord-8-s { -webkit-box-ordinal-group: 9; order: 8; }
  .ord-last-s { -webkit-box-ordinal-group: 100000; order: 99999; }

  .fx-b-20-s  {  flex-basis: 20%;       }
  .fx-b-25-s  {  flex-basis: 25%;       }
  .fx-b-33-s  {  flex-basis: 33.333%;   }
  .fx-b-50-s  {  flex-basis: 50%;       }
  .fx-b-66-s  {  flex-basis: 66.666%;   }
  .fx-b-75-s  {  flex-basis: 75%;       }
  .fx-b-100-s {  flex-basis: 100%;      }

  .fx-g-0-s { -webkit-box-flex: 0; flex-grow: 0; }
  .fx-g-1-s { -webkit-box-flex: 1; flex-grow: 1; }

  .fx-s-0-s { flex-shrink: 0; }
  .fx-s-1-s { flex-shrink: 1; }
}
@media screen and (min-width: 48em) {
  .fx-auto-ns {
    -webkit-box-flex: 1;
            flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .fx-ns { display: -webkit-box; display: flex; }
  .fx-n-ns { -webkit-box-flex: 0; flex: none; }

  .fx-w-w-ns { flex-wrap: wrap; }
  .fx-w-n-ns { flex-wrap: nowrap; }
  .fx-w-r-ns { flex-wrap: wrap-reverse; }

  .fx-d-c-ns { -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; }
  .fx-d-r-ns { -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; }
  .fx-d-cr-ns { -webkit-box-orient: vertical; -webkit-box-direction: reverse; flex-direction: column-reverse; }
  .fx-d-rr-ns { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; flex-direction: row-reverse; }

  .ai-fs-ns { -webkit-box-align: start; align-items: flex-start; }
  .ai-fe-ns { -webkit-box-align: end; align-items: flex-end; }
  .ai-c-ns { -webkit-box-align: center; align-items: center; }
  .ai-b-ns { -webkit-box-align: baseline; align-items: baseline; }
  .ai-s-ns { -webkit-box-align: stretch; align-items: stretch; }

  .as-fs-ns { align-self: flex-start; }
  .as-fe-ns { align-self: flex-end; }
  .as-c-ns { align-self: center; }
  .as-b-ns { align-self: baseline; }
  .as-s-ns { align-self: stretch; }

  .jc-fs-ns { -webkit-box-pack: start; justify-content: flex-start; }
  .jc-fe-ns { -webkit-box-pack: end; justify-content: flex-end; }
  .jc-c-ns { -webkit-box-pack: center; justify-content: center; }
  .jc-sb-ns { -webkit-box-pack: justify; justify-content: space-between; }
  .jc-sa-ns { justify-content: space-around; }
  .jc-se-ns { -webkit-box-pack: space-evenly; justify-content: space-evenly; }

  .ac-fs-ns { align-content: flex-start; }
  .ac-fe-ns { align-content: flex-end; }
  .ac-c-ns { align-content: center; }
  .ac-sb-ns { align-content: space-between; }
  .ac-sa-ns { align-content: space-around; }
  .ac-s-ns { align-content: stretch; }

  .ord-0-ns { -webkit-box-ordinal-group: 1; order: 0; }
  .ord-1-ns { -webkit-box-ordinal-group: 2; order: 1; }
  .ord-2-ns { -webkit-box-ordinal-group: 3; order: 2; }
  .ord-3-ns { -webkit-box-ordinal-group: 4; order: 3; }
  .ord-4-ns { -webkit-box-ordinal-group: 5; order: 4; }
  .ord-5-ns { -webkit-box-ordinal-group: 6; order: 5; }
  .ord-6-ns { -webkit-box-ordinal-group: 7; order: 6; }
  .ord-7-ns { -webkit-box-ordinal-group: 8; order: 7; }
  .ord-8-ns { -webkit-box-ordinal-group: 9; order: 8; }
  .ord-last-ns { -webkit-box-ordinal-group: 100000; order: 99999; }

  .fx-b-20-ns  {  flex-basis: 20%;       }
  .fx-b-25-ns  {  flex-basis: 25%;       }
  .fx-b-33-ns  {  flex-basis: 33.333%;   }
  .fx-b-50-ns  {  flex-basis: 50%;       }
  .fx-b-66-ns  {  flex-basis: 66.666%;   }
  .fx-b-75-ns  {  flex-basis: 75%;       }
  .fx-b-100-ns {  flex-basis: 100%;      }

  .fx-g-0-ns { -webkit-box-flex: 0; flex-grow: 0; }
  .fx-g-1-ns { -webkit-box-flex: 1; flex-grow: 1; }

  .fx-s-0-ns { flex-shrink: 0; }
  .fx-s-1-ns { flex-shrink: 1; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .fx-auto-m {
    -webkit-box-flex: 1;
            flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .fx-m { display: -webkit-box; display: flex; }
  .fx-n-m { -webkit-box-flex: 0; flex: none; }

  .fx-w-w-m { flex-wrap: wrap; }
  .fx-w-n-m { flex-wrap: nowrap; }
  .fx-w-r-m { flex-wrap: wrap-reverse; }

  .fx-d-c-m { -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; }
  .fx-d-r-m { -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; }
  .fx-d-cr-m { -webkit-box-orient: vertical; -webkit-box-direction: reverse; flex-direction: column-reverse; }
  .fx-d-rr-m { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; flex-direction: row-reverse; }

  .ai-fs-m { -webkit-box-align: start; align-items: flex-start; }
  .ai-fe-m { -webkit-box-align: end; align-items: flex-end; }
  .ai-c-m { -webkit-box-align: center; align-items: center; }
  .ai-b-m { -webkit-box-align: baseline; align-items: baseline; }
  .ai-s-m { -webkit-box-align: stretch; align-items: stretch; }

  .as-fs-m { align-self: flex-start; }
  .as-fe-m { align-self: flex-end; }
  .as-c-m { align-self: center; }
  .as-b-m { align-self: baseline; }
  .as-s-m { align-self: stretch; }

  .jc-fs-m { -webkit-box-pack: start; justify-content: flex-start; }
  .jc-fe-m { -webkit-box-pack: end; justify-content: flex-end; }
  .jc-c-m { -webkit-box-pack: center; justify-content: center; }
  .jc-sb-m { -webkit-box-pack: justify; justify-content: space-between; }
  .jc-sa-m { justify-content: space-around; }
  .jc-se-m { -webkit-box-pack: space-evenly; justify-content: space-evenly; }

  .ac-fs-m { align-content: flex-start; }
  .ac-fe-m { align-content: flex-end; }
  .ac-c-m { align-content: center; }
  .ac-sb-m { align-content: space-between; }
  .ac-sa-m { align-content: space-around; }
  .ac-s-m { align-content: stretch; }

  .ord-0-m { -webkit-box-ordinal-group: 1; order: 0; }
  .ord-1-m { -webkit-box-ordinal-group: 2; order: 1; }
  .ord-2-m { -webkit-box-ordinal-group: 3; order: 2; }
  .ord-3-m { -webkit-box-ordinal-group: 4; order: 3; }
  .ord-4-m { -webkit-box-ordinal-group: 5; order: 4; }
  .ord-5-m { -webkit-box-ordinal-group: 6; order: 5; }
  .ord-6-m { -webkit-box-ordinal-group: 7; order: 6; }
  .ord-7-m { -webkit-box-ordinal-group: 8; order: 7; }
  .ord-8-m { -webkit-box-ordinal-group: 9; order: 8; }
  .ord-last-m { -webkit-box-ordinal-group: 100000; order: 99999; }

  .fx-b-20-m  {  flex-basis: 25%;       }
  .fx-b-25-m  {  flex-basis: 25%;       }
  .fx-b-33-m  {  flex-basis: 33.333%;   }
  .fx-b-50-m  {  flex-basis: 50%;       }
  .fx-b-66-m  {  flex-basis: 66.666%;   }
  .fx-b-75-m  {  flex-basis: 75%;       }
  .fx-b-100-m {  flex-basis: 100%;      }

  .fx-g-0-m { -webkit-box-flex: 0; flex-grow: 0; }
  .fx-g-1-m { -webkit-box-flex: 1; flex-grow: 1; }

  .fx-s-0-m { flex-shrink: 0; }
  .fx-s-1-m { flex-shrink: 1; }
}
@media screen and (min-width: 60em) {
  .fx-auto-l {
    -webkit-box-flex: 1;
            flex: 1 1 auto;
    min-width: 0;
    min-height: 0;
  }

  .fx-l { display: -webkit-box; display: flex; }
  .fx-n-l { -webkit-box-flex: 0; flex: none; }

  .fx-w-w-l { flex-wrap: wrap; }
  .fx-w-n-l { flex-wrap: nowrap; }
  .fx-w-r-l { flex-wrap: wrap-reverse; }

  .fx-d-c-l { -webkit-box-orient: vertical; -webkit-box-direction: normal; flex-direction: column; }
  .fx-d-r-l { -webkit-box-orient: horizontal; -webkit-box-direction: normal; flex-direction: row; }
  .fx-d-cr-l { -webkit-box-orient: vertical; -webkit-box-direction: reverse; flex-direction: column-reverse; }
  .fx-d-rr-l { -webkit-box-orient: horizontal; -webkit-box-direction: reverse; flex-direction: row-reverse; }

  .ai-fs-l { -webkit-box-align: start; align-items: flex-start; }
  .ai-fe-l { -webkit-box-align: end; align-items: flex-end; }
  .ai-c-l { -webkit-box-align: center; align-items: center; }
  .ai-b-l { -webkit-box-align: baseline; align-items: baseline; }
  .ai-s-l { -webkit-box-align: stretch; align-items: stretch; }

  .as-fs-l { align-self: flex-start; }
  .as-fe-l { align-self: flex-end; }
  .as-c-l { align-self: center; }
  .as-b-l { align-self: baseline; }
  .as-s-l { align-self: stretch; }

  .jc-fs-l { -webkit-box-pack: start; justify-content: flex-start; }
  .jc-fe-l { -webkit-box-pack: end; justify-content: flex-end; }
  .jc-c-l { -webkit-box-pack: center; justify-content: center; }
  .jc-b-l { -webkit-box-pack: justify; justify-content: space-between; }
  .jc-sa-l { justify-content: space-around; }
  .jc-se-l { -webkit-box-pack: space-evenly; justify-content: space-evenly; }

  .ac-fs-l { align-content: flex-start; }
  .ac-fe-l { align-content: flex-end; }
  .ac-c-l { align-content: center; }
  .ac-sb-l { align-content: space-between; }
  .ac-sa-l { align-content: space-around; }
  .ac-s-l { align-content: stretch; }

  .ord-0-l { -webkit-box-ordinal-group: 1; order: 0; }
  .ord-1-l { -webkit-box-ordinal-group: 2; order: 1; }
  .ord-2-l { -webkit-box-ordinal-group: 3; order: 2; }
  .ord-3-l { -webkit-box-ordinal-group: 4; order: 3; }
  .ord-4-l { -webkit-box-ordinal-group: 5; order: 4; }
  .ord-5-l { -webkit-box-ordinal-group: 6; order: 5; }
  .ord-6-l { -webkit-box-ordinal-group: 7; order: 6; }
  .ord-7-l { -webkit-box-ordinal-group: 8; order: 7; }
  .ord-8-l { -webkit-box-ordinal-group: 9; order: 8; }
  .ord-last-l { -webkit-box-ordinal-group: 100000; order: 99999; }

  .fx-b-20-l  {  flex-basis: 25%;       }
  .fx-b-25-l  {  flex-basis: 25%;       }
  .fx-b-33-l  {  flex-basis: 33.333%;   }
  .fx-b-50-l  {  flex-basis: 50%;       }
  .fx-b-66-l  {  flex-basis: 66.666%;   }
  .fx-b-75-l  {  flex-basis: 75%;       }
  .fx-b-100-l {  flex-basis: 100%;      }

  .fx-g-0-l { -webkit-box-flex: 0; flex-grow: 0; }
  .fx-g-1-l { -webkit-box-flex: 1; flex-grow: 1; }

  .fx-s-0-l { flex-shrink: 0; }
  .fx-s-1-l { flex-shrink: 1; }
}
.d-n { display: none; }
.d-i { display: inline; }
.d-b { display: block; }
.d-ib { display: inline-block; }
.d-t { display: table; }
.d-fx { display: -webkit-box; display: flex; }
.d-if { display: -webkit-inline-box; display: inline-flex; }
.sr {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
@media screen and (max-width: 48em) {
  .d-n-s { display: none; }
  .d-i-s { display: inline; }
  .d-b-s { display: block; }
  .d-ib-s { display: inline-block; }
  .d-t-s { display: table; }
  .d-fx-s { display: -webkit-box; display: flex; }
  .d-if-s { display: -webkit-inline-box; display: inline-flex; }
}
@media screen and (min-width: 48em) {
  .d-n-ns { display: none; }
  .d-i-ns { display: inline; }
  .d-b-ns { display: block; }
  .d-ib-ns { display: inline-block; }
  .d-t-ns { display: table; }
  .d-fx-ns { display: -webkit-box; display: flex; }
  .d-if-ns { display: -webkit-inline-box; display: inline-flex; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .d-n-m { display: none; }
  .d-i-m { display: inline; }
  .d-b-m { display: block; }
  .d-ib-m { display: inline-block; }
  .d-t-m { display: table; }
  .d-fx-m { display: -webkit-box; display: flex; }
  .d-if-m { display: -webkit-inline-box; display: inline-flex; }
}
@media screen and (min-width: 60em) {
  .d-n-l { display: none; }
  .d-i-l { display: inline; }
  .d-b-l { display: block; }
  .d-ib-l { display: inline-block; }
  .d-t-l { display: table; }
  .d-fx-l { display: -webkit-box; display: flex; }
  .d-if-l { display: -webkit-inline-box; display: inline-flex; }
}
/* clearfix */
.cf::before,
.cf::after { content: ""; display: table; }
.cf::after { clear: both; }
/* float */
.fl-l { float: left; }
.fl-r { float: right; }
.fl-n { float: none; }
/* clear */
.cl-l { clear: left; }
.cl-r { clear: right; }
.cl-b { clear: both; }
.cl-n { clear: none; }
@media screen and (max-width: 48em) {
  /* float */
  .fl-l-s { float: left; }
  .fl-r-s { float: right; }
  .fl-n-s { float: none; }

  /* clear */
  .cl-l-s { clear: left; }
  .cl-r-s { clear: right; }
  .cl-b-s { clear: both; }
  .cl-n-s { clear: none; }
}
@media screen and (min-width: 48em) {
  /* float */
  .fl-l-ns { float: left; }
  .fl-r-ns { float: right; }
  .fl-n-ns { float: none; }

  /* clear */
  .cl-l-ns { clear: left; }
  .cl-r-ns { clear: right; }
  .cl-b-ns { clear: both; }
  .cl-n-ns { clear: none; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  /* float */
  .fl-l-m { float: left; }
  .fl-r-m { float: right; }
  .fl-n-m { float: none; }

  /* clear */
  .cl-l-m { clear: left; }
  .cl-r-m { clear: right; }
  .cl-b-m { clear: both; }
  .cl-n-m { clear: none; }
}
@media screen and (min-width: 60em) {
  /* float */
  .fl-l-l { float: left; }
  .fl-r-l { float: right; }
  .fl-n-l { float: none; }

  /* clear */
  .cl-l-l { clear: left; }
  .cl-r-l { clear: right; }
  .cl-b-l { clear: both; }
  .cl-n-l { clear: none; }
}
[class*="contain"] {
  padding-left: 1rem;
  padding-right: 1rem;
  margin-left: auto;
  margin-right: auto;
}
.contain    { max-width: 74rem; }
.contain-sm { max-width: 30rem; }
.contain-md { max-width: 48rem; }
.contain-lg { max-width: 60rem; }
.w-10 {  width:  10%; }
.w-20 {  width:  20%; }
.w-25 {  width:  25%; }
.w-30 {  width:  30%; }
.w-33 {  width:  33%; }
.w-34 {  width:  34%; }
.w-40 {  width:  40%; }
.w-45 {  width:  45%; }
.w-50 {  width:  50%; }
.w-60 {  width:  60%; }
.w-66 {  width:  60%; }
.w-70 {  width:  70%; }
.w-75 {  width:  75%; }
.w-80 {  width:  80%; }
.w-90 {  width:  90%; }
.w-100 { width: 100%; }
.w-a { width: auto; }
.w-third { width: 33.33333%; }
.w-two-thirds { width: 66.66667%; }
.w-eigth { width: 12.5%; }
.w-golden { width: 61.8034%; }
.mw-100  { max-width: 100%; }
.mw-none { max-width: none; }
@media screen and (max-width: 48em) {
  .contain-sm-s { max-width: 30rem; }
  .contain-md-s { max-width: 48rem; }
  .contain-lg-s {  max-width: 60rem; }

  .w-10-s {  width:  10%; }
  .w-20-s {  width:  20%; }
  .w-25-s {  width:  25%; }
  .w-30-s {  width:  30%; }
  .w-33-s {  width:  33%; }
  .w-34-s {  width:  34%; }
  .w-40-s {  width:  40%; }
  .w-45-s {  width:  45%; }
  .w-50-s {  width:  50%; }
  .w-60-s {  width:  60%; }
  .w-66-s {  width:  60%; }
  .w-70-s {  width:  70%; }
  .w-75-s {  width:  75%; }
  .w-80-s {  width:  80%; }
  .w-90-s {  width:  90%; }
  .w-100-s { width: 100%; }
  .w-a-s { width: auto; }

  .w-third-s { width: 33.33333%; }
  .w-two-thirds-s { width: 66.66667%; }
  .w-eigth-s { width: 12.5%; }
  .w-golden-s { width: 61.8034%; }

  .mw-100-s { max-width: 100%; }
  .mw-none-s { max-width: none; }
}
@media screen and (min-width: 48em) {
  [class*="contain"] {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .contain-sm-ns { max-width: 30rem; }
  .contain-md-ns { max-width: 48rem; }
  .contain-lg-ns { max-width: 60rem; }

  .w-10-ns {  width:  10%; }
  .w-20-ns {  width:  20%; }
  .w-25-ns {  width:  25%; }
  .w-30-ns {  width:  30%; }
  .w-33-ns {  width:  33%; }
  .w-34-ns {  width:  34%; }
  .w-40-ns {  width:  40%; }
  .w-45-ns {  width:  45%; }
  .w-50-ns {  width:  50%; }
  .w-60-ns {  width:  60%; }
  .w-66-ns {  width:  60%; }
  .w-70-ns {  width:  70%; }
  .w-75-ns {  width:  75%; }
  .w-80-ns {  width:  80%; }
  .w-90-ns {  width:  90%; }
  .w-100-ns { width: 100%; }
  .w-a-ns { width: auto; }

  .w-third-ns { width: 33.33333%; }
  .w-two-thirds-ns { width: 66.66667%; }
  .w-eigth-ns { width: 12.5%; }
  .w-golden-ns { width: 61.8034%; }

  .mw-100-ns { max-width: 100%; }
  .mw-none-ns { max-width: none; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .contain-sm-m { max-width: 30rem; }
  .contain-md-m { max-width: 48rem; }
  .contain-lg-m { max-width: 60rem; }

  .w-10-m {  width:  10%; }
  .w-20-m {  width:  20%; }
  .w-25-m {  width:  25%; }
  .w-30-m {  width:  30%; }
  .w-33-m {  width:  33%; }
  .w-34-m {  width:  34%; }
  .w-40-m {  width:  40%; }
  .w-45-m {  width:  45%; }
  .w-50-m {  width:  50%; }
  .w-60-m {  width:  60%; }
  .w-66-m {  width:  60%; }
  .w-70-m {  width:  70%; }
  .w-75-m {  width:  75%; }
  .w-80-m {  width:  80%; }
  .w-90-m {  width:  90%; }
  .w-100-m { width: 100%; }
  .w-a-m { width: auto; }

  .w-third-m { width: 33.33333%; }
  .w-two-thirds-m { width: 66.66667%; }
  .w-eigth-m { width: 12.5%; }
  .w-golden-m { width: 61.8034%; }

  .mw-100-m { max-width: 100%; }
  .mw-none-m { max-width: none; }
}
@media screen and (min-width: 60em) {
  .contain-lg-l { max-width: 30rem; }
  .contain-lg-l { max-width: 48rem; }
  .contain-lg-l { max-width: 60rem; }

  .w-10-l {  width:  10%; }
  .w-20-l {  width:  20%; }
  .w-25-l {  width:  25%; }
  .w-30-l {  width:  30%; }
  .w-33-l {  width:  33%; }
  .w-34-l {  width:  34%; }
  .w-40-l {  width:  40%; }
  .w-45-l {  width:  45%; }
  .w-50-l {  width:  50%; }
  .w-60-l {  width:  60%; }
  .w-66-l {  width:  60%; }
  .w-70-l {  width:  70%; }
  .w-75-l {  width:  75%; }
  .w-80-l {  width:  80%; }
  .w-90-l {  width:  90%; }
  .w-100-l { width: 100%; }
  .w-a-l { width: auto; }

  .w-third-l { width: 33.33333%; }
  .w-two-thirds-l { width: 66.66667%; }
  .w-eigth-l { width: 12.5%; }
  .w-golden-l { width: 61.8034%; }

  .mw-100-l { max-width: 100%; }
  .mw-none-l { max-width: none; }
}
/* Height Percentages - Based off of height of parent */
.h-25 {  height:  25%; }
.h-50 {  height:  50%; }
.h-75 {  height:  75%; }
.h-100 { height: 100%; }
.min-h-100 { min-height: 100%; }
/* Screen Height Percentage */
.vh-25 {  height:  25vh; }
.vh-50 {  height:  50vh; }
.vh-75 {  height:  75vh; }
.vh-100 { height: 100vh; }
.min-vh-100 { min-height: 100vh; }
.h-a {     height: auto; }
@media screen and (max-width: 48em) {
  /* Height Percentages - Based off of height of parent */
  .h-25-s {  height:  25%; }
  .h-50-s {  height:  50%; }
  .h-75-s {  height:  75%; }
  .h-100-s { height: 100%; }

  .min-h-100-s { min-height: 100%; }

  /* Screen Height Percentage */
  .vh-25-s {  height:  25vh; }
  .vh-50-s {  height:  50vh; }
  .vh-75-s {  height:  75vh; }
  .vh-100-s { height: 100vh; }

  .min-vh-100-s { min-height: 100vh; }

  .h-a-s {     height: auto; }
}
@media screen and (min-width: 48em) {
  /* Height Percentages - Based off of height of parent */
  .h-25-ns {  height:  25%; }
  .h-50-ns {  height:  50%; }
  .h-75-ns {  height:  75%; }
  .h-100-ns { height: 100%; }

  .min-h-100-ns { min-height: 100%; }

  /* Screen Height Percentage */
  .vh-25-ns {  height:  25vh; }
  .vh-50-ns {  height:  50vh; }
  .vh-75-ns {  height:  75vh; }
  .vh-100-ns { height: 100vh; }

  .min-vh-100-ns { min-height: 100vh; }

  .h-a-ns {     height: auto; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  /* Height Percentages - Based off of height of parent */
  .h-25-m {  height:  25%; }
  .h-50-m {  height:  50%; }
  .h-75-m {  height:  75%; }
  .h-100-m { height: 100%; }

  .min-h-100-m { min-height: 100%; }

  /* Screen Height Percentage */
  .vh-25-m {  height:  25vh; }
  .vh-50-m {  height:  50vh; }
  .vh-75-m {  height:  75vh; }
  .vh-100-m { height: 100vh; }

  .min-vh-100-m { min-height: 100vh; }

  .h-a-m {     height: auto; }
}
@media screen and (min-width: 60em) {
  /* Height Percentages - Based off of height of parent */
  .h-25-l {  height:  25%; }
  .h-50-l {  height:  50%; }
  .h-75-l {  height:  75%; }
  .h-100-l { height: 100%; }

  .min-h-100-l { min-height: 100%; }

  /* Screen Height Percentage */
  .vh-25-l {  height:  25vh; }
  .vh-50-l {  height:  50vh; }
  .vh-75-l {  height:  75vh; }
  .vh-100-l { height: 100vh; }

  .min-vh-100-l { min-height: 100vh; }

  .h-a-l {     height: auto; }
}
/* Margins */
.ma-0 { margin: 0; }
.ma-05 { margin: 0.25rem }
.ma-1 { margin: 0.5rem; }
.ma-2 { margin: 1rem; }
.ma-3 { margin: 1.5rem; }
.ma-4 { margin: 2rem; }
.ma-5 { margin: 2.5rem; }
.ma-6 { margin: 3rem; }
.ma-7 { margin: 3.5rem; }
.ma-8 { margin: 4rem; }
.ma--1 { margin: -0.5rem; }
.ma--2 { margin: -1rem; }
.ma--3 { margin: -1.5rem; }
.ma--4 { margin: -2rem; }
.ma--5 { margin: -2.5rem; }
.ma--6 { margin: -3rem; }
.ma--7 { margin: -3.5rem; }
.ma--8 { margin: -4rem; }
.mt-0 { margin-top: 0; }
.mt-05 { margin-top: 0.25rem }
.mt-1 { margin-top: 0.5rem; }
.mt-2 { margin-top: 1rem; }
.mt-3 { margin-top: 1.5rem; }
.mt-4 { margin-top: 2rem; }
.mt-5 { margin-top: 2.5rem; }
.mt-6 { margin-top: 3rem; }
.mt-7 { margin-top: 3.5rem; }
.mt-8 { margin-top: 4rem; }
.mt--1 { margin-top: -0.5rem; }
.mt--2 { margin-top: -1rem; }
.mt--3 { margin-top: -1.5rem; }
.mt--4 { margin-top: -2rem; }
.mt--5 { margin-top: -2.5rem; }
.mt--6 { margin-top: -3rem; }
.mt--7 { margin-top: -3.5rem; }
.mt--8 { margin-top: -4rem; }
.mr-0 { margin-right: 0; }
.mr-05 { margin-right: 0.25rem }
.mr-1 { margin-right: 0.5rem; }
.mr-2 { margin-right: 1rem; }
.mr-3 { margin-right: 1.5rem; }
.mr-4 { margin-right: 2rem; }
.mr-5 { margin-right: 2.5rem; }
.mr-6 { margin-right: 3rem; }
.mr-7 { margin-right: 3.5rem; }
.mr-8 { margin-right: 4rem; }
.mr--1 { margin-right: -0.5rem; }
.mr--2 { margin-right: -1rem; }
.mr--3 { margin-right: -1.5rem; }
.mr--4 { margin-right: -2rem; }
.mr--5 { margin-right: -2.5rem; }
.mr--6 { margin-right: -3rem; }
.mr--7 { margin-right: -3.5rem; }
.mr--8 { margin-right: -4rem; }
.mb-0 { margin-bottom: 0; }
.mb-05 { margin-bottom: 0.25rem }
.mb-1 { margin-bottom: 0.5rem; }
.mb-2 { margin-bottom: 1rem; }
.mb-3 { margin-bottom: 1.5rem; }
.mb-4 { margin-bottom: 2rem; }
.mb-5 { margin-bottom: 2.5rem; }
.mb-6 { margin-bottom: 3rem; }
.mb-7 { margin-bottom: 3.5rem; }
.mb-8 { margin-bottom: 4rem; }
.mb--1 { margin-bottom: -0.5rem; }
.mb--2 { margin-bottom: -1rem; }
.mb--3 { margin-bottom: -1.5rem; }
.mb--4 { margin-bottom: -2rem; }
.mb--5 { margin-bottom: -2.5rem; }
.mb--6 { margin-bottom: -3rem; }
.mb--7 { margin-bottom: -3.5rem; }
.mb--8 { margin-bottom: -4rem; }
.ml-0 { margin-left: 0; }
.ml-05 { margin: 0.25rem }
.ml-1 { margin-left: 0.5rem; }
.ml-2 { margin-left: 1rem; }
.ml-3 { margin-left: 1.5rem; }
.ml-4 { margin-left: 2rem; }
.ml-5 { margin-left: 2.5rem; }
.ml-6 { margin-left: 3rem; }
.ml-7 { margin-left: 3.5rem; }
.ml-8 { margin-left: 4rem; }
.ml--1 { margin-left: -0.5rem; }
.ml--2 { margin-left: -1rem; }
.ml--3 { margin-left: -1.5rem; }
.ml--4 { margin-left: -2rem; }
.ml--5 { margin-left: -2.5rem; }
.ml--6 { margin-left: -3rem; }
.ml--7 { margin-left: -3.5rem; }
.ml--8 { margin-left: -4rem; }
.my-0 { margin-top: 0; margin-bottom: 0; }
.my-05 { margin-top: 0.25rem; margin-bottom: 0.25rem }
.my-1 { margin-top: 0.5rem; margin-bottom: 0.5rem; }
.my-2 { margin-top: 1rem; margin-bottom: 1rem; }
.my-3 { margin-top: 1.5rem; margin-bottom: 1.5rem; }
.my-4 { margin-top: 2rem; margin-bottom: 2rem; }
.my-5 { margin-top: 2.5rem; margin-bottom: 2.5rem; }
.my-6 { margin-top: 3rem; margin-bottom: 3rem; }
.my-7 { margin-top: 3.5rem; margin-bottom: 3.5rem; }
.my-8 { margin-top: 4rem; margin-bottom: 4rem; }
.my--1 { margin-top: -0.5rem; margin-bottom: -0.5rem; }
.my--2 { margin-top: -1rem; margin-bottom: -1rem; }
.my--3 { margin-top: -1.5rem; margin-bottom: -1.5rem; }
.my--4 { margin-top: -2rem; margin-bottom: -2rem; }
.my--5 { margin-top: -2.5rem; margin-bottom: -2.5rem; }
.my--6 { margin-top: -3rem; margin-bottom: -3rem; }
.my--7 { margin-top: -3.5rem; margin-bottom: -3.5rem; }
.my--8 { margin-top: -4rem; margin-bottom: -4rem; }
.mx-0 { margin-left: 0; margin-right: 0; }
.mx-05 { margin-left: 0.25rem; margin-right: 0.25rem }
.mx-1 { margin-left: 0.5rem; margin-right: 0.5rem; }
.mx-2 { margin-left: 1rem; margin-right: 1rem; }
.mx-3 { margin-left: 1.5rem; margin-right: 1.5rem; }
.mx-4 { margin-left: 2rem; margin-right: 2rem; }
.mx-5 { margin-left: 2.5rem; margin-right: 2.5rem; }
.mx-6 { margin-left: 3rem; margin-right: 3rem; }
.mx-7 { margin-left: 3.5rem; margin-right: 3.5rem; }
.mx-8 { margin-left: 4rem; margin-right: 4rem; }
.mx--1 { margin-left: -0.5rem; margin-right: -0.5rem; }
.mx--2 { margin-left: -1rem; margin-right: -1rem; }
.mx--3 { margin-left: -1.5rem; margin-right: -1.5rem; }
.mx--4 { margin-left: -2rem; margin-right: -2rem; }
.mx--5 { margin-left: -2.5rem; margin-right: -2.5rem; }
.mx--6 { margin-left: -3rem; margin-right: -3rem; }
.mx--7 { margin-left: -3.5rem; margin-right: -3.5rem; }
.mx--8 { margin-left: -4rem; margin-right: -4rem; }
.mr-a { margin-right: auto; }
.ml-a { margin-left:  auto; }
.mx-a { margin-left: auto; margin-right: auto;}
@media screen and (max-width: 48em) {
  .ma-0-s { margin: 0; }
  .ma-05-s { margin: 0.25rem; }
  .ma-1-s { margin: 0.5rem; }
  .ma-2-s { margin: 1rem; }
  .ma-3-s { margin: 1.5rem; }
  .ma-4-s { margin: 2rem; }
  .ma-5-s { margin: 2.5rem; }
  .ma-6-s { margin: 3rem; }
  .ma-7-s { margin: 3.5rem; }
  .ma-8-s { margin: 4rem; }
  .ma--1-s { margin: -0.5rem; }
  .ma--2-s { margin: -1rem; }
  .ma--3-s { margin: -1.5rem; }
  .ma--4-s { margin: -2rem; }
  .ma--5-s { margin: -2.5rem; }
  .ma--6-s { margin: -3rem; }
  .ma--7-s { margin: -3.5rem; }
  .ma--8-s { margin: -4rem; }

  .mt-0-s { margin-top: 0; }
  .mt-05-s { margin-top: 0.25rem; }
  .mt-1-s { margin-top: 0.5rem; }
  .mt-2-s { margin-top: 1rem; }
  .mt-3-s { margin-top: 1.5rem; }
  .mt-4-s { margin-top: 2rem; }
  .mt-5-s { margin-top: 2.5rem; }
  .mt-6-s { margin-top: 3rem; }
  .mt-7-s { margin-top: 3.5rem; }
  .mt-8-s { margin-top: 4rem; }
  .mt--1-s { margin-top: -0.5rem; }
  .mt--2-s { margin-top: -1rem; }
  .mt--3-s { margin-top: -1.5rem; }
  .mt--4-s { margin-top: -2rem; }
  .mt--5-s { margin-top: -2.5rem; }
  .mt--6-s { margin-top: -3rem; }
  .mt--7-s { margin-top: -3.5rem; }
  .mt--8-s { margin-top: -4rem; }

  .mr-0-s { margin-right: 0; }
  .mr-05-s { margin-right: 0.25rem; }
  .mr-1-s { margin-right: 0.5rem; }
  .mr-2-s { margin-right: 1rem; }
  .mr-3-s { margin-right: 1.5rem; }
  .mr-4-s { margin-right: 2rem; }
  .mr-5-s { margin-right: 2.5rem; }
  .mr-6-s { margin-right: 3rem; }
  .mr-7-s { margin-right: 3.5rem; }
  .mr-8-s { margin-right: 4rem; }
  .mr--1-s { margin-right: -0.5rem; }
  .mr--2-s { margin-right: -1rem; }
  .mr--3-s { margin-right: -1.5rem; }
  .mr--4-s { margin-right: -2rem; }
  .mr--5-s { margin-right: -2.5rem; }
  .mr--6-s { margin-right: -3rem; }
  .mr--7-s { margin-right: -3.5rem; }
  .mr--8-s { margin-right: -4rem; }

  .mb-0-s { margin-bottom: 0; }
  .mb-05-s { margin-bottom: 0.25rem; }
  .mb-1-s { margin-bottom: 0.5rem; }
  .mb-2-s { margin-bottom: 1rem; }
  .mb-3-s { margin-bottom: 1.5rem; }
  .mb-4-s { margin-bottom: 2rem; }
  .mb-5-s { margin-bottom: 2.5rem; }
  .mb-6-s { margin-bottom: 3rem; }
  .mb-7-s { margin-bottom: 3.5rem; }
  .mb-8-s { margin-bottom: 4rem; }
  .mb--1-s { margin-bottom: -0.5rem; }
  .mb--2-s { margin-bottom: -1rem; }
  .mb--3-s { margin-bottom: -1.5rem; }
  .mb--4-s { margin-bottom: -2rem; }
  .mb--5-s { margin-bottom: -2.5rem; }
  .mb--6-s { margin-bottom: -3rem; }
  .mb--7-s { margin-bottom: -3.5rem; }
  .mb--8-s { margin-bottom: -4rem; }

  .ml-0-s { margin-left: 0; }
  .ml-05-s { margin-left: 0.25rem; }
  .ml-1-s { margin-left: 0.5rem; }
  .ml-2-s { margin-left: 1rem; }
  .ml-3-s { margin-left: 1.5rem; }
  .ml-4-s { margin-left: 2rem; }
  .ml-5-s { margin-left: 2.5rem; }
  .ml-6-s { margin-left: 3rem; }
  .ml-7-s { margin-left: 3.5rem; }
  .ml-8-s { margin-left: 4rem; }
  .ml--1-s { margin-left: -0.5rem; }
  .ml--2-s { margin-left: -1rem; }
  .ml--3-s { margin-left: -1.5rem; }
  .ml--4-s { margin-left: -2rem; }
  .ml--5-s { margin-left: -2.5rem; }
  .ml--6-s { margin-left: -3rem; }
  .ml--7-s { margin-left: -3.5rem; }
  .ml--8-s { margin-left: -4rem; }

  .my-0-s { margin-top: 0; margin-bottom: 0; }
  .my-05-s { margin-top: 0.25rem; margin-bottom: 0.25rem; }
  .my-1-s { margin-top: 0.5rem; margin-bottom: 0.5rem; }
  .my-2-s { margin-top: 1rem; margin-bottom: 1rem; }
  .my-3-s { margin-top: 1.5rem; margin-bottom: 1.5rem; }
  .my-4-s { margin-top: 2rem; margin-bottom: 2rem; }
  .my-5-s { margin-top: 2.5rem; margin-bottom: 2.5rem; }
  .my-6-s { margin-top: 3rem; margin-bottom: 3rem; }
  .my-7-s { margin-top: 3.5rem; margin-bottom: 3.5rem; }
  .my-8-s { margin-top: 4rem; margin-bottom: 4rem; }
  .my--1-s { margin-top: -0.5rem; margin-bottom: -0.5rem; }
  .my--2-s { margin-top: -1rem; margin-bottom: -1rem; }
  .my--3-s { margin-top: -1.5rem; margin-bottom: -1.5rem; }
  .my--4-s { margin-top: -2rem; margin-bottom: -2rem; }
  .my--5-s { margin-top: -2.5rem; margin-bottom: -2.5rem; }
  .my--6-s { margin-top: -3rem; margin-bottom: -3rem; }
  .my--7-s { margin-top: -3.5rem; margin-bottom: -3.5rem; }
  .my--8-s { margin-top: -4rem; margin-bottom: -4rem; }

  .mx-0-s { margin-left: 0; margin-right: 0; }
  .mx-05-s { margin-left: 0.25rem; margin-right: 0.25rem; }
  .mx-1-s { margin-left: 0.5rem; margin-right: 0.5rem; }
  .mx-2-s { margin-left: 1rem; margin-right: 1rem; }
  .mx-3-s { margin-left: 1.5rem; margin-right: 1.5rem; }
  .mx-4-s { margin-left: 2rem; margin-right: 2rem; }
  .mx-5-s { margin-left: 2.5rem; margin-right: 2.5rem; }
  .mx-6-s { margin-left: 3rem; margin-right: 3rem; }
  .mx-7-s { margin-left: 3.5rem; margin-right: 3.5rem; }
  .mx-8-s { margin-left: 4rem; margin-right: 4rem; }
  .mx--1-s { margin-left: -0.5rem; margin-right: -0.5rem; }
  .mx--2-s { margin-left: -1rem; margin-right: -1rem; }
  .mx--3-s { margin-left: -1.5rem; margin-right: -1.5rem; }
  .mx--4-s { margin-left: -2rem; margin-right: -2rem; }
  .mx--5-s { margin-left: -2.5rem; margin-right: -2.5rem; }
  .mx--6-s { margin-left: -3rem; margin-right: -3rem; }
  .mx--7-s { margin-left: -3.5rem; margin-right: -3.5rem; }
  .mx--8-s { margin-left: -4rem; margin-right: -4rem; }

  .mr-a-s { margin-right: auto; }
  .ml-a-s { margin-left:  auto; }
  .mx-a-s { margin-left: auto; margin-right: auto;}
}
@media screen and (min-width: 48em) {
  .ma-0-ns { margin: 0; }
  .ma-05-ns { margin: 0.25rem; }
  .ma-1-ns { margin: 0.5rem; }
  .ma-2-ns { margin: 1rem; }
  .ma-3-ns { margin: 1.5rem; }
  .ma-4-ns { margin: 2rem; }
  .ma-5-ns { margin: 2.5rem; }
  .ma-6-ns { margin: 3rem; }
  .ma-7-ns { margin: 3.5rem; }
  .ma-8-ns { margin: 4rem; }
  .ma--1-ns { margin: -0.5rem; }
  .ma--2-ns { margin: -1rem; }
  .ma--3-ns { margin: -1.5rem; }
  .ma--4-ns { margin: -2rem; }
  .ma--5-ns { margin: -2.5rem; }
  .ma--6-ns { margin: -3rem; }
  .ma--7-ns { margin: -3.5rem; }
  .ma--8-ns { margin: -4rem; }

  .mt-0-ns { margin-top: 0; }
  .mt-05-ns { margin-top: 0.25rem; }
  .mt-1-ns { margin-top: 0.5rem; }
  .mt-2-ns { margin-top: 1rem; }
  .mt-3-ns { margin-top: 1.5rem; }
  .mt-4-ns { margin-top: 2rem; }
  .mt-5-ns { margin-top: 2.5rem; }
  .mt-6-ns { margin-top: 3rem; }
  .mt-7-ns { margin-top: 3.5rem; }
  .mt-8-ns { margin-top: 4rem; }
  .mt--1-ns { margin-top: -0.5rem; }
  .mt--2-ns { margin-top: -1rem; }
  .mt--3-ns { margin-top: -1.5rem; }
  .mt--4-ns { margin-top: -2rem; }
  .mt--5-ns { margin-top: -2.5rem; }
  .mt--6-ns { margin-top: -3rem; }
  .mt--7-ns { margin-top: -3.5rem; }
  .mt--8-ns { margin-top: -4rem; }

  .mr-0-ns { margin-right: 0; }
  .mr-05-ns { margin-right: 0.25rem; }
  .mr-1-ns { margin-right: 0.5rem; }
  .mr-2-ns { margin-right: 1rem; }
  .mr-3-ns { margin-right: 1.5rem; }
  .mr-4-ns { margin-right: 2rem; }
  .mr-5-ns { margin-right: 2.5rem; }
  .mr-6-ns { margin-right: 3rem; }
  .mr-7-ns { margin-right: 3.5rem; }
  .mr-8-ns { margin-right: 4rem; }
  .mr--1-ns { margin-right: -0.5rem; }
  .mr--2-ns { margin-right: -1rem; }
  .mr--3-ns { margin-right: -1.5rem; }
  .mr--4-ns { margin-right: -2rem; }
  .mr--5-ns { margin-right: -2.5rem; }
  .mr--6-ns { margin-right: -3rem; }
  .mr--7-ns { margin-right: -3.5rem; }
  .mr--8-ns { margin-right: -4rem; }

  .mb-0-ns { margin-bottom: 0; }
  .mb-05-ns { margin-bottom: 0.25rem; }
  .mb-1-ns { margin-bottom: 0.5rem; }
  .mb-2-ns { margin-bottom: 1rem; }
  .mb-3-ns { margin-bottom: 1.5rem; }
  .mb-4-ns { margin-bottom: 2rem; }
  .mb-5-ns { margin-bottom: 2.5rem; }
  .mb-6-ns { margin-bottom: 3rem; }
  .mb-7-ns { margin-bottom: 3.5rem; }
  .mb-8-ns { margin-bottom: 4rem; }
  .mb--1-ns { margin-bottom: -0.5rem; }
  .mb--2-ns { margin-bottom: -1rem; }
  .mb--3-ns { margin-bottom: -1.5rem; }
  .mb--4-ns { margin-bottom: -2rem; }
  .mb--5-ns { margin-bottom: -2.5rem; }
  .mb--6-ns { margin-bottom: -3rem; }
  .mb--7-ns { margin-bottom: -3.5rem; }
  .mb--8-ns { margin-bottom: -4rem; }

  .ml-0-ns { margin-left: 0; }
  .ml-05-ns { margin-left: 0.25rem; }
  .ml-1-ns { margin-left: 0.5rem; }
  .ml-2-ns { margin-left: 1rem; }
  .ml-3-ns { margin-left: 1.5rem; }
  .ml-4-ns { margin-left: 2rem; }
  .ml-5-ns { margin-left: 2.5rem; }
  .ml-6-ns { margin-left: 3rem; }
  .ml-7-ns { margin-left: 3.5rem; }
  .ml-8-ns { margin-left: 4rem; }
  .ml--1-ns { margin-left: -0.5rem; }
  .ml--2-ns { margin-left: -1rem; }
  .ml--3-ns { margin-left: -1.5rem; }
  .ml--4-ns { margin-left: -2rem; }
  .ml--5-ns { margin-left: -2.5rem; }
  .ml--6-ns { margin-left: -3rem; }
  .ml--7-ns { margin-left: -3.5rem; }
  .ml--8-ns { margin-left: -4rem; }

  .my-0-ns { margin-top: 0; margin-bottom: 0; }
  .my-05-ns { margin-top: 0.25rem; margin-bottom: 0.25rem; }
  .my-1-ns { margin-top: 0.5rem; margin-bottom: 0.5rem; }
  .my-2-ns { margin-top: 1rem; margin-bottom: 1rem; }
  .my-3-ns { margin-top: 1.5rem; margin-bottom: 1.5rem; }
  .my-4-ns { margin-top: 2rem; margin-bottom: 2rem; }
  .my-5-ns { margin-top: 2.5rem; margin-bottom: 2.5rem; }
  .my-6-ns { margin-top: 3rem; margin-bottom: 3rem; }
  .my-7-ns { margin-top: 3.5rem; margin-bottom: 3.5rem; }
  .my-8-ns { margin-top: 4rem; margin-bottom: 4rem; }
  .my--1-ns { margin-top: -0.5rem; margin-bottom: -0.5rem; }
  .my--2-ns { margin-top: -1rem; margin-bottom: -1rem; }
  .my--3-ns { margin-top: -1.5rem; margin-bottom: -1.5rem; }
  .my--4-ns { margin-top: -2rem; margin-bottom: -2rem; }
  .my--5-ns { margin-top: -2.5rem; margin-bottom: -2.5rem; }
  .my--6-ns { margin-top: -3rem; margin-bottom: -3rem; }
  .my--7-ns { margin-top: -3.5rem; margin-bottom: -3.5rem; }
  .my--8-ns { margin-top: -4rem; margin-bottom: -4rem; }

  .mx-0-ns { margin-left: 0; margin-right: 0; }
  .mx-05-ns { margin-left: 0.25rem; margin-right: 0.25rem; }
  .mx-1-ns { margin-left: 0.5rem; margin-right: 0.5rem; }
  .mx-2-ns { margin-left: 1rem; margin-right: 1rem; }
  .mx-3-ns { margin-left: 1.5rem; margin-right: 1.5rem; }
  .mx-4-ns { margin-left: 2rem; margin-right: 2rem; }
  .mx-5-ns { margin-left: 2.5rem; margin-right: 2.5rem; }
  .mx-6-ns { margin-left: 3rem; margin-right: 3rem; }
  .mx-7-ns { margin-left: 3.5rem; margin-right: 3.5rem; }
  .mx-8-ns { margin-left: 4rem; margin-right: 4rem; }
  .mx--1-ns { margin-left: -0.5rem; margin-right: -0.5rem; }
  .mx--2-ns { margin-left: -1rem; margin-right: -1rem; }
  .mx--3-ns { margin-left: -1.5rem; margin-right: -1.5rem; }
  .mx--4-ns { margin-left: -2rem; margin-right: -2rem; }
  .mx--5-ns { margin-left: -2.5rem; margin-right: -2.5rem; }
  .mx--6-ns { margin-left: -3rem; margin-right: -3rem; }
  .mx--7-ns { margin-left: -3.5rem; margin-right: -3.5rem; }
  .mx--8-ns { margin-left: -4rem; margin-right: -4rem; }

  .mr-a-ns { margin-right: auto; }
  .ml-a-ns { margin-left:  auto; }
  .mx-a-ns { margin-left: auto; margin-right: auto;}
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .ma-0-m { margin: 0; }
  .ma-05-m { margin: 0.25rem; }
  .ma-1-m { margin: 0.5rem; }
  .ma-2-m { margin: 1rem; }
  .ma-3-m { margin: 1.5rem; }
  .ma-4-m { margin: 2rem; }
  .ma-5-m { margin: 2.5rem; }
  .ma-6-m { margin: 3rem; }
  .ma-7-m { margin: 3.5rem; }
  .ma-8-m { margin: 4rem; }
  .ma--1-m { margin: -0.5rem; }
  .ma--2-m { margin: -1rem; }
  .ma--3-m { margin: -1.5rem; }
  .ma--4-m { margin: -2rem; }
  .ma--5-m { margin: -2.5rem; }
  .ma--6-m { margin: -3rem; }
  .ma--7-m { margin: -3.5rem; }
  .ma--8-m { margin: -4rem; }

  .mt-0-m { margin-top: 0; }
  .mt-05-m { margin-top: 0.25rem; }
  .mt-1-m { margin-top: 0.5rem; }
  .mt-2-m { margin-top: 1rem; }
  .mt-3-m { margin-top: 1.5rem; }
  .mt-4-m { margin-top: 2rem; }
  .mt-5-m { margin-top: 2.5rem; }
  .mt-6-m { margin-top: 3rem; }
  .mt-7-m { margin-top: 3.5rem; }
  .mt-8-m { margin-top: 4rem; }
  .mt--1-m { margin-top: -0.5rem; }
  .mt--2-m { margin-top: -1rem; }
  .mt--3-m { margin-top: -1.5rem; }
  .mt--4-m { margin-top: -2rem; }
  .mt--5-m { margin-top: -2.5rem; }
  .mt--6-m { margin-top: -3rem; }
  .mt--7-m { margin-top: -3.5rem; }
  .mt--8-m { margin-top: -4rem; }

  .mr-0-m { margin-right: 0; }
  .mr-05-m { margin-right: 0.25rem; }
  .mr-1-m { margin-right: 0.5rem; }
  .mr-2-m { margin-right: 1rem; }
  .mr-3-m { margin-right: 1.5rem; }
  .mr-4-m { margin-right: 2rem; }
  .mr-5-m { margin-right: 2.5rem; }
  .mr-6-m { margin-right: 3rem; }
  .mr-7-m { margin-right: 3.5rem; }
  .mr-8-m { margin-right: 4rem; }
  .mr--1-m { margin-right: -0.5rem; }
  .mr--2-m { margin-right: -1rem; }
  .mr--3-m { margin-right: -1.5rem; }
  .mr--4-m { margin-right: -2rem; }
  .mr--5-m { margin-right: -2.5rem; }
  .mr--6-m { margin-right: -3rem; }
  .mr--7-m { margin-right: -3.5rem; }
  .mr--8-m { margin-right: -4rem; }

  .mb-0-m { margin-bottom: 0; }
  .mb-05-m { margin-bottom: 0.25rem; }
  .mb-1-m { margin-bottom: 0.5rem; }
  .mb-2-m { margin-bottom: 1rem; }
  .mb-3-m { margin-bottom: 1.5rem; }
  .mb-4-m { margin-bottom: 2rem; }
  .mb-5-m { margin-bottom: 2.5rem; }
  .mb-6-m { margin-bottom: 3rem; }
  .mb-7-m { margin-bottom: 3.5rem; }
  .mb-8-m { margin-bottom: 4rem; }
  .mb--1-m { margin-bottom: -0.5rem; }
  .mb--2-m { margin-bottom: -1rem; }
  .mb--3-m { margin-bottom: -1.5rem; }
  .mb--4-m { margin-bottom: -2rem; }
  .mb--5-m { margin-bottom: -2.5rem; }
  .mb--6-m { margin-bottom: -3rem; }
  .mb--7-m { margin-bottom: -3.5rem; }
  .mb--8-m { margin-bottom: -4rem; }

  .ml-0-m { margin-left: 0; }
  .ml-05-m { margin-left: 0.25rem; }
  .ml-1-m { margin-left: 0.5rem; }
  .ml-2-m { margin-left: 1rem; }
  .ml-3-m { margin-left: 1.5rem; }
  .ml-4-m { margin-left: 2rem; }
  .ml-5-m { margin-left: 2.5rem; }
  .ml-6-m { margin-left: 3rem; }
  .ml-7-m { margin-left: 3.5rem; }
  .ml-8-m { margin-left: 4rem; }
  .ml--1-m { margin-left: -0.5rem; }
  .ml--2-m { margin-left: -1rem; }
  .ml--3-m { margin-left: -1.5rem; }
  .ml--4-m { margin-left: -2rem; }
  .ml--5-m { margin-left: -2.5rem; }
  .ml--6-m { margin-left: -3rem; }
  .ml--7-m { margin-left: -3.5rem; }
  .ml--8-m { margin-left: -4rem; }

  .my-0-m { margin-top: 0; margin-bottom: 0; }
  .my-05-m { margin-top: 0.25rem; margin-bottom: 0.25rem; }
  .my-1-m { margin-top: 0.5rem; margin-bottom: 0.5rem; }
  .my-2-m { margin-top: 1rem; margin-bottom: 1rem; }
  .my-3-m { margin-top: 1.5rem; margin-bottom: 1.5rem; }
  .my-4-m { margin-top: 2rem; margin-bottom: 2rem; }
  .my-5-m { margin-top: 2.5rem; margin-bottom: 2.5rem; }
  .my-6-m { margin-top: 3rem; margin-bottom: 3rem; }
  .my-7-m { margin-top: 3.5rem; margin-bottom: 3.5rem; }
  .my-8-m { margin-top: 4rem; margin-bottom: 4rem; }
  .my--1-m { margin-top: -0.5rem; margin-bottom: -0.5rem; }
  .my--2-m { margin-top: -1rem; margin-bottom: -1rem; }
  .my--3-m { margin-top: -1.5rem; margin-bottom: -1.5rem; }
  .my--4-m { margin-top: -2rem; margin-bottom: -2rem; }
  .my--5-m { margin-top: -2.5rem; margin-bottom: -2.5rem; }
  .my--6-m { margin-top: -3rem; margin-bottom: -3rem; }
  .my--7-m { margin-top: -3.5rem; margin-bottom: -3.5rem; }
  .my--8-m { margin-top: -4rem; margin-bottom: -4rem; }

  .mx-0-m { margin-left: 0; margin-right: 0; }
  .mx-05-m { margin-left: 0.25rem; margin-right: 0.25rem; }
  .mx-1-m { margin-left: 0.5rem; margin-right: 0.5rem; }
  .mx-2-m { margin-left: 1rem; margin-right: 1rem; }
  .mx-3-m { margin-left: 1.5rem; margin-right: 1.5rem; }
  .mx-4-m { margin-left: 2rem; margin-right: 2rem; }
  .mx-5-m { margin-left: 2.5rem; margin-right: 2.5rem; }
  .mx-6-m { margin-left: 3rem; margin-right: 3rem; }
  .mx-7-m { margin-left: 3.5rem; margin-right: 3.5rem; }
  .mx-8-m { margin-left: 4rem; margin-right: 4rem; }
  .mx--1-m { margin-left: -0.5rem; margin-right: -0.5rem; }
  .mx--2-m { margin-left: -1rem; margin-right: -1rem; }
  .mx--3-m { margin-left: -1.5rem; margin-right: -1.5rem; }
  .mx--4-m { margin-left: -2rem; margin-right: -2rem; }
  .mx--5-m { margin-left: -2.5rem; margin-right: -2.5rem; }
  .mx--6-m { margin-left: -3rem; margin-right: -3rem; }
  .mx--7-m { margin-left: -3.5rem; margin-right: -3.5rem; }
  .mx--8-m { margin-left: -4rem; margin-right: -4rem; }

  .mr-a-m { margin-right: auto; }
  .ml-a-m { margin-left:  auto; }
  .mx-a-m { margin-left: auto; margin-right: auto;}
}
@media screen and (min-width: 60em) {
  .ma-0-l { margin: 0; }
  .ma-05-l { margin: 0.25rem; }
  .ma-1-l { margin: 0.5rem; }
  .ma-2-l { margin: 1rem; }
  .ma-3-l { margin: 1.5rem; }
  .ma-4-l { margin: 2rem; }
  .ma-5-l { margin: 2.5rem; }
  .ma-6-l { margin: 3rem; }
  .ma-7-l { margin: 3.5rem; }
  .ma-8-l { margin: 4rem; }
  .ma--1-l { margin: -0.5rem; }
  .ma--2-l { margin: -1rem; }
  .ma--3-l { margin: -1.5rem; }
  .ma--4-l { margin: -2rem; }
  .ma--5-l { margin: -2.5rem; }
  .ma--6-l { margin: -3rem; }
  .ma--7-l { margin: -3.5rem; }
  .ma--8-l { margin: -4rem; }

  .mt-0-l { margin-top: 0; }
  .mt-05-l { margin-top: 0.25rem; }
  .mt-1-l { margin-top: 0.5rem; }
  .mt-2-l { margin-top: 1rem; }
  .mt-3-l { margin-top: 1.5rem; }
  .mt-4-l { margin-top: 2rem; }
  .mt-5-l { margin-top: 2.5rem; }
  .mt-6-l { margin-top: 3rem; }
  .mt-7-l { margin-top: 3.5rem; }
  .mt-8-l { margin-top: 4rem; }
  .mt--1-l { margin-top: -0.5rem; }
  .mt--2-l { margin-top: -1rem; }
  .mt--3-l { margin-top: -1.5rem; }
  .mt--4-l { margin-top: -2rem; }
  .mt--5-l { margin-top: -2.5rem; }
  .mt--6-l { margin-top: -3rem; }
  .mt--7-l { margin-top: -3.5rem; }
  .mt--8-l { margin-top: -4rem; }

  .mr-0-l { margin-right: 0; }
  .mr-05-l { margin-right: 0.25rem; }
  .mr-1-l { margin-right: 0.5rem; }
  .mr-2-l { margin-right: 1rem; }
  .mr-3-l { margin-right: 1.5rem; }
  .mr-4-l { margin-right: 2rem; }
  .mr-5-l { margin-right: 2.5rem; }
  .mr-6-l { margin-right: 3rem; }
  .mr-7-l { margin-right: 3.5rem; }
  .mr-8-l { margin-right: 4rem; }
  .mr--1-l { margin-right: -0.5rem; }
  .mr--2-l { margin-right: -1rem; }
  .mr--3-l { margin-right: -1.5rem; }
  .mr--4-l { margin-right: -2rem; }
  .mr--5-l { margin-right: -2.5rem; }
  .mr--6-l { margin-right: -3rem; }
  .mr--7-l { margin-right: -3.5rem; }
  .mr--8-l { margin-right: -4rem; }

  .mb-0-l { margin-bottom: 0; }
  .mb-05-l { margin-bottom: 0.25rem; }
  .mb-1-l { margin-bottom: 0.5rem; }
  .mb-2-l { margin-bottom: 1rem; }
  .mb-3-l { margin-bottom: 1.5rem; }
  .mb-4-l { margin-bottom: 2rem; }
  .mb-5-l { margin-bottom: 2.5rem; }
  .mb-6-l { margin-bottom: 3rem; }
  .mb-7-l { margin-bottom: 3.5rem; }
  .mb-8-l { margin-bottom: 4rem; }
  .mb--1-l { margin-bottom: -0.5rem; }
  .mb--2-l { margin-bottom: -1rem; }
  .mb--3-l { margin-bottom: -1.5rem; }
  .mb--4-l { margin-bottom: -2rem; }
  .mb--5-l { margin-bottom: -2.5rem; }
  .mb--6-l { margin-bottom: -3rem; }
  .mb--7-l { margin-bottom: -3.5rem; }
  .mb--8-l { margin-bottom: -4rem; }

  .ml-0-l { margin-left: 0; }
  .ml-05-l { margin-left: 0.25rem; }
  .ml-1-l { margin-left: 0.5rem; }
  .ml-2-l { margin-left: 1rem; }
  .ml-3-l { margin-left: 1.5rem; }
  .ml-4-l { margin-left: 2rem; }
  .ml-5-l { margin-left: 2.5rem; }
  .ml-6-l { margin-left: 3rem; }
  .ml-7-l { margin-left: 3.5rem; }
  .ml-8-l { margin-left: 4rem; }
  .ml--1-l { margin-left: -0.5rem; }
  .ml--2-l { margin-left: -1rem; }
  .ml--3-l { margin-left: -1.5rem; }
  .ml--4-l { margin-left: -2rem; }
  .ml--5-l { margin-left: -2.5rem; }
  .ml--6-l { margin-left: -3rem; }
  .ml--7-l { margin-left: -3.5rem; }
  .ml--8-l { margin-left: -4rem; }

  .my-0-l { margin-top: 0; margin-bottom: 0; }
  .my-05-l { margin-top: 0.25rem; margin-bottom: 0.25rem; }
  .my-1-l { margin-top: 0.5rem; margin-bottom: 0.5rem; }
  .my-2-l { margin-top: 1rem; margin-bottom: 1rem; }
  .my-3-l { margin-top: 1.5rem; margin-bottom: 1.5rem; }
  .my-4-l { margin-top: 2rem; margin-bottom: 2rem; }
  .my-5-l { margin-top: 2.5rem; margin-bottom: 2.5rem; }
  .my-6-l { margin-top: 3rem; margin-bottom: 3rem; }
  .my-7-l { margin-top: 3.5rem; margin-bottom: 3.5rem; }
  .my-8-l { margin-top: 4rem; margin-bottom: 4rem; }
  .my--1-l { margin-top: -0.5rem; margin-bottom: -0.5rem; }
  .my--2-l { margin-top: -1rem; margin-bottom: -1rem; }
  .my--3-l { margin-top: -1.5rem; margin-bottom: -1.5rem; }
  .my--4-l { margin-top: -2rem; margin-bottom: -2rem; }
  .my--5-l { margin-top: -2.5rem; margin-bottom: -2.5rem; }
  .my--6-l { margin-top: -3rem; margin-bottom: -3rem; }
  .my--7-l { margin-top: -3.5rem; margin-bottom: -3.5rem; }
  .my--8-l { margin-top: -4rem; margin-bottom: -4rem; }

  .mx-0-l { margin-left: 0; margin-right: 0; }
  .mx-05-l { margin-left: 0.25rem; margin-right: 0.25rem; }
  .mx-1-l { margin-left: 0.5rem; margin-right: 0.5rem; }
  .mx-2-l { margin-left: 1rem; margin-right: 1rem; }
  .mx-3-l { margin-left: 1.5rem; margin-right: 1.5rem; }
  .mx-4-l { margin-left: 2rem; margin-right: 2rem; }
  .mx-5-l { margin-left: 2.5rem; margin-right: 2.5rem; }
  .mx-6-l { margin-left: 3rem; margin-right: 3rem; }
  .mx-7-l { margin-left: 3.5rem; margin-right: 3.5rem; }
  .mx-8-l { margin-left: 4rem; margin-right: 4rem; }
  .mx--1-l { margin-left: -0.5rem; margin-right: -0.5rem; }
  .mx--2-l { margin-left: -1rem; margin-right: -1rem; }
  .mx--3-l { margin-left: -1.5rem; margin-right: -1.5rem; }
  .mx--4-l { margin-left: -2rem; margin-right: -2rem; }
  .mx--5-l { margin-left: -2.5rem; margin-right: -2.5rem; }
  .mx--6-l { margin-left: -3rem; margin-right: -3rem; }
  .mx--7-l { margin-left: -3.5rem; margin-right: -3.5rem; }
  .mx--8-l { margin-left: -4rem; margin-right: -4rem; }

  .mr-a-l { margin-right: auto; }
  .ml-a-l { margin-left:  auto; }
  .mx-a-l { margin-left: auto; margin-right: auto;}
}
/* Padding */
.pa-0 { padding: 0; }
.pa-1 { padding: 0.5rem; }
.pa-2 { padding: 1rem; }
.pa-3 { padding: 1.5rem; }
.pa-4 { padding: 2rem; }
.pa-5 { padding: 2.5rem; }
.pa-6 { padding: 3rem; }
.pa-7 { padding: 3.5rem; }
.pa-8 { padding: 4rem; }
.pt-0 { padding-top: 0; }
.pt-1 { padding-top: 0.5rem; }
.pt-2 { padding-top: 1rem; }
.pt-3 { padding-top: 1.5rem; }
.pt-4 { padding-top: 2rem; }
.pt-5 { padding-top: 2.5rem; }
.pt-6 { padding-top: 3rem; }
.pt-7 { padding-top: 3.5rem; }
.pt-8 { padding-top: 4rem; }
.pr-0 { padding-right: 0; }
.pr-1 { padding-right: 0.5rem; }
.pr-2 { padding-right: 1rem; }
.pr-3 { padding-right: 1.5rem; }
.pr-4 { padding-right: 2rem; }
.pr-5 { padding-right: 2.5rem; }
.pr-6 { padding-right: 3rem; }
.pr-7 { padding-right: 3.5rem; }
.pr-8 { padding-right: 4rem; }
.pb-0 { padding-bottom: 0; }
.pb-1 { padding-bottom: 0.5rem; }
.pb-2 { padding-bottom: 1rem; }
.pb-3 { padding-bottom: 1.5rem; }
.pb-4 { padding-bottom: 2rem; }
.pb-5 { padding-bottom: 2.5rem; }
.pb-6 { padding-bottom: 3rem; }
.pb-7 { padding-bottom: 3.5rem; }
.pb-8 { padding-bottom: 4rem; }
.pl-0 { padding-left: 0; }
.pl-1 { padding-left: 0.5rem; }
.pl-2 { padding-left: 1rem; }
.pl-3 { padding-left: 1.5rem; }
.pl-4 { padding-left: 2rem; }
.pl-5 { padding-left: 2.5rem; }
.pl-6 { padding-left: 3rem; }
.pl-7 { padding-left: 3.5rem; }
.pl-8 { padding-left: 4rem; }
.px-0 { padding-left: 0; padding-right: 0; }
.px-1 { padding-left: 0.5rem; padding-right: 0.5rem; }
.px-2 { padding-left: 1rem; padding-right: 1rem; }
.px-3 { padding-left: 1.5rem; padding-right: 1.5rem; }
.px-4 { padding-left: 2rem; padding-right: 2rem; }
.px-5 { padding-left: 2.5rem; padding-right: 2.5rem; }
.px-6 { padding-left: 3rem; padding-right: 3rem; }
.px-7 { padding-left: 3.5rem; padding-right: 3.5rem; }
.px-8 { padding-left: 4rem; padding-right: 4rem; }
.py-0 { padding-top: 0; padding-bottom: 0; }
.py-1 { padding-top: 0.5rem; padding-bottom: 0.5rem; }
.py-2 { padding-top: 1rem; padding-bottom: 1rem; }
.py-3 { padding-top: 1.5rem; padding-bottom: 1.5rem; }
.py-4 { padding-top: 2rem; padding-bottom: 2rem; }
.py-5 { padding-top: 2.5rem; padding-bottom: 2.5rem; }
.py-6 { padding-top: 3rem; padding-bottom: 3rem; }
.py-7 { padding-top: 3.5rem; padding-bottom: 3.5rem; }
.py-8 { padding-top: 4rem; padding-bottom: 4rem; }
@media screen and (max-width: 48em) {
  .pa-0-s { padding: 0; }
  .pa-1-s { padding: 0.5rem; }
  .pa-2-s { padding: 1rem; }
  .pa-3-s { padding: 1.5rem; }
  .pa-4-s { padding: 2rem; }
  .pa-5-s { padding: 2.5rem; }
  .pa-6-s { padding: 3rem; }
  .pa-7-s { padding: 3.5rem; }
  .pa-8-s { padding: 4rem; }

  .pt-0-s { padding-top: 0; }
  .pt-1-s { padding-top: 0.5rem; }
  .pt-2-s { padding-top: 1rem; }
  .pt-3-s { padding-top: 1.5rem; }
  .pt-4-s { padding-top: 2rem; }
  .pt-5-s { padding-top: 2.5rem; }
  .pt-6-s { padding-top: 3rem; }
  .pt-7-s { padding-top: 3.5rem; }
  .pt-8-s { padding-top: 4rem; }

  .pr-0-s { padding-right: 0; }
  .pr-1-s { padding-right: 0.5rem; }
  .pr-2-s { padding-right: 1rem; }
  .pr-3-s { padding-right: 1.5rem; }
  .pr-4-s { padding-right: 2rem; }
  .pr-5-s { padding-right: 2.5rem; }
  .pr-6-s { padding-right: 3rem; }
  .pr-7-s { padding-right: 3.5rem; }
  .pr-8-s { padding-right: 4rem; }

  .pb-0-s { padding-bottom: 0; }
  .pb-1-s { padding-bottom: 0.5rem; }
  .pb-2-s { padding-bottom: 1rem; }
  .pb-3-s { padding-bottom: 1.5rem; }
  .pb-4-s { padding-bottom: 2rem; }
  .pb-5-s { padding-bottom: 2.5rem; }
  .pb-6-s { padding-bottom: 3rem; }
  .pb-7-s { padding-bottom: 3.5rem; }
  .pb-8-s { padding-bottom: 4rem; }

  .pl-0-s { padding-left: 0; }
  .pl-1-s { padding-left: 0.5rem; }
  .pl-2-s { padding-left: 1rem; }
  .pl-3-s { padding-left: 1.5rem; }
  .pl-4-s { padding-left: 2rem; }
  .pl-5-s { padding-left: 2.5rem; }
  .pl-6-s { padding-left: 3rem; }
  .pl-7-s { padding-left: 3.5rem; }
  .pl-8-s { padding-left: 4rem; }

  .px-0-s { padding-left: 0; padding-right: 0; }
  .px-1-s { padding-left: 0.5rem; padding-right: 0.5rem; }
  .px-2-s { padding-left: 1rem; padding-right: 1rem; }
  .px-3-s { padding-left: 1.5rem; padding-right: 1.5rem; }
  .px-4-s { padding-left: 2rem; padding-right: 2rem; }
  .px-5-s { padding-left: 2.5rem; padding-right: 2.5rem; }
  .px-6-s { padding-left: 3rem; padding-right: 3rem; }
  .px-7-s { padding-left: 3.5rem; padding-right: 3.5rem; }
  .px-8-s { padding-left: 4rem; padding-right: 4rem; }

  .py-0-s { padding-top: 0; padding-bottom: 0; }
  .py-1-s { padding-top: 0.5rem; padding-bottom: 0.5rem; }
  .py-2-s { padding-top: 1rem; padding-bottom: 1rem; }
  .py-3-s { padding-top: 1.5rem; padding-bottom: 1.5rem; }
  .py-4-s { padding-top: 2rem; padding-bottom: 2rem; }
  .py-5-s { padding-top: 2.5rem; padding-bottom: 2.5rem; }
  .py-6-s { padding-top: 3rem; padding-bottom: 3rem; }
  .py-7-s { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .py-8-s { padding-top: 4rem; padding-bottom: 4rem; }
}
@media screen and (min-width: 48em) {
  .pa-0-ns { padding: 0; }
  .pa-1-ns { padding: 0.5rem; }
  .pa-2-ns { padding: 1rem; }
  .pa-3-ns { padding: 1.5rem; }
  .pa-4-ns { padding: 2rem; }
  .pa-5-ns { padding: 2.5rem; }
  .pa-6-ns { padding: 3rem; }
  .pa-7-ns { padding: 3.5rem; }
  .pa-8-ns { padding: 4rem; }

  .pt-0-ns { padding-top: 0; }
  .pt-1-ns { padding-top: 0.5rem; }
  .pt-2-ns { padding-top: 1rem; }
  .pt-3-ns { padding-top: 1.5rem; }
  .pt-4-ns { padding-top: 2rem; }
  .pt-5-ns { padding-top: 2.5rem; }
  .pt-6-ns { padding-top: 3rem; }
  .pt-7-ns { padding-top: 3.5rem; }
  .pt-8-ns { padding-top: 4rem; }

  .pr-0-ns { padding-right: 0; }
  .pr-1-ns { padding-right: 0.5rem; }
  .pr-2-ns { padding-right: 1rem; }
  .pr-3-ns { padding-right: 1.5rem; }
  .pr-4-ns { padding-right: 2rem; }
  .pr-5-ns { padding-right: 2.5rem; }
  .pr-6-ns { padding-right: 3rem; }
  .pr-7-ns { padding-right: 3.5rem; }
  .pr-8-ns { padding-right: 4rem; }

  .pb-0-ns { padding-bottom: 0; }
  .pb-1-ns { padding-bottom: 0.5rem; }
  .pb-2-ns { padding-bottom: 1rem; }
  .pb-3-ns { padding-bottom: 1.5rem; }
  .pb-4-ns { padding-bottom: 2rem; }
  .pb-5-ns { padding-bottom: 2.5rem; }
  .pb-6-ns { padding-bottom: 3rem; }
  .pb-7-ns { padding-bottom: 3.5rem; }
  .pb-8-ns { padding-bottom: 4rem; }

  .pl-0-ns { padding-left: 0; }
  .pl-1-ns { padding-left: 0.5rem; }
  .pl-2-ns { padding-left: 1rem; }
  .pl-3-ns { padding-left: 1.5rem; }
  .pl-4-ns { padding-left: 2rem; }
  .pl-5-ns { padding-left: 2.5rem; }
  .pl-6-ns { padding-left: 3rem; }
  .pl-7-ns { padding-left: 3.5rem; }
  .pl-8-ns { padding-left: 4rem; }

  .px-0-ns { padding-left: 0; padding-right: 0; }
  .px-1-ns { padding-left: 0.5rem; padding-right: 0.5rem; }
  .px-2-ns { padding-left: 1rem; padding-right: 1rem; }
  .px-3-ns { padding-left: 1.5rem; padding-right: 1.5rem; }
  .px-4-ns { padding-left: 2rem; padding-right: 2rem; }
  .px-5-ns { padding-left: 2.5rem; padding-right: 2.5rem; }
  .px-6-ns { padding-left: 3rem; padding-right: 3rem; }
  .px-7-ns { padding-left: 3.5rem; padding-right: 3.5rem; }
  .px-8-ns { padding-left: 4rem; padding-right: 4rem; }

  .py-0-ns { padding-top: 0; padding-bottom: 0; }
  .py-1-ns { padding-top: 0.5rem; padding-bottom: 0.5rem; }
  .py-2-ns { padding-top: 1rem; padding-bottom: 1rem; }
  .py-3-ns { padding-top: 1.5rem; padding-bottom: 1.5rem; }
  .py-4-ns { padding-top: 2rem; padding-bottom: 2rem; }
  .py-5-ns { padding-top: 2.5rem; padding-bottom: 2.5rem; }
  .py-6-ns { padding-top: 3rem; padding-bottom: 3rem; }
  .py-7-ns { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .py-8-ns { padding-top: 4rem; padding-bottom: 4rem; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .pa-0-m { padding: 0; }
  .pa-1-m { padding: 0.5rem; }
  .pa-2-m { padding: 1rem; }
  .pa-3-m { padding: 1.5rem; }
  .pa-4-m { padding: 2rem; }
  .pa-5-m { padding: 2.5rem; }
  .pa-6-m { padding: 3rem; }
  .pa-7-m { padding: 3.5rem; }
  .pa-8-m { padding: 4rem; }

  .pt-0-m { padding-top: 0; }
  .pt-1-m { padding-top: 0.5rem; }
  .pt-2-m { padding-top: 1rem; }
  .pt-3-m { padding-top: 1.5rem; }
  .pt-4-m { padding-top: 2rem; }
  .pt-5-m { padding-top: 2.5rem; }
  .pt-6-m { padding-top: 3rem; }
  .pt-7-m { padding-top: 3.5rem; }
  .pt-8-m { padding-top: 4rem; }

  .pr-0-m { padding-right: 0; }
  .pr-1-m { padding-right: 0.5rem; }
  .pr-2-m { padding-right: 1rem; }
  .pr-3-m { padding-right: 1.5rem; }
  .pr-4-m { padding-right: 2rem; }
  .pr-5-m { padding-right: 2.5rem; }
  .pr-6-m { padding-right: 3rem; }
  .pr-7-m { padding-right: 3.5rem; }
  .pr-8-m { padding-right: 4rem; }

  .pb-0-m { padding-bottom: 0; }
  .pb-1-m { padding-bottom: 0.5rem; }
  .pb-2-m { padding-bottom: 1rem; }
  .pb-3-m { padding-bottom: 1.5rem; }
  .pb-4-m { padding-bottom: 2rem; }
  .pb-5-m { padding-bottom: 2.5rem; }
  .pb-6-m { padding-bottom: 3rem; }
  .pb-7-m { padding-bottom: 3.5rem; }
  .pb-8-m { padding-bottom: 4rem; }

  .pl-0-m { padding-left: 0; }
  .pl-1-m { padding-left: 0.5rem; }
  .pl-2-m { padding-left: 1rem; }
  .pl-3-m { padding-left: 1.5rem; }
  .pl-4-m { padding-left: 2rem; }
  .pl-5-m { padding-left: 2.5rem; }
  .pl-6-m { padding-left: 3rem; }
  .pl-7-m { padding-left: 3.5rem; }
  .pl-8-m { padding-left: 4rem; }

  .px-0-m { padding-left: 0; padding-right: 0; }
  .px-1-m { padding-left: 0.5rem; padding-right: 0.5rem; }
  .px-2-m { padding-left: 1rem; padding-right: 1rem; }
  .px-3-m { padding-left: 1.5rem; padding-right: 1.5rem; }
  .px-4-m { padding-left: 2rem; padding-right: 2rem; }
  .px-5-m { padding-left: 2.5rem; padding-right: 2.5rem; }
  .px-6-m { padding-left: 3rem; padding-right: 3rem; }
  .px-7-m { padding-left: 3.5rem; padding-right: 3.5rem; }
  .px-8-m { padding-left: 4rem; padding-right: 4rem; }

  .py-0-m { padding-top: 0; padding-bottom: 0; }
  .py-1-m { padding-top: 0.5rem; padding-bottom: 0.5rem; }
  .py-2-m { padding-top: 1rem; padding-bottom: 1rem; }
  .py-3-m { padding-top: 1.5rem; padding-bottom: 1.5rem; }
  .py-4-m { padding-top: 2rem; padding-bottom: 2rem; }
  .py-5-m { padding-top: 2.5rem; padding-bottom: 2.5rem; }
  .py-6-m { padding-top: 3rem; padding-bottom: 3rem; }
  .py-7-m { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .py-8-m { padding-top: 4rem; padding-bottom: 4rem; }
}
@media screen and (min-width: 60em) {
  .pa-0-l { padding: 0; }
  .pa-1-l { padding: 0.5rem; }
  .pa-2-l { padding: 1rem; }
  .pa-3-l { padding: 1.5rem; }
  .pa-4-l { padding: 2rem; }
  .pa-5-l { padding: 2.5rem; }
  .pa-6-l { padding: 3rem; }
  .pa-7-l { padding: 3.5rem; }
  .pa-8-l { padding: 4rem; }

  .pt-0-l { padding-top: 0; }
  .pt-1-l { padding-top: 0.5rem; }
  .pt-2-l { padding-top: 1rem; }
  .pt-3-l { padding-top: 1.5rem; }
  .pt-4-l { padding-top: 2rem; }
  .pt-5-l { padding-top: 2.5rem; }
  .pt-6-l { padding-top: 3rem; }
  .pt-7-l { padding-top: 3.5rem; }
  .pt-8-l { padding-top: 4rem; }

  .pr-0-l { padding-right: 0; }
  .pr-1-l { padding-right: 0.5rem; }
  .pr-2-l { padding-right: 1rem; }
  .pr-3-l { padding-right: 1.5rem; }
  .pr-4-l { padding-right: 2rem; }
  .pr-5-l { padding-right: 2.5rem; }
  .pr-6-l { padding-right: 3rem; }
  .pr-7-l { padding-right: 3.5rem; }
  .pr-8-l { padding-right: 4rem; }

  .pb-0-l { padding-bottom: 0; }
  .pb-1-l { padding-bottom: 0.5rem; }
  .pb-2-l { padding-bottom: 1rem; }
  .pb-3-l { padding-bottom: 1.5rem; }
  .pb-4-l { padding-bottom: 2rem; }
  .pb-5-l { padding-bottom: 2.5rem; }
  .pb-6-l { padding-bottom: 3rem; }
  .pb-7-l { padding-bottom: 3.5rem; }
  .pb-8-l { padding-bottom: 4rem; }

  .pl-0-l { padding-left: 0; }
  .pl-1-l { padding-left: 0.5rem; }
  .pl-2-l { padding-left: 1rem; }
  .pl-3-l { padding-left: 1.5rem; }
  .pl-4-l { padding-left: 2rem; }
  .pl-5-l { padding-left: 2.5rem; }
  .pl-6-l { padding-left: 3rem; }
  .pl-7-l { padding-left: 3.5rem; }
  .pl-8-l { padding-left: 4rem; }

  .px-0-l { padding-left: 0; padding-right: 0; }
  .px-1-l { padding-left: 0.5rem; padding-right: 0.5rem; }
  .px-2-l { padding-left: 1rem; padding-right: 1rem; }
  .px-3-l { padding-left: 1.5rem; padding-right: 1.5rem; }
  .px-4-l { padding-left: 2rem; padding-right: 2rem; }
  .px-5-l { padding-left: 2.5rem; padding-right: 2.5rem; }
  .px-6-l { padding-left: 3rem; padding-right: 3rem; }
  .px-7-l { padding-left: 3.5rem; padding-right: 3.5rem; }
  .px-8-l { padding-left: 4rem; padding-right: 4rem; }

  .py-0-l { padding-top: 0; padding-bottom: 0; }
  .py-1-l { padding-top: 0.5rem; padding-bottom: 0.5rem; }
  .py-2-l { padding-top: 1rem; padding-bottom: 1rem; }
  .py-3-l { padding-top: 1.5rem; padding-bottom: 1.5rem; }
  .py-4-l { padding-top: 2rem; padding-bottom: 2rem; }
  .py-5-l { padding-top: 2.5rem; padding-bottom: 2.5rem; }
  .py-6-l { padding-top: 3rem; padding-bottom: 3rem; }
  .py-7-l { padding-top: 3.5rem; padding-bottom: 3.5rem; }
  .py-8-l { padding-top: 4rem; padding-bottom: 4rem; }
}
/* POSITIONING */
.pos-s { position: static; }
.pos-r  { position: relative; }
.pos-a  { position: absolute; }
.pos-f  { position: fixed; }
.pos-t-0 { top: 0; }
.pos-r-0 { right: 0; }
.pos-b-0 { bottom: 0; }
.pos-l-0 { left: 0; }
.pos-fill { top: 0; right: 0; bottom: 0; left: 0; }
.z--1 { z-index: -1; }
.z-0 { z-index: 0; }
.z-1 { z-index: 1; }
.z-2 { z-index: 2; }
.z-3 { z-index: 3; }
.z-4 { z-index: 4; }
.z-5 { z-index: 5; }
.z-999 { z-index: 999; }
.z-9999 { z-index: 9999; }
.z-max { z-index: 2147483647; }
.z-ih { z-index: inherit; }
.z-in { z-index: auto; z-index: initial; }
.z-un { z-index: unset; }
@media screen and (max-width: 48em) {
  .pos-s-s { position: static; }
  .pos-r-s { position: relative; }
  .pos-a-s { position: absolute; }
  .pos-f-s { position: fixed; }
  .pos-t-0-s { top: 0; }
  .pos-r-0-s { right: 0; }
  .pos-b-0-s { bottom: 0; }
  .pos-l-0-s { left: 0; }
  .pos-fill-s { top: 0; right: 0; bottom: 0; left: 0; }

  .z--1-s { z-index: -1; }
  .z-0-s { z-index: 0; }
  .z-1-s { z-index: 1; }
  .z-2-s { z-index: 2; }
  .z-3-s { z-index: 3; }
  .z-4-s { z-index: 4; }
  .z-5-s { z-index: 5; }
  .z-999-s { z-index: 999; }
  .z-9999-s { z-index: 9999; }
  .z-max-s { z-index: 2147483647; }

  .z-ih-s { z-index: inherit; }
  .z-in-s { z-index: auto; z-index: initial; }
  .z-un-s { z-index: unset; }
}
@media screen and (min-width: 48em) {
  .pos-s-ns { position: static; }
  .pos-r-ns { position: relative; }
  .pos-a-ns { position: absolute; }
  .pos-f-ns { position: fixed; }
  .pos-t-0-ns { top: 0; }
  .pos-r-0-ns { right: 0; }
  .pos-b-0-ns { bottom: 0; }
  .pos-l-0-ns { left: 0; }
  .pos-fill-ns { top: 0; right: 0; bottom: 0; left: 0; }

  .z--1-ns { z-index: -1; }
  .z-0-ns { z-index: 0; }
  .z-1-ns { z-index: 1; }
  .z-2-ns { z-index: 2; }
  .z-3-ns { z-index: 3; }
  .z-4-ns { z-index: 4; }
  .z-5-ns { z-index: 5; }
  .z-999-ns { z-index: 999; }
  .z-9999-ns { z-index: 9999; }
  .z-max-ns { z-index: 2147483647; }

  .z-ih-ns { z-index: inherit; }
  .z-in-ns { z-index: auto; z-index: initial; }
  .z-un-ns { z-index: unset; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .pos-s-m { position: static; }
  .pos-r-m { position: relative; }
  .pos-a-m { position: absolute; }
  .pos-f-m { position: fixed; }
  .pos-t-0-m { top: 0; }
  .pos-r-0-m { right: 0; }
  .pos-b-0-m { bottom: 0; }
  .pos-l-0-m { left: 0; }
  .pos-fill-m { top: 0; right: 0; bottom: 0; left: 0; }

  .z--1-m { z-index: -1; }
  .z-0-m { z-index: 0; }
  .z-1-m { z-index: 1; }
  .z-2-m { z-index: 2; }
  .z-3-m { z-index: 3; }
  .z-4-m { z-index: 4; }
  .z-5-m { z-index: 5; }
  .z-999-m { z-index: 999; }
  .z-9999-m { z-index: 9999; }
  .z-max-m { z-index: 2147483647; }

  .z-ih-m { z-index: inherit; }
  .z-in-m { z-index: auto; z-index: initial; }
  .z-un-m { z-index: unset; }
}
@media screen and (min-width: 60em) {
  .pos-s-l { position: static; }
  .pos-r-l { position: relative; }
  .pos-a-l { position: absolute; }
  .pos-f-l { position: fixed; }
  .pos-t-0-l { top: 0; }
  .pos-r-0-l { right: 0; }
  .pos-b-0-l { bottom: 0; }
  .pos-l-0-l { left: 0; }
  .pos-fill-l { top: 0; right: 0; bottom: 0; left: 0; }

  .z--1-l { z-index: -1; }
  .z-0-l { z-index: 0; }
  .z-1-l { z-index: 1; }
  .z-2-l { z-index: 2; }
  .z-3-l { z-index: 3; }
  .z-4-l { z-index: 4; }
  .z-5-l { z-index: 5; }
  .z-999-l { z-index: 999; }
  .z-9999-l { z-index: 9999; }
  .z-max-l { z-index: 2147483647; }

  .z-ih-l { z-index: inherit; }
  .z-in-l { z-index: auto; z-index: initial; }
  .z-un-l { z-index: unset; }
}
/* Intrinsic Ratios */
[class*="ir-"] {
  height: 0;
  position: relative;
  overflow: hidden
}
[class*="ir-"] :first-child {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.ir-16x9 { padding-bottom: 56.25%; }
.ir-9x16 { padding-bottom: 177.77%; }
.ir-4x3 {  padding-bottom: 75%; }
.ir-3x4 {  padding-bottom: 133.33%; }
.ir-6x4 {  padding-bottom: 66.6%; }
.ir-4x6 {  padding-bottom: 150%; }
.ir-8x5 {  padding-bottom: 62.5%; }
.ir-5x8 {  padding-bottom: 160%; }
.ir-7x5 {  padding-bottom: 71.42%; }
.ir-5x7 {  padding-bottom: 140%; }
.ir-1x1 {  padding-bottom: 100%; }
@media screen and (max-width: 48em) {
  .ir-16x9-s { padding-bottom: 56.25%; }
  .ir-9x16-s { padding-bottom: 177.77%; }

  .ir-4x3-s {  padding-bottom: 75%; }
  .ir-3x4-s {  padding-bottom: 133.33%; }

  .ir-6x4-s {  padding-bottom: 66.6%; }
  .ir-4x6-s {  padding-bottom: 150%; }

  .ir-8x5-s {  padding-bottom: 62.5%; }
  .ir-5x8-s {  padding-bottom: 160%; }

  .ir-7x5-s {  padding-bottom: 71.42%; }
  .ir-5x7-s {  padding-bottom: 140%; }

  .ir-1x1-s {  padding-bottom: 100%; }
}
@media screen and (min-width: 48em) {
  .ir-16x9-ns { padding-bottom: 56.25%; }
  .ir-9x16-ns { padding-bottom: 177.77%; }

  .ir-4x3-ns {  padding-bottom: 75%; }
  .ir-3x4-ns {  padding-bottom: 133.33%; }

  .ir-6x4-ns {  padding-bottom: 66.6%; }
  .ir-4x6-ns {  padding-bottom: 150%; }

  .ir-8x5-ns {  padding-bottom: 62.5%; }
  .ir-5x8-ns {  padding-bottom: 160%; }

  .ir-7x5-ns {  padding-bottom: 71.42%; }
  .ir-5x7-ns {  padding-bottom: 140%; }

  .ir-1x1-ns {  padding-bottom: 100%; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .ir-16x9-m { padding-bottom: 56.25%; }
  .ir-9x16-m { padding-bottom: 177.77%; }

  .ir-4x3-m {  padding-bottom: 75%; }
  .ir-3x4-m {  padding-bottom: 133.33%; }

  .ir-6x4-m {  padding-bottom: 66.6%; }
  .ir-4x6-m {  padding-bottom: 150%; }

  .ir-8x5-m {  padding-bottom: 62.5%; }
  .ir-5x8-m {  padding-bottom: 160%; }

  .ir-7x5-m {  padding-bottom: 71.42%; }
  .ir-5x7-m {  padding-bottom: 140%; }

  .ir-1x1-m {  padding-bottom: 100%; }
}
@media screen and (min-width: 60em) {
  .ir-16x9-l { padding-bottom: 56.25%; }
  .ir-9x16-l { padding-bottom: 177.77%; }

  .ir-4x3-l {  padding-bottom: 75%; }
  .ir-3x4-l {  padding-bottom: 133.33%; }

  .ir-6x4-l {  padding-bottom: 66.6%; }
  .ir-4x6-l {  padding-bottom: 150%; }

  .ir-8x5-l {  padding-bottom: 62.5%; }
  .ir-5x8-l {  padding-bottom: 160%; }

  .ir-7x5-l {  padding-bottom: 71.42%; }
  .ir-5x7-l {  padding-bottom: 140%; }

  .ir-1x1-l {  padding-bottom: 100%; }
}
/* Text Align */
.ta-c { text-align: center; }
.ta-l { text-align: left; }
.ta-r { text-align: right; }
.ta-j { text-align: justify; }
/* Line height */
.lh-0 { line-height: 0 }
.lh-100 { line-height: 1 }
.lh-125 { line-height: 1.25 }
.lh-150 { line-height: 1.50 }
.lh-175 { line-height: 1.75 }
.lh-200 { line-height: 2 }
.lh-300 { line-height: 3 }
.lh-400 { line-height: 4 }
.lh-500 { line-height: 5 }
/* Letter spacing */
.ls-0 {letter-spacing: 0px }
.ls-1 {letter-spacing: 1px }
.ls-2 {letter-spacing: 2px }
.ls-3 {letter-spacing: 3px }
.ls-4 {letter-spacing: 4px }
.ls-5 {letter-spacing: 5px }
.ls-6 {letter-spacing: 6px }
.ls-7 {letter-spacing: 7px }
.ls-8 {letter-spacing: 8px }
/* I KNOW, I KNOW. But sometimes fonts suites are F'd ad we need to tighten that leading. */
.lh-tight { line-height: .875; }
/* Transforms */
.tt-u {text-transform: uppercase }
.tt-l {text-transform: lowercase }
.tt-n {text-transform: none }
.tt-c {text-transform: capitalize }
/* Text Indents */
.ti-0 { text-indent: 0; }
.ti-1 { text-indent: 1em; }
.ti--999 { text-indent: -999em; }
@media screen and (max-width: 48em) {
  /* Line height */
  .lh-0-s { line-height: 0 }
  .lh-100-s { line-height: 1 }
  .lh-125-s { line-height: 1.25 }
  .lh-150-s { line-height: 1.50 }
  .lh-175-s { line-height: 1.75 }
  .lh-200-s { line-height: 2 }
  .lh-300-s { line-height: 3 }
  .lh-400-s { line-height: 4 }
  .lh-500-s { line-height: 5 }

  /* I KNOW, I KNOW. But sometimes fonts suites are F'd ad we need to tighten that leading. */
  .lh-tight-s { line-height: .875; }

  /* Text Align */
  .ta-c-s { text-align: center; }
  .ta-l-s { text-align: left; }
  .ta-r-s { text-align: right; }
  .ta-j-s { text-align: justify; }

  /* Letter spacing */
  .ls-0-s {letter-spacing: 0px }
  .ls-1-s {letter-spacing: 1px }
  .ls-2-s {letter-spacing: 2px }
  .ls-3-s {letter-spacing: 3px }
  .ls-4-s {letter-spacing: 4px }
  .ls-5-s {letter-spacing: 5px }
  .ls-6-s {letter-spacing: 6px }
  .ls-7-s {letter-spacing: 7px }
  .ls-8-s {letter-spacing: 8px }

  /* Text Indents */
  .ti-0-s { text-indent: 0; }
  .ti-1-s { text-indent: 1em; }
  .ti--999-s { text-indent: -999em; }
}
@media screen and (min-width: 48em) {
  /* Line height */
  .lh-0-ns { line-height: 0 }
  .lh-100-ns { line-height: 1 }
  .lh-125-ns { line-height: 1.25 }
  .lh-150-ns { line-height: 1.50 }
  .lh-175-ns { line-height: 1.75 }
  .lh-200-ns { line-height: 2 }
  .lh-300-ns { line-height: 3 }
  .lh-400-ns { line-height: 4 }
  .lh-500-ns { line-height: 5 }

  /* I KNOW, I KNOW. But sometimes fonts suites are F'd ad we need to tighten that leading. */
  .lh-tight-ns { line-height: .875; }

  /* Text Align */
  .ta-c-ns { text-align: center; }
  .ta-l-ns { text-align: left; }
  .ta-r-ns { text-align: right; }
  .ta-j-ns { text-align: justify; }

  /* Letter spacing */
  .ls-0-ns {letter-spacing: 0px }
  .ls-1-ns {letter-spacing: 1px }
  .ls-2-ns {letter-spacing: 2px }
  .ls-3-ns {letter-spacing: 3px }
  .ls-4-ns {letter-spacing: 4px }
  .ls-5-ns {letter-spacing: 5px }
  .ls-6-ns {letter-spacing: 6px }
  .ls-7-ns {letter-spacing: 7px }
  .ls-8-ns {letter-spacing: 8px }

  /* Text Indents */
  .ti-0-ns { text-indent: 0; }
  .ti-1-ns { text-indent: 1em; }
  .ti--999-ns { text-indent: -999em; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  /* Line height */
  .lh-0-m { line-height: 0 }
  .lh-100-m { line-height: 1 }
  .lh-125-m { line-height: 1.25 }
  .lh-150-m { line-height: 1.50 }
  .lh-175-m { line-height: 1.75 }
  .lh-200-m { line-height: 2 }
  .lh-300-m { line-height: 3 }
  .lh-400-m { line-height: 4 }
  .lh-500-m { line-height: 5 }

  /* I KNOW, I KNOW. But sometimes fonts suites are F'd ad we need to tighten that leading. */
  .lh-tight-m { line-height: .875; }

  /* Text Align */
  .ta-c-m { text-align: center; }
  .ta-l-m { text-align: left; }
  .ta-r-m { text-align: right; }
  .ta-j-m { text-align: justify; }

  /* Letter spacing */
  .ls-0-m {letter-spacing: 0px }
  .ls-1-m {letter-spacing: 1px }
  .ls-2-m {letter-spacing: 2px }
  .ls-3-m {letter-spacing: 3px }
  .ls-4-m {letter-spacing: 4px }
  .ls-5-m {letter-spacing: 5px }
  .ls-6-m {letter-spacing: 6px }
  .ls-7-m {letter-spacing: 7px }
  .ls-8-m {letter-spacing: 8px }

  /* Text Indents */
  .ti-0-m { text-indent: 0; }
  .ti-1-m { text-indent: 1em; }
  .ti--999-m { text-indent: -999em; }
}
@media screen and (min-width: 60em) {
  /* Line height */
  .lh-0-l { line-height: 0 }
  .lh-100-l { line-height: 1 }
  .lh-125-l { line-height: 1.25 }
  .lh-150-l { line-height: 1.50 }
  .lh-175-l { line-height: 1.75 }
  .lh-200-l { line-height: 2 }
  .lh-300-l { line-height: 3 }
  .lh-400-l { line-height: 4 }
  .lh-500-l { line-height: 5 }

  /* I KNOW, I KNOW. But sometimes fonts suites are F'd ad we need to tighten that leading. */
  .lh-tight-l { line-height: .875; }

  /* Text Align */
  .ta-c-l { text-align: center; }
  .ta-l-l { text-align: left; }
  .ta-r-l { text-align: right; }
  .ta-j-l { text-align: justify; }

  /* Letter spacing */
  .ls-0-l {letter-spacing: 0px }
  .ls-1-l {letter-spacing: 1px }
  .ls-2-l {letter-spacing: 2px }
  .ls-3-l {letter-spacing: 3px }
  .ls-4-l {letter-spacing: 4px }
  .ls-5-l {letter-spacing: 5px }
  .ls-6-l {letter-spacing: 6px }
  .ls-7-l {letter-spacing: 7px }
  .ls-8-l {letter-spacing: 8px }

  /* Text Indents */
  .ti-0-l { text-indent: 0; }
  .ti-1-l { text-indent: 1em; }
  .ti--999-l { text-indent: -999em; }
}
/* Sizing */
.f-1r { font-size: 5rem }
.f-2r { font-size: 3rem }
.f-3r { font-size: 2.25rem }
.f-4r { font-size: 1.5rem  }
.f-5r { font-size: 1.25rem }
.f-6r { font-size: 1rem }
.f-7r { font-size: .875rem }
.f-8r { font-size: .75rem }
.f-1r .f-1 { font-size: 1em }
.f-1r .f-2 { font-size: .6em }
.f-1r .f-3 { font-size: .45em }
.f-1r .f-4 { font-size: .3em }
.f-1r .f-5 { font-size: .25em }
.f-1r .f-6 { font-size: .2em }
.f-1r .f-7 { font-size: .175em }
.f-1r .f-8 { font-size: .15em }
.f-2r .f-1 { font-size: 1.667em }
.f-2r .f-2 { font-size: 1em }
.f-2r .f-3 { font-size: .75em }
.f-2r .f-4 { font-size: .5em }
.f-2r .f-5 { font-size: .417em }
.f-2r .f-6 { font-size: .333em }
.f-2r .f-7 { font-size: .292em }
.f-2r .f-8 { font-size: .25em }
.f-3r .f-1 { font-size: 2.222em }
.f-3r .f-2 { font-size: 1.333em }
.f-3r .f-3 { font-size: 1em }
.f-3r .f-4 { font-size: .667em }
.f-3r .f-5 { font-size: .555em }
.f-3r .f-6 { font-size: .444em }
.f-3r .f-7 { font-size: .389em }
.f-3r .f-8 { font-size: .333em }
.f-4r .f-1 { font-size: 3.333em   }
.f-4r .f-2 { font-size: 2em       }
.f-4r .f-3 { font-size: 1.5em     }
.f-4r .f-4 { font-size: 1em       }
.f-4r .f-5 { font-size: .833em    }
.f-4r .f-6 { font-size: .667em    }
.f-4r .f-7 { font-size: .583em    }
.f-4r .f-8 { font-size: .5em    }
.f-5r .f-1 { font-size: 4em     }
.f-5r .f-2 { font-size: 2.4em   }
.f-5r .f-3 { font-size: 1.8em   }
.f-5r .f-4 { font-size: 1.2em   }
.f-5r .f-5 { font-size: 1em     }
.f-5r .f-6 { font-size: .8em    }
.f-5r .f-7 { font-size: .7em    }
.f-5r .f-8 { font-size: .6em    }
.f-6r .f-1, .f-1 { font-size: 5em     }
.f-6r .f-2, .f-2 { font-size: 3em     }
.f-6r .f-3, .f-3 { font-size: 2.25em  }
.f-6r .f-4, .f-4 { font-size: 1.5em   }
.f-6r .f-5, .f-5 { font-size: 1.25em  }
.f-6r .f-6, .f-6 { font-size: 1em     }
.f-6r .f-7, .f-7 { font-size: .875em  }
.f-6r .f-8, .f-8 { font-size: .75em  }
.f-7r .f-1 { font-size: 5.714em   }
.f-7r .f-2 { font-size: 3.428em   }
.f-7r .f-3 { font-size: 2.571em   }
.f-7r .f-4 { font-size: 1.714em   }
.f-7r .f-5 { font-size: 1.428em   }
.f-7r .f-6 { font-size: 1.143em   }
.f-7r .f-7 { font-size: 1em       }
.f-7r .f-8 { font-size: .857em       }
.f-8r .f-2 { font-size: 6.667em   }
.f-8r .f-3 { font-size: 4em   }
.f-8r .f-4 { font-size: 3em   }
.f-8r .f-5 { font-size: 2em   }
.f-8r .f-6 { font-size: 1.667em   }
.f-8r .f-7 { font-size: 1.333em   }
.f-8r .f-8 { font-size: 1.167em       }
.f-8r .f-8 { font-size: 1em       }
.em-50 { font-size: .5em }
.em-100 { font-size: 1em }
.em-150 { font-size: 1.5em }
.em-200 { font-size: 2em }
@media screen and (max-width: 48em) {
  .f-1r-s { font-size: 5rem }
  .f-2r-s { font-size: 3rem }
  .f-3r-s { font-size: 2.25rem }
  .f-4r-s { font-size: 1.5rem  }
  .f-5r-s { font-size: 1.25rem }
  .f-6r-s { font-size: 1rem }
  .f-7r-s { font-size: .875rem }
  .f-8r-s { font-size: .75rem }

  .em-50-s { font-size: .5em }
  .em-100-s { font-size: 1em !important }
  .em-150-s { font-size: 1.5em }
  .em-200-s { font-size: 2em }
}
@media screen and (min-width: 48em) {
  .f-1r-ns { font-size: 5rem }
  .f-2r-ns { font-size: 3rem }
  .f-3r-ns { font-size: 2.25rem }
  .f-4r-ns { font-size: 1.5rem  }
  .f-5r-ns { font-size: 1.25rem }
  .f-6r-ns { font-size: 1rem }
  .f-7r-ns { font-size: .875rem }
  .f-8r-ns { font-size: .75rem }

  .em-50-ns { font-size: .5em }
  .em-100-ns { font-size: 1em }
  .em-150-ns { font-size: 1.5em }
  .em-200-ns { font-size: 2em }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .f-1r-m { font-size: 5rem }
  .f-2r-m { font-size: 3rem }
  .f-3r-m { font-size: 2.25rem }
  .f-4r-m { font-size: 1.5rem  }
  .f-5r-m { font-size: 1.25rem }
  .f-6r-m { font-size: 1rem }
  .f-7r-m { font-size: .875rem }
  .f-8r-m { font-size: .75rem }

  .em-50-m { font-size: .5em }
  .em-100-m { font-size: 1em }
  .em-150-m { font-size: 1.5em }
  .em-200-m { font-size: 2em }
}
@media screen and (min-width: 60em) {
  .f-1r-l { font-size: 5rem }
  .f-2r-l { font-size: 3rem }
  .f-3r-l { font-size: 2.25rem }
  .f-4r-l { font-size: 1.5rem  }
  .f-5r-l { font-size: 1.25rem }
  .f-6r-l { font-size: 1rem }
  .f-7r-l { font-size: .875rem }
  .f-8r-l { font-size: .75rem }

  .em-50-l { font-size: .5em }
  .em-100-l { font-size: 1em }
  .em-150-l { font-size: 1.5em }
  .em-200-l { font-size: 2em }
}
.ellipsis {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.scroll-x { overflow-x: scroll; }
.scroll-y { overflow-y: scroll; }
/* VERTICAL ALIGN */
.v-base     { vertical-align: baseline; }
.v-mid      { vertical-align: middle; }
.v-top      { vertical-align: top; }
.v-btm      { vertical-align: bottom; }
@media screen and (max-width: 48em) {
  .v-base-s     { vertical-align: baseline; }
  .v-mid-s      { vertical-align: middle; }
  .v-top-s      { vertical-align: top; }
  .v-btm-s      { vertical-align: bottom; }
}
@media screen and (min-width: 48em) {
  .v-base-ns     { vertical-align: baseline; }
  .v-mid-ns      { vertical-align: middle; }
  .v-top-ns      { vertical-align: top; }
  .v-btm-ns      { vertical-align: bottom; }
}
@media screen and (min-width: 48em) and (max-width: 60em) {
  .v-base-m     { vertical-align: baseline; }
  .v-mid-m      { vertical-align: middle; }
  .v-top-m      { vertical-align: top; }
  .v-btm-m      { vertical-align: bottom; }
}
@media screen and (min-width: 60em) {
  .v-base-l     { vertical-align: baseline; }
  .v-mid-l      { vertical-align: middle; }
  .v-top-l      { vertical-align: top; }
  .v-btm-l      { vertical-align: bottom; }
}
