/*! normalize.css v4.1.1 | MIT License | github.com/necolas/normalize.css */
/** 1. Change the default font family in all browsers (opinionated). 2. Prevent adjustments of font size after orientation changes in IE and iOS. */
html { font-family: sans-serif; /* 1 */ -ms-text-size-adjust: 100%; /* 2 */ -webkit-text-size-adjust: 100%; /* 2 */ }

/** Remove the margin in all browsers (opinionated). */
body { margin: 0; }

/* HTML5 display definitions ========================================================================== */
/** Add the correct display in IE 9-. 1. Add the correct display in Edge, IE, and Firefox. 2. Add the correct display in IE. */
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section { /* 1 */ display: block; }

summary { display: list-item; }

/** Add the correct display in IE 9-. */
audio, canvas, progress, video { display: inline-block; }

/** Add the correct display in iOS 4-7. */
audio:not([controls]) { display: none; height: 0; }

/** Add the correct vertical alignment in Chrome, Firefox, and Opera. */
progress { vertical-align: baseline; }

/** Add the correct display in IE 10-. 1. Add the correct display in IE. */
template, [hidden] { display: none; }

/* Links ========================================================================== */
/** 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 */ }

/** Remove the outline on focused links when they are also active or hovered in all browsers (opinionated). */
a:active, a:hover { outline-width: 0; }

/* Text-level semantics ========================================================================== */
/** 1. Remove the bottom border in 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 */ 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; }

/** Add the correct font style in Android 4.3-. */
dfn { font-style: italic; }

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

/** 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 ========================================================================== */
/** Remove the border on images inside links in IE 10-. */
img { border-style: none; }

/** Hide the overflow in IE. */
svg:not(:root) { overflow: hidden; }

/* Grouping content ========================================================================== */
/** 1. Correct the inheritance and scaling of font size in all browsers. 2. Correct the odd `em` font sizing in all browsers. */
code, kbd, pre, samp { font-family: monospace, monospace; /* 1 */ font-size: 1em; /* 2 */ }

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

/* Forms ========================================================================== */
/** 1. Change font properties to `inherit` in all browsers (opinionated). 2. Remove the margin in Firefox and Safari. */
button, input, select, textarea { font: inherit; /* 1 */ margin: 0; /* 2 */ }

/** Restore the font weight unset by the previous rule. */
optgroup { font-weight: bold; }

/** 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"], [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; }

/** Change the border, margin, and padding in all browsers (opinionated). */
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em; }

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

/** 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 OS X. */
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

/** Correct the text style of placeholders in Chrome, Edge, and Safari. */
::-webkit-input-placeholder { color: inherit; opacity: 0.54; }

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

* { box-sizing: border-box; }

input, select, textarea, button { font-family: inherit; font-size: inherit; line-height: inherit; }

body { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"; font-size: 14px; line-height: 1.5; color: #333; background-color: #fff; }

a { color: #4078c0; text-decoration: none; }
a:hover, a:active { text-decoration: underline; }

strong { font-weight: 600; }

hr, .rule { height: 0; margin: 15px 0; overflow: hidden; background: transparent; border: 0; border-bottom: 1px solid #ddd; }
hr::before, .rule::before { display: table; content: ""; }
hr::after, .rule::after { display: table; clear: both; content: ""; }

table { border-spacing: 0; border-collapse: collapse; }

td, th { padding: 0; }

button { cursor: pointer; }

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

h1 { font-size: 32px; font-weight: 600; }

h2 { font-size: 24px; font-weight: 600; }

h3 { font-size: 20px; font-weight: 600; }

h4 { font-size: 16px; font-weight: 600; }

h5 { font-size: 14px; font-weight: 600; }

h6 { font-size: 12px; font-weight: 600; }

p { margin-top: 0; margin-bottom: 10px; }

small { font-size: 90%; }

blockquote { margin: 0; }

ul, ol { padding-left: 0; margin-top: 0; margin-bottom: 0; }

ol ol, ul ol { list-style-type: lower-roman; }

ul ul ol, ul ol ol, ol ul ol, ol ol ol { list-style-type: lower-alpha; }

dd { margin-left: 0; }

tt, code { font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; font-size: 12px; }

pre { margin-top: 0; margin-bottom: 0; font: 12px Consolas, "Liberation Mono", Menlo, Courier, monospace; }

.octicon { vertical-align: text-bottom; }

.anim-fade-in { animation-name: fade-in; animation-duration: 1s; animation-timing-function: ease-in-out; }
.anim-fade-in.fast { animation-duration: 300ms; }

@keyframes fade-in { 0% { opacity: 0; }
  100% { opacity: 1; } }
/* Fade in and slide up an element */
.anim-fade-up { opacity: 0; animation-name: fade-up; animation-duration: 0.3s; animation-fill-mode: forwards; animation-timing-function: ease-out; animation-delay: 1s; }

@keyframes fade-up { 0% { opacity: 0.8; transform: translateY(100%); }
  100% { opacity: 1; transform: translateY(0); } }
/* Fade an element out and slide down */
.anim-fade-down { animation-name: fade-down; animation-duration: 0.3s; animation-fill-mode: forwards; animation-timing-function: ease-in; }

@keyframes fade-down { 0% { opacity: 1; transform: translateY(0); }
  100% { opacity: 0.5; transform: translateY(100%); } }
/* Grow an element width from 0 to 100% */
.anim-grow-x { width: 0%; animation-name: grow-x; animation-duration: 0.3s; animation-fill-mode: forwards; animation-timing-function: ease; animation-delay: 0.5s; }

@keyframes grow-x { to { width: 100%; } }
/* Shrink an element from 100% to 0% */
.anim-shrink-x { animation-name: shrink-x; animation-duration: 0.3s; animation-fill-mode: forwards; animation-timing-function: ease-in-out; animation-delay: 0.5s; }

@keyframes shrink-x { to { width: 0%; } }
/* Fade in an element and scale it fast */
.anim-scale-in { animation-name: scale-in; animation-duration: 0.15s; animation-timing-function: cubic-bezier(0.2, 0, 0.13, 1.5); }

@keyframes scale-in { 0% { opacity: 0; transform: scale(0.5); }
  100% { opacity: 1; transform: scale(1); } }
/* Pulse an element's opacity */
.anim-pulse { animation-name: pulse; animation-duration: 2s; animation-timing-function: linear; animation-iteration-count: infinite; }

@keyframes pulse { 0% { opacity: 0.3; }
  10% { opacity: 1; }
  100% { opacity: 0.3; } }
/* Pulse in an element */
.anim-pulse-in { animation-name: pulse-in; animation-duration: 0.5s; }

@keyframes pulse-in { 0% { transform: scale3d(1, 1, 1); }
  50% { transform: scale3d(1.1, 1.1, 1.1); }
  100% { transform: scale3d(1, 1, 1); } }
/* Add a gray border */
.border { border: 1px #e5e5e5 solid !important; }

/* Add a gray border to the top */
.border-top { border-top: 1px #e5e5e5 solid !important; }

/* Add a gray border to the right */
.border-right { border-right: 1px #e5e5e5 solid !important; }

/* Add a gray border to the bottom */
.border-bottom { border-bottom: 1px #e5e5e5 solid !important; }

/* Add a gray border to the left */
.border-left { border-left: 1px #e5e5e5 solid !important; }

/* Add a gray border to the left and right */
.border-y { border-top: 1px #e5e5e5 solid !important; border-bottom: 1px #e5e5e5 solid !important; }

.border-dashed { border-style: dashed !important; }

/* Use with .border to turn the border blue */
.border-blue { border-color: #c5d5dd !important; }

/* Use with .border to turn the border blue */
.border-blue-dark { border-color: #4078c0 !important; }

/* Use with .border to turn the border red */
.border-red { border-color: #d2b2b2 !important; }

/* Use with .border to turn the border red */
.border-red-dark { border-color: #bd2c00 !important; }

/* Use with .border to turn the border gray-light */
.border-gray-light { border-color: #eee !important; }

/* Use with .border to turn the border gray-dark */
.border-gray-dark { border-color: #ddd !important; }

/* Remove all borders */
.border-0 { border: 0 !important; }

/* Remove the top border */
.border-top-0 { border-top: 0 !important; }

/* Remove the right border */
.border-right-0 { border-right: 0 !important; }

/* Remove the bottom border */
.border-bottom-0 { border-bottom: 0 !important; }

/* Remove the left border */
.border-left-0 { border-left: 0 !important; }

/* Remove the border-radius */
.rounded-0 { border-radius: 0 !important; }

/* Add a border-radius to all corners */
.rounded-1 { border-radius: 3px !important; }

/* Add a 2x border-radius to all corners */
.rounded-2 { border-radius: 6px !important; }

.box-shadow { box-shadow: 0 1px 1px rgba(0, 0, 0, 0.1) !important; }

.box-shadow-medium { box-shadow: 0 1px 5px rgba(0, 0, 0, 0.15) !important; }

.box-shadow-large { box-shadow: 0 1px 15px rgba(0, 0, 0, 0.15) !important; }

.box-shadow-none { box-shadow: none !important; }

/* Set the background to $bg-white */
.bg-white { background-color: #fff !important; }

/* Set the background to $bg-blue */
.bg-blue { background-color: #4078c0 !important; }

/* Set the background to $bg-blue-light */
.bg-blue-light { background-color: #f2f8fa !important; }

/* Set the background to $bg-gray-dark */
.bg-gray-dark { background-color: #333 !important; }

/* Set the background to $bg-gray */
.bg-gray { background-color: #f5f5f5 !important; }

/* Set the background to $bg-gray-light */
.bg-gray-light { background-color: #fafafa !important; }

/* Set the background to $bg-green */
.bg-green { background-color: #6cc644 !important; }

/* Set the background to $bg-green-light */
.bg-green-light { background-color: #eaffea !important; }

/* Set the background to $bg-red */
.bg-red { background-color: #bd2c00 !important; }

/* Set the background to $bg-red-light */
.bg-red-light { background-color: #fcdede !important; }

/* Set the background to $bg-yellow */
.bg-yellow { background-color: #ffd36b !important; }

/* Set the background to $bg-yellow-light */
.bg-yellow-light { background-color: #fff9ea !important; }

/* Set the background to $bg-purple */
.bg-purple { background-color: #6e5494 !important; }

.bg-shade-gradient { background-image: linear-gradient(180deg, rgba(0, 0, 0, 0.065), transparent) !important; background-repeat: no-repeat !important; background-size: 100% 200px !important; }

/* Set the text color to $text-blue */
.text-blue { color: #4078c0 !important; }

/* Set the text color to $text-red */
.text-red { color: #bd2c00 !important; }

/* Set the text color to $text-gray-light */
.text-gray-light { color: #999 !important; }

/* Set the text color to $text-gray */
.text-gray { color: #767676 !important; }

/* Set the text color to $text-gray-dark */
.text-gray-dark { color: #333 !important; }

/* Set the text color to $text-green */
.text-green { color: #55a532 !important; }

/* Set the text color to $text-orange */
.text-orange { color: #c9510c !important; }

/* Set the text color to $text-purple */
.text-purple { color: #6e5494 !important; }

/* Set the text color to $text-white */
.text-white { color: #fff !important; }

/* Set the text color to inherit */
.text-inherit { color: inherit !important; }

.text-renamed { color: #fffa5d !important; }

.text-pending { color: #cea61b !important; }

.link-gray { color: #767676 !important; }
.link-gray:hover { color: #4078c0 !important; }

.link-gray-dark { color: #333 !important; }
.link-gray-dark:hover { color: #4078c0 !important; }

/* Set the link color to $text-blue on hover Useful when you want only part of a link to turn blue on hover */
.link-hover-blue:hover { color: #4078c0 !important; }

/* Make a link $text-gray, then $text-blue on hover and removes the underline */
.muted-link { color: #767676 !important; }
.muted-link:hover { color: #4078c0 !important; text-decoration: none; }

.shade-gradient { background-image: linear-gradient(180deg, #f5f5f5, #fff); background-repeat: no-repeat; background-size: 100% 200px; }

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

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

.flex-row { flex-direction: row !important; }

.flex-column { flex-direction: column !important; }

.flex-wrap { flex-wrap: wrap !important; }

.flex-nowrap { flex-wrap: nowrap !important; }

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

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

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

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

.flex-justify-around { justify-content: space-around !important; }

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

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

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

.flex-items-baseline { align-items: baseline !important; }

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

.flex-content-start { align-content: flex-start !important; }

.flex-content-end { align-content: flex-end !important; }

.flex-content-center { align-content: center !important; }

.flex-content-between { align-content: space-between !important; }

.flex-content-around { align-content: space-around !important; }

.flex-content-stretch { align-content: stretch !important; }

.flex-auto { flex: 1 1 auto !important; }

.flex-shrink-0 { flex-shrink: 0 !important; }

.flex-self-auto { align-self: auto !important; }

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

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

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

.flex-self-baseline { align-self: baseline !important; }

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

@media (min-width: 544px) { .d-sm-flex { display: flex !important; }
  .d-sm-inline-flex { display: inline-flex !important; }
  .flex-sm-row { flex-direction: row !important; }
  .flex-sm-column { flex-direction: column !important; }
  .flex-sm-wrap { flex-wrap: wrap !important; }
  .flex-sm-nowrap { flex-wrap: nowrap !important; }
  .flex-sm-justify-start { justify-content: flex-start !important; }
  .flex-sm-justify-end { justify-content: flex-end !important; }
  .flex-sm-justify-center { justify-content: center !important; }
  .flex-sm-justify-between { justify-content: space-between !important; }
  .flex-sm-justify-around { justify-content: space-around !important; }
  .flex-sm-items-start { align-items: flex-start !important; }
  .flex-sm-items-end { align-items: flex-end !important; }
  .flex-sm-items-center { align-items: center !important; }
  .flex-sm-items-baseline { align-items: baseline !important; }
  .flex-sm-items-stretch { align-items: stretch !important; }
  .flex-sm-content-start { align-content: flex-start !important; }
  .flex-sm-content-end { align-content: flex-end !important; }
  .flex-sm-content-center { align-content: center !important; }
  .flex-sm-content-between { align-content: space-between !important; }
  .flex-sm-content-around { align-content: space-around !important; }
  .flex-sm-content-stretch { align-content: stretch !important; }
  .flex-sm-auto { flex: 1 1 auto !important; }
  .flex-sm-shrink-0 { flex-shrink: 0 !important; }
  .flex-sm-self-auto { align-self: auto !important; }
  .flex-sm-self-start { align-self: flex-start !important; }
  .flex-sm-self-end { align-self: flex-end !important; }
  .flex-sm-self-center { align-self: center !important; }
  .flex-sm-self-baseline { align-self: baseline !important; }
  .flex-sm-self-stretch { align-self: stretch !important; } }
@media (min-width: 768px) { .d-md-flex { display: flex !important; }
  .d-md-inline-flex { display: inline-flex !important; }
  .flex-md-row { flex-direction: row !important; }
  .flex-md-column { flex-direction: column !important; }
  .flex-md-wrap { flex-wrap: wrap !important; }
  .flex-md-nowrap { flex-wrap: nowrap !important; }
  .flex-md-justify-start { justify-content: flex-start !important; }
  .flex-md-justify-end { justify-content: flex-end !important; }
  .flex-md-justify-center { justify-content: center !important; }
  .flex-md-justify-between { justify-content: space-between !important; }
  .flex-md-justify-around { justify-content: space-around !important; }
  .flex-md-items-start { align-items: flex-start !important; }
  .flex-md-items-end { align-items: flex-end !important; }
  .flex-md-items-center { align-items: center !important; }
  .flex-md-items-baseline { align-items: baseline !important; }
  .flex-md-items-stretch { align-items: stretch !important; }
  .flex-md-content-start { align-content: flex-start !important; }
  .flex-md-content-end { align-content: flex-end !important; }
  .flex-md-content-center { align-content: center !important; }
  .flex-md-content-between { align-content: space-between !important; }
  .flex-md-content-around { align-content: space-around !important; }
  .flex-md-content-stretch { align-content: stretch !important; }
  .flex-md-auto { flex: 1 1 auto !important; }
  .flex-md-shrink-0 { flex-shrink: 0 !important; }
  .flex-md-self-auto { align-self: auto !important; }
  .flex-md-self-start { align-self: flex-start !important; }
  .flex-md-self-end { align-self: flex-end !important; }
  .flex-md-self-center { align-self: center !important; }
  .flex-md-self-baseline { align-self: baseline !important; }
  .flex-md-self-stretch { align-self: stretch !important; } }
@media (min-width: 1012px) { .d-lg-flex { display: flex !important; }
  .d-lg-inline-flex { display: inline-flex !important; }
  .flex-lg-row { flex-direction: row !important; }
  .flex-lg-column { flex-direction: column !important; }
  .flex-lg-wrap { flex-wrap: wrap !important; }
  .flex-lg-nowrap { flex-wrap: nowrap !important; }
  .flex-lg-justify-start { justify-content: flex-start !important; }
  .flex-lg-justify-end { justify-content: flex-end !important; }
  .flex-lg-justify-center { justify-content: center !important; }
  .flex-lg-justify-between { justify-content: space-between !important; }
  .flex-lg-justify-around { justify-content: space-around !important; }
  .flex-lg-items-start { align-items: flex-start !important; }
  .flex-lg-items-end { align-items: flex-end !important; }
  .flex-lg-items-center { align-items: center !important; }
  .flex-lg-items-baseline { align-items: baseline !important; }
  .flex-lg-items-stretch { align-items: stretch !important; }
  .flex-lg-content-start { align-content: flex-start !important; }
  .flex-lg-content-end { align-content: flex-end !important; }
  .flex-lg-content-center { align-content: center !important; }
  .flex-lg-content-between { align-content: space-between !important; }
  .flex-lg-content-around { align-content: space-around !important; }
  .flex-lg-content-stretch { align-content: stretch !important; }
  .flex-lg-auto { flex: 1 1 auto !important; }
  .flex-lg-shrink-0 { flex-shrink: 0 !important; }
  .flex-lg-self-auto { align-self: auto !important; }
  .flex-lg-self-start { align-self: flex-start !important; }
  .flex-lg-self-end { align-self: flex-end !important; }
  .flex-lg-self-center { align-self: center !important; }
  .flex-lg-self-baseline { align-self: baseline !important; }
  .flex-lg-self-stretch { align-self: stretch !important; } }
@media (min-width: 1280px) { .d-xl-flex { display: flex !important; }
  .d-xl-inline-flex { display: inline-flex !important; }
  .flex-xl-row { flex-direction: row !important; }
  .flex-xl-column { flex-direction: column !important; }
  .flex-xl-wrap { flex-wrap: wrap !important; }
  .flex-xl-nowrap { flex-wrap: nowrap !important; }
  .flex-xl-justify-start { justify-content: flex-start !important; }
  .flex-xl-justify-end { justify-content: flex-end !important; }
  .flex-xl-justify-center { justify-content: center !important; }
  .flex-xl-justify-between { justify-content: space-between !important; }
  .flex-xl-justify-around { justify-content: space-around !important; }
  .flex-xl-items-start { align-items: flex-start !important; }
  .flex-xl-items-end { align-items: flex-end !important; }
  .flex-xl-items-center { align-items: center !important; }
  .flex-xl-items-baseline { align-items: baseline !important; }
  .flex-xl-items-stretch { align-items: stretch !important; }
  .flex-xl-content-start { align-content: flex-start !important; }
  .flex-xl-content-end { align-content: flex-end !important; }
  .flex-xl-content-center { align-content: center !important; }
  .flex-xl-content-between { align-content: space-between !important; }
  .flex-xl-content-around { align-content: space-around !important; }
  .flex-xl-content-stretch { align-content: stretch !important; }
  .flex-xl-auto { flex: 1 1 auto !important; }
  .flex-xl-shrink-0 { flex-shrink: 0 !important; }
  .flex-xl-self-auto { align-self: auto !important; }
  .flex-xl-self-start { align-self: flex-start !important; }
  .flex-xl-self-end { align-self: flex-end !important; }
  .flex-xl-self-center { align-self: center !important; }
  .flex-xl-self-baseline { align-self: baseline !important; }
  .flex-xl-self-stretch { align-self: stretch !important; } }
/* Set position to static */
.position-static { position: static !important; }

/* Set position to relative */
.position-relative { position: relative !important; }

/* Set position to absolute */
.position-absolute { position: absolute !important; }

/* Set position to fixed */
.position-fixed { position: fixed !important; }

/* Set top 0 */
.top-0 { top: 0 !important; }

/* Set right 0 */
.right-0 { right: 0 !important; }

/* Set bottom 0 */
.bottom-0 { bottom: 0 !important; }

/* Set left 0 */
.left-0 { left: 0 !important; }

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

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

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

/* Vertical align to the top of the text */
.v-align-text-top { vertical-align: text-top !important; }

/* Vertical align to the bottom of the text */
.v-align-text-bottom { vertical-align: text-bottom !important; }

/* Set the overflow hidden */
.overflow-hidden { overflow: hidden !important; }

/* Set the overflow scroll */
.overflow-scroll { overflow: scroll !important; }

/* Set the overflow auto */
.overflow-auto { overflow: auto !important; }

/* Clear floats around the element */
.clearfix::before { display: table; content: ""; }
.clearfix::after { display: table; clear: both; content: ""; }

/* Float to the right */
.float-right { float: right !important; }

/* Float to the left */
.float-left { float: left !important; }

/* Don't float left or right */
.float-none { float: none !important; }

@media (min-width: 544px) { /* Float to the left at the sm breakpoint */
  .float-sm-left { float: left !important; }
  /* Float to the right at the sm breakpoint */
  .float-sm-right { float: right !important; }
  /* No float at the sm breakpoint */
  .float-sm-none { float: none !important; } }
@media (min-width: 768px) { /* Float to the left at the md breakpoint */
  .float-md-left { float: left !important; }
  /* Float to the right at the md breakpoint */
  .float-md-right { float: right !important; }
  /* No float at the md breakpoint */
  .float-md-none { float: none !important; } }
@media (min-width: 1012px) { /* Float to the left at the lg breakpoint */
  .float-lg-left { float: left !important; }
  /* Float to the right at the lg breakpoint */
  .float-lg-right { float: right !important; }
  /* No float at the lg breakpoint */
  .float-lg-none { float: none !important; } }
@media (min-width: 1280px) { /* Float to the left at the xl breakpoint */
  .float-xl-left { float: left !important; }
  /* Float to the right at the xl breakpoint */
  .float-xl-right { float: right !important; }
  /* No float at the xl breakpoint */
  .float-xl-none { float: none !important; } }
/* Max width 100% */
.width-fit { max-width: 100% !important; }

/* Set the width to 100% */
.width-full { width: 100% !important; }

/* Set the height to 100% */
.height-full { height: 100% !important; }

/* Remove min-width from element */
.min-width-0 { min-width: 0 !important; }

.direction-rtl { direction: rtl !important; }

.direction-ltr { direction: ltr !important; }

@media (min-width: 544px) { /* Set the direction to ltr at the sm breakpoint */
  .direction-sm-rtl { direction: rtl !important; }
  /* Set the direction to ltr at the sm breakpoint */
  .direction-sm-ltr { direction: ltr !important; } }
@media (min-width: 768px) { /* Set the direction to ltr at the md breakpoint */
  .direction-md-rtl { direction: rtl !important; }
  /* Set the direction to ltr at the md breakpoint */
  .direction-md-ltr { direction: ltr !important; } }
@media (min-width: 1012px) { /* Set the direction to ltr at the lg breakpoint */
  .direction-lg-rtl { direction: rtl !important; }
  /* Set the direction to ltr at the lg breakpoint */
  .direction-lg-ltr { direction: ltr !important; } }
@media (min-width: 1280px) { /* Set the direction to ltr at the xl breakpoint */
  .direction-xl-rtl { direction: rtl !important; }
  /* Set the direction to ltr at the xl breakpoint */
  .direction-xl-ltr { direction: ltr !important; } }
/* Set a 0 margin to all sides */
.m-0 { margin: 0 !important; }

/* Set a 0 margin on the top */
.mt-0 { margin-top: 0 !important; }

/* Set a 0 margin on the right */
.mr-0 { margin-right: 0 !important; }

/* Set a 0 margin on the bottom */
.mb-0 { margin-bottom: 0 !important; }

/* Set a 0 margin on the left */
.ml-0 { margin-left: 0 !important; }

/* Set a 0 margin on the left & right */
.mx-0 { margin-right: 0 !important; margin-left: 0 !important; }

/* Set a 0 margin on the top & bottom */
.my-0 { margin-top: 0 !important; margin-bottom: 0 !important; }

/* Set a 4px margin to all sides */
.m-1 { margin: 4px !important; }

/* Set a 4px margin on the top */
.mt-1 { margin-top: 4px !important; }

/* Set a 4px margin on the right */
.mr-1 { margin-right: 4px !important; }

/* Set a 4px margin on the bottom */
.mb-1 { margin-bottom: 4px !important; }

/* Set a 4px margin on the left */
.ml-1 { margin-left: 4px !important; }

/* Set a 4px margin on the left & right */
.mx-1 { margin-right: 4px !important; margin-left: 4px !important; }

/* Set a 4px margin on the top & bottom */
.my-1 { margin-top: 4px !important; margin-bottom: 4px !important; }

/* Set a 8px margin to all sides */
.m-2 { margin: 8px !important; }

/* Set a 8px margin on the top */
.mt-2 { margin-top: 8px !important; }

/* Set a 8px margin on the right */
.mr-2 { margin-right: 8px !important; }

/* Set a 8px margin on the bottom */
.mb-2 { margin-bottom: 8px !important; }

/* Set a 8px margin on the left */
.ml-2 { margin-left: 8px !important; }

/* Set a 8px margin on the left & right */
.mx-2 { margin-right: 8px !important; margin-left: 8px !important; }

/* Set a 8px margin on the top & bottom */
.my-2 { margin-top: 8px !important; margin-bottom: 8px !important; }

/* Set a 16px margin to all sides */
.m-3 { margin: 16px !important; }

/* Set a 16px margin on the top */
.mt-3 { margin-top: 16px !important; }

/* Set a 16px margin on the right */
.mr-3 { margin-right: 16px !important; }

/* Set a 16px margin on the bottom */
.mb-3 { margin-bottom: 16px !important; }

/* Set a 16px margin on the left */
.ml-3 { margin-left: 16px !important; }

/* Set a 16px margin on the left & right */
.mx-3 { margin-right: 16px !important; margin-left: 16px !important; }

/* Set a 16px margin on the top & bottom */
.my-3 { margin-top: 16px !important; margin-bottom: 16px !important; }

/* Set a 24px margin to all sides */
.m-4 { margin: 24px !important; }

/* Set a 24px margin on the top */
.mt-4 { margin-top: 24px !important; }

/* Set a 24px margin on the right */
.mr-4 { margin-right: 24px !important; }

/* Set a 24px margin on the bottom */
.mb-4 { margin-bottom: 24px !important; }

/* Set a 24px margin on the left */
.ml-4 { margin-left: 24px !important; }

/* Set a 24px margin on the left & right */
.mx-4 { margin-right: 24px !important; margin-left: 24px !important; }

/* Set a 24px margin on the top & bottom */
.my-4 { margin-top: 24px !important; margin-bottom: 24px !important; }

/* Set a 32px margin to all sides */
.m-5 { margin: 32px !important; }

/* Set a 32px margin on the top */
.mt-5 { margin-top: 32px !important; }

/* Set a 32px margin on the right */
.mr-5 { margin-right: 32px !important; }

/* Set a 32px margin on the bottom */
.mb-5 { margin-bottom: 32px !important; }

/* Set a 32px margin on the left */
.ml-5 { margin-left: 32px !important; }

/* Set a 32px margin on the left & right */
.mx-5 { margin-right: 32px !important; margin-left: 32px !important; }

/* Set a 32px margin on the top & bottom */
.my-5 { margin-top: 32px !important; margin-bottom: 32px !important; }

/* Set a 40px margin to all sides */
.m-6 { margin: 40px !important; }

/* Set a 40px margin on the top */
.mt-6 { margin-top: 40px !important; }

/* Set a 40px margin on the right */
.mr-6 { margin-right: 40px !important; }

/* Set a 40px margin on the bottom */
.mb-6 { margin-bottom: 40px !important; }

/* Set a 40px margin on the left */
.ml-6 { margin-left: 40px !important; }

/* Set a 40px margin on the left & right */
.mx-6 { margin-right: 40px !important; margin-left: 40px !important; }

/* Set a 40px margin on the top & bottom */
.my-6 { margin-top: 40px !important; margin-bottom: 40px !important; }

@media (min-width: 544px) { /* Set a 0 margin to all sides at the breakpoint sm */
  .m-sm-0 { margin: 0 !important; }
  /* Set a 0 margin on the top at the breakpoint sm */
  .mt-sm-0 { margin-top: 0 !important; }
  /* Set a 0 margin on the right at the breakpoint sm */
  .mr-sm-0 { margin-right: 0 !important; }
  /* Set a 0 margin on the bottom at the breakpoint sm */
  .mb-sm-0 { margin-bottom: 0 !important; }
  /* Set a 0 margin on the left at the breakpoint sm */
  .ml-sm-0 { margin-left: 0 !important; }
  /* Set a 0 margin on the left & right at the breakpoint sm */
  .mx-sm-0 { margin-right: 0 !important; margin-left: 0 !important; }
  /* Set a 0 margin on the top & bottom at the breakpoint sm */
  .my-sm-0 { margin-top: 0 !important; margin-bottom: 0 !important; } }
@media (min-width: 544px) { /* Set a 4px margin to all sides at the breakpoint sm */
  .m-sm-1 { margin: 4px !important; }
  /* Set a 4px margin on the top at the breakpoint sm */
  .mt-sm-1 { margin-top: 4px !important; }
  /* Set a 4px margin on the right at the breakpoint sm */
  .mr-sm-1 { margin-right: 4px !important; }
  /* Set a 4px margin on the bottom at the breakpoint sm */
  .mb-sm-1 { margin-bottom: 4px !important; }
  /* Set a 4px margin on the left at the breakpoint sm */
  .ml-sm-1 { margin-left: 4px !important; }
  /* Set a 4px margin on the left & right at the breakpoint sm */
  .mx-sm-1 { margin-right: 4px !important; margin-left: 4px !important; }
  /* Set a 4px margin on the top & bottom at the breakpoint sm */
  .my-sm-1 { margin-top: 4px !important; margin-bottom: 4px !important; } }
@media (min-width: 544px) { /* Set a 8px margin to all sides at the breakpoint sm */
  .m-sm-2 { margin: 8px !important; }
  /* Set a 8px margin on the top at the breakpoint sm */
  .mt-sm-2 { margin-top: 8px !important; }
  /* Set a 8px margin on the right at the breakpoint sm */
  .mr-sm-2 { margin-right: 8px !important; }
  /* Set a 8px margin on the bottom at the breakpoint sm */
  .mb-sm-2 { margin-bottom: 8px !important; }
  /* Set a 8px margin on the left at the breakpoint sm */
  .ml-sm-2 { margin-left: 8px !important; }
  /* Set a 8px margin on the left & right at the breakpoint sm */
  .mx-sm-2 { margin-right: 8px !important; margin-left: 8px !important; }
  /* Set a 8px margin on the top & bottom at the breakpoint sm */
  .my-sm-2 { margin-top: 8px !important; margin-bottom: 8px !important; } }
@media (min-width: 544px) { /* Set a 16px margin to all sides at the breakpoint sm */
  .m-sm-3 { margin: 16px !important; }
  /* Set a 16px margin on the top at the breakpoint sm */
  .mt-sm-3 { margin-top: 16px !important; }
  /* Set a 16px margin on the right at the breakpoint sm */
  .mr-sm-3 { margin-right: 16px !important; }
  /* Set a 16px margin on the bottom at the breakpoint sm */
  .mb-sm-3 { margin-bottom: 16px !important; }
  /* Set a 16px margin on the left at the breakpoint sm */
  .ml-sm-3 { margin-left: 16px !important; }
  /* Set a 16px margin on the left & right at the breakpoint sm */
  .mx-sm-3 { margin-right: 16px !important; margin-left: 16px !important; }
  /* Set a 16px margin on the top & bottom at the breakpoint sm */
  .my-sm-3 { margin-top: 16px !important; margin-bottom: 16px !important; } }
@media (min-width: 544px) { /* Set a 24px margin to all sides at the breakpoint sm */
  .m-sm-4 { margin: 24px !important; }
  /* Set a 24px margin on the top at the breakpoint sm */
  .mt-sm-4 { margin-top: 24px !important; }
  /* Set a 24px margin on the right at the breakpoint sm */
  .mr-sm-4 { margin-right: 24px !important; }
  /* Set a 24px margin on the bottom at the breakpoint sm */
  .mb-sm-4 { margin-bottom: 24px !important; }
  /* Set a 24px margin on the left at the breakpoint sm */
  .ml-sm-4 { margin-left: 24px !important; }
  /* Set a 24px margin on the left & right at the breakpoint sm */
  .mx-sm-4 { margin-right: 24px !important; margin-left: 24px !important; }
  /* Set a 24px margin on the top & bottom at the breakpoint sm */
  .my-sm-4 { margin-top: 24px !important; margin-bottom: 24px !important; } }
@media (min-width: 544px) { /* Set a 32px margin to all sides at the breakpoint sm */
  .m-sm-5 { margin: 32px !important; }
  /* Set a 32px margin on the top at the breakpoint sm */
  .mt-sm-5 { margin-top: 32px !important; }
  /* Set a 32px margin on the right at the breakpoint sm */
  .mr-sm-5 { margin-right: 32px !important; }
  /* Set a 32px margin on the bottom at the breakpoint sm */
  .mb-sm-5 { margin-bottom: 32px !important; }
  /* Set a 32px margin on the left at the breakpoint sm */
  .ml-sm-5 { margin-left: 32px !important; }
  /* Set a 32px margin on the left & right at the breakpoint sm */
  .mx-sm-5 { margin-right: 32px !important; margin-left: 32px !important; }
  /* Set a 32px margin on the top & bottom at the breakpoint sm */
  .my-sm-5 { margin-top: 32px !important; margin-bottom: 32px !important; } }
@media (min-width: 544px) { /* Set a 40px margin to all sides at the breakpoint sm */
  .m-sm-6 { margin: 40px !important; }
  /* Set a 40px margin on the top at the breakpoint sm */
  .mt-sm-6 { margin-top: 40px !important; }
  /* Set a 40px margin on the right at the breakpoint sm */
  .mr-sm-6 { margin-right: 40px !important; }
  /* Set a 40px margin on the bottom at the breakpoint sm */
  .mb-sm-6 { margin-bottom: 40px !important; }
  /* Set a 40px margin on the left at the breakpoint sm */
  .ml-sm-6 { margin-left: 40px !important; }
  /* Set a 40px margin on the left & right at the breakpoint sm */
  .mx-sm-6 { margin-right: 40px !important; margin-left: 40px !important; }
  /* Set a 40px margin on the top & bottom at the breakpoint sm */
  .my-sm-6 { margin-top: 40px !important; margin-bottom: 40px !important; } }
@media (min-width: 768px) { /* Set a 0 margin to all sides at the breakpoint md */
  .m-md-0 { margin: 0 !important; }
  /* Set a 0 margin on the top at the breakpoint md */
  .mt-md-0 { margin-top: 0 !important; }
  /* Set a 0 margin on the right at the breakpoint md */
  .mr-md-0 { margin-right: 0 !important; }
  /* Set a 0 margin on the bottom at the breakpoint md */
  .mb-md-0 { margin-bottom: 0 !important; }
  /* Set a 0 margin on the left at the breakpoint md */
  .ml-md-0 { margin-left: 0 !important; }
  /* Set a 0 margin on the left & right at the breakpoint md */
  .mx-md-0 { margin-right: 0 !important; margin-left: 0 !important; }
  /* Set a 0 margin on the top & bottom at the breakpoint md */
  .my-md-0 { margin-top: 0 !important; margin-bottom: 0 !important; } }
@media (min-width: 768px) { /* Set a 4px margin to all sides at the breakpoint md */
  .m-md-1 { margin: 4px !important; }
  /* Set a 4px margin on the top at the breakpoint md */
  .mt-md-1 { margin-top: 4px !important; }
  /* Set a 4px margin on the right at the breakpoint md */
  .mr-md-1 { margin-right: 4px !important; }
  /* Set a 4px margin on the bottom at the breakpoint md */
  .mb-md-1 { margin-bottom: 4px !important; }
  /* Set a 4px margin on the left at the breakpoint md */
  .ml-md-1 { margin-left: 4px !important; }
  /* Set a 4px margin on the left & right at the breakpoint md */
  .mx-md-1 { margin-right: 4px !important; margin-left: 4px !important; }
  /* Set a 4px margin on the top & bottom at the breakpoint md */
  .my-md-1 { margin-top: 4px !important; margin-bottom: 4px !important; } }
@media (min-width: 768px) { /* Set a 8px margin to all sides at the breakpoint md */
  .m-md-2 { margin: 8px !important; }
  /* Set a 8px margin on the top at the breakpoint md */
  .mt-md-2 { margin-top: 8px !important; }
  /* Set a 8px margin on the right at the breakpoint md */
  .mr-md-2 { margin-right: 8px !important; }
  /* Set a 8px margin on the bottom at the breakpoint md */
  .mb-md-2 { margin-bottom: 8px !important; }
  /* Set a 8px margin on the left at the breakpoint md */
  .ml-md-2 { margin-left: 8px !important; }
  /* Set a 8px margin on the left & right at the breakpoint md */
  .mx-md-2 { margin-right: 8px !important; margin-left: 8px !important; }
  /* Set a 8px margin on the top & bottom at the breakpoint md */
  .my-md-2 { margin-top: 8px !important; margin-bottom: 8px !important; } }
@media (min-width: 768px) { /* Set a 16px margin to all sides at the breakpoint md */
  .m-md-3 { margin: 16px !important; }
  /* Set a 16px margin on the top at the breakpoint md */
  .mt-md-3 { margin-top: 16px !important; }
  /* Set a 16px margin on the right at the breakpoint md */
  .mr-md-3 { margin-right: 16px !important; }
  /* Set a 16px margin on the bottom at the breakpoint md */
  .mb-md-3 { margin-bottom: 16px !important; }
  /* Set a 16px margin on the left at the breakpoint md */
  .ml-md-3 { margin-left: 16px !important; }
  /* Set a 16px margin on the left & right at the breakpoint md */
  .mx-md-3 { margin-right: 16px !important; margin-left: 16px !important; }
  /* Set a 16px margin on the top & bottom at the breakpoint md */
  .my-md-3 { margin-top: 16px !important; margin-bottom: 16px !important; } }
@media (min-width: 768px) { /* Set a 24px margin to all sides at the breakpoint md */
  .m-md-4 { margin: 24px !important; }
  /* Set a 24px margin on the top at the breakpoint md */
  .mt-md-4 { margin-top: 24px !important; }
  /* Set a 24px margin on the right at the breakpoint md */
  .mr-md-4 { margin-right: 24px !important; }
  /* Set a 24px margin on the bottom at the breakpoint md */
  .mb-md-4 { margin-bottom: 24px !important; }
  /* Set a 24px margin on the left at the breakpoint md */
  .ml-md-4 { margin-left: 24px !important; }
  /* Set a 24px margin on the left & right at the breakpoint md */
  .mx-md-4 { margin-right: 24px !important; margin-left: 24px !important; }
  /* Set a 24px margin on the top & bottom at the breakpoint md */
  .my-md-4 { margin-top: 24px !important; margin-bottom: 24px !important; } }
@media (min-width: 768px) { /* Set a 32px margin to all sides at the breakpoint md */
  .m-md-5 { margin: 32px !important; }
  /* Set a 32px margin on the top at the breakpoint md */
  .mt-md-5 { margin-top: 32px !important; }
  /* Set a 32px margin on the right at the breakpoint md */
  .mr-md-5 { margin-right: 32px !important; }
  /* Set a 32px margin on the bottom at the breakpoint md */
  .mb-md-5 { margin-bottom: 32px !important; }
  /* Set a 32px margin on the left at the breakpoint md */
  .ml-md-5 { margin-left: 32px !important; }
  /* Set a 32px margin on the left & right at the breakpoint md */
  .mx-md-5 { margin-right: 32px !important; margin-left: 32px !important; }
  /* Set a 32px margin on the top & bottom at the breakpoint md */
  .my-md-5 { margin-top: 32px !important; margin-bottom: 32px !important; } }
@media (min-width: 768px) { /* Set a 40px margin to all sides at the breakpoint md */
  .m-md-6 { margin: 40px !important; }
  /* Set a 40px margin on the top at the breakpoint md */
  .mt-md-6 { margin-top: 40px !important; }
  /* Set a 40px margin on the right at the breakpoint md */
  .mr-md-6 { margin-right: 40px !important; }
  /* Set a 40px margin on the bottom at the breakpoint md */
  .mb-md-6 { margin-bottom: 40px !important; }
  /* Set a 40px margin on the left at the breakpoint md */
  .ml-md-6 { margin-left: 40px !important; }
  /* Set a 40px margin on the left & right at the breakpoint md */
  .mx-md-6 { margin-right: 40px !important; margin-left: 40px !important; }
  /* Set a 40px margin on the top & bottom at the breakpoint md */
  .my-md-6 { margin-top: 40px !important; margin-bottom: 40px !important; } }
@media (min-width: 1012px) { /* Set a 0 margin to all sides at the breakpoint lg */
  .m-lg-0 { margin: 0 !important; }
  /* Set a 0 margin on the top at the breakpoint lg */
  .mt-lg-0 { margin-top: 0 !important; }
  /* Set a 0 margin on the right at the breakpoint lg */
  .mr-lg-0 { margin-right: 0 !important; }
  /* Set a 0 margin on the bottom at the breakpoint lg */
  .mb-lg-0 { margin-bottom: 0 !important; }
  /* Set a 0 margin on the left at the breakpoint lg */
  .ml-lg-0 { margin-left: 0 !important; }
  /* Set a 0 margin on the left & right at the breakpoint lg */
  .mx-lg-0 { margin-right: 0 !important; margin-left: 0 !important; }
  /* Set a 0 margin on the top & bottom at the breakpoint lg */
  .my-lg-0 { margin-top: 0 !important; margin-bottom: 0 !important; } }
@media (min-width: 1012px) { /* Set a 4px margin to all sides at the breakpoint lg */
  .m-lg-1 { margin: 4px !important; }
  /* Set a 4px margin on the top at the breakpoint lg */
  .mt-lg-1 { margin-top: 4px !important; }
  /* Set a 4px margin on the right at the breakpoint lg */
  .mr-lg-1 { margin-right: 4px !important; }
  /* Set a 4px margin on the bottom at the breakpoint lg */
  .mb-lg-1 { margin-bottom: 4px !important; }
  /* Set a 4px margin on the left at the breakpoint lg */
  .ml-lg-1 { margin-left: 4px !important; }
  /* Set a 4px margin on the left & right at the breakpoint lg */
  .mx-lg-1 { margin-right: 4px !important; margin-left: 4px !important; }
  /* Set a 4px margin on the top & bottom at the breakpoint lg */
  .my-lg-1 { margin-top: 4px !important; margin-bottom: 4px !important; } }
@media (min-width: 1012px) { /* Set a 8px margin to all sides at the breakpoint lg */
  .m-lg-2 { margin: 8px !important; }
  /* Set a 8px margin on the top at the breakpoint lg */
  .mt-lg-2 { margin-top: 8px !important; }
  /* Set a 8px margin on the right at the breakpoint lg */
  .mr-lg-2 { margin-right: 8px !important; }
  /* Set a 8px margin on the bottom at the breakpoint lg */
  .mb-lg-2 { margin-bottom: 8px !important; }
  /* Set a 8px margin on the left at the breakpoint lg */
  .ml-lg-2 { margin-left: 8px !important; }
  /* Set a 8px margin on the left & right at the breakpoint lg */
  .mx-lg-2 { margin-right: 8px !important; margin-left: 8px !important; }
  /* Set a 8px margin on the top & bottom at the breakpoint lg */
  .my-lg-2 { margin-top: 8px !important; margin-bottom: 8px !important; } }
@media (min-width: 1012px) { /* Set a 16px margin to all sides at the breakpoint lg */
  .m-lg-3 { margin: 16px !important; }
  /* Set a 16px margin on the top at the breakpoint lg */
  .mt-lg-3 { margin-top: 16px !important; }
  /* Set a 16px margin on the right at the breakpoint lg */
  .mr-lg-3 { margin-right: 16px !important; }
  /* Set a 16px margin on the bottom at the breakpoint lg */
  .mb-lg-3 { margin-bottom: 16px !important; }
  /* Set a 16px margin on the left at the breakpoint lg */
  .ml-lg-3 { margin-left: 16px !important; }
  /* Set a 16px margin on the left & right at the breakpoint lg */
  .mx-lg-3 { margin-right: 16px !important; margin-left: 16px !important; }
  /* Set a 16px margin on the top & bottom at the breakpoint lg */
  .my-lg-3 { margin-top: 16px !important; margin-bottom: 16px !important; } }
@media (min-width: 1012px) { /* Set a 24px margin to all sides at the breakpoint lg */
  .m-lg-4 { margin: 24px !important; }
  /* Set a 24px margin on the top at the breakpoint lg */
  .mt-lg-4 { margin-top: 24px !important; }
  /* Set a 24px margin on the right at the breakpoint lg */
  .mr-lg-4 { margin-right: 24px !important; }
  /* Set a 24px margin on the bottom at the breakpoint lg */
  .mb-lg-4 { margin-bottom: 24px !important; }
  /* Set a 24px margin on the left at the breakpoint lg */
  .ml-lg-4 { margin-left: 24px !important; }
  /* Set a 24px margin on the left & right at the breakpoint lg */
  .mx-lg-4 { margin-right: 24px !important; margin-left: 24px !important; }
  /* Set a 24px margin on the top & bottom at the breakpoint lg */
  .my-lg-4 { margin-top: 24px !important; margin-bottom: 24px !important; } }
@media (min-width: 1012px) { /* Set a 32px margin to all sides at the breakpoint lg */
  .m-lg-5 { margin: 32px !important; }
  /* Set a 32px margin on the top at the breakpoint lg */
  .mt-lg-5 { margin-top: 32px !important; }
  /* Set a 32px margin on the right at the breakpoint lg */
  .mr-lg-5 { margin-right: 32px !important; }
  /* Set a 32px margin on the bottom at the breakpoint lg */
  .mb-lg-5 { margin-bottom: 32px !important; }
  /* Set a 32px margin on the left at the breakpoint lg */
  .ml-lg-5 { margin-left: 32px !important; }
  /* Set a 32px margin on the left & right at the breakpoint lg */
  .mx-lg-5 { margin-right: 32px !important; margin-left: 32px !important; }
  /* Set a 32px margin on the top & bottom at the breakpoint lg */
  .my-lg-5 { margin-top: 32px !important; margin-bottom: 32px !important; } }
@media (min-width: 1012px) { /* Set a 40px margin to all sides at the breakpoint lg */
  .m-lg-6 { margin: 40px !important; }
  /* Set a 40px margin on the top at the breakpoint lg */
  .mt-lg-6 { margin-top: 40px !important; }
  /* Set a 40px margin on the right at the breakpoint lg */
  .mr-lg-6 { margin-right: 40px !important; }
  /* Set a 40px margin on the bottom at the breakpoint lg */
  .mb-lg-6 { margin-bottom: 40px !important; }
  /* Set a 40px margin on the left at the breakpoint lg */
  .ml-lg-6 { margin-left: 40px !important; }
  /* Set a 40px margin on the left & right at the breakpoint lg */
  .mx-lg-6 { margin-right: 40px !important; margin-left: 40px !important; }
  /* Set a 40px margin on the top & bottom at the breakpoint lg */
  .my-lg-6 { margin-top: 40px !important; margin-bottom: 40px !important; } }
@media (min-width: 1280px) { /* Set a 0 margin to all sides at the breakpoint xl */
  .m-xl-0 { margin: 0 !important; }
  /* Set a 0 margin on the top at the breakpoint xl */
  .mt-xl-0 { margin-top: 0 !important; }
  /* Set a 0 margin on the right at the breakpoint xl */
  .mr-xl-0 { margin-right: 0 !important; }
  /* Set a 0 margin on the bottom at the breakpoint xl */
  .mb-xl-0 { margin-bottom: 0 !important; }
  /* Set a 0 margin on the left at the breakpoint xl */
  .ml-xl-0 { margin-left: 0 !important; }
  /* Set a 0 margin on the left & right at the breakpoint xl */
  .mx-xl-0 { margin-right: 0 !important; margin-left: 0 !important; }
  /* Set a 0 margin on the top & bottom at the breakpoint xl */
  .my-xl-0 { margin-top: 0 !important; margin-bottom: 0 !important; } }
@media (min-width: 1280px) { /* Set a 4px margin to all sides at the breakpoint xl */
  .m-xl-1 { margin: 4px !important; }
  /* Set a 4px margin on the top at the breakpoint xl */
  .mt-xl-1 { margin-top: 4px !important; }
  /* Set a 4px margin on the right at the breakpoint xl */
  .mr-xl-1 { margin-right: 4px !important; }
  /* Set a 4px margin on the bottom at the breakpoint xl */
  .mb-xl-1 { margin-bottom: 4px !important; }
  /* Set a 4px margin on the left at the breakpoint xl */
  .ml-xl-1 { margin-left: 4px !important; }
  /* Set a 4px margin on the left & right at the breakpoint xl */
  .mx-xl-1 { margin-right: 4px !important; margin-left: 4px !important; }
  /* Set a 4px margin on the top & bottom at the breakpoint xl */
  .my-xl-1 { margin-top: 4px !important; margin-bottom: 4px !important; } }
@media (min-width: 1280px) { /* Set a 8px margin to all sides at the breakpoint xl */
  .m-xl-2 { margin: 8px !important; }
  /* Set a 8px margin on the top at the breakpoint xl */
  .mt-xl-2 { margin-top: 8px !important; }
  /* Set a 8px margin on the right at the breakpoint xl */
  .mr-xl-2 { margin-right: 8px !important; }
  /* Set a 8px margin on the bottom at the breakpoint xl */
  .mb-xl-2 { margin-bottom: 8px !important; }
  /* Set a 8px margin on the left at the breakpoint xl */
  .ml-xl-2 { margin-left: 8px !important; }
  /* Set a 8px margin on the left & right at the breakpoint xl */
  .mx-xl-2 { margin-right: 8px !important; margin-left: 8px !important; }
  /* Set a 8px margin on the top & bottom at the breakpoint xl */
  .my-xl-2 { margin-top: 8px !important; margin-bottom: 8px !important; } }
@media (min-width: 1280px) { /* Set a 16px margin to all sides at the breakpoint xl */
  .m-xl-3 { margin: 16px !important; }
  /* Set a 16px margin on the top at the breakpoint xl */
  .mt-xl-3 { margin-top: 16px !important; }
  /* Set a 16px margin on the right at the breakpoint xl */
  .mr-xl-3 { margin-right: 16px !important; }
  /* Set a 16px margin on the bottom at the breakpoint xl */
  .mb-xl-3 { margin-bottom: 16px !important; }
  /* Set a 16px margin on the left at the breakpoint xl */
  .ml-xl-3 { margin-left: 16px !important; }
  /* Set a 16px margin on the left & right at the breakpoint xl */
  .mx-xl-3 { margin-right: 16px !important; margin-left: 16px !important; }
  /* Set a 16px margin on the top & bottom at the breakpoint xl */
  .my-xl-3 { margin-top: 16px !important; margin-bottom: 16px !important; } }
@media (min-width: 1280px) { /* Set a 24px margin to all sides at the breakpoint xl */
  .m-xl-4 { margin: 24px !important; }
  /* Set a 24px margin on the top at the breakpoint xl */
  .mt-xl-4 { margin-top: 24px !important; }
  /* Set a 24px margin on the right at the breakpoint xl */
  .mr-xl-4 { margin-right: 24px !important; }
  /* Set a 24px margin on the bottom at the breakpoint xl */
  .mb-xl-4 { margin-bottom: 24px !important; }
  /* Set a 24px margin on the left at the breakpoint xl */
  .ml-xl-4 { margin-left: 24px !important; }
  /* Set a 24px margin on the left & right at the breakpoint xl */
  .mx-xl-4 { margin-right: 24px !important; margin-left: 24px !important; }
  /* Set a 24px margin on the top & bottom at the breakpoint xl */
  .my-xl-4 { margin-top: 24px !important; margin-bottom: 24px !important; } }
@media (min-width: 1280px) { /* Set a 32px margin to all sides at the breakpoint xl */
  .m-xl-5 { margin: 32px !important; }
  /* Set a 32px margin on the top at the breakpoint xl */
  .mt-xl-5 { margin-top: 32px !important; }
  /* Set a 32px margin on the right at the breakpoint xl */
  .mr-xl-5 { margin-right: 32px !important; }
  /* Set a 32px margin on the bottom at the breakpoint xl */
  .mb-xl-5 { margin-bottom: 32px !important; }
  /* Set a 32px margin on the left at the breakpoint xl */
  .ml-xl-5 { margin-left: 32px !important; }
  /* Set a 32px margin on the left & right at the breakpoint xl */
  .mx-xl-5 { margin-right: 32px !important; margin-left: 32px !important; }
  /* Set a 32px margin on the top & bottom at the breakpoint xl */
  .my-xl-5 { margin-top: 32px !important; margin-bottom: 32px !important; } }
@media (min-width: 1280px) { /* Set a 40px margin to all sides at the breakpoint xl */
  .m-xl-6 { margin: 40px !important; }
  /* Set a 40px margin on the top at the breakpoint xl */
  .mt-xl-6 { margin-top: 40px !important; }
  /* Set a 40px margin on the right at the breakpoint xl */
  .mr-xl-6 { margin-right: 40px !important; }
  /* Set a 40px margin on the bottom at the breakpoint xl */
  .mb-xl-6 { margin-bottom: 40px !important; }
  /* Set a 40px margin on the left at the breakpoint xl */
  .ml-xl-6 { margin-left: 40px !important; }
  /* Set a 40px margin on the left & right at the breakpoint xl */
  .mx-xl-6 { margin-right: 40px !important; margin-left: 40px !important; }
  /* Set a 40px margin on the top & bottom at the breakpoint xl */
  .my-xl-6 { margin-top: 40px !important; margin-bottom: 40px !important; } }
/* Set an auto margin on left & right */
.mx-auto { margin-right: auto !important; margin-left: auto !important; }

/* Set a 0 padding to all sides */
.p-0 { padding: 0 !important; }

/* Set a 0 padding to the top */
.pt-0 { padding-top: 0 !important; }

/* Set a 0 padding to the right */
.pr-0 { padding-right: 0 !important; }

/* Set a 0 padding to the bottom */
.pb-0 { padding-bottom: 0 !important; }

/* Set a 0 padding to the left */
.pl-0 { padding-left: 0 !important; }

/* Set a 0 padding to the left & right */
.px-0 { padding-right: 0 !important; padding-left: 0 !important; }

/* Set a 0 padding to the top & bottom */
.py-0 { padding-top: 0 !important; padding-bottom: 0 !important; }

/* Set a 4px padding to all sides */
.p-1 { padding: 4px !important; }

/* Set a 4px padding to the top */
.pt-1 { padding-top: 4px !important; }

/* Set a 4px padding to the right */
.pr-1 { padding-right: 4px !important; }

/* Set a 4px padding to the bottom */
.pb-1 { padding-bottom: 4px !important; }

/* Set a 4px padding to the left */
.pl-1 { padding-left: 4px !important; }

/* Set a 4px padding to the left & right */
.px-1 { padding-right: 4px !important; padding-left: 4px !important; }

/* Set a 4px padding to the top & bottom */
.py-1 { padding-top: 4px !important; padding-bottom: 4px !important; }

/* Set a 8px padding to all sides */
.p-2 { padding: 8px !important; }

/* Set a 8px padding to the top */
.pt-2 { padding-top: 8px !important; }

/* Set a 8px padding to the right */
.pr-2 { padding-right: 8px !important; }

/* Set a 8px padding to the bottom */
.pb-2 { padding-bottom: 8px !important; }

/* Set a 8px padding to the left */
.pl-2 { padding-left: 8px !important; }

/* Set a 8px padding to the left & right */
.px-2 { padding-right: 8px !important; padding-left: 8px !important; }

/* Set a 8px padding to the top & bottom */
.py-2 { padding-top: 8px !important; padding-bottom: 8px !important; }

/* Set a 16px padding to all sides */
.p-3 { padding: 16px !important; }

/* Set a 16px padding to the top */
.pt-3 { padding-top: 16px !important; }

/* Set a 16px padding to the right */
.pr-3 { padding-right: 16px !important; }

/* Set a 16px padding to the bottom */
.pb-3 { padding-bottom: 16px !important; }

/* Set a 16px padding to the left */
.pl-3 { padding-left: 16px !important; }

/* Set a 16px padding to the left & right */
.px-3 { padding-right: 16px !important; padding-left: 16px !important; }

/* Set a 16px padding to the top & bottom */
.py-3 { padding-top: 16px !important; padding-bottom: 16px !important; }

/* Set a 24px padding to all sides */
.p-4 { padding: 24px !important; }

/* Set a 24px padding to the top */
.pt-4 { padding-top: 24px !important; }

/* Set a 24px padding to the right */
.pr-4 { padding-right: 24px !important; }

/* Set a 24px padding to the bottom */
.pb-4 { padding-bottom: 24px !important; }

/* Set a 24px padding to the left */
.pl-4 { padding-left: 24px !important; }

/* Set a 24px padding to the left & right */
.px-4 { padding-right: 24px !important; padding-left: 24px !important; }

/* Set a 24px padding to the top & bottom */
.py-4 { padding-top: 24px !important; padding-bottom: 24px !important; }

/* Set a 32px padding to all sides */
.p-5 { padding: 32px !important; }

/* Set a 32px padding to the top */
.pt-5 { padding-top: 32px !important; }

/* Set a 32px padding to the right */
.pr-5 { padding-right: 32px !important; }

/* Set a 32px padding to the bottom */
.pb-5 { padding-bottom: 32px !important; }

/* Set a 32px padding to the left */
.pl-5 { padding-left: 32px !important; }

/* Set a 32px padding to the left & right */
.px-5 { padding-right: 32px !important; padding-left: 32px !important; }

/* Set a 32px padding to the top & bottom */
.py-5 { padding-top: 32px !important; padding-bottom: 32px !important; }

/* Set a 40px padding to all sides */
.p-6 { padding: 40px !important; }

/* Set a 40px padding to the top */
.pt-6 { padding-top: 40px !important; }

/* Set a 40px padding to the right */
.pr-6 { padding-right: 40px !important; }

/* Set a 40px padding to the bottom */
.pb-6 { padding-bottom: 40px !important; }

/* Set a 40px padding to the left */
.pl-6 { padding-left: 40px !important; }

/* Set a 40px padding to the left & right */
.px-6 { padding-right: 40px !important; padding-left: 40px !important; }

/* Set a 40px padding to the top & bottom */
.py-6 { padding-top: 40px !important; padding-bottom: 40px !important; }

@media (min-width: 544px) { /* Set a 0 padding to all sides at the sm breakpoint */
  .p-sm-0 { padding: 0 !important; }
  /* Set a 0 padding to the top at the sm breakpoint */
  .pt-sm-0 { padding-top: 0 !important; }
  /* Set a 0 padding to the right at the sm breakpoint */
  .pr-sm-0 { padding-right: 0 !important; }
  /* Set a 0 padding to the bottom at the sm breakpoint */
  .pb-sm-0 { padding-bottom: 0 !important; }
  /* Set a 0 padding to the left at the sm breakpoint */
  .pl-sm-0 { padding-left: 0 !important; }
  /* Set a 0 padding to the left & right at the sm breakpoint */
  .px-sm-0 { padding-right: 0 !important; padding-left: 0 !important; }
  /* Set a 0 padding to the top & bottom at the sm breakpoint */
  .py-sm-0 { padding-top: 0 !important; padding-bottom: 0 !important; } }
@media (min-width: 544px) { /* Set a 4px padding to all sides at the sm breakpoint */
  .p-sm-1 { padding: 4px !important; }
  /* Set a 4px padding to the top at the sm breakpoint */
  .pt-sm-1 { padding-top: 4px !important; }
  /* Set a 4px padding to the right at the sm breakpoint */
  .pr-sm-1 { padding-right: 4px !important; }
  /* Set a 4px padding to the bottom at the sm breakpoint */
  .pb-sm-1 { padding-bottom: 4px !important; }
  /* Set a 4px padding to the left at the sm breakpoint */
  .pl-sm-1 { padding-left: 4px !important; }
  /* Set a 4px padding to the left & right at the sm breakpoint */
  .px-sm-1 { padding-right: 4px !important; padding-left: 4px !important; }
  /* Set a 4px padding to the top & bottom at the sm breakpoint */
  .py-sm-1 { padding-top: 4px !important; padding-bottom: 4px !important; } }
@media (min-width: 544px) { /* Set a 8px padding to all sides at the sm breakpoint */
  .p-sm-2 { padding: 8px !important; }
  /* Set a 8px padding to the top at the sm breakpoint */
  .pt-sm-2 { padding-top: 8px !important; }
  /* Set a 8px padding to the right at the sm breakpoint */
  .pr-sm-2 { padding-right: 8px !important; }
  /* Set a 8px padding to the bottom at the sm breakpoint */
  .pb-sm-2 { padding-bottom: 8px !important; }
  /* Set a 8px padding to the left at the sm breakpoint */
  .pl-sm-2 { padding-left: 8px !important; }
  /* Set a 8px padding to the left & right at the sm breakpoint */
  .px-sm-2 { padding-right: 8px !important; padding-left: 8px !important; }
  /* Set a 8px padding to the top & bottom at the sm breakpoint */
  .py-sm-2 { padding-top: 8px !important; padding-bottom: 8px !important; } }
@media (min-width: 544px) { /* Set a 16px padding to all sides at the sm breakpoint */
  .p-sm-3 { padding: 16px !important; }
  /* Set a 16px padding to the top at the sm breakpoint */
  .pt-sm-3 { padding-top: 16px !important; }
  /* Set a 16px padding to the right at the sm breakpoint */
  .pr-sm-3 { padding-right: 16px !important; }
  /* Set a 16px padding to the bottom at the sm breakpoint */
  .pb-sm-3 { padding-bottom: 16px !important; }
  /* Set a 16px padding to the left at the sm breakpoint */
  .pl-sm-3 { padding-left: 16px !important; }
  /* Set a 16px padding to the left & right at the sm breakpoint */
  .px-sm-3 { padding-right: 16px !important; padding-left: 16px !important; }
  /* Set a 16px padding to the top & bottom at the sm breakpoint */
  .py-sm-3 { padding-top: 16px !important; padding-bottom: 16px !important; } }
@media (min-width: 544px) { /* Set a 24px padding to all sides at the sm breakpoint */
  .p-sm-4 { padding: 24px !important; }
  /* Set a 24px padding to the top at the sm breakpoint */
  .pt-sm-4 { padding-top: 24px !important; }
  /* Set a 24px padding to the right at the sm breakpoint */
  .pr-sm-4 { padding-right: 24px !important; }
  /* Set a 24px padding to the bottom at the sm breakpoint */
  .pb-sm-4 { padding-bottom: 24px !important; }
  /* Set a 24px padding to the left at the sm breakpoint */
  .pl-sm-4 { padding-left: 24px !important; }
  /* Set a 24px padding to the left & right at the sm breakpoint */
  .px-sm-4 { padding-right: 24px !important; padding-left: 24px !important; }
  /* Set a 24px padding to the top & bottom at the sm breakpoint */
  .py-sm-4 { padding-top: 24px !important; padding-bottom: 24px !important; } }
@media (min-width: 544px) { /* Set a 32px padding to all sides at the sm breakpoint */
  .p-sm-5 { padding: 32px !important; }
  /* Set a 32px padding to the top at the sm breakpoint */
  .pt-sm-5 { padding-top: 32px !important; }
  /* Set a 32px padding to the right at the sm breakpoint */
  .pr-sm-5 { padding-right: 32px !important; }
  /* Set a 32px padding to the bottom at the sm breakpoint */
  .pb-sm-5 { padding-bottom: 32px !important; }
  /* Set a 32px padding to the left at the sm breakpoint */
  .pl-sm-5 { padding-left: 32px !important; }
  /* Set a 32px padding to the left & right at the sm breakpoint */
  .px-sm-5 { padding-right: 32px !important; padding-left: 32px !important; }
  /* Set a 32px padding to the top & bottom at the sm breakpoint */
  .py-sm-5 { padding-top: 32px !important; padding-bottom: 32px !important; } }
@media (min-width: 544px) { /* Set a 40px padding to all sides at the sm breakpoint */
  .p-sm-6 { padding: 40px !important; }
  /* Set a 40px padding to the top at the sm breakpoint */
  .pt-sm-6 { padding-top: 40px !important; }
  /* Set a 40px padding to the right at the sm breakpoint */
  .pr-sm-6 { padding-right: 40px !important; }
  /* Set a 40px padding to the bottom at the sm breakpoint */
  .pb-sm-6 { padding-bottom: 40px !important; }
  /* Set a 40px padding to the left at the sm breakpoint */
  .pl-sm-6 { padding-left: 40px !important; }
  /* Set a 40px padding to the left & right at the sm breakpoint */
  .px-sm-6 { padding-right: 40px !important; padding-left: 40px !important; }
  /* Set a 40px padding to the top & bottom at the sm breakpoint */
  .py-sm-6 { padding-top: 40px !important; padding-bottom: 40px !important; } }
@media (min-width: 768px) { /* Set a 0 padding to all sides at the md breakpoint */
  .p-md-0 { padding: 0 !important; }
  /* Set a 0 padding to the top at the md breakpoint */
  .pt-md-0 { padding-top: 0 !important; }
  /* Set a 0 padding to the right at the md breakpoint */
  .pr-md-0 { padding-right: 0 !important; }
  /* Set a 0 padding to the bottom at the md breakpoint */
  .pb-md-0 { padding-bottom: 0 !important; }
  /* Set a 0 padding to the left at the md breakpoint */
  .pl-md-0 { padding-left: 0 !important; }
  /* Set a 0 padding to the left & right at the md breakpoint */
  .px-md-0 { padding-right: 0 !important; padding-left: 0 !important; }
  /* Set a 0 padding to the top & bottom at the md breakpoint */
  .py-md-0 { padding-top: 0 !important; padding-bottom: 0 !important; } }
@media (min-width: 768px) { /* Set a 4px padding to all sides at the md breakpoint */
  .p-md-1 { padding: 4px !important; }
  /* Set a 4px padding to the top at the md breakpoint */
  .pt-md-1 { padding-top: 4px !important; }
  /* Set a 4px padding to the right at the md breakpoint */
  .pr-md-1 { padding-right: 4px !important; }
  /* Set a 4px padding to the bottom at the md breakpoint */
  .pb-md-1 { padding-bottom: 4px !important; }
  /* Set a 4px padding to the left at the md breakpoint */
  .pl-md-1 { padding-left: 4px !important; }
  /* Set a 4px padding to the left & right at the md breakpoint */
  .px-md-1 { padding-right: 4px !important; padding-left: 4px !important; }
  /* Set a 4px padding to the top & bottom at the md breakpoint */
  .py-md-1 { padding-top: 4px !important; padding-bottom: 4px !important; } }
@media (min-width: 768px) { /* Set a 8px padding to all sides at the md breakpoint */
  .p-md-2 { padding: 8px !important; }
  /* Set a 8px padding to the top at the md breakpoint */
  .pt-md-2 { padding-top: 8px !important; }
  /* Set a 8px padding to the right at the md breakpoint */
  .pr-md-2 { padding-right: 8px !important; }
  /* Set a 8px padding to the bottom at the md breakpoint */
  .pb-md-2 { padding-bottom: 8px !important; }
  /* Set a 8px padding to the left at the md breakpoint */
  .pl-md-2 { padding-left: 8px !important; }
  /* Set a 8px padding to the left & right at the md breakpoint */
  .px-md-2 { padding-right: 8px !important; padding-left: 8px !important; }
  /* Set a 8px padding to the top & bottom at the md breakpoint */
  .py-md-2 { padding-top: 8px !important; padding-bottom: 8px !important; } }
@media (min-width: 768px) { /* Set a 16px padding to all sides at the md breakpoint */
  .p-md-3 { padding: 16px !important; }
  /* Set a 16px padding to the top at the md breakpoint */
  .pt-md-3 { padding-top: 16px !important; }
  /* Set a 16px padding to the right at the md breakpoint */
  .pr-md-3 { padding-right: 16px !important; }
  /* Set a 16px padding to the bottom at the md breakpoint */
  .pb-md-3 { padding-bottom: 16px !important; }
  /* Set a 16px padding to the left at the md breakpoint */
  .pl-md-3 { padding-left: 16px !important; }
  /* Set a 16px padding to the left & right at the md breakpoint */
  .px-md-3 { padding-right: 16px !important; padding-left: 16px !important; }
  /* Set a 16px padding to the top & bottom at the md breakpoint */
  .py-md-3 { padding-top: 16px !important; padding-bottom: 16px !important; } }
@media (min-width: 768px) { /* Set a 24px padding to all sides at the md breakpoint */
  .p-md-4 { padding: 24px !important; }
  /* Set a 24px padding to the top at the md breakpoint */
  .pt-md-4 { padding-top: 24px !important; }
  /* Set a 24px padding to the right at the md breakpoint */
  .pr-md-4 { padding-right: 24px !important; }
  /* Set a 24px padding to the bottom at the md breakpoint */
  .pb-md-4 { padding-bottom: 24px !important; }
  /* Set a 24px padding to the left at the md breakpoint */
  .pl-md-4 { padding-left: 24px !important; }
  /* Set a 24px padding to the left & right at the md breakpoint */
  .px-md-4 { padding-right: 24px !important; padding-left: 24px !important; }
  /* Set a 24px padding to the top & bottom at the md breakpoint */
  .py-md-4 { padding-top: 24px !important; padding-bottom: 24px !important; } }
@media (min-width: 768px) { /* Set a 32px padding to all sides at the md breakpoint */
  .p-md-5 { padding: 32px !important; }
  /* Set a 32px padding to the top at the md breakpoint */
  .pt-md-5 { padding-top: 32px !important; }
  /* Set a 32px padding to the right at the md breakpoint */
  .pr-md-5 { padding-right: 32px !important; }
  /* Set a 32px padding to the bottom at the md breakpoint */
  .pb-md-5 { padding-bottom: 32px !important; }
  /* Set a 32px padding to the left at the md breakpoint */
  .pl-md-5 { padding-left: 32px !important; }
  /* Set a 32px padding to the left & right at the md breakpoint */
  .px-md-5 { padding-right: 32px !important; padding-left: 32px !important; }
  /* Set a 32px padding to the top & bottom at the md breakpoint */
  .py-md-5 { padding-top: 32px !important; padding-bottom: 32px !important; } }
@media (min-width: 768px) { /* Set a 40px padding to all sides at the md breakpoint */
  .p-md-6 { padding: 40px !important; }
  /* Set a 40px padding to the top at the md breakpoint */
  .pt-md-6 { padding-top: 40px !important; }
  /* Set a 40px padding to the right at the md breakpoint */
  .pr-md-6 { padding-right: 40px !important; }
  /* Set a 40px padding to the bottom at the md breakpoint */
  .pb-md-6 { padding-bottom: 40px !important; }
  /* Set a 40px padding to the left at the md breakpoint */
  .pl-md-6 { padding-left: 40px !important; }
  /* Set a 40px padding to the left & right at the md breakpoint */
  .px-md-6 { padding-right: 40px !important; padding-left: 40px !important; }
  /* Set a 40px padding to the top & bottom at the md breakpoint */
  .py-md-6 { padding-top: 40px !important; padding-bottom: 40px !important; } }
@media (min-width: 1012px) { /* Set a 0 padding to all sides at the lg breakpoint */
  .p-lg-0 { padding: 0 !important; }
  /* Set a 0 padding to the top at the lg breakpoint */
  .pt-lg-0 { padding-top: 0 !important; }
  /* Set a 0 padding to the right at the lg breakpoint */
  .pr-lg-0 { padding-right: 0 !important; }
  /* Set a 0 padding to the bottom at the lg breakpoint */
  .pb-lg-0 { padding-bottom: 0 !important; }
  /* Set a 0 padding to the left at the lg breakpoint */
  .pl-lg-0 { padding-left: 0 !important; }
  /* Set a 0 padding to the left & right at the lg breakpoint */
  .px-lg-0 { padding-right: 0 !important; padding-left: 0 !important; }
  /* Set a 0 padding to the top & bottom at the lg breakpoint */
  .py-lg-0 { padding-top: 0 !important; padding-bottom: 0 !important; } }
@media (min-width: 1012px) { /* Set a 4px padding to all sides at the lg breakpoint */
  .p-lg-1 { padding: 4px !important; }
  /* Set a 4px padding to the top at the lg breakpoint */
  .pt-lg-1 { padding-top: 4px !important; }
  /* Set a 4px padding to the right at the lg breakpoint */
  .pr-lg-1 { padding-right: 4px !important; }
  /* Set a 4px padding to the bottom at the lg breakpoint */
  .pb-lg-1 { padding-bottom: 4px !important; }
  /* Set a 4px padding to the left at the lg breakpoint */
  .pl-lg-1 { padding-left: 4px !important; }
  /* Set a 4px padding to the left & right at the lg breakpoint */
  .px-lg-1 { padding-right: 4px !important; padding-left: 4px !important; }
  /* Set a 4px padding to the top & bottom at the lg breakpoint */
  .py-lg-1 { padding-top: 4px !important; padding-bottom: 4px !important; } }
@media (min-width: 1012px) { /* Set a 8px padding to all sides at the lg breakpoint */
  .p-lg-2 { padding: 8px !important; }
  /* Set a 8px padding to the top at the lg breakpoint */
  .pt-lg-2 { padding-top: 8px !important; }
  /* Set a 8px padding to the right at the lg breakpoint */
  .pr-lg-2 { padding-right: 8px !important; }
  /* Set a 8px padding to the bottom at the lg breakpoint */
  .pb-lg-2 { padding-bottom: 8px !important; }
  /* Set a 8px padding to the left at the lg breakpoint */
  .pl-lg-2 { padding-left: 8px !important; }
  /* Set a 8px padding to the left & right at the lg breakpoint */
  .px-lg-2 { padding-right: 8px !important; padding-left: 8px !important; }
  /* Set a 8px padding to the top & bottom at the lg breakpoint */
  .py-lg-2 { padding-top: 8px !important; padding-bottom: 8px !important; } }
@media (min-width: 1012px) { /* Set a 16px padding to all sides at the lg breakpoint */
  .p-lg-3 { padding: 16px !important; }
  /* Set a 16px padding to the top at the lg breakpoint */
  .pt-lg-3 { padding-top: 16px !important; }
  /* Set a 16px padding to the right at the lg breakpoint */
  .pr-lg-3 { padding-right: 16px !important; }
  /* Set a 16px padding to the bottom at the lg breakpoint */
  .pb-lg-3 { padding-bottom: 16px !important; }
  /* Set a 16px padding to the left at the lg breakpoint */
  .pl-lg-3 { padding-left: 16px !important; }
  /* Set a 16px padding to the left & right at the lg breakpoint */
  .px-lg-3 { padding-right: 16px !important; padding-left: 16px !important; }
  /* Set a 16px padding to the top & bottom at the lg breakpoint */
  .py-lg-3 { padding-top: 16px !important; padding-bottom: 16px !important; } }
@media (min-width: 1012px) { /* Set a 24px padding to all sides at the lg breakpoint */
  .p-lg-4 { padding: 24px !important; }
  /* Set a 24px padding to the top at the lg breakpoint */
  .pt-lg-4 { padding-top: 24px !important; }
  /* Set a 24px padding to the right at the lg breakpoint */
  .pr-lg-4 { padding-right: 24px !important; }
  /* Set a 24px padding to the bottom at the lg breakpoint */
  .pb-lg-4 { padding-bottom: 24px !important; }
  /* Set a 24px padding to the left at the lg breakpoint */
  .pl-lg-4 { padding-left: 24px !important; }
  /* Set a 24px padding to the left & right at the lg breakpoint */
  .px-lg-4 { padding-right: 24px !important; padding-left: 24px !important; }
  /* Set a 24px padding to the top & bottom at the lg breakpoint */
  .py-lg-4 { padding-top: 24px !important; padding-bottom: 24px !important; } }
@media (min-width: 1012px) { /* Set a 32px padding to all sides at the lg breakpoint */
  .p-lg-5 { padding: 32px !important; }
  /* Set a 32px padding to the top at the lg breakpoint */
  .pt-lg-5 { padding-top: 32px !important; }
  /* Set a 32px padding to the right at the lg breakpoint */
  .pr-lg-5 { padding-right: 32px !important; }
  /* Set a 32px padding to the bottom at the lg breakpoint */
  .pb-lg-5 { padding-bottom: 32px !important; }
  /* Set a 32px padding to the left at the lg breakpoint */
  .pl-lg-5 { padding-left: 32px !important; }
  /* Set a 32px padding to the left & right at the lg breakpoint */
  .px-lg-5 { padding-right: 32px !important; padding-left: 32px !important; }
  /* Set a 32px padding to the top & bottom at the lg breakpoint */
  .py-lg-5 { padding-top: 32px !important; padding-bottom: 32px !important; } }
@media (min-width: 1012px) { /* Set a 40px padding to all sides at the lg breakpoint */
  .p-lg-6 { padding: 40px !important; }
  /* Set a 40px padding to the top at the lg breakpoint */
  .pt-lg-6 { padding-top: 40px !important; }
  /* Set a 40px padding to the right at the lg breakpoint */
  .pr-lg-6 { padding-right: 40px !important; }
  /* Set a 40px padding to the bottom at the lg breakpoint */
  .pb-lg-6 { padding-bottom: 40px !important; }
  /* Set a 40px padding to the left at the lg breakpoint */
  .pl-lg-6 { padding-left: 40px !important; }
  /* Set a 40px padding to the left & right at the lg breakpoint */
  .px-lg-6 { padding-right: 40px !important; padding-left: 40px !important; }
  /* Set a 40px padding to the top & bottom at the lg breakpoint */
  .py-lg-6 { padding-top: 40px !important; padding-bottom: 40px !important; } }
@media (min-width: 1280px) { /* Set a 0 padding to all sides at the xl breakpoint */
  .p-xl-0 { padding: 0 !important; }
  /* Set a 0 padding to the top at the xl breakpoint */
  .pt-xl-0 { padding-top: 0 !important; }
  /* Set a 0 padding to the right at the xl breakpoint */
  .pr-xl-0 { padding-right: 0 !important; }
  /* Set a 0 padding to the bottom at the xl breakpoint */
  .pb-xl-0 { padding-bottom: 0 !important; }
  /* Set a 0 padding to the left at the xl breakpoint */
  .pl-xl-0 { padding-left: 0 !important; }
  /* Set a 0 padding to the left & right at the xl breakpoint */
  .px-xl-0 { padding-right: 0 !important; padding-left: 0 !important; }
  /* Set a 0 padding to the top & bottom at the xl breakpoint */
  .py-xl-0 { padding-top: 0 !important; padding-bottom: 0 !important; } }
@media (min-width: 1280px) { /* Set a 4px padding to all sides at the xl breakpoint */
  .p-xl-1 { padding: 4px !important; }
  /* Set a 4px padding to the top at the xl breakpoint */
  .pt-xl-1 { padding-top: 4px !important; }
  /* Set a 4px padding to the right at the xl breakpoint */
  .pr-xl-1 { padding-right: 4px !important; }
  /* Set a 4px padding to the bottom at the xl breakpoint */
  .pb-xl-1 { padding-bottom: 4px !important; }
  /* Set a 4px padding to the left at the xl breakpoint */
  .pl-xl-1 { padding-left: 4px !important; }
  /* Set a 4px padding to the left & right at the xl breakpoint */
  .px-xl-1 { padding-right: 4px !important; padding-left: 4px !important; }
  /* Set a 4px padding to the top & bottom at the xl breakpoint */
  .py-xl-1 { padding-top: 4px !important; padding-bottom: 4px !important; } }
@media (min-width: 1280px) { /* Set a 8px padding to all sides at the xl breakpoint */
  .p-xl-2 { padding: 8px !important; }
  /* Set a 8px padding to the top at the xl breakpoint */
  .pt-xl-2 { padding-top: 8px !important; }
  /* Set a 8px padding to the right at the xl breakpoint */
  .pr-xl-2 { padding-right: 8px !important; }
  /* Set a 8px padding to the bottom at the xl breakpoint */
  .pb-xl-2 { padding-bottom: 8px !important; }
  /* Set a 8px padding to the left at the xl breakpoint */
  .pl-xl-2 { padding-left: 8px !important; }
  /* Set a 8px padding to the left & right at the xl breakpoint */
  .px-xl-2 { padding-right: 8px !important; padding-left: 8px !important; }
  /* Set a 8px padding to the top & bottom at the xl breakpoint */
  .py-xl-2 { padding-top: 8px !important; padding-bottom: 8px !important; } }
@media (min-width: 1280px) { /* Set a 16px padding to all sides at the xl breakpoint */
  .p-xl-3 { padding: 16px !important; }
  /* Set a 16px padding to the top at the xl breakpoint */
  .pt-xl-3 { padding-top: 16px !important; }
  /* Set a 16px padding to the right at the xl breakpoint */
  .pr-xl-3 { padding-right: 16px !important; }
  /* Set a 16px padding to the bottom at the xl breakpoint */
  .pb-xl-3 { padding-bottom: 16px !important; }
  /* Set a 16px padding to the left at the xl breakpoint */
  .pl-xl-3 { padding-left: 16px !important; }
  /* Set a 16px padding to the left & right at the xl breakpoint */
  .px-xl-3 { padding-right: 16px !important; padding-left: 16px !important; }
  /* Set a 16px padding to the top & bottom at the xl breakpoint */
  .py-xl-3 { padding-top: 16px !important; padding-bottom: 16px !important; } }
@media (min-width: 1280px) { /* Set a 24px padding to all sides at the xl breakpoint */
  .p-xl-4 { padding: 24px !important; }
  /* Set a 24px padding to the top at the xl breakpoint */
  .pt-xl-4 { padding-top: 24px !important; }
  /* Set a 24px padding to the right at the xl breakpoint */
  .pr-xl-4 { padding-right: 24px !important; }
  /* Set a 24px padding to the bottom at the xl breakpoint */
  .pb-xl-4 { padding-bottom: 24px !important; }
  /* Set a 24px padding to the left at the xl breakpoint */
  .pl-xl-4 { padding-left: 24px !important; }
  /* Set a 24px padding to the left & right at the xl breakpoint */
  .px-xl-4 { padding-right: 24px !important; padding-left: 24px !important; }
  /* Set a 24px padding to the top & bottom at the xl breakpoint */
  .py-xl-4 { padding-top: 24px !important; padding-bottom: 24px !important; } }
@media (min-width: 1280px) { /* Set a 32px padding to all sides at the xl breakpoint */
  .p-xl-5 { padding: 32px !important; }
  /* Set a 32px padding to the top at the xl breakpoint */
  .pt-xl-5 { padding-top: 32px !important; }
  /* Set a 32px padding to the right at the xl breakpoint */
  .pr-xl-5 { padding-right: 32px !important; }
  /* Set a 32px padding to the bottom at the xl breakpoint */
  .pb-xl-5 { padding-bottom: 32px !important; }
  /* Set a 32px padding to the left at the xl breakpoint */
  .pl-xl-5 { padding-left: 32px !important; }
  /* Set a 32px padding to the left & right at the xl breakpoint */
  .px-xl-5 { padding-right: 32px !important; padding-left: 32px !important; }
  /* Set a 32px padding to the top & bottom at the xl breakpoint */
  .py-xl-5 { padding-top: 32px !important; padding-bottom: 32px !important; } }
@media (min-width: 1280px) { /* Set a 40px padding to all sides at the xl breakpoint */
  .p-xl-6 { padding: 40px !important; }
  /* Set a 40px padding to the top at the xl breakpoint */
  .pt-xl-6 { padding-top: 40px !important; }
  /* Set a 40px padding to the right at the xl breakpoint */
  .pr-xl-6 { padding-right: 40px !important; }
  /* Set a 40px padding to the bottom at the xl breakpoint */
  .pb-xl-6 { padding-bottom: 40px !important; }
  /* Set a 40px padding to the left at the xl breakpoint */
  .pl-xl-6 { padding-left: 40px !important; }
  /* Set a 40px padding to the left & right at the xl breakpoint */
  .px-xl-6 { padding-right: 40px !important; padding-left: 40px !important; }
  /* Set a 40px padding to the top & bottom at the xl breakpoint */
  .py-xl-6 { padding-top: 40px !important; padding-bottom: 40px !important; } }
/* Set the font size to 26px */
.h1 { font-size: 26px !important; }
@media (min-width: 768px) { .h1 { font-size: 32px !important; } }

/* Set the font size to 22px */
.h2 { font-size: 22px !important; }
@media (min-width: 768px) { .h2 { font-size: 24px !important; } }

/* Set the font size to 18px */
.h3 { font-size: 18px !important; }
@media (min-width: 768px) { .h3 { font-size: 20px !important; } }

/* Set the font size to 16px */
.h4 { font-size: 16px !important; }
@media (min-width: 768px) { .h4 { font-size: 16px !important; } }

/* Set the font size to 14px */
.h5 { font-size: 14px !important; }

/* Set the font size to 12px */
.h6 { font-size: 12px !important; }

.h1, .h2, .h3, .h4, .h5, .h6 { font-weight: 600 !important; }

/* Set the font size to 26px */
.f1 { font-size: 26px !important; }
@media (min-width: 768px) { .f1 { font-size: 32px !important; } }

/* Set the font size to 22px */
.f2 { font-size: 22px !important; }
@media (min-width: 768px) { .f2 { font-size: 24px !important; } }

/* Set the font size to 18px */
.f3 { font-size: 18px !important; }
@media (min-width: 768px) { .f3 { font-size: 20px !important; } }

/* Set the font size to 16px */
.f4 { font-size: 16px !important; }
@media (min-width: 768px) { .f4 { font-size: 16px !important; } }

/* Set the font size to 14px */
.f5 { font-size: 14px !important; }

/* Set the font size to 12px */
.f6 { font-size: 12px !important; }

/* Set the font size to 40px and weight to light */
.f00-light { font-size: 40px !important; font-weight: 300 !important; }
@media (min-width: 768px) { .f00-light { font-size: 48px !important; } }

/* Set the font size to 32px and weight to light */
.f0-light { font-size: 32px !important; font-weight: 300 !important; }
@media (min-width: 768px) { .f0-light { font-size: 40px !important; } }

/* Set the font size to 26px and weight to light */
.f1-light { font-size: 26px !important; font-weight: 300 !important; }
@media (min-width: 768px) { .f1-light { font-size: 32px !important; } }

/* Set the font size to 22px and weight to light */
.f2-light { font-size: 22px !important; font-weight: 300 !important; }
@media (min-width: 768px) { .f2-light { font-size: 24px !important; } }

/* Set the font size to 18px and weight to light */
.f3-light { font-size: 18px !important; font-weight: 300 !important; }
@media (min-width: 768px) { .f3-light { font-size: 20px !important; } }

/* Set the font size to ${#h6-size} */
.text-small { font-size: 12px !important; }

/* Large leading paragraphs */
.lead { margin-bottom: 30px; font-size: 20px; font-weight: 300; color: #555; }

/* Set the line height to ultra condensed */
.lh-condensed-ultra { line-height: 1 !important; }

/* Set the line height to condensed */
.lh-condensed { line-height: 1.25 !important; }

/* Set the line height to default */
.lh-default { line-height: 1.5 !important; }

/* Text align to the right */
.text-right { text-align: right !important; }

/* Text align to the left */
.text-left { text-align: left !important; }

/* Text align to the center */
.text-center { text-align: center !important; }

@media (min-width: 544px) { .text-sm-right { text-align: right !important; }
  .text-sm-left { text-align: left !important; }
  .text-sm-center { text-align: center !important; } }
@media (min-width: 768px) { .text-md-right { text-align: right !important; }
  .text-md-left { text-align: left !important; }
  .text-md-center { text-align: center !important; } }
@media (min-width: 1012px) { .text-lg-right { text-align: right !important; }
  .text-lg-left { text-align: left !important; }
  .text-lg-center { text-align: center !important; } }
@media (min-width: 1280px) { .text-xl-right { text-align: right !important; }
  .text-xl-left { text-align: left !important; }
  .text-xl-center { text-align: center !important; } }
/* Set the font weight to normal */
.text-normal { font-weight: normal !important; }

/* Set the font weight to bold */
.text-bold { font-weight: 600 !important; }

/* Set the font to italic */
.text-italic { font-style: italic !important; }

/* Make text uppercase */
.text-uppercase { text-transform: uppercase !important; }

/* Underline text */
.no-underline { text-decoration: none !important; }

/* Don't wrap white space */
.no-wrap { white-space: nowrap !important; }

/* Allow long lines with no spaces to line break */
.wb-break-all { word-break: break-all !important; }

.text-emphasized { font-weight: 600; color: #333; }

.list-style-none { list-style: none !important; }

/* Add a dark text shadow */
.text-shadow-dark { text-shadow: 0 1px 1px rgba(0, 0, 0, 0.25), 0 1px 25px rgba(0, 0, 0, 0.75); }

/* Add a light text shadow */
.text-shadow-light { text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5); }

/* Visibility hidden */
.v-hidden { visibility: hidden !important; }

/* Visibility visible */
.v-visible { visibility: visible !important; }

/* Set the display to table */
.d-table { display: table !important; }

/* Set the display to table-cell */
.d-table-cell { display: table-cell !important; }

/* Set the table-layout to fixed */
.table-fixed { table-layout: fixed !important; }

/* Set the display to block */
.d-block { display: block !important; }

/* Set the display to inline */
.d-inline { display: inline !important; }

/* Set the display to inline-block */
.d-inline-block { display: inline-block !important; }

/* Set the display to none */
.d-none { display: none !important; }

@media (min-width: 544px) { /* Set the display to table at the sm breakpoint */
  .d-sm-table { display: table !important; }
  /* Set the display to table cell at the sm breakpoint */
  .d-sm-table-cell { display: table-cell !important; }
  /* Set the display to block at the sm breakpoint */
  .d-sm-block { display: block !important; }
  /* Set the display to inline at the sm breakpoint */
  .d-sm-inline { display: inline !important; }
  /* Set the display to inline block at the sm breakpoint */
  .d-sm-inline-block { display: inline-block !important; }
  /* Set the display to none at the sm breakpoint */
  .d-sm-none { display: none !important; } }
@media (min-width: 768px) { /* Set the display to table at the md breakpoint */
  .d-md-table { display: table !important; }
  /* Set the display to table cell at the md breakpoint */
  .d-md-table-cell { display: table-cell !important; }
  /* Set the display to block at the md breakpoint */
  .d-md-block { display: block !important; }
  /* Set the display to inline at the md breakpoint */
  .d-md-inline { display: inline !important; }
  /* Set the display to inline block at the md breakpoint */
  .d-md-inline-block { display: inline-block !important; }
  /* Set the display to none at the md breakpoint */
  .d-md-none { display: none !important; } }
@media (min-width: 1012px) { /* Set the display to table at the lg breakpoint */
  .d-lg-table { display: table !important; }
  /* Set the display to table cell at the lg breakpoint */
  .d-lg-table-cell { display: table-cell !important; }
  /* Set the display to block at the lg breakpoint */
  .d-lg-block { display: block !important; }
  /* Set the display to inline at the lg breakpoint */
  .d-lg-inline { display: inline !important; }
  /* Set the display to inline block at the lg breakpoint */
  .d-lg-inline-block { display: inline-block !important; }
  /* Set the display to none at the lg breakpoint */
  .d-lg-none { display: none !important; } }
@media (min-width: 1280px) { /* Set the display to table at the xl breakpoint */
  .d-xl-table { display: table !important; }
  /* Set the display to table cell at the xl breakpoint */
  .d-xl-table-cell { display: table-cell !important; }
  /* Set the display to block at the xl breakpoint */
  .d-xl-block { display: block !important; }
  /* Set the display to inline at the xl breakpoint */
  .d-xl-inline { display: inline !important; }
  /* Set the display to inline block at the xl breakpoint */
  .d-xl-inline-block { display: inline-block !important; }
  /* Set the display to none at the xl breakpoint */
  .d-xl-none { display: none !important; } }
@media (max-width: 544px) { .hide-sm { display: none !important; } }
@media (min-width: 544px) and (max-width: 768px) { .hide-md { display: none !important; } }
@media (min-width: 768px) and (max-width: 1012px) { .hide-lg { display: none !important; } }
@media (min-width: 1012px) { .hide-xl { display: none !important; } }
.container { width: 980px; margin-right: auto; margin-left: auto; }
.container::before { display: table; content: ""; }
.container::after { display: table; clear: both; content: ""; }

.container-md { max-width: 768px; margin-right: auto; margin-left: auto; }
.container-md::before { display: table; content: ""; }
.container-md::after { display: table; clear: both; content: ""; }

.container-lg { max-width: 1012px; margin-right: auto; margin-left: auto; }
.container-lg::before { display: table; content: ""; }
.container-lg::after { display: table; clear: both; content: ""; }

.container-xl { max-width: 1280px; margin-right: auto; margin-left: auto; }
.container-xl::before { display: table; content: ""; }
.container-xl::after { display: table; clear: both; content: ""; }

.columns { margin-right: -10px; margin-left: -10px; }
.columns::before { display: table; content: ""; }
.columns::after { display: table; clear: both; content: ""; }

.column { float: left; padding-right: 10px; padding-left: 10px; }

.one-third { width: 33.333333%; }

.two-thirds { width: 66.666667%; }

.one-fourth { width: 25%; }

.one-half { width: 50%; }

.three-fourths { width: 75%; }

.one-fifth { width: 20%; }

.four-fifths { width: 80%; }

.single-column { padding-right: 10px; padding-left: 10px; }

.table-column { display: table-cell; width: 1%; padding-right: 10px; padding-left: 10px; vertical-align: top; }

.centered { display: block; float: none; margin-right: auto; margin-left: auto; }

.col-1 { width: 8.33333%; }

.col-2 { width: 16.66667%; }

.col-3 { width: 25%; }

.col-4 { width: 33.33333%; }

.col-5 { width: 41.66667%; }

.col-6 { width: 50%; }

.col-7 { width: 58.33333%; }

.col-8 { width: 66.66667%; }

.col-9 { width: 75%; }

.col-10 { width: 83.33333%; }

.col-11 { width: 91.66667%; }

.col-12 { width: 100%; }

@media (min-width: 544px) { .col-sm-1 { width: 8.33333%; }
  .col-sm-2 { width: 16.66667%; }
  .col-sm-3 { width: 25%; }
  .col-sm-4 { width: 33.33333%; }
  .col-sm-5 { width: 41.66667%; }
  .col-sm-6 { width: 50%; }
  .col-sm-7 { width: 58.33333%; }
  .col-sm-8 { width: 66.66667%; }
  .col-sm-9 { width: 75%; }
  .col-sm-10 { width: 83.33333%; }
  .col-sm-11 { width: 91.66667%; }
  .col-sm-12 { width: 100%; } }
@media (min-width: 768px) { .col-md-1 { width: 8.33333%; }
  .col-md-2 { width: 16.66667%; }
  .col-md-3 { width: 25%; }
  .col-md-4 { width: 33.33333%; }
  .col-md-5 { width: 41.66667%; }
  .col-md-6 { width: 50%; }
  .col-md-7 { width: 58.33333%; }
  .col-md-8 { width: 66.66667%; }
  .col-md-9 { width: 75%; }
  .col-md-10 { width: 83.33333%; }
  .col-md-11 { width: 91.66667%; }
  .col-md-12 { width: 100%; } }
@media (min-width: 1012px) { .col-lg-1 { width: 8.33333%; }
  .col-lg-2 { width: 16.66667%; }
  .col-lg-3 { width: 25%; }
  .col-lg-4 { width: 33.33333%; }
  .col-lg-5 { width: 41.66667%; }
  .col-lg-6 { width: 50%; }
  .col-lg-7 { width: 58.33333%; }
  .col-lg-8 { width: 66.66667%; }
  .col-lg-9 { width: 75%; }
  .col-lg-10 { width: 83.33333%; }
  .col-lg-11 { width: 91.66667%; }
  .col-lg-12 { width: 100%; } }
@media (min-width: 1280px) { .col-xl-1 { width: 8.33333%; }
  .col-xl-2 { width: 16.66667%; }
  .col-xl-3 { width: 25%; }
  .col-xl-4 { width: 33.33333%; }
  .col-xl-5 { width: 41.66667%; }
  .col-xl-6 { width: 50%; }
  .col-xl-7 { width: 58.33333%; }
  .col-xl-8 { width: 66.66667%; }
  .col-xl-9 { width: 75%; }
  .col-xl-10 { width: 83.33333%; }
  .col-xl-11 { width: 91.66667%; }
  .col-xl-12 { width: 100%; } }
.gut-sm { margin-right: -8px; margin-left: -8px; }
.gut-sm > [class*="col-"] { padding-right: 8px !important; padding-left: 8px !important; }

.gut-md { margin-right: -16px; margin-left: -16px; }
.gut-md > [class*="col-"] { padding-right: 16px !important; padding-left: 16px !important; }

.gut-lg { margin-right: -24px; margin-left: -24px; }
.gut-lg > [class*="col-"] { padding-right: 24px !important; padding-left: 24px !important; }

.offset-1 { margin-left: 8.33333%; }

.offset-2 { margin-left: 16.66667%; }

.offset-3 { margin-left: 25%; }

.offset-4 { margin-left: 33.33333%; }

.offset-5 { margin-left: 41.66667%; }

.offset-6 { margin-left: 50%; }

.offset-7 { margin-left: 58.33333%; }

.offset-8 { margin-left: 66.66667%; }

.offset-9 { margin-left: 75%; }

.offset-10 { margin-left: 83.33333%; }

.offset-11 { margin-left: 91.66667%; }

@media (min-width: 544px) { .offset-sm-1 { margin-left: 8.33333%; }
  .offset-sm-2 { margin-left: 16.66667%; }
  .offset-sm-3 { margin-left: 25%; }
  .offset-sm-4 { margin-left: 33.33333%; }
  .offset-sm-5 { margin-left: 41.66667%; }
  .offset-sm-6 { margin-left: 50%; }
  .offset-sm-7 { margin-left: 58.33333%; }
  .offset-sm-8 { margin-left: 66.66667%; }
  .offset-sm-9 { margin-left: 75%; }
  .offset-sm-10 { margin-left: 83.33333%; }
  .offset-sm-11 { margin-left: 91.66667%; } }
@media (min-width: 768px) { .offset-md-1 { margin-left: 8.33333%; }
  .offset-md-2 { margin-left: 16.66667%; }
  .offset-md-3 { margin-left: 25%; }
  .offset-md-4 { margin-left: 33.33333%; }
  .offset-md-5 { margin-left: 41.66667%; }
  .offset-md-6 { margin-left: 50%; }
  .offset-md-7 { margin-left: 58.33333%; }
  .offset-md-8 { margin-left: 66.66667%; }
  .offset-md-9 { margin-left: 75%; }
  .offset-md-10 { margin-left: 83.33333%; }
  .offset-md-11 { margin-left: 91.66667%; } }
@media (min-width: 1012px) { .offset-lg-1 { margin-left: 8.33333%; }
  .offset-lg-2 { margin-left: 16.66667%; }
  .offset-lg-3 { margin-left: 25%; }
  .offset-lg-4 { margin-left: 33.33333%; }
  .offset-lg-5 { margin-left: 41.66667%; }
  .offset-lg-6 { margin-left: 50%; }
  .offset-lg-7 { margin-left: 58.33333%; }
  .offset-lg-8 { margin-left: 66.66667%; }
  .offset-lg-9 { margin-left: 75%; }
  .offset-lg-10 { margin-left: 83.33333%; }
  .offset-lg-11 { margin-left: 91.66667%; } }
@media (min-width: 1280px) { .offset-xl-1 { margin-left: 8.33333%; }
  .offset-xl-2 { margin-left: 16.66667%; }
  .offset-xl-3 { margin-left: 25%; }
  .offset-xl-4 { margin-left: 33.33333%; }
  .offset-xl-5 { margin-left: 41.66667%; }
  .offset-xl-6 { margin-left: 50%; }
  .offset-xl-7 { margin-left: 58.33333%; }
  .offset-xl-8 { margin-left: 66.66667%; }
  .offset-xl-9 { margin-left: 75%; }
  .offset-xl-10 { margin-left: 83.33333%; }
  .offset-xl-11 { margin-left: 91.66667%; } }
fieldset { padding: 0; margin: 0; border: 0; }

label { font-weight: 600; }

.form-control, .form-select { min-height: 34px; padding: 6px 8px; font-size: 14px; line-height: 20px; color: #333; vertical-align: middle; background-color: #fff; background-repeat: no-repeat; background-position: right 8px center; border: 1px solid #ddd; border-radius: 3px; outline: none; box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075); }
.form-control.focus, .form-control:focus, .form-select.focus, .form-select:focus { border-color: #51a7e8; outline: none; box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.075), 0 0 5px rgba(81, 167, 232, 0.5); }

.input-contrast { background-color: #fafafa; }
.input-contrast:focus { background-color: #fff; }

::placeholder { color: #999; }

.input-sm { min-height: 28px; padding-top: 3px; padding-bottom: 3px; font-size: 12px; line-height: 20px; }

.input-lg { padding: 4px 10px; font-size: 16px; }

.input-block { display: block; width: 100%; }

.input-monospace { font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; }

.input-hide-webkit-autofill::-webkit-contacts-auto-fill-button { position: absolute; right: 0; display: none !important; pointer-events: none; visibility: hidden; }

.form-checkbox { padding-left: 20px; margin: 15px 0; vertical-align: middle; }
.form-checkbox label em.highlight { position: relative; left: -4px; padding: 2px 4px; font-style: normal; background: #fffbdc; border-radius: 3px; }
.form-checkbox input[type=checkbox], .form-checkbox input[type=radio] { float: left; margin: 5px 0 0 -20px; vertical-align: middle; }
.form-checkbox .note { display: block; margin: 0; font-size: 12px; font-weight: normal; color: #666; }

.form-checkbox-details { display: none; }

.form-checkbox-details-trigger:checked ~ * .form-checkbox-details, .form-checkbox-details-trigger:checked ~ .form-checkbox-details { display: block; }

.hfields { margin: 15px 0; }
.hfields::before { display: table; content: ""; }
.hfields::after { display: table; clear: both; content: ""; }
.hfields .form-group { float: left; margin: 0 30px 0 0; }
.hfields .form-group dt label { display: inline-block; margin: 5px 0 0; color: #666; }
.hfields .form-group dt img { position: relative; top: -2px; }
.hfields .btn { float: left; margin: 28px 25px 0 -20px; }
.hfields .form-select { margin-top: 5px; }

input::-webkit-outer-spin-button, input::-webkit-inner-spin-button { margin: 0; appearance: none; }

.form-actions::before { display: table; content: ""; }
.form-actions::after { display: table; clear: both; content: ""; }
.form-actions .btn { float: right; }
.form-actions .btn + .btn { margin-right: 5px; }

.form-warning { padding: 8px 10px; margin: 10px 0; font-size: 14px; color: #4c4a42; background: #fff9ea; border: 1px solid #dfd8c2; border-radius: 3px; }
.form-warning p { margin: 0; line-height: 1.5; }
.form-warning a { font-weight: 600; }

.form-group { margin: 15px 0; }
.form-group .form-control { width: 440px; max-width: 100%; margin-right: 5px; background-color: #fafafa; }
.form-group .form-control:focus { background-color: #fff; }
.form-group .form-control.shorter { width: 130px; }
.form-group .form-control.short { width: 250px; }
.form-group .form-control.long { width: 100%; }
.form-group textarea.form-control { width: 100%; height: 200px; min-height: 200px; }
.form-group textarea.form-control.short { height: 50px; min-height: 50px; }
.form-group dt { margin: 0 0 6px; }
.form-group label { position: relative; }
.form-group.flattened dt { float: left; margin: 0; line-height: 32px; }
.form-group.flattened dd { line-height: 32px; }
.form-group dd h4 { margin: 4px 0 0; }
.form-group dd h4.is-error { color: #bd2c00; }
.form-group dd h4.is-success { color: #55a532; }
.form-group dd h4 + .note { margin-top: 0; }
.form-group.required dt label::after { padding-left: 5px; color: #bd2c00; content: "*"; }
.form-group .success, .form-group .error, .form-group .indicator { display: none; font-size: 12px; font-weight: 600; }
.form-group.loading { opacity: 0.5; }
.form-group.loading .indicator { display: inline; }
.form-group.loading .spinner { display: inline-block; vertical-align: middle; }
.form-group.successful .success { display: inline; color: #55a532; }
.form-group.warn .warning, .form-group.warn .error, .form-group.errored .warning, .form-group.errored .error { position: absolute; z-index: 10; display: inline-block; max-width: 450px; padding: 5px 8px; margin: 4px 0 0; font-size: 13px; font-weight: normal; border-style: solid; border-width: 1px; border-radius: 3px; }
.form-group.warn .warning::after, .form-group.warn .warning::before, .form-group.warn .error::after, .form-group.warn .error::before, .form-group.errored .warning::after, .form-group.errored .warning::before, .form-group.errored .error::after, .form-group.errored .error::before { position: absolute; bottom: 100%; left: 10px; z-index: 15; width: 0; height: 0; pointer-events: none; content: " "; border: solid transparent; }
.form-group.warn .warning::after, .form-group.warn .error::after, .form-group.errored .warning::after, .form-group.errored .error::after { border-width: 5px; }
.form-group.warn .warning::before, .form-group.warn .error::before, .form-group.errored .warning::before, .form-group.errored .error::before { margin-left: -1px; border-width: 6px; }
.form-group.warn .warning { color: #4c4a42; background-color: #fff9ea; border-color: #dfd8c2; }
.form-group.warn .warning::after { border-bottom-color: #fff9ea; }
.form-group.warn .warning::before { border-bottom-color: #dfd8c2; }
.form-group.errored label { color: #bd2c00; }
.form-group.errored .error { color: #911; background-color: #fcdede; border-color: #d2b2b2; }
.form-group.errored .error::after { border-bottom-color: #fcdede; }
.form-group.errored .error::before { border-bottom-color: #d2b2b2; }

.note { min-height: 17px; margin: 4px 0 2px; font-size: 12px; color: #767676; }
.note .spinner { margin-right: 3px; vertical-align: middle; }

dl.form-group > dd .form-control.is-autocheck-loading, dl.form-group > dd .form-control.is-autocheck-successful, dl.form-group > dd .form-control.is-autocheck-errored { padding-right: 30px; }
dl.form-group > dd .form-control.is-autocheck-loading { background-image: url("/images/spinners/octocat-spinner-16px.gif"); }
dl.form-group > dd .form-control.is-autocheck-successful { background-image: url("/images/modules/ajax/success.png"); }
dl.form-group > dd .form-control.is-autocheck-errored { background-image: url("/images/modules/ajax/error.png"); }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) { dl.form-group > dd .form-control.is-autocheck-loading, dl.form-group > dd .form-control.is-autocheck-successful, dl.form-group > dd .form-control.is-autocheck-errored { background-size: 16px 16px; }
  dl.form-group > dd .form-control.is-autocheck-loading { background-image: url("/images/spinners/octocat-spinner-32.gif"); }
  dl.form-group > dd .form-control.is-autocheck-successful { background-image: url("/images/modules/ajax/success@2x.png"); }
  dl.form-group > dd .form-control.is-autocheck-errored { background-image: url("/images/modules/ajax/error@2x.png"); } }
.form-cards { height: 31px; margin: 0 0 15px; }
.form-cards .card { float: left; width: 47px; height: 31px; text-indent: -9999px; background-image: url("/images/modules/pricing/credit-cards-@1x.png"); background-position: 0 0; opacity: 0.6; }
.form-cards .card.visa { background-position: 0 0; }
.form-cards .card.amex { background-position: -50px 0; }
.form-cards .card.mastercard { background-position: -100px 0; }
.form-cards .card.discover { background-position: -150px 0; }
.form-cards .card.jcb { background-position: -200px 0; }
.form-cards .card.dinersclub { background-position: -250px 0; }
.form-cards .card.enabled { opacity: 1; }
.form-cards .card.disabled { opacity: 0.2; }
.form-cards > .cards { margin: 0; }
.form-cards > .cards > li { float: left; margin: 0 4px 0 0; list-style-type: none; }
.form-cards > .cards > li.text { line-height: 31px; }

@media only screen and (-webkit-min-device-pixel-ratio: 2), only screen and (min--moz-device-pixel-ratio: 2), only screen and (-moz-min-device-pixel-ratio: 2), only screen and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-device-pixel-ratio: 2), only screen and (min-resolution: 192dpi), only screen and (min-resolution: 2dppx) { .form-cards > .cards .card { background-image: url("/images/modules/pricing/credit-cards-@2x.png"); background-size: 300px 31px; } }
.status-indicator { display: inline-block; width: 16px; height: 16px; margin-left: 5px; vertical-align: text-bottom; }
.status-indicator .octicon { display: none; }

.status-indicator-success::before { content: ""; }
.status-indicator-success .octicon-check { display: inline-block; color: #6cc644; fill: #6cc644; }
.status-indicator-success .octicon-x { display: none; }

.status-indicator-failed::before { content: ""; }
.status-indicator-failed .octicon-check { display: none; }
.status-indicator-failed .octicon-x { display: inline-block; color: #bd2c00; fill: #bd2c00; }

.status-indicator-loading { width: 16px; background: url("/images/spinners/octocat-spinner-32-EAF2F5.gif") 0 0 no-repeat; background-size: 16px; }

.inline-form { display: inline-block; }
.inline-form .btn-plain { background-color: transparent; border: 0; }

.drag-and-drop { padding: 7px 10px; margin: 0; font-size: 13px; line-height: 16px; color: #767676; background-color: #fafafa; border: 1px solid #ccc; border-top: 0; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px; }
.drag-and-drop .default, .drag-and-drop .loading, .drag-and-drop .error { display: none; }
.drag-and-drop .error { color: #bd2c00; }
.drag-and-drop img { vertical-align: top; }

.is-default .drag-and-drop .default { display: inline-block; }

.is-uploading .drag-and-drop .loading { display: inline-block; }

.is-bad-file .drag-and-drop .bad-file { display: inline-block; }

.is-duplicate-filename .drag-and-drop .duplicate-filename { display: inline-block; }

.is-too-big .drag-and-drop .too-big { display: inline-block; }

.is-hidden-file .drag-and-drop .hidden-file { display: inline-block; }

.is-empty .drag-and-drop .empty { display: inline-block; }

.is-bad-permissions .drag-and-drop .bad-permissions { display: inline-block; }

.is-repository-required .drag-and-drop .repository-required { display: inline-block; }

.drag-and-drop-error-info { font-weight: normal; color: #767676; }
.drag-and-drop-error-info a { color: #4078c0; }

.is-failed .drag-and-drop .failed-request { display: inline-block; }

.manual-file-chooser { position: absolute; width: 240px; padding: 5px; margin-left: -80px; cursor: pointer; opacity: 0.0001; }

.manual-file-chooser:hover + .manual-file-chooser-text { text-decoration: underline; }

.btn .manual-file-chooser { top: 0; padding: 0; line-height: 34px; }

.upload-enabled textarea { display: block; border-bottom: 1px dashed #ddd; border-bottom-right-radius: 0; border-bottom-left-radius: 0; }

.focused .drag-and-drop { border-color: #51a7e8; box-shadow: rgba(81, 167, 232, 0.5) 0 0 3px; }

.dragover textarea, .dragover .drag-and-drop { box-shadow: #c9ff00 0 0 3px; }

.write-content { position: relative; }

.previewable-comment-form { position: relative; }
.previewable-comment-form .tabnav { position: relative; padding: 8px 8px 0; }
.previewable-comment-form .comment { border: 1px solid #cacaca; }
.previewable-comment-form .comment-form-error { margin-bottom: 8px; }
.previewable-comment-form .write-content, .previewable-comment-form .preview-content { display: none; padding: 0 0 8px; margin: 0 8px; }
.previewable-comment-form.write-selected .write-content, .previewable-comment-form.preview-selected .preview-content { display: block; }
.previewable-comment-form textarea { display: block; width: 100%; min-height: 100px; max-height: 500px; padding: 8px; resize: vertical; }

.form-action-spacious { margin-top: 10px; }

div.composer { margin-top: 0; border: 0; }

.composer .comment-form-textarea { height: 200px; min-height: 200px; }

.composer .tabnav { margin: 0 0 10px; }

h2.account { margin: 15px 0 0; font-size: 18px; font-weight: normal; color: #666; }

p.explain { position: relative; font-size: 12px; color: #666; }
p.explain strong { color: #333; }
p.explain .octicon { margin-right: 5px; color: #bbb; }
p.explain .minibutton { top: -4px; float: right; }

.form-group label { position: static; }

html, body { height: 100%; }

body { background-color: #24292E; color: #FFF; }

canvas { position: absolute; left: 0; right: 0; top: 0; bottom: 0; opacity: 0.5; z-index: -1; }

h1 { font-weight: 300; line-height: 1em; }

p { margin: 12px 0; }

.screenshot { box-shadow: 0 0 40px rgba(0, 0, 0, 0.75); display: block; max-width: calc(100% + (-300px * -1)); height: auto; margin-left: -300px; width: calc(100% + (-300px * -1)); }

.github-mark { height: 50px; width: 50px; margin-bottom: 10px; }
.github-mark path { fill: #FFF; }

.cta-btn { margin-top: 6px; }

.btn { position: relative; display: inline-block; padding: 6px 12px; font-size: 14px; font-weight: 600; line-height: 20px; color: #333; white-space: nowrap; vertical-align: middle; cursor: pointer; user-select: none; background-color: #eee; background-image: linear-gradient(#fcfcfc, #eee); border: 1px solid #d5d5d5; border-radius: 3px; appearance: none; }
.btn:focus { text-decoration: none; border-color: #51a7e8; outline: none; box-shadow: 0 0 5px rgba(81, 167, 232, 0.5); }
.btn:focus:hover, .btn.selected:focus { border-color: #51a7e8; }
.btn:hover, .btn:active, .btn.zeroclipboard-is-hover, .btn.zeroclipboard-is-active { text-decoration: none; background-color: #ddd; background-image: linear-gradient(#eee, #ddd); border-color: #ccc; }
.btn:active, .btn.selected, .btn.zeroclipboard-is-active { background-color: #dcdcdc; background-image: none; border-color: #b5b5b5; box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15); }
.btn.selected:hover { background-color: #cfcfcf; }
.btn:disabled, .btn:disabled:hover, .btn.disabled, .btn.disabled:hover { color: rgba(102, 102, 102, 0.5); cursor: default; background-color: rgba(229, 229, 229, 0.5); background-image: none; border-color: rgba(197, 197, 197, 0.5); box-shadow: none; }

@keyframes spinup { from { opacity: 0; transform: rotateX(-20deg) translateY(20px); }
  to { transform: rotateX(0) translateY(0); opacity: 1; } }
.screenshot, .marketing-container { opacity: 0; }

.screenshot { animation: spinup 0.7s ease forwards; }

.marketing-container { animation: spinup 0.7s ease 0.5s forwards; }
