@charset "UTF-8";
/** A series of helper classes to use arbitrarily. Only use a helper class if an element/component doesn’t already have a class to which you could apply this styling, e.g. if you need to float `.main-nav` left then add `float:left;` to that ruleset as opposed to adding the `.float--left` class to the markup. A lot of these classes carry `!important` as you will always want them to win out over other selectors. */
/*------------------------------------*    #PX-COLORS-DESIGN
\*------------------------------------*/
/** Neutral Palette (gray20 is darkest, gray1 is lightest) */
/** Define grey = gray to avoid dev typos */
/** Actionable Palette */
/** Selection Palette */
/** Dark Actionable Palette */
/** Alerts and Status */
/** Data Visualization */
/** Orange */
/** Yellow */
/** Yellow Green */
/** Green */
/** Teal */
/** Aqua */
/** Cyan */
/** Blue */
/** Violet */
/** Purple */
/** Pink */
/** Red */
/** Brown */
/** Gray */
/** Define grey = gray to avoid dev typos */
/** Salmon */
/* Links ========================================================================== */
/** Remove the gray background color from active links in IE 10. */
a { background-color: transparent; /** Default link colors */ /** Improve readability when focused and also mouse hovered in all browsers. */ }

a:link, a:visited { color: #007acc; }

a:hover { color: #005c99; }

a:active { color: #003d66; }

a:active, a:hover { outline: 0; }

/** Add/remove floats */
.float--right { float: right !important; }

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

.float--none { float: none !important; }

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

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

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

/** Full height element */
.full-height { height: 100% !important; }

/** Add a help cursor to any element that gives the user extra information on `:hover`. */
.informative { cursor: help !important; }

/** Add a pointer cursor to any element, useful for on-click events */
.pointer { cursor: pointer !important; }

/** Mute an object by reducing its opacity. */
.muted { opacity: 0.5 !important; }

/** Align items to the right where they imply progression/movement forward, e.g.: <p class=proceed><a href=#>Read more...</a></p> */
.proceed { text-align: right !important; }

/** Apply capital case to an element (usually a `strong`). */
.caps { text-transform: uppercase !important; }

/** Hide visually and from screen readers: http://juicystudio.com/article/screen-readers-display-none.php */
.hidden { display: none !important; visibility: hidden; }

/** Hide content off-screen without resorting to `display:none;` */
.a11y, .visuallyhidden { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; }

.a11y.focusable:active, .a11y.focusable:focus, .visuallyhidden.focusable:active, .visuallyhidden.focusable:focus { position: static; overflow: visible; width: auto; height: auto; margin: 0; clip: auto; }

@media screen and (min-width: 45em) and (max-width: 63.9375em) { .a11y-lap, .visuallyhidden-lap { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media screen and (max-width: 63.9375em) { .a11y-portable, .visuallyhidden-portable { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media screen and (min-width: 64em) { .a11y-desk, .visuallyhidden-desk { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media screen and (max-width: 44.9375em) { .a11y-palm, .visuallyhidden-palm { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media screen and (min-width: 45em) { .a11y-lap-and-up, .visuallyhidden-lap-and-up { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media screen and (min-width: 64em) { .a11y-desk-and-up, .visuallyhidden-desk-and-up { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media screen and (min-width: 120em) { .a11y-large-and-up, .visuallyhidden-large-and-up { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi), (min-resolution: 2dppx) { .a11y-retina, .visuallyhidden-retina { position: absolute !important; overflow: hidden !important; width: 1px !important; height: 1px !important; margin: -1px !important; border: 0 !important; padding: 0 !important; clip: rect(0 0 0 0) !important; } }

/** Hide visually and from screen readers, but maintain layout */
.invisible { visibility: hidden !important; }

/** Truncate text with an ellipsis */
.truncate { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

/** Modal styles */
.px-modal .modal__backdrop { position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 900; background-color: var(--px-modal-overlay-color, rgba(0, 0, 0, 0.65)); -webkit-transition: var(--px-modal-overlay-transition, background-color 300ms cubic-bezier(0.78, 0.13, 0.16, 0.87) 0ms opacity); transition: var(--px-modal-overlay-transition, background-color 300ms cubic-bezier(0.78, 0.13, 0.16, 0.87) 0ms opacity); }

.px-modal .modal__backdrop--invisible { visibility: hidden; background-color: transparent; }

.px-modal .modal { position: absolute; z-index: 999; background-color: transparent; }

.px-modal .modal.invisible { visibility: hidden; }

.px-modal .modal.fadeout { -webkit-animation: fadeout 300ms cubic-bezier(0.78, 0.13, 0.16, 0.87); animation: fadeout 300ms cubic-bezier(0.78, 0.13, 0.16, 0.87); }

@-webkit-keyframes fadeout { from { opacity: 1;
    background-color: var(--px-modal-overlay-color, rgba(0, 0, 0, 0.65));
    visibility: visible; }
  to { opacity: 0;
    background-color: transparent;
    visibility: hidden; } }

@keyframes fadeout { from { opacity: 1;
    background-color: var(--px-modal-overlay-color, rgba(0, 0, 0, 0.65));
    visibility: visible; }
  to { opacity: 0;
    background-color: transparent;
    visibility: hidden; } }

.px-modal .modal__title { margin-bottom: 2rem; margin-top: 0; }

.px-modal .modal__content { position: fixed; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); z-index: auto; max-height: calc(100% - 2rem); max-width: calc(100% - 2rem); overflow: auto; white-space: normal; word-wrap: break-word; background-color: var(--px-modal-background-color, white); color: var(--px-modal-text-color, black); -webkit-box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.2); box-shadow: 0 6px 12px 0 rgba(0, 0, 0, 0.2); padding: 1rem; }

@media screen and (max-width: 44.9375em) { .px-modal .modal__content { width: 100%; } }

@media screen and (min-width: 45em) { .px-modal .modal__content { min-width: calculateRem(400px); } }

.px-modal .modal__buttons { margin-top: 2rem; border-top: 1px solid var(--px-modal-border-color, transparent); }

.px-modal .modal__buttons button:nth-last-of-type(2) { margin-right: 0.5rem; }
