@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; }

/** px-layout styles */
.px-drawer-layout { display: block; position: relative; /* Hide the drawer-toggle button on large screens*/ }

.px-drawer-layout .header__menu { background: url('data:image/svg+xml;utf8, <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24"><path d="M0 0h24v24h-24z" fill="none"/><path d="M3 18h18v-2h-18v2zm0-5h18v-2h-18v2zm0-7v2h18v-2h-18z" fill="black"/></svg>') center center no-repeat; width: 30px; height: 30px; text-indent: -30000px; overflow: hidden; opacity: 0.54; -webkit-transition: opacity 0.333s cubic-bezier(0, 0, 0.21, 1); transition: opacity 0.333s cubic-bezier(0, 0, 0.21, 1); border: none; outline: none; cursor: pointer; }

.px-drawer-layout .header__menu:focus, .px-drawer-layout .header__menu:hover { opacity: 1; }

.px-drawer-layout .is-narrow { background: pink; padding: 0.5rem; }

.px-drawer-layout.has-navbar .drawer-spacer { min-height: 57px; }

.px-drawer-layout .has-navbar .l-drawer-layout__container { padding-top: 57px; }

.px-drawer-layout .l-drawer-layout { position: relative; -webkit-transition: all 0.3s; transition: all 0.3s; overflow: hidden; display: -webkit-box; display: -ms-flexbox; display: flex; }

.px-drawer-layout .l-drawer-layout__drawer { position: relative; height: auto; }

.px-drawer-layout .l-drawer-layout__container { position: relative; -webkit-box-flex: 1; -ms-flex: 1; flex: 1; }

.px-drawer-layout .l-drawer-layout__content { position: relative; height: 100%; }

.px-drawer-layout .l-drawer-layout__content:not(.is-narrow) [drawer-toggle] { display: none; }

.px-drawer-layout .l-drawer-layout__container:not(.is-narrow) [drawer-toggle] { display: none; }

.px-drawer-layout--is-narrow .l-drawer-layout__content { overflow: auto; top: 0; left: 0; position: fixed; }
