/*! normalize.css v3.0.3 | MIT License | github.com/necolas/normalize.css */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS and IE text size adjust after device orientation change,
 *    without disabling user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}
/**
 * Remove default margin.
 */
body {
  margin: 0;
}
/* HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
}
/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
audio,
canvas,
progress,
video {
  display: inline-block;
  /* 1 */
  vertical-align: baseline;
  /* 2 */
}
/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0;
}
/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/10/11, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none;
}
/* Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background-color: transparent;
}
/**
 * Improve readability of focused elements when they are also in an
 * active/hover state.
 */
a:active,
a:hover {
  outline: 0;
}
/* Text-level semantics
   ========================================================================== */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted;
}
/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
b,
strong {
  font-weight: bold;
}
/**
 * Address styling not present in Safari and Chrome.
 */
dfn {
  font-style: italic;
}
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000;
}
/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%;
}
/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sup {
  top: -0.5em;
}
sub {
  bottom: -0.25em;
}
/* Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
img {
  border: 0;
}
/**
 * Correct overflow not hidden in IE 9/10/11.
 */
svg:not(:root) {
  overflow: hidden;
}
/* Grouping content
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
figure {
  margin: 1em 40px;
}
/**
 * Address differences between Firefox and other browsers.
 */
hr {
  box-sizing: content-box;
  height: 0;
}
/**
 * Contain overflow in all browsers.
 */
pre {
  overflow: auto;
}
/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
/* Forms
   ========================================================================== */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
button,
input,
optgroup,
select,
textarea {
  color: inherit;
  /* 1 */
  font: inherit;
  /* 2 */
  margin: 0;
  /* 3 */
}
/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
button {
  overflow: visible;
}
/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
button,
select {
  text-transform: none;
}
/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */
}
/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default;
}
/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}
/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
input {
  line-height: normal;
}
/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
input[type="checkbox"],
input[type="radio"] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome.
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  box-sizing: border-box;
  /* 2 */
}
/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}
/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */
}
/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
textarea {
  overflow: auto;
}
/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
optgroup {
  font-weight: bold;
}
/* Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
}
td,
th {
  padding: 0;
}
html {
  box-sizing: border-box;
  background: #fff;
}
html {
  --headerFluidBannerHeight: 64px;
  --headerStickyBannerHeight: 60px;
  --stickyZIndex: 7;
  scroll-padding-top: calc(var(--headerFluidBannerHeight, 0px) + var(--headerStickyBannerHeight, 0px));
  scroll-padding-bottom: var(--stickyBottomHeight, 0px);
}
@media only screen and (min-width: 1024px), print {
  html {
    scroll-padding-top: calc(var(--headerFluidBannerHeight, 0px) + var(--headerStickyBannerHeight, 0px) + var(--headerNoticesContainerHeight, 0px));
  }
}
*,
*::before,
*::after {
  box-sizing: inherit;
}
body {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-tap-highlight-color: transparent;
  background: #f5f5f5;
  font-family: 'Akkurat', sans-serif;
  color: #333;
  font-size: 16;
  touch-action: manipulation;
  -webkit-backface-visibility: hidden;
}
hr {
  border: none;
  border-bottom: 1px solid #00000026;
}
img {
  max-width: 100%;
}
a {
  color: inherit;
  text-decoration: none;
}
textarea {
  resize: vertical;
  min-height: 50px;
}
a:hover,
a:active,
button:hover,
button:active {
  outline: none;
}
button {
  border: 0;
  padding: 0;
  background: none;
}
button:not(.u-outlineDefault) {
  outline: none;
}
figure {
  width: 100%;
  margin: 0;
}
.browserupgrade {
  margin: 0;
  background: #00aa46;
  color: #fff;
  text-align: center;
}
#epi-quickNavigator {
  right: 0 !important;
  top: var(--headerFluidBannerHeight) !important;
}
@media only screen and (min-width: 1024px), print {
  #epi-quickNavigator {
    top: calc(var(--headerFluidBannerHeight) + var(--preHeaderHeight)) !important;
  }
}
#epi-quickNavigator .epi-quickNavigator-editLink {
  float: none;
}
#epi-quickNavigator .epi-quickNavigator-dropdown {
  display: none !important;
}
#epi-quickNavigator a > *:not(img) {
  display: none !important;
}
body {
  --headerZIndex: 7;
  --headerFluidZindex: calc(var(--headerZIndex) + 1);
}
body #react-query-devtools,
body #coop-dev-tool {
  position: relative;
  z-index: 20 !important;
}
body #radixPortal {
  position: relative;
  z-index: 16;
}
body #portal {
  position: relative;
  z-index: 15;
}
body #reactMicroApp {
  position: relative;
  z-index: 12;
}
body #municipalNotification {
  z-index: 9;
}
body #epi-quickNavigator {
  z-index: 7 !important;
}
body #skipLinkToContent {
  position: relative;
  z-index: calc(var(--headerZIndex) + 2);
}
body .HeaderNoticesContainer {
  z-index: calc(var(--headerZIndex) - 1);
}
body .StickyBottom {
  position: fixed;
  bottom: 0;
  z-index: var(--stickyZIndex);
}
@supports (position: -webkit-sticky) or (position: sticky) {
  body .StickyBottom {
    position: sticky;
  }
}
body #cmpboxrecall {
  z-index: 2 !important;
}
body ._hj_feedback_container {
  z-index: 2 !important;
}
body main {
  position: relative;
  z-index: 1 !important;
}
html,
body {
  overscroll-behavior: none;
}
/**
 * Vertical alignment utilities
 * Depends on an appropriate `display` value.
 */
.u-alignBaseline {
  vertical-align: baseline !important;
}
.u-alignBottom {
  vertical-align: bottom !important;
}
.u-alignMiddle {
  vertical-align: middle !important;
}
.u-alignTop {
  vertical-align: top !important;
}
.u-alignTextTop {
  vertical-align: text-top !important;
}
.u-alignCenter {
  margin-left: auto !important;
  margin-right: auto !important;
}
.u-alignVerticalMiddle {
  display: table;
  width: 100%;
  height: 100%;
}
.u-alignVerticalMiddle > div {
  display: table-cell;
  width: 100%;
  vertical-align: middle;
}
.u-alignVerticalTextBottom {
  vertical-align: text-bottom !important;
}
.u-animation--withMaxHeight {
  max-height: 0px;
  overflow: hidden;
  opacity: 0;
  transition: all 0.5s linear;
}
.u-animation--withMaxHeight.is-expanded {
  max-height: 600px;
  opacity: 1;
}
.u-animation--withMaxHeight.is-collapsing {
  max-height: 0px;
  opacity: 0;
}
.u-animation--withOpacity.fadeIn {
  animation: Animation-withOpacity-fadeIn 0.15s linear;
}
.u-animation--withOpacity.fadeOut {
  animation: Animation-withOpacity-fadeOut 0.15s linear;
}
@keyframes Animation-withOpacity-fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes Animation-withOpacity-fadeOut {
  0% {
    opacity: 1;
  }
  100% {
    opacity: 0;
  }
}
.u-borderBottomNone {
  border-bottom: none !important;
}
.u-borderLeftNone {
  border-left: none !important;
}
.u-borderAllNone {
  border: none !important;
}
.u-borderTopWhite {
  border-top: 1px solid #fff !important;
}
.u-borderTopGray {
  border-top: 1px solid #f5f5f5 !important;
}
.u-borderTopGray2 {
  border-top: 2px solid #f5f5f5 !important;
}
.u-borderTopGray3 {
  border-top: 2px solid #ededed !important;
}
.u-borderTopGray4 {
  border-top: 1px solid #00000026 !important;
}
.u-borderColorGreen {
  border: 1px solid #00aa46 !important;
}
.u-borderAllTransparent {
  border-top: 1px solid transparent !important;
  border-bottom: 1px solid transparent !important;
  border-left: 1px solid transparent !important;
  border-right: 1px solid transparent !important;
}
.u-borderBottomTransparent {
  border-bottom: 1px solid transparent !important;
}
.u-borderAll {
  border: 1px solid #ededed !important;
}
.u-borderAllGreen {
  border: 1px solid #00aa46 !important;
}
.u-borderAllHoverGreen:hover,
.u-borderAllHoverGreen:focus {
  border: 1px solid #00aa46 !important;
}
.u-borderAllGray {
  border: 1px solid #00000026 !important;
}
.u-borderAllGrayMedium {
  border: 1px solid #b6b4ad !important;
}
.u-borderAllGrayLight {
  border: 1px solid #f5f5f5 !important;
}
.u-borderAllGrayLight2 {
  border: 1px solid #ededed !important;
}
.u-borderAllGreenDark {
  border: 1px solid #005537 !important;
}
.u-borderAllGreenDarkFocus:focus {
  border: 1px solid #005537 !important;
}
.u-borderVertical {
  border-top: 1px solid #ededed !important;
  border-bottom: 1px solid #ededed !important;
}
.u-borderTop {
  border-top: 1px solid #ededed !important;
}
.u-borderRight {
  border-right: 1px solid #ededed !important;
}
.u-borderRight2 {
  border-right: 1px solid #999999 !important;
}
.u-borderBottom {
  border-bottom: 1px solid #ededed !important;
}
.u-borderBottomBase {
  border-bottom: 1px solid #333 !important;
}
.u-borderBottomGray {
  border-bottom: 1px solid #00000026 !important;
}
.u-borderBottomGrayLight {
  border-bottom: 1px solid #f5f5f5 !important;
}
.u-borderBottomGrayLightMd {
  border-bottom: 2px solid #f5f5f5 !important;
}
.u-borderBottomGrayLight3 {
  border-bottom: 1px solid #d7d7d7 !important;
}
.u-borderBottomGrayLight2 {
  border-bottom: 1px solid #ededed !important;
}
.u-borderBottom2 {
  border-bottom: 2px solid #ededed !important;
}
.u-borderBottom3 {
  border-bottom: 3px solid #ededed !important;
}
.u-borderRadiusFull {
  border-radius: 100% !important;
}
.u-borderRadiusNone {
  border-radius: 0 !important;
}
.u-borderRadiusHalf {
  border-radius: 50% !important;
}
.u-borderRadius4 {
  border-radius: 0.25rem !important;
}
.u-borderRadius8 {
  border-radius: 0.5rem !important;
}
.u-borderRadius12 {
  border-radius: 0.75rem !important;
}
.u-borderRadius20 {
  border-radius: 1.25rem !important;
}
.u-borderRadius2 {
  border-radius: 2px !important;
}
.u-borderRadiusTop8 {
  border-top-left-radius: 0.5rem !important;
  border-top-right-radius: 0.5rem !important;
}
.u-borderRadiusBottom8 {
  border-bottom-left-radius: 0.5rem !important;
  border-bottom-right-radius: 0.5rem !important;
}
@media only screen and (min-width: 600px), print {
  .u-sm-borderRight {
    border-right: 1px solid #ededed !important;
  }
  .u-sm-borderRadius8 {
    border-radius: 0.5rem !important;
  }
  .u-sm-borderRadiusTop8 {
    border-top-left-radius: 0.5rem !important;
    border-top-right-radius: 0.5rem !important;
  }
  .u-sm-borderRadiusBottom8 {
    border-bottom-left-radius: 0.5rem !important;
    border-bottom-right-radius: 0.5rem !important;
  }
  .u-sm-borderRadius20 {
    border-radius: 1.25rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-borderRadius8 {
    border-radius: 0.5rem !important;
  }
  .u-md-borderRadiusTop8 {
    border-top-left-radius: 0.5rem !important;
    border-top-right-radius: 0.5rem !important;
  }
  .u-md-borderRadiusBottom8 {
    border-bottom-left-radius: 0.5rem !important;
    border-bottom-right-radius: 0.5rem !important;
  }
  .u-md-borderBottomGrayLight {
    border-bottom: 1px solid #f5f5f5 !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-borderRadius8 {
    border-radius: 0.5rem !important;
  }
}
/**
* Add classes for common colors.
*/
.u-colorBase {
  color: #333 !important;
}
.u-colorBaseMid {
  color: #777 !important;
}
.u-colorBaseLight {
  color: #999 !important;
}
.u-colorBlack {
  color: #000 !important;
}
.u-colorWhite {
  color: #fff !important;
}
.u-colorDarkGray {
  color: #72706c !important;
}
.u-colorGray {
  color: #aaa !important;
}
.u-colorGray2 {
  color: #999999 !important;
}
.u-colorGrayLight2 {
  color: #ededed !important;
}
.u-colorLime {
  color: #aad23c !important;
}
.u-colorGreen {
  color: #00aa46 !important;
}
.u-colorGreen2 {
  color: #097a36 !important;
}
.u-linkColorGreen a {
  color: #00aa46 !important;
}
.u-linkColorGreen a:hover {
  color: #005537 !important;
}
.u-colorGreenLight {
  color: #e0efdd !important;
}
.u-colorGreenLight2 {
  color: #e8f2d7 !important;
}
.u-colorGreenDark {
  color: #005537 !important;
}
.u-colorGreenMid2 {
  color: #00a142 !important;
}
.u-colorGreenMid3 {
  color: #097a36 !important;
}
.u-colorPink {
  color: #ffeaf3 !important;
}
.u-colorRed2 {
  color: #ff6565 !important;
}
.u-colorRed {
  color: #ff3300 !important;
}
.u-colorRed1 {
  color: #cc0000 !important;
}
.u-colorYellowLight {
  color: #fffbdb !important;
}
.u-bgNone {
  background-color: transparent !important;
}
.u-bgWhite {
  background-color: #fff !important;
}
.u-bgBase {
  background-color: #333 !important;
}
.u-bgGrayLight {
  background-color: #f5f5f5 !important;
}
.u-bgHoverGrayLight:hover {
  background-color: #f5f5f5 !important;
}
.u-bgGrayLight2 {
  background-color: #ededed !important;
}
.u-bgGreen {
  background-color: #00aa46 !important;
}
.u-bgLime {
  background-color: #aad23c !important;
}
.u-bgYellow {
  background-color: #fff000 !important;
}
.u-bgYellowLight {
  background-color: #fffbdb !important;
}
.u-bgHoverYellowLight:hover,
.u-bgHoverYellowLight:focus {
  background-color: #fffbdb !important;
}
.u-bgHoverGreen {
  transition: background-color 0.25s ease-in-out;
}
.u-bgHoverGreen:hover,
.u-bgHoverGreen:focus {
  background-color: #00aa46 !important;
}
.u-bgGreenDark {
  background-color: #005537 !important;
}
.u-bgGreenLight {
  background-color: #e0efdd !important;
}
.u-bgGreenLight2 {
  background-color: #e8f2d7 !important;
}
.u-bgGreenLight3 {
  background-color: #a1dbab !important;
}
.u-bgGreenLight4 {
  background-color: #e8f2d2 !important;
}
.u-bgPink {
  background-color: #ffeaf3 !important;
}
.u-bgRed2 {
  background-color: #ff6565 !important;
}
.u-bgGreenGradient {
  background: #00aa46;
  background: -moz-linear-gradient(left, #00aa46 0%, #005537 100%);
  background: -webkit-linear-gradient(left, #00aa46 0%, #005537 100%);
  background: linear-gradient(to right, #00aa46 0%, #005537 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00aa46', endColorstr='#005537', GradientType=1);
}
.u-fillNone {
  fill: none !important;
}
.u-fillBase {
  fill: #333 !important;
}
.u-fillGreen {
  fill: #00aa46 !important;
}
.u-fillGreenDark {
  fill: #005537 !important;
}
.u-fillLime {
  fill: #aad23c !important;
}
.u-fillWhite {
  fill: #fff !important;
}
.u-fillGray {
  fill: #aaa !important;
}
.u-fillGray2 {
  fill: #999999 !important;
}
.u-fillGrayLight2 {
  fill: #ededed !important;
}
.u-fillPink {
  fill: #ffeaf3 !important;
}
.u-fillGreenHover:hover,
.u-fillGreenHover:focus {
  fill: #00aa46 !important;
}
.u-fillDarkGreenHover:hover,
.u-fillDarkGreenHover:focus {
  fill: #005537 !important;
}
.u-fillPinkHover:hover,
.u-fillPinkHover:focus {
  fill: #ffeaf3 !important;
}
.u-strokeNone {
  stroke: none !important;
}
.u-strokeBase {
  stroke: #333 !important;
}
.u-strokeWhite {
  stroke: #fff !important;
}
.u-strokeGreen {
  stroke: #00aa46 !important;
}
.u-strokeGreenDark {
  stroke: #005537 !important;
}
.u-strokeRed {
  stroke: #ff3300 !important;
}
.u-strokeGray2 {
  stroke: #999999 !important;
}
.u-greenStrokeHover:hover,
.u-greenStrokeHover:focus {
  stroke: #00aa46 !important;
}
.u-greenColorHover:hover,
.u-greenColorHover:focus {
  color: #00aa46 !important;
}
.u-greenHover:hover,
.u-greenHover:focus {
  color: #00aa46 !important;
  border-color: #00aa46 !important;
}
.u-redHover:hover,
.u-redHover:focus {
  color: #ff3300 !important;
  border-color: #ff3300 !important;
}
/**
* Display-type utilities
*/
.u-hidden,
.u-xxsm-block,
.u-xxsm-inline,
.u-xxsm-inlineBlock,
.u-xxsm-tableCell,
.u-xxsm-flex,
.u-xsm-block,
.u-xsm-inline,
.u-xsm-inlineBlock,
.u-xsm-tableCell,
.u-xsm-flex,
.u-sm-block,
.u-sm-inline,
.u-sm-inlineBlock,
.u-sm-tableCell,
.u-sm-flex,
.u-md-block,
.u-md-inline,
.u-md-inlineBlock,
.u-md-tableCell,
.u-md-flex,
.u-lg-block,
.u-lg-inline,
.u-lg-inlineBlock,
.u-lg-tableCell,
.u-lg-flex,
.u-xlg-block,
.u-xlg-inline,
.u-xlg-inlineBlock,
.u-xlg-tableCell,
.u-xlg-flex,
.u-xxlg-block,
.u-xxlg-inline,
.u-xxlg-inlineBlock,
.u-xxlg-tableCell,
.u-xxlg-flex {
  display: none !important;
}
.u-hiddenLight {
  display: none;
}
.u-hiddenOpacity {
  opacity: 0;
}
.u-hiddenVisibility {
  visibility: hidden !important;
}
/**
* Completely remove from the flow but leave available to screen readers.
*/
.u-hiddenVisually {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
}
/**
* Same as u-hiddenVisually, but the screen reader's outline will be sized the same as nearest relative parent.
*/
.u-hiddenVisuallyOutlined {
  position: absolute !important;
  overflow: hidden !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  border: 0 !important;
  clip: rect(1px, 1px, 1px, 1px) !important;
  inset: 0 !important;
  width: auto !important;
  height: 100% !important;
  margin: 0 !important;
}
.u-block {
  display: block !important;
}
.u-inline {
  display: inline !important;
}
/**
* 1. Fix for Firefox bug: an image styled `max-width:100%` within an
* inline-block will display at its default size, and not limit its width to
* 100% of an ancestral container.
*/
.u-inlineBlock {
  display: inline-block !important;
  max-width: 100%;
  /* 1 */
}
.u-table {
  display: table !important;
}
.u-tableRow {
  display: table-row !important;
}
.u-tableCell {
  display: table-cell !important;
}
/**
* Show/hide depending on Media Query breakpoints. 
*/
@media only screen and (min-width: 375px), print {
  .u-xxsm-hidden {
    display: none !important;
  }
  .u-xxsm-block {
    display: block !important;
  }
  .u-xxsm-inline {
    display: inline !important;
  }
  .u-xxsm-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-xxsm-tableCell {
    display: table-cell !important;
  }
  .u-xxsm-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-xxsm-flex {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 480px), print {
  .u-xsm-hidden {
    display: none !important;
  }
  .u-xsm-block {
    display: block !important;
  }
  .u-xsm-inline {
    display: inline !important;
  }
  .u-xsm-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-xsm-tableCell {
    display: table-cell !important;
  }
  .u-xsm-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-xsm-flex {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-hidden {
    display: none !important;
  }
  .u-sm-block {
    display: block !important;
  }
  .u-sm-inline {
    display: inline !important;
  }
  .u-sm-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-sm-tableCell {
    display: table-cell !important;
  }
  .u-sm-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-sm-flex {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-hidden {
    display: none !important;
  }
  .u-md-block {
    display: block !important;
  }
  .u-md-inline {
    display: inline !important;
  }
  .u-md-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-md-tableCell {
    display: table-cell !important;
  }
  .u-md-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-md-flex {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-hidden {
    display: none !important;
  }
  .u-lg-block {
    display: block !important;
  }
  .u-lg-inline {
    display: inline !important;
  }
  .u-lg-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-lg-tableCell {
    display: table-cell !important;
  }
  .u-lg-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-lg-flex {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 1366px) {
  .u-xlg-hidden {
    display: none !important;
  }
  .u-xlg-block {
    display: block !important;
  }
  .u-xlg-inline {
    display: inline !important;
  }
  .u-xlg-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-xlg-tableCell {
    display: table-cell !important;
  }
  .u-xlg-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-xlg-flex {
    display: inline-block !important;
  }
}
@media only screen and (min-width: 1720px) {
  .u-xxlg-hidden {
    display: none !important;
  }
  .u-xxlg-block {
    display: block !important;
  }
  .u-xxlg-inline {
    display: inline !important;
  }
  .u-xxlg-inlineBlock {
    display: inline-block !important;
    max-width: 100%;
    /* 1 */
  }
  .u-xxlg-tableCell {
    display: table-cell !important;
  }
  .u-xxlg-flex {
    display: flex !important;
  }
  .is-no-flexbox .u-xxlg-flex {
    display: inline-block !important;
  }
}
.u-empty:empty {
  display: none;
}
.u-flex {
  display: flex !important;
}
.is-no-flexbox .u-flex {
  display: inline-block !important;
}
.u-flexInline {
  display: inline-flex !important;
}
.u-flexDirectionRow {
  flex-direction: row !important;
}
.u-flexDirectionRowReverse {
  flex-direction: row-reverse !important;
}
.u-flexDirectionColumn {
  flex-direction: column !important;
}
.u-flexWrap {
  flex-wrap: wrap !important;
}
.u-flexWrapReverse {
  flex-wrap: wrap-reverse !important;
}
.u-flexNoWrap {
  flex-wrap: nowrap !important;
}
.u-flexJustifyStart {
  justify-content: flex-start !important;
}
.u-flexJustifyCenter {
  justify-content: center !important;
}
.u-flexJustifyEnd {
  justify-content: flex-end !important;
}
.u-flexJustifySpaceBetween {
  justify-content: space-between !important;
}
.u-flexJustifySpaceAround {
  justify-content: space-around !important;
}
.u-flexJustifySpaceEven {
  justify-content: space-evenly !important;
}
.u-flexAlignStart {
  align-items: flex-start !important;
}
.u-flexAlignCenter {
  align-items: center !important;
}
.u-flexAlignEnd {
  align-items: flex-end !important;
}
.u-flexAlignStretch {
  align-items: stretch !important;
}
.u-flexAlignBaseline {
  align-items: baseline !important;
}
.u-flexAlignSelfStart {
  align-self: flex-start !important;
}
.u-flexAlignSelfEnd {
  align-self: flex-end !important;
}
.u-flexAlignSelfCenter {
  align-self: center !important;
}
.u-flexAlignContentStart {
  align-content: start !important;
}
.u-flexGrow {
  flex-grow: 1 !important;
}
.u-flexGrowNone {
  flex-grow: 0 !important;
}
.u-flexShrink {
  flex-shrink: 1 !important;
}
.u-flexShrinkNone {
  flex-shrink: 0 !important;
}
.u-flexBasisFull {
  flex-basis: 100% !important;
}
.u-flexBasisAuto {
  flex-basis: auto !important;
}
.u-flexGap4 {
  gap: 4px !important;
}
.u-flexGap8 {
  gap: 8px !important;
}
.u-flexGap12 {
  gap: 12px !important;
}
.u-flexGap16 {
  gap: 16px !important;
}
.u-flexGap20 {
  gap: 20px !important;
}
.u-flexGap24 {
  gap: 24px !important;
}
.u-flex00Auto {
  flex: 0 0 auto !important;
}
.u-flex240 {
  flex: 0 1 240px;
}
.u-flexAllCenter {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media only screen and (min-width: 375px), print {
  .u-xxsm-flexDirectionRow {
    flex-direction: row !important;
  }
}
@media only screen and (min-width: 480px), print {
  .u-xsm-flexDirectionRow {
    flex-direction: row !important;
  }
  .u-xsm-flexGrowNone {
    flex-grow: 0 !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-flexDirectionRow {
    flex-direction: row !important;
  }
  .u-sm-flexDirectionColumn {
    flex-direction: column !important;
  }
  .u-sm-u-flexJustifySpaceEven {
    justify-content: space-evenly !important;
  }
  .u-sm-flexJustifyCenter {
    justify-content: center !important;
  }
  .u-sm-flexJustifyEnd {
    justify-content: flex-end !important;
  }
  .u-sm-flexNoWrap {
    flex-wrap: nowrap !important;
  }
  .u-sm-flexAlignCenter {
    align-items: center !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-flexDirectionRow {
    flex-direction: row !important;
  }
  .u-md-flexJustifyEnd {
    justify-content: flex-end !important;
  }
  .u-md-flexJustifyNormal {
    justify-content: normal !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-flexJustifyCenter {
    justify-content: center !important;
  }
  .u-lg-flexJustifyEnd {
    justify-content: flex-end !important;
  }
  .u-lg-flexJustifyBetween {
    justify-content: space-between !important;
  }
  .u-lg-flexDirectionRow {
    flex-direction: row !important;
  }
}
.u-flexOrder0 {
  order: 0;
}
.u-flexOrder1 {
  order: 1;
}
.u-flexOrder2 {
  order: 2;
}
.u-flexOrder3 {
  order: 3;
}
.u-flexOrder4 {
  order: 4;
}
@media only screen and (min-width: 375px), print {
  .u-xxsm-flexOrder0 {
    order: 0;
  }
  .u-xxsm-flexOrder1 {
    order: 1;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-flexOrder1 {
    order: 1;
  }
  .u-lg-flexOrder2 {
    order: 2;
  }
}
/**
 * Contain floats
 *
 * Make an element expand to contain floated children.
 * Uses pseudo-elements (micro clearfix).
 *
 * 1. The space content is one way to avoid an Opera bug when the
 *    `contenteditable` attribute is included anywhere else in the document.
 *    Otherwise it causes space to appear at the top and bottom of the
 *    element.
 * 2. The use of `table` rather than `block` is only necessary if using
 *    `:before` to contain the top-margins of child elements.
 */
.u-cf:before,
.u-cf:after {
  content: ' ';
  /* 1 */
  display: table;
  /* 2 */
}
.u-cf:after {
  clear: both;
}
/**
 * New block formatting context
 *
 * This affords some useful properties to the element. It won't wrap under
 * floats. Will also contain any floated children.

 * N.B. This will clip overflow. Use the alternative method below if this is
 * problematic.
 */
.u-nbfc {
  overflow: hidden !important;
}
/**
 * Floats
 */
.u-pullLeft {
  float: left !important;
}
.u-pullRight {
  float: right !important;
}
@media only screen and (min-width: 768px), print {
  .u-md-pullRight {
    float: right !important;
  }
}
.u-clear {
  clear: both;
}
.u-tabFirst {
  opacity: 0;
  height: 0;
  margin: 0;
  padding: 0;
  line-height: 0;
  border: 0;
}
.u-noUserSelect {
  user-select: none;
}
.u-overflowInitial {
  overflow: initial !important;
}
.u-overflowHidden {
  overflow: hidden !important;
}
.u-overflowXHidden {
  overflow-x: hidden !important;
}
.u-overflowAuto {
  overflow: auto !important;
  -webkit-overflow-scrolling: touch;
}
.u-overflowXAuto {
  overflow-x: auto !important;
  -webkit-overflow-scrolling: touch;
}
.u-overflowVisible {
  overflow: visible !important;
  -webkit-overflow-scrolling: touch;
}
.u-scrollingOverflow {
  -webkit-overflow-scrolling: touch;
}
.u-cursorPointer {
  cursor: pointer !important;
}
.u-cursorDefault {
  cursor: default !important;
}
.u-pointerEventsNone {
  pointer-events: none !important;
}
.u-pointerEventsAuto {
  pointer-events: auto !important;
}
.u-isolate {
  isolation: isolate !important;
}
.u-zIndex0 {
  z-index: 0 !important;
}
.u-zIndex1 {
  z-index: 1 !important;
}
.u-zIndex2 {
  z-index: 2 !important;
}
.u-zIndex4 {
  z-index: 4 !important;
}
.u-zIndex5 {
  z-index: 5 !important;
}
.u-zIndex13 {
  z-index: 13 !important;
}
.u-textLineThrough {
  text-decoration: line-through;
}
.u-textLineUnder {
  text-decoration: underline !important;
}
.u-borderRadius {
  border-radius: 4px !important;
}
.u-boxShadowNone {
  box-shadow: none !important;
}
.u-boxShadow {
  box-shadow: 5px 5px 30px 0 rgba(0, 0, 0, 0.15) !important;
}
.u-boxShadowT {
  box-shadow: 0 -0.625rem 0.625rem -0.625rem rgba(0, 0, 0, 0.1);
}
.u-boxShadowHoverSm:hover,
.u-boxShadowHoverSm:focus {
  box-shadow: 0px 0px 15px 0px rgba(0, 0, 0, 0.15) !important;
  position: relative;
}
.u-isInvisible {
  visibility: hidden !important;
}
.u-isVisible {
  visibility: visible !important;
}
.u-transitionBorderEaseInOut {
  transition: border-color 0.3s ease-in-out !important;
}
.u-opacity0 {
  opacity: 0 !important;
}
.u-opacity1 {
  opacity: 1 !important;
}
.u-opacity70 {
  opacity: 0.7 !important;
}
.u-maxHeightNone {
  max-height: none;
}
.u-listStyleTypeNone {
  list-style-type: none;
}
.u-forceSvgChildWidth svg {
  width: 200px !important;
}
.u-whitespaceNormal {
  white-space: normal;
}
.u-whitespaceNoWrap {
  white-space: nowrap;
}
.u-outlineNone {
  outline: none !important;
}
.u-bgImage16to9ratio {
  height: 0;
  padding-bottom: 56.25%;
}
.u-scrollMarginTopWithHeaderSize {
  scroll-margin-top: 70px;
}
.u-outlineSolidBase2:focus-visible {
  outline: 2px solid #333;
}
.u-outlineInside:focus-visible {
  outline-offset: -2px;
}
.mixinScroll {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  /* Smooth scrolling on iOS devices */
}
.u-posAbsolute {
  position: absolute !important;
}
/**
 * Pins to all corners by default. But when a width and/or height are
 * provided, the element will be centered in its nearest relatively-positioned
 * ancestor.
 */
.u-posAbsoluteCenter {
  bottom: 0 !important;
  left: 0 !important;
  margin: auto !important;
  position: absolute !important;
  right: 0 !important;
  top: 0 !important;
}
/**
 * 1. Make sure fixed elements are promoted into a new layer, for performance
 *    reasons.
 */
.u-posFixed {
  position: fixed !important;
  backface-visibility: hidden;
  /* 1 */
}
.u-posRelative {
  position: relative !important;
}
.u-posStatic {
  position: static !important;
}
.u-posSticky {
  position: sticky !important;
}
/**
 * Placements
 */
.u-posTopLeft {
  top: 0 !important;
  left: 0 !important;
}
.u-posTopRight {
  top: 0 !important;
  right: 0 !important;
}
.u-posTopNegativeXSmall {
  top: -0.625rem !important;
}
.u-posTopRightNegativeXXSmall {
  top: -0.41666667rem !important;
  right: -0.41666667rem !important;
}
@media print {
  #epi-quickNavigator {
    display: none !important;
  }
  .u-noPrint {
    display: none !important;
  }
  .u-print {
    display: block !important;
  }
  body {
    background: #fff;
  }
  header {
    display: none;
  }
  .Notice {
    display: none !important;
  }
  .Header {
    display: none !important;
  }
  .SidebarNav {
    padding-top: 0px !important;
    transition: none !important;
  }
  .SidebarNav-content {
    background-color: #fff;
  }
  .Grid--gutterHxlg {
    margin: 0px !important;
    padding: 0px !important;
  }
  .u-borderRight2 {
    padding-right: 2px !important;
    margin-right: 5px !important;
  }
  h1 {
    font-size: 16px;
  }
  .Heading--h3 {
    font-size: 14px !important;
  }
  .List-heading {
    font-size: 14px !important;
  }
  .u-textWeightBold {
    font-size: 14px !important;
  }
  .u-paddingAlg {
    padding: 20px !important;
  }
  .u-marginTlg {
    margin-top: 10px !important;
  }
  .u-paddingTlg {
    padding-top: 20px !important;
  }
  .List.List--orderedRecipe li {
    margin-bottom: 12px !important;
  }
  .Grid-cell {
    font-size: 10px;
    padding: 0px !important;
  }
  .u-textSmall {
    font-size: 10px !important;
  }
  .u-textLarge {
    font-size: 14px !important;
  }
  .u-textNormal,
  .u-textNormal span,
  .List.List--orderedRecipe {
    font-size: 12px !important;
  }
  .u-paddingVxlg {
    padding-top: 20px !important;
  }
  .u-paddingAxlg {
    padding: 20px;
  }
  .u-lg-paddingHxlg {
    padding-left: 20px !important;
    padding-right: 10px !important;
  }
  .u-paddingVxlg {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
  .u-paddingHlg {
    padding-left: 20px !important;
    padding-right: 10px !important;
  }
  .Preamble {
    line-height: 1.2 !important;
    font-size: 12px !important;
  }
  .Hero.Hero--halfHeight {
    max-height: 300px !important;
    max-width: 400px !important;
  }
  .Testimonial-image {
    width: 70px !important;
    height: 70px !important;
    padding-top: 20px 0;
  }
  main {
    padding-top: 0 !important;
  }
  * {
    -webkit-print-color-adjust: exact !important;
    /* Chrome, Safari */
    color-adjust: exact !important;
    /*Firefox*/
  }
  /*.Grid.Grid--gutterAxlg > .Grid-cell, .Grid.Grid--gutterHxlg > .Grid-cell {
        padding-left: 10px;
        padding-right: 10px;
    }*/
  /* RECIPE PAGES */
  .Grid--recipePage .Grid-cell--fixedWidth {
    width: 50%;
  }
  .List.List--section {
    background-color: #fff;
    width: 70%;
  }
  .IngredientList .List.List--section li {
    margin-bottom: 4px !important;
  }
  .u-textWeightLight .u-textWeightBold {
    font-size: 10px !important;
  }
  .u-borderRight2 .u-textWeightBold {
    font-size: 14px !important;
  }
  .Grid-cell.u-borderRight2 {
    padding-right: 5px !important;
  }
  .u-paddingAlg {
    padding: 20px !important;
  }
  .u-paddingTmd {
    padding-top: 10px !important;
  }
  .List.List--section .u-textLarge {
    font-size: 14px !important;
  }
  .SidebarNav.is-fixed {
    position: relative !important;
    -webkit-align-self: none !important;
    align-self: unset !important;
    transition: none !important;
  }
  h2.u-textLarge {
    font-size: 14px !important;
  }
  .Grid-cell.Grid-cell--fixedWidth:not(.Grid-cell.Grid-cell--fixedWidth.SidebarNav-Recipe) {
    display: none !important;
  }
  .Grid-cell.Grid-cell--fixedWidth.SidebarNav-Recipe {
    width: 280px;
  }
  .Grid-cell.Grid-cell--fixedWidth.SidebarNav-Recipe .Hero.Hero--recipePage {
    height: 20vh;
  }
}
/* Height */
.u-heightNone {
  height: 0;
}
.u-heightXXsm {
  height: 15px !important;
}
.u-heightXsm {
  height: 35px !important;
}
.u-heightAll {
  height: 100% !important;
}
/* */
.u-minHeightXXsm {
  min-height: 15px !important;
}
.u-minHeightXsm {
  min-height: 35px !important;
}
.u-minHeightSm {
  min-height: 50px !important;
}
.u-minHeightMd {
  min-height: 75px !important;
}
.u-minHeightLg {
  min-height: 100px !important;
}
.u-minHeightXLg {
  min-height: 150px !important;
}
.u-minHeightXXLg {
  min-height: 520px !important;
}
/* */
.u-maxHeightXXsm {
  max-height: 15px !important;
}
.u-maxHeightXsm {
  max-height: 35px !important;
}
.u-maxHeightSm {
  max-height: 50px !important;
}
.u-maxHeightMd {
  max-height: 75px !important;
}
.u-maxHeightLg {
  max-height: 100px !important;
}
/* Width */
.u-widthAuto {
  width: auto !important;
}
.u-widthNone {
  width: 0 !important;
}
.u-minWidthNone {
  min-width: 0 !important;
}
.u-widthXXsm {
  width: 15px !important;
}
.u-widthXsm {
  width: 35px !important;
}
.u-minWidthXXsm {
  min-width: 15px !important;
}
.u-minWidthXsm {
  min-width: 35px !important;
}
.u-minWidthSm {
  min-width: 50px !important;
}
.u-minWidthMd {
  min-width: 75px !important;
}
.u-minWidthLg {
  min-width: 100px !important;
}
/* */
.u-maxWidthLg {
  max-width: 100px !important;
}
/*
    Size Utility
    
    This generates size classes that can be used with the Grid component. 
    The classes are only active from a specified breakpoint.

    For example if you apply .u-md-size1of2 to an element
    it will get width 50% when the screen-width is larger than medium width (@bpMedium).

    Adding another class of .u-lg-size1of4 would mean the element gets 25% when @bpLarge breakpoint gets active.
*/
.u-sizeFull,
.u-size1of1 {
  width: 100% !important;
}
.u-sizeAuto {
  width: auto !important;
}
.u-sizeAutoHeight {
  height: auto !important;
}
/**
     * Size utilities
     * .u-size1of4
     * .u-sm-size1of4
     */
/* Intrinsic widths
       ========================================================================== */
/**
         * Make an element the width of its parent.
         */
.u-sizeFull,
.u-size1of1 {
  width: 100% !important;
}
/**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
.u-sizeFill {
  display: block !important;
  overflow: hidden !important;
  width: auto !important;
}
.u-sizeAuto {
  width: auto !important;
}
.u-sizeMax1of2 {
  width: 100%;
  max-width: 42.5rem;
}
/* Proportional widths
           ========================================================================== */
/**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
[class*='u-size'] {
  -webkit-flex-basis: auto !important;
  /* 1 */
  flex-basis: auto !important;
  /* 1 */
}
.u-size1of2 {
  width: 50% !important;
}
.u-size1of3 {
  width: 33.33333333% !important;
}
.u-size2of3 {
  width: 66.66666667% !important;
}
.u-size1of4 {
  width: 25% !important;
}
.u-size3of4 {
  width: 75% !important;
}
.u-size1of5 {
  width: 20% !important;
}
.u-size2of5 {
  width: 40% !important;
}
.u-size3of5 {
  width: 60% !important;
}
.u-size4of5 {
  width: 80% !important;
}
.u-size1of6 {
  width: 16.66666667% !important;
}
.u-size1of7 {
  width: 14.28571429% !important;
}
.u-size1of8 {
  width: 12.5% !important;
}
.u-size3of8 {
  width: 37.5% !important;
}
.u-size5of8 {
  width: 62.5% !important;
}
.u-size7of8 {
  width: 87.5% !important;
}
.u-size1of10 {
  width: 10% !important;
}
.u-size3of10 {
  width: 30% !important;
}
.u-size7of10 {
  width: 70% !important;
}
.u-size1of12 {
  width: 8.33333333% !important;
}
@media only screen and (min-width: 320px), print {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-xxxsm-sizeFull,
  .u-xxxsm-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-xxxsm-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-xxxsm-sizeAuto {
    width: auto !important;
  }
  .u-xxxsm-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-xxxsm-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-xxxsm-size1of2 {
    width: 50% !important;
  }
  .u-xxxsm-size1of3 {
    width: 33.33333333% !important;
  }
  .u-xxxsm-size2of3 {
    width: 66.66666667% !important;
  }
  .u-xxxsm-size1of4 {
    width: 25% !important;
  }
  .u-xxxsm-size3of4 {
    width: 75% !important;
  }
  .u-xxxsm-size1of5 {
    width: 20% !important;
  }
  .u-xxxsm-size2of5 {
    width: 40% !important;
  }
  .u-xxxsm-size3of5 {
    width: 60% !important;
  }
  .u-xxxsm-size4of5 {
    width: 80% !important;
  }
  .u-xxxsm-size1of6 {
    width: 16.66666667% !important;
  }
  .u-xxxsm-size1of7 {
    width: 14.28571429% !important;
  }
  .u-xxxsm-size1of8 {
    width: 12.5% !important;
  }
  .u-xxxsm-size3of8 {
    width: 37.5% !important;
  }
  .u-xxxsm-size5of8 {
    width: 62.5% !important;
  }
  .u-xxxsm-size7of8 {
    width: 87.5% !important;
  }
  .u-xxxsm-size1of10 {
    width: 10% !important;
  }
  .u-xxxsm-size3of10 {
    width: 30% !important;
  }
  .u-xxxsm-size7of10 {
    width: 70% !important;
  }
  .u-xxxsm-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 375px), print {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-xxsm-sizeFull,
  .u-xxsm-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-xxsm-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-xxsm-sizeAuto {
    width: auto !important;
  }
  .u-xxsm-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-xxsm-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-xxsm-size1of2 {
    width: 50% !important;
  }
  .u-xxsm-size1of3 {
    width: 33.33333333% !important;
  }
  .u-xxsm-size2of3 {
    width: 66.66666667% !important;
  }
  .u-xxsm-size1of4 {
    width: 25% !important;
  }
  .u-xxsm-size3of4 {
    width: 75% !important;
  }
  .u-xxsm-size1of5 {
    width: 20% !important;
  }
  .u-xxsm-size2of5 {
    width: 40% !important;
  }
  .u-xxsm-size3of5 {
    width: 60% !important;
  }
  .u-xxsm-size4of5 {
    width: 80% !important;
  }
  .u-xxsm-size1of6 {
    width: 16.66666667% !important;
  }
  .u-xxsm-size1of7 {
    width: 14.28571429% !important;
  }
  .u-xxsm-size1of8 {
    width: 12.5% !important;
  }
  .u-xxsm-size3of8 {
    width: 37.5% !important;
  }
  .u-xxsm-size5of8 {
    width: 62.5% !important;
  }
  .u-xxsm-size7of8 {
    width: 87.5% !important;
  }
  .u-xxsm-size1of10 {
    width: 10% !important;
  }
  .u-xxsm-size3of10 {
    width: 30% !important;
  }
  .u-xxsm-size7of10 {
    width: 70% !important;
  }
  .u-xxsm-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 480px), print {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-xsm-sizeFull,
  .u-xsm-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-xsm-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-xsm-sizeAuto {
    width: auto !important;
  }
  .u-xsm-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-xsm-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-xsm-size1of2 {
    width: 50% !important;
  }
  .u-xsm-size1of3 {
    width: 33.33333333% !important;
  }
  .u-xsm-size2of3 {
    width: 66.66666667% !important;
  }
  .u-xsm-size1of4 {
    width: 25% !important;
  }
  .u-xsm-size3of4 {
    width: 75% !important;
  }
  .u-xsm-size1of5 {
    width: 20% !important;
  }
  .u-xsm-size2of5 {
    width: 40% !important;
  }
  .u-xsm-size3of5 {
    width: 60% !important;
  }
  .u-xsm-size4of5 {
    width: 80% !important;
  }
  .u-xsm-size1of6 {
    width: 16.66666667% !important;
  }
  .u-xsm-size1of7 {
    width: 14.28571429% !important;
  }
  .u-xsm-size1of8 {
    width: 12.5% !important;
  }
  .u-xsm-size3of8 {
    width: 37.5% !important;
  }
  .u-xsm-size5of8 {
    width: 62.5% !important;
  }
  .u-xsm-size7of8 {
    width: 87.5% !important;
  }
  .u-xsm-size1of10 {
    width: 10% !important;
  }
  .u-xsm-size3of10 {
    width: 30% !important;
  }
  .u-xsm-size7of10 {
    width: 70% !important;
  }
  .u-xsm-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 600px), print {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-sm-sizeFull,
  .u-sm-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-sm-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-sm-sizeAuto {
    width: auto !important;
  }
  .u-sm-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-sm-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-sm-size1of2 {
    width: 50% !important;
  }
  .u-sm-size1of3 {
    width: 33.33333333% !important;
  }
  .u-sm-size2of3 {
    width: 66.66666667% !important;
  }
  .u-sm-size1of4 {
    width: 25% !important;
  }
  .u-sm-size3of4 {
    width: 75% !important;
  }
  .u-sm-size1of5 {
    width: 20% !important;
  }
  .u-sm-size2of5 {
    width: 40% !important;
  }
  .u-sm-size3of5 {
    width: 60% !important;
  }
  .u-sm-size4of5 {
    width: 80% !important;
  }
  .u-sm-size1of6 {
    width: 16.66666667% !important;
  }
  .u-sm-size1of7 {
    width: 14.28571429% !important;
  }
  .u-sm-size1of8 {
    width: 12.5% !important;
  }
  .u-sm-size3of8 {
    width: 37.5% !important;
  }
  .u-sm-size5of8 {
    width: 62.5% !important;
  }
  .u-sm-size7of8 {
    width: 87.5% !important;
  }
  .u-sm-size1of10 {
    width: 10% !important;
  }
  .u-sm-size3of10 {
    width: 30% !important;
  }
  .u-sm-size7of10 {
    width: 70% !important;
  }
  .u-sm-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 768px), print {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-md-sizeFull,
  .u-md-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-md-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-md-sizeAuto {
    width: auto !important;
  }
  .u-md-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-md-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-md-size1of2 {
    width: 50% !important;
  }
  .u-md-size1of3 {
    width: 33.33333333% !important;
  }
  .u-md-size2of3 {
    width: 66.66666667% !important;
  }
  .u-md-size1of4 {
    width: 25% !important;
  }
  .u-md-size3of4 {
    width: 75% !important;
  }
  .u-md-size1of5 {
    width: 20% !important;
  }
  .u-md-size2of5 {
    width: 40% !important;
  }
  .u-md-size3of5 {
    width: 60% !important;
  }
  .u-md-size4of5 {
    width: 80% !important;
  }
  .u-md-size1of6 {
    width: 16.66666667% !important;
  }
  .u-md-size1of7 {
    width: 14.28571429% !important;
  }
  .u-md-size1of8 {
    width: 12.5% !important;
  }
  .u-md-size3of8 {
    width: 37.5% !important;
  }
  .u-md-size5of8 {
    width: 62.5% !important;
  }
  .u-md-size7of8 {
    width: 87.5% !important;
  }
  .u-md-size1of10 {
    width: 10% !important;
  }
  .u-md-size3of10 {
    width: 30% !important;
  }
  .u-md-size7of10 {
    width: 70% !important;
  }
  .u-md-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 1024px), print {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-lg-sizeFull,
  .u-lg-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-lg-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-lg-sizeAuto {
    width: auto !important;
  }
  .u-lg-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-lg-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-lg-size1of2 {
    width: 50% !important;
  }
  .u-lg-size1of3 {
    width: 33.33333333% !important;
  }
  .u-lg-size2of3 {
    width: 66.66666667% !important;
  }
  .u-lg-size1of4 {
    width: 25% !important;
  }
  .u-lg-size3of4 {
    width: 75% !important;
  }
  .u-lg-size1of5 {
    width: 20% !important;
  }
  .u-lg-size2of5 {
    width: 40% !important;
  }
  .u-lg-size3of5 {
    width: 60% !important;
  }
  .u-lg-size4of5 {
    width: 80% !important;
  }
  .u-lg-size1of6 {
    width: 16.66666667% !important;
  }
  .u-lg-size1of7 {
    width: 14.28571429% !important;
  }
  .u-lg-size1of8 {
    width: 12.5% !important;
  }
  .u-lg-size3of8 {
    width: 37.5% !important;
  }
  .u-lg-size5of8 {
    width: 62.5% !important;
  }
  .u-lg-size7of8 {
    width: 87.5% !important;
  }
  .u-lg-size1of10 {
    width: 10% !important;
  }
  .u-lg-size3of10 {
    width: 30% !important;
  }
  .u-lg-size7of10 {
    width: 70% !important;
  }
  .u-lg-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 1366px) {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-xlg-sizeFull,
  .u-xlg-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-xlg-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-xlg-sizeAuto {
    width: auto !important;
  }
  .u-xlg-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-xlg-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-xlg-size1of2 {
    width: 50% !important;
  }
  .u-xlg-size1of3 {
    width: 33.33333333% !important;
  }
  .u-xlg-size2of3 {
    width: 66.66666667% !important;
  }
  .u-xlg-size1of4 {
    width: 25% !important;
  }
  .u-xlg-size3of4 {
    width: 75% !important;
  }
  .u-xlg-size1of5 {
    width: 20% !important;
  }
  .u-xlg-size2of5 {
    width: 40% !important;
  }
  .u-xlg-size3of5 {
    width: 60% !important;
  }
  .u-xlg-size4of5 {
    width: 80% !important;
  }
  .u-xlg-size1of6 {
    width: 16.66666667% !important;
  }
  .u-xlg-size1of7 {
    width: 14.28571429% !important;
  }
  .u-xlg-size1of8 {
    width: 12.5% !important;
  }
  .u-xlg-size3of8 {
    width: 37.5% !important;
  }
  .u-xlg-size5of8 {
    width: 62.5% !important;
  }
  .u-xlg-size7of8 {
    width: 87.5% !important;
  }
  .u-xlg-size1of10 {
    width: 10% !important;
  }
  .u-xlg-size3of10 {
    width: 30% !important;
  }
  .u-xlg-size7of10 {
    width: 70% !important;
  }
  .u-xlg-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 1720px) {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-xxlg-sizeFull,
  .u-xxlg-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-xxlg-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-xxlg-sizeAuto {
    width: auto !important;
  }
  .u-xxlg-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-xxlg-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-xxlg-size1of2 {
    width: 50% !important;
  }
  .u-xxlg-size1of3 {
    width: 33.33333333% !important;
  }
  .u-xxlg-size2of3 {
    width: 66.66666667% !important;
  }
  .u-xxlg-size1of4 {
    width: 25% !important;
  }
  .u-xxlg-size3of4 {
    width: 75% !important;
  }
  .u-xxlg-size1of5 {
    width: 20% !important;
  }
  .u-xxlg-size2of5 {
    width: 40% !important;
  }
  .u-xxlg-size3of5 {
    width: 60% !important;
  }
  .u-xxlg-size4of5 {
    width: 80% !important;
  }
  .u-xxlg-size1of6 {
    width: 16.66666667% !important;
  }
  .u-xxlg-size1of7 {
    width: 14.28571429% !important;
  }
  .u-xxlg-size1of8 {
    width: 12.5% !important;
  }
  .u-xxlg-size3of8 {
    width: 37.5% !important;
  }
  .u-xxlg-size5of8 {
    width: 62.5% !important;
  }
  .u-xxlg-size7of8 {
    width: 87.5% !important;
  }
  .u-xxlg-size1of10 {
    width: 10% !important;
  }
  .u-xxlg-size3of10 {
    width: 30% !important;
  }
  .u-xxlg-size7of10 {
    width: 70% !important;
  }
  .u-xxlg-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 1920px) {
  /* Intrinsic widths
       ========================================================================== */
  /**
         * Make an element the width of its parent.
         */
  .u-full-sizeFull,
  .u-full-size1of1 {
    width: 100% !important;
  }
  /**
         * Make an element fill the remaining space.
         * N.B. This will hide overflow.
         */
  .u-full-sizeFill {
    display: block !important;
    overflow: hidden !important;
    width: auto !important;
  }
  .u-full-sizeAuto {
    width: auto !important;
  }
  .u-full-sizeMax1of2 {
    width: 100%;
    max-width: 42.5rem;
  }
  /* Proportional widths
           ========================================================================== */
  /**
         * Specify the proportional width of an object.
         * Intentional redundancy build into each set of unit classes.
         * Supports: 2, 3, 4, 5, 6, 8, 10, 12 part
         *
         * 1. Use `flex-basis: auto` with a width to avoid box-sizing bug in IE10/11
         *    http://git.io/vllMD
         */
  [class*='u-full-size'] {
    -webkit-flex-basis: auto !important;
    /* 1 */
    flex-basis: auto !important;
    /* 1 */
  }
  .u-full-size1of2 {
    width: 50% !important;
  }
  .u-full-size1of3 {
    width: 33.33333333% !important;
  }
  .u-full-size2of3 {
    width: 66.66666667% !important;
  }
  .u-full-size1of4 {
    width: 25% !important;
  }
  .u-full-size3of4 {
    width: 75% !important;
  }
  .u-full-size1of5 {
    width: 20% !important;
  }
  .u-full-size2of5 {
    width: 40% !important;
  }
  .u-full-size3of5 {
    width: 60% !important;
  }
  .u-full-size4of5 {
    width: 80% !important;
  }
  .u-full-size1of6 {
    width: 16.66666667% !important;
  }
  .u-full-size1of7 {
    width: 14.28571429% !important;
  }
  .u-full-size1of8 {
    width: 12.5% !important;
  }
  .u-full-size3of8 {
    width: 37.5% !important;
  }
  .u-full-size5of8 {
    width: 62.5% !important;
  }
  .u-full-size7of8 {
    width: 87.5% !important;
  }
  .u-full-size1of10 {
    width: 10% !important;
  }
  .u-full-size3of10 {
    width: 30% !important;
  }
  .u-full-size7of10 {
    width: 70% !important;
  }
  .u-full-size1of12 {
    width: 8.33333333% !important;
  }
}
@media only screen and (min-width: 375px), print {
  .u-full-hidden {
    display: none !important;
  }
}
@media only screen and (min-width: 1920px) {
  .u-full-hidden {
    display: flex !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-sizeAuto {
    width: auto !important;
  }
  .u-sm-size510 {
    width: 510px !important;
  }
  .u-sm-size540 {
    width: 540px !important;
  }
}
.u-sizeMax850 {
  max-width: 850px;
}
.u-sizeMaxFull {
  max-width: 100%;
}
/*
    Change the default spacing between and inside components.

    Example HTML: 

    <div class="u-marginTlg u-marginBmd"> 			// large margin-top and medium margin-bottom
        <h1 class="u-marginTz">Hello World</h1>		// zero margin-top
    </div>

    Directions:
        A = all
        T = top 
        B = bottom
        R = right
        L = left
        H = horizontal (right and left)
        V = vertical (top and bottom)

    Sizes:
        z  = zero
        xxsm = xxsmall
        xsm = xsmall
        sm  = small
        md  = medium
        lg  = large
        xlg = xlarge
        xxlg = xxlarge
*/
/* stylelint-disable rule-non-nested-empty-line-before */
/** 
 * Margins, .u-margin{direction}{size}
 */
.u-marginAxxxxsm {
  margin: 0.25rem !important;
}
.u-marginAxxxsm {
  margin: 0.3125rem !important;
}
.u-marginAxxsm {
  margin: 0.41666667rem !important;
}
.u-marginAxsm {
  margin: 0.625rem !important;
}
.u-marginAsm {
  margin: 0.93750234rem !important;
}
.u-marginAmd {
  margin: 1.25rem !important;
}
.u-marginAlg {
  margin: 1.875rem !important;
}
.u-marginAxlg {
  margin: 2.5rem !important;
}
.u-marginAxxlg {
  margin: 3.75rem !important;
}
.u-marginAxxxlg {
  margin: 5rem !important;
}
.u-marginA {
  margin: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginA {
    margin: 2.5rem !important;
  }
}
.u-marginHxxxsm {
  margin-left: 0.3125rem !important;
  margin-right: 0.3125rem !important;
}
.u-marginHxxsm {
  margin-left: 0.41666667rem !important;
  margin-right: 0.41666667rem !important;
}
.u-marginHxsm {
  margin-left: 0.625rem !important;
  margin-right: 0.625rem !important;
}
.u-marginHsm {
  margin-left: 0.93750234rem !important;
  margin-right: 0.93750234rem !important;
}
.u-marginHmd {
  margin-left: 1.25rem !important;
  margin-right: 1.25rem !important;
}
.u-marginHlg {
  margin-left: 1.875rem !important;
  margin-right: 1.875rem !important;
}
.u-marginHxlg {
  margin-left: 2.5rem !important;
  margin-right: 2.5rem !important;
}
.u-marginHxxlg {
  margin-left: 3.75rem !important;
  margin-right: 3.75rem !important;
}
.u-marginHxxxlg {
  margin-left: 5rem !important;
  margin-right: 5rem !important;
}
.u-marginH {
  margin-left: 1.25rem !important;
  margin-right: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginH {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
}
.u-marginVxxxxsm {
  margin-top: 0.25rem !important;
  margin-bottom: 0.25rem !important;
}
.u-marginVxxxsm {
  margin-top: 0.3125rem !important;
  margin-bottom: 0.3125rem !important;
}
.u-marginVxxsm {
  margin-top: 0.41666667rem !important;
  margin-bottom: 0.41666667rem !important;
}
.u-marginVxsm {
  margin-top: 0.625rem !important;
  margin-bottom: 0.625rem !important;
}
.u-marginVsm {
  margin-top: 0.93750234rem !important;
  margin-bottom: 0.93750234rem !important;
}
.u-marginVmd {
  margin-top: 1.25rem !important;
  margin-bottom: 1.25rem !important;
}
.u-marginVlg {
  margin-top: 1.875rem !important;
  margin-bottom: 1.875rem !important;
}
.u-marginVxlg {
  margin-top: 2.5rem !important;
  margin-bottom: 2.5rem !important;
}
.u-marginVxxlg {
  margin-top: 3.75rem !important;
  margin-bottom: 3.75rem !important;
}
.u-marginVxxxlg {
  margin-top: 5rem !important;
  margin-bottom: 5rem !important;
}
.u-marginV {
  margin-top: 1.25rem !important;
  margin-bottom: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginV {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
}
.u-marginTxxxxsm {
  margin-top: 0.25rem !important;
}
.u-marginTxxxsm {
  margin-top: 0.3125rem !important;
}
.u-marginTxxsm {
  margin-top: 0.41666667rem !important;
}
.u-marginTxsm {
  margin-top: 0.625rem !important;
}
.u-marginTsm {
  margin-top: 0.93750234rem !important;
}
.u-marginTmd {
  margin-top: 1.25rem !important;
}
.u-marginTlg {
  margin-top: 1.875rem !important;
}
.u-marginTxlg {
  margin-top: 2.5rem !important;
}
.u-marginTxxlg {
  margin-top: 3.75rem !important;
}
.u-marginTxxxlg {
  margin-top: 5rem !important;
}
.u-marginT {
  margin-top: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginT {
    margin-top: 2.5rem !important;
  }
}
.u-marginBxxxxsm {
  margin-bottom: 0.25rem !important;
}
.u-marginBxxxsm {
  margin-bottom: 0.3125rem !important;
}
.u-marginBxxsm {
  margin-bottom: 0.41666667rem !important;
}
.u-marginBxsm {
  margin-bottom: 0.625rem !important;
}
.u-marginBsm {
  margin-bottom: 0.93750234rem !important;
}
.u-marginBmd {
  margin-bottom: 1.25rem !important;
}
.u-marginBlg {
  margin-bottom: 1.875rem !important;
}
.u-marginBxlg {
  margin-bottom: 2.5rem !important;
}
.u-marginBxxlg {
  margin-bottom: 3.75rem !important;
}
.u-marginBxxxlg {
  margin-bottom: 5rem !important;
}
.u-marginB {
  margin-bottom: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginB {
    margin-bottom: 2.5rem !important;
  }
}
.u-marginRxxxxsm {
  margin-right: 0.25rem !important;
}
.u-marginRxxxsm {
  margin-right: 0.3125rem !important;
}
.u-marginRxxsm {
  margin-right: 0.41666667rem !important;
}
.u-marginRxsm {
  margin-right: 0.625rem !important;
}
.u-marginRsm {
  margin-right: 0.93750234rem !important;
}
.u-marginRmd {
  margin-right: 1.25rem !important;
}
.u-marginRlg {
  margin-right: 1.875rem !important;
}
.u-marginRxlg {
  margin-right: 2.5rem !important;
}
.u-marginRxxlg {
  margin-right: 3.75rem !important;
}
.u-marginRxxxlg {
  margin-right: 5rem !important;
}
.u-marginR {
  margin-right: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginR {
    margin-right: 2.5rem !important;
  }
}
.u-marginLxxxxsm {
  margin-left: 0.25rem !important;
}
.u-marginLxxxsm {
  margin-left: 0.3125rem !important;
}
.u-marginLxxsm {
  margin-left: 0.41666667rem !important;
}
.u-marginLxsm {
  margin-left: 0.625rem !important;
}
.u-marginLsm {
  margin-left: 0.93750234rem !important;
}
.u-marginLmd {
  margin-left: 1.25rem !important;
}
.u-marginLlg {
  margin-left: 1.875rem !important;
}
.u-marginLxlg {
  margin-left: 2.5rem !important;
}
.u-marginLxxlg {
  margin-left: 3.75rem !important;
}
.u-marginLxxxlg {
  margin-left: 5rem !important;
}
.u-marginL {
  margin-left: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-marginL {
    margin-left: 2.5rem !important;
  }
}
.u-marginAz {
  margin: 0 !important;
}
.u-marginTz {
  margin-top: 0 !important;
}
.u-marginBz {
  margin-bottom: 0 !important;
}
.u-marginRz {
  margin-right: 0 !important;
}
.u-marginLz {
  margin-left: 0 !important;
}
.u-marginHz {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.u-marginVz {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.u-marginAauto {
  margin: auto !important;
}
.u-marginTauto {
  margin-top: auto !important;
}
.u-marginBauto {
  margin-bottom: auto !important;
}
.u-marginRauto {
  margin-right: auto !important;
}
.u-marginLauto {
  margin-left: auto !important;
}
.u-marginHauto {
  margin-left: auto !important;
  margin-right: auto !important;
}
.u-marginVauto {
  margin-top: auto !important;
  margin-bottom: auto !important;
}
/** 
 * Paddings, .u-padding{direction}{size}
 */
.u-paddingAxxxxsm {
  padding: 0.25rem !important;
}
.u-paddingAxxxsm {
  padding: 0.3125rem !important;
}
.u-paddingAxxsm {
  padding: 0.41666667rem !important;
}
.u-paddingAxsm {
  padding: 0.625rem !important;
}
.u-paddingAsm {
  padding: 0.93750234rem !important;
}
.u-paddingAmd {
  padding: 1.25rem !important;
}
.u-paddingAlg {
  padding: 1.875rem !important;
}
.u-paddingAxlg {
  padding: 2.5rem !important;
}
.u-paddingAxxlg {
  padding: 3.75rem !important;
}
.u-paddingAxxxlg {
  padding: 5rem !important;
}
.u-paddingA {
  padding: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingA {
    padding: 2.5rem !important;
  }
}
.u-paddingHxxxsm {
  padding-left: 0.3125rem !important;
  padding-right: 0.3125rem !important;
}
.u-paddingHxxsm {
  padding-left: 0.41666667rem !important;
  padding-right: 0.41666667rem !important;
}
.u-paddingHxsm {
  padding-left: 0.625rem !important;
  padding-right: 0.625rem !important;
}
.u-paddingHsm {
  padding-left: 0.93750234rem !important;
  padding-right: 0.93750234rem !important;
}
.u-paddingHmd {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}
.u-paddingHlg {
  padding-left: 1.875rem !important;
  padding-right: 1.875rem !important;
}
.u-paddingHxlg {
  padding-left: 2.5rem !important;
  padding-right: 2.5rem !important;
}
.u-paddingHxxlg {
  padding-left: 3.75rem !important;
  padding-right: 3.75rem !important;
}
.u-paddingHxxxlg {
  padding-left: 5rem !important;
  padding-right: 5rem !important;
}
.u-paddingH {
  padding-left: 1.25rem !important;
  padding-right: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingH {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
}
.u-paddingVxxxxsm {
  padding-top: 0.25rem !important;
  padding-bottom: 0.25rem !important;
}
.u-paddingVxxxsm {
  padding-top: 0.3125rem !important;
  padding-bottom: 0.3125rem !important;
}
.u-paddingVxxsm {
  padding-top: 0.41666667rem !important;
  padding-bottom: 0.41666667rem !important;
}
.u-paddingVxsm {
  padding-top: 0.625rem !important;
  padding-bottom: 0.625rem !important;
}
.u-paddingVsm {
  padding-top: 0.93750234rem !important;
  padding-bottom: 0.93750234rem !important;
}
.u-paddingVmd {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}
.u-paddingVlg {
  padding-top: 1.875rem !important;
  padding-bottom: 1.875rem !important;
}
.u-paddingVxlg {
  padding-top: 2.5rem !important;
  padding-bottom: 2.5rem !important;
}
.u-paddingVxxlg {
  padding-top: 3.75rem !important;
  padding-bottom: 3.75rem !important;
}
.u-paddingVxxxlg {
  padding-top: 5rem !important;
  padding-bottom: 5rem !important;
}
.u-paddingV {
  padding-top: 1.25rem !important;
  padding-bottom: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingV {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
}
.u-paddingTxxxxsm {
  padding-top: 0.25rem !important;
}
.u-paddingTxxxsm {
  padding-top: 0.3125rem !important;
}
.u-paddingTxxsm {
  padding-top: 0.41666667rem !important;
}
.u-paddingTxsm {
  padding-top: 0.625rem !important;
}
.u-paddingTsm {
  padding-top: 0.93750234rem !important;
}
.u-paddingTmd {
  padding-top: 1.25rem !important;
}
.u-paddingTlg {
  padding-top: 1.875rem !important;
}
.u-paddingTxlg {
  padding-top: 2.5rem !important;
}
.u-paddingTxxlg {
  padding-top: 3.75rem !important;
}
.u-paddingTxxxlg {
  padding-top: 5rem !important;
}
.u-paddingT {
  padding-top: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingT {
    padding-top: 2.5rem !important;
  }
}
.u-paddingBxxxxsm {
  padding-bottom: 0.25rem !important;
}
.u-paddingBxxxsm {
  padding-bottom: 0.3125rem !important;
}
.u-paddingBxxsm {
  padding-bottom: 0.41666667rem !important;
}
.u-paddingBxsm {
  padding-bottom: 0.625rem !important;
}
.u-paddingBsm {
  padding-bottom: 0.93750234rem !important;
}
.u-paddingBmd {
  padding-bottom: 1.25rem !important;
}
.u-paddingBlg {
  padding-bottom: 1.875rem !important;
}
.u-paddingBxlg {
  padding-bottom: 2.5rem !important;
}
.u-paddingBxxlg {
  padding-bottom: 3.75rem !important;
}
.u-paddingBxxxlg {
  padding-bottom: 5rem !important;
}
.u-paddingB {
  padding-bottom: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingB {
    padding-bottom: 2.5rem !important;
  }
}
.u-paddingRxxxxsm {
  padding-right: 0.25rem !important;
}
.u-paddingRxxxsm {
  padding-right: 0.3125rem !important;
}
.u-paddingRxxsm {
  padding-right: 0.41666667rem !important;
}
.u-paddingRxsm {
  padding-right: 0.625rem !important;
}
.u-paddingRsm {
  padding-right: 0.93750234rem !important;
}
.u-paddingRmd {
  padding-right: 1.25rem !important;
}
.u-paddingRlg {
  padding-right: 1.875rem !important;
}
.u-paddingRxlg {
  padding-right: 2.5rem !important;
}
.u-paddingRxxlg {
  padding-right: 3.75rem !important;
}
.u-paddingRxxxlg {
  padding-right: 5rem !important;
}
.u-paddingR {
  padding-right: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingR {
    padding-right: 2.5rem !important;
  }
}
.u-paddingLxxxxsm {
  padding-left: 0.25rem !important;
}
.u-paddingLxxxsm {
  padding-left: 0.3125rem !important;
}
.u-paddingLxxsm {
  padding-left: 0.41666667rem !important;
}
.u-paddingLxsm {
  padding-left: 0.625rem !important;
}
.u-paddingLsm {
  padding-left: 0.93750234rem !important;
}
.u-paddingLmd {
  padding-left: 1.25rem !important;
}
.u-paddingLlg {
  padding-left: 1.875rem !important;
}
.u-paddingLxlg {
  padding-left: 2.5rem !important;
}
.u-paddingLxxlg {
  padding-left: 3.75rem !important;
}
.u-paddingLxxxlg {
  padding-left: 5rem !important;
}
.u-paddingL {
  padding-left: 1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingL {
    padding-left: 2.5rem !important;
  }
}
.u-paddingAz {
  padding: 0 !important;
}
.u-paddingTz {
  padding-top: 0 !important;
}
.u-paddingBz {
  padding-bottom: 0 !important;
}
.u-paddingRz {
  padding-right: 0 !important;
}
.u-paddingLz {
  padding-left: 0 !important;
}
.u-paddingHz {
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.u-paddingVz {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
/** 
 * Collapsing margins
 * Negative margins to pull content beyond paddings, using e.g. margin-top: -1em;
 */
.u-pullHxxxsm {
  margin-left: -0.3125rem !important;
  margin-right: -0.3125rem !important;
}
.u-pullHxxsm {
  margin-left: -0.41666667rem !important;
  margin-right: -0.41666667rem !important;
}
.u-pullHxsm {
  margin-left: -0.625rem !important;
  margin-right: -0.625rem !important;
}
.u-pullHsm {
  margin-left: -0.93750234rem !important;
  margin-right: -0.93750234rem !important;
}
.u-pullHmd {
  margin-left: -1.25rem !important;
  margin-right: -1.25rem !important;
}
.u-pullHlg {
  margin-left: -1.875rem !important;
  margin-right: -1.875rem !important;
}
.u-pullHxlg {
  margin-left: -2.5rem !important;
  margin-right: -2.5rem !important;
}
.u-pullHxxlg {
  margin-left: -3.75rem !important;
  margin-right: -3.75rem !important;
}
.u-pullHxxxlg {
  margin-left: -5rem !important;
  margin-right: -5rem !important;
}
.u-pullH {
  margin-left: -1.25rem !important;
  margin-right: -1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-pullH {
    margin-left: -2.5rem !important;
    margin-right: -2.5rem !important;
  }
}
.u-pullVxxxxsm {
  margin-top: -0.25rem !important;
  margin-bottom: -0.25rem !important;
}
.u-pullVxxxsm {
  margin-top: -0.3125rem !important;
  margin-bottom: -0.3125rem !important;
}
.u-pullVxxsm {
  margin-top: -0.41666667rem !important;
  margin-bottom: -0.41666667rem !important;
}
.u-pullVxsm {
  margin-top: -0.625rem !important;
  margin-bottom: -0.625rem !important;
}
.u-pullVsm {
  margin-top: -0.93750234rem !important;
  margin-bottom: -0.93750234rem !important;
}
.u-pullVmd {
  margin-top: -1.25rem !important;
  margin-bottom: -1.25rem !important;
}
.u-pullVlg {
  margin-top: -1.875rem !important;
  margin-bottom: -1.875rem !important;
}
.u-pullVxlg {
  margin-top: -2.5rem !important;
  margin-bottom: -2.5rem !important;
}
.u-pullVxxlg {
  margin-top: -3.75rem !important;
  margin-bottom: -3.75rem !important;
}
.u-pullVxxxlg {
  margin-top: -5rem !important;
  margin-bottom: -5rem !important;
}
.u-pullV {
  margin-top: -1.25rem !important;
  margin-bottom: -1.25rem !important;
}
@media only screen and (min-width: 1024px), print {
  .u-pullV {
    margin-top: -2.5rem !important;
    margin-bottom: -2.5rem !important;
  }
}
.u-pullTxxxsm {
  margin-top: -0.3125rem;
}
.u-pullTxxsm {
  margin-top: -0.41666667rem;
}
.u-pullTxsm {
  margin-top: -0.625rem;
}
.u-pullTsm {
  margin-top: -0.93750234rem;
}
.u-pullTmd,
.u-pullT {
  margin-top: -1.25rem;
}
.u-pullTlg {
  margin-top: -1.875rem;
}
.u-pullTxlg {
  margin-top: -2.5rem;
}
.u-pullTxxlg {
  margin-top: -3.75rem;
}
.u-pullTxxxlg {
  margin-top: -5rem;
}
.u-pullBxxxsm {
  margin-bottom: -0.3125rem;
}
.u-pullBxxsm {
  margin-bottom: -0.41666667rem;
}
.u-pullBxsm {
  margin-bottom: -0.625rem;
}
.u-pullBsm {
  margin-bottom: -0.93750234rem;
}
.u-pullBmd,
.u-pullB {
  margin-bottom: -1.25rem;
}
.u-pullBlg {
  margin-bottom: -1.875rem;
}
.u-pullBxlg {
  margin-bottom: -2.5rem;
}
.u-pullBxxlg {
  margin-bottom: -3.75rem;
}
.u-pullBxxxlg {
  margin-bottom: -5rem;
}
/**
 * Mixins used to generate classes.
 */
/* stylelint-enable */
/** 
 * Max width media query
 */
@media only screen and (max-width: 479px), print {
  .u-max-xsm-marginAz {
    margin: 0 !important;
  }
}
@media only screen and (max-width: 599px), print {
  .u-max-sm-paddingAz {
    padding: 0 !important;
  }
}
/** 
 * Custom media queries spaces
 */
@media only screen and (min-width: 375px), print {
  .u-xxsm-marginRz {
    margin-right: 0 !important;
  }
  .u-xxsm-marginAz {
    margin: 0 !important;
  }
  .u-xxsm-marginBz {
    margin-bottom: 0 !important;
  }
  .u-xxsm-marginRmd {
    margin-right: 1.25rem !important;
  }
}
@media only screen and (min-width: 480px), print {
  .u-xsm-marginBz {
    margin-bottom: 0 !important;
  }
  .u-xsm-marginAz {
    margin: 0 !important;
  }
  .u-xsm-marginRsm {
    margin-right: 0.93750234rem !important;
  }
  .u-xsm-marginHlg {
    margin-left: 1.875rem !important;
    margin-right: 1.875rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-marginAz {
    margin: 0 !important;
  }
  .u-sm-marginHz {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  .u-sm-marginTz {
    margin-top: 0 !important;
  }
  .u-sm-marginLz {
    margin-left: 0 !important;
  }
  .u-sm-marginBz {
    margin-bottom: 0 !important;
  }
  .u-sm-marginLxsm {
    margin-left: 0.625rem !important;
  }
  .u-sm-marginRsm {
    margin-right: 0.93750234rem !important;
  }
  .u-sm-marginLsm {
    margin-left: 0.93750234rem !important;
  }
  .u-sm-marginTmd {
    margin-top: 1.25rem !important;
  }
  .u-sm-marginTxlg {
    margin-top: 2.5rem !important;
  }
  .u-sm-marginBxlg {
    margin-bottom: 2.5rem !important;
  }
  .u-sm-marginLmd {
    margin-left: 1.25rem !important;
  }
  .u-sm-marginAxlg {
    margin: 2.5rem !important;
  }
  .u-sm-marginBxsm {
    margin-bottom: 0.625rem !important;
  }
  .u-sm-marginBmd {
    margin-bottom: 1.25rem !important;
  }
  .u-sm-marginRmd {
    margin-right: 1.25rem !important;
  }
  .u-sm-marginVmd {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  .u-sm-marginHlg {
    margin-left: 1.875rem !important;
    margin-right: 1.875rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-marginAz {
    margin: 0 !important;
  }
  .u-md-marginTz {
    margin-top: 0 !important;
  }
  .u-md-marginAlg {
    margin: 1.875rem !important;
  }
  .u-md-marginHlg {
    margin-left: 1.875rem !important;
    margin-right: 1.875rem !important;
  }
  .u-md-marginHxlg {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .u-md-marginTmd {
    margin-top: 1.25rem !important;
  }
  .u-md-marginTlg {
    margin-top: 1.875rem !important;
  }
  .u-md-marginTxlg {
    margin-top: 2.5rem !important;
  }
  .u-md-marginBz {
    margin-bottom: 0 !important;
  }
  .u-md-marginBxsm {
    margin-bottom: 0.625rem !important;
  }
  .u-md-marginBsm {
    margin-bottom: 0.93750234rem !important;
  }
  .u-md-marginBlg {
    margin-bottom: 1.875rem !important;
  }
  .u-md-marginBxlg {
    margin-bottom: 2.5rem !important;
  }
  .u-md-marginBxxlg {
    margin-bottom: 3.75rem !important;
  }
  .u-md-marginLlg {
    margin-left: 1.875rem !important;
  }
  .u-md-marginRmd {
    margin-right: 1.25rem !important;
  }
  .u-md-marginHz {
    margin-right: 0 !important;
    margin-left: 0 !important;
  }
  .u-md-marginVxlg {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  .u-md-marginLxlg {
    margin-left: 2.5rem !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-marginHmd {
    margin-left: 1.25rem !important;
    margin-right: 1.25rem !important;
  }
  .u-lg-marginHxlg {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  .u-lg-marginLsm {
    margin-left: 0.93750234rem !important;
  }
  .u-lg-marginBxlg {
    margin-bottom: 2.5rem !important;
  }
  .u-lg-marginBz {
    margin-bottom: 0 !important;
  }
  .u-lg-marginBmd {
    margin-bottom: 1.25rem !important;
  }
  .u-lg-marginBxxxlg {
    margin-bottom: 5rem !important;
  }
  .u-lg-marginTz {
    margin-top: 0 !important;
  }
  .u-lg-marginTxlg {
    margin-top: 2.5rem !important;
  }
  .u-lg-marginRmd {
    margin-right: 1.25rem !important;
  }
  .u-lg-marginRz {
    margin-right: 0 !important;
  }
}
/* Padding */
@media only screen and (min-width: 320px), print {
  .u-xxxsm-paddingTxsm {
    padding-top: 0.625rem !important;
  }
}
@media only screen and (min-width: 375px), print {
  .u-xsm-paddingAxsm {
    padding: 0.41666667rem !important;
  }
  .u-xxsm-paddingAsm {
    padding: 0.93750234rem !important;
  }
  .u-xxsm-paddingAmd {
    padding: 1.25rem !important;
  }
  .u-xsm-paddingVlg {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }
  .u-xxsm-paddingTxxlg {
    padding-top: 3.75rem !important;
  }
}
@media only screen and (min-width: 480px), print {
  .u-xsm-paddingTxxxxlg {
    padding-top: 6.25rem !important;
  }
  .u-xsm-paddingAxsm {
    padding: 0.625rem !important;
  }
  .u-xsm-paddingRxsm {
    padding-right: 0.625rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-paddingAsm {
    padding: 0.93750234rem !important;
  }
  .u-sm-paddingAmd {
    padding: 1.25rem !important;
  }
  .u-sm-paddingVmd {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  .u-sm-paddingVlg {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }
  .u-sm-paddingAlg {
    padding: 1.875rem !important;
  }
  .u-sm-paddingBsm {
    padding-bottom: 0.93750234rem !important;
  }
  .u-sm-paddingHxlg {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .u-sm-paddingBxlg {
    padding-bottom: 2.5rem !important;
  }
  .u-sm-paddingTlg {
    padding-top: 1.875rem !important;
  }
  .u-sm-paddingTxlg {
    padding-top: 2.5rem !important;
  }
  .u-sm-paddingHxxlg {
    padding-left: 3.75rem !important;
    padding-right: 3.75rem !important;
  }
  .u-sm-paddingHxxxlg {
    padding-left: 5rem !important;
    padding-right: 5rem !important;
  }
  .u-sm-paddingHlg {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .u-sm-paddingTxsm {
    padding-top: 0.625rem !important;
  }
  .u-sm-paddingTmd {
    padding-top: 1.25rem !important;
  }
  .u-sm-paddingBmd {
    padding-bottom: 1.25rem !important;
  }
  .u-sm-paddingBlg {
    padding-bottom: 1.875rem !important;
  }
  .u-sm-paddingLlg {
    padding-left: 1.875rem !important;
  }
  .u-sm-paddingRlg {
    padding-right: 1.875rem !important;
  }
  .u-sm-paddingAmd {
    padding: 1.25rem !important;
  }
  .u-sm-paddingHsm {
    padding-left: 0.93750234rem !important;
    padding-right: 0.93750234rem !important;
  }
  .u-sm-paddingHmd {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .u-sm-paddingAz {
    padding: 0 !important;
  }
  .u-sm-paddingHz {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-paddingAz {
    padding: 0 !important;
  }
  .u-md-paddingHz {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  .u-md-paddingLz {
    padding-left: 0 !important;
  }
  .u-md-paddingHlg {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .u-md-paddingAsm {
    padding: 0.93750234rem !important;
  }
  .u-md-paddingAmd {
    padding: 1.25rem !important;
  }
  .u-md-paddingAlg {
    padding: 1.875rem !important;
  }
  .u-md-paddingBsm {
    padding-bottom: 0.93750234rem !important;
  }
  .u-md-paddingAxlg {
    padding: 2.5rem !important;
  }
  .u-md-paddingVlg {
    padding-top: 1.875rem !important;
    padding-bottom: 1.875rem !important;
  }
  .u-md-paddingVxlg {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  .u-md-paddingTxxsm {
    padding-top: 0.41666667rem !important;
  }
  .u-md-paddingTxxxsm {
    padding-top: 0.3125rem !important;
  }
  .u-md-paddingBxsm {
    padding-bottom: 0.625rem !important;
  }
  .u-md-paddingBmd {
    padding-bottom: 1.25rem !important;
  }
  .u-md-paddingBxlg {
    padding-bottom: 2.5rem !important;
  }
  .u-md-paddingTmd {
    padding-top: 1.25rem !important;
  }
  .u-md-paddingTxlg {
    padding-top: 2.5rem !important;
  }
  .u-md-paddingTz {
    padding-top: 0 !important;
  }
  .u-md-paddingHsm {
    padding-left: 0.93750234rem !important;
    padding-right: 0.93750234rem !important;
  }
  .u-md-paddingHmd {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .u-md-paddingHxlg {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .u-md-paddingA50 {
    padding: 50px !important;
  }
  .u-md-paddingRxxlg {
    padding-right: 3.75rem !important;
  }
  .u-md-paddingRmd {
    padding-right: 1.25rem !important;
  }
  .u-md-paddingRxsm {
    padding-right: 0.625rem !important;
  }
  .u-md-paddingLxsm {
    padding-left: 0.625rem !important;
  }
  .u-md-paddingLmd {
    padding-left: 1.25rem !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-paddingBz {
    padding-bottom: 0 !important;
  }
  .u-lg-paddingBxsm {
    padding-bottom: 0.625rem !important;
  }
  .u-lg-paddingHlg {
    padding-left: 1.875rem !important;
    padding-right: 1.875rem !important;
  }
  .u-lg-paddingLlg {
    padding-left: 1.875rem !important;
  }
  .u-lg-paddingLxlg {
    padding-left: 2.5rem !important;
  }
  .u-lg-paddingTlg {
    padding-top: 1.875rem !important;
  }
  .u-lg-paddingTxlg {
    padding-top: 2.5rem !important;
  }
  .u-lg-paddingHxlg {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  .u-lg-paddingTz {
    padding-top: 0 !important;
  }
  .u-lg-paddingHsm {
    padding-left: 0.93750234rem !important;
    padding-right: 0.93750234rem !important;
  }
  .u-lg-paddingHmd {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  .u-lg-paddingAz {
    padding: 0 !important;
  }
}
@media only screen and (min-width: 1366px) {
  .u-lg-marginHsm {
    padding-right: 0.93750234rem !important;
    padding-left: 0.93750234rem !important;
    color: red !important;
  }
  .u-xlg-paddingAz {
    padding: 0 !important;
  }
}
.u-paddingKlarnaIframe {
  padding-left: 0.41666667rem;
  padding-right: 0.41666667rem;
}
@media only screen and (min-width: 1024px), print {
  .u-paddingKlarnaIframe {
    padding-left: calc(2.5rem - 15px);
    padding-right: calc(2.5rem - 15px);
  }
}
/**
 * Text font family.
 */
.u-textFamilyPrimary {
  font-family: 'Akkurat', sans-serif;
}
.u-textFamilySecondary {
  font-family: 'CoopNew-Black', sans-serif;
  font-weight: normal;
}
/**
 * Text font size.
 */
.u-textXXXSmall {
  font-size: 0.625rem !important;
}
.u-textXXSmall {
  font-size: 0.6875rem !important;
}
.u-textXSmall {
  font-size: 0.75rem !important;
}
.u-textSmall {
  font-size: 0.875rem !important;
}
.u-textMedium,
.u-textNormal {
  font-size: 1rem !important;
}
.u-textLarge {
  font-size: 1.125rem !important;
}
.u-textXLarge {
  font-size: 1.25rem !important;
}
.u-text2XLarge {
  font-size: 1.5rem !important;
}
.u-text3XLarge {
  font-size: 1.75rem !important;
}
.u-text4XLarge {
  font-size: 2.1875rem !important;
}
.u-text5XLarge {
  font-size: 3.125rem !important;
}
@media only screen and (min-width: 375px), print {
  .u-xxsm-textSmall {
    font-size: 0.875rem !important;
  }
}
@media only screen and (min-width: 375px), print {
  .u-xxsm-textMedium {
    font-size: 1rem !important;
  }
}
@media only screen and (min-width: 480px), print {
  .u-xsm-textSmall {
    font-size: 0.875rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-textMedium {
    font-size: 1rem !important;
  }
}
@media only screen and (min-width: 320px), print {
  .u-xxxsm-to-sm-textMedium {
    font-size: 11px !important;
  }
}
@media only screen and (min-width: 375px), print {
  .u-xxxsm-to-sm-textMedium {
    font-size: 0.875rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-xxxsm-to-sm-textMedium {
    font-size: 1rem !important;
  }
}
@media only screen and (min-width: 375px), print {
  .u-xxsm-text4XLarge {
    font-size: 2.1875rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-textSmall {
    font-size: 0.875rem !important;
  }
}
.u-sm-textXLarge {
  font-size: 0.875rem !important;
}
@media only screen and (min-width: 600px), print {
  .u-sm-textXLarge {
    font-size: 1.25rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-text3XLarge {
    font-size: 1.75rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-text4XLarge {
    font-size: 2.1875rem !important;
  }
}
.u-sm-text4XLarge2 {
  font-size: 32px !important;
}
@media only screen and (min-width: 600px), print {
  .u-sm-text4XLarge2 {
    font-size: 42px !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-text5XLarge {
    font-size: 3.125rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-textMedium {
    font-size: 1rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-text2XLarge {
    font-size: 1.5rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-textSmall {
    font-size: 0.875rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-textLarge {
    font-size: 1.125rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-textXLarge {
    font-size: 1.25rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-text2XLarge {
    font-size: 1.5rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-text3XLarge {
    font-size: 1.75rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-text4XLarge {
    font-size: 2.1875rem !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-text5XLarge {
    font-size: 3.125rem !important;
  }
}
@media only screen and (min-width: 1366px) {
  .u-xlg-text4XLarge {
    font-size: 2.1875rem !important;
  }
}
@media only screen and (min-width: 600px), print {
  .u-sm-textLarge {
    font-size: 1.125rem !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-text5XLarge {
    font-size: 3.125rem !important;
  }
}
/**
 * Text font weights
 */
.u-textWeightThin {
  font-weight: 200 !important;
}
.u-textWeightLight {
  font-weight: 300 !important;
}
.u-textWeightNormal {
  font-weight: normal !important;
}
.u-textWeightMedium {
  font-weight: 500 !important;
}
.u-textWeightBold {
  font-weight: bold !important;
}
/**
 * Text font styles
 */
.u-textItalic {
  font-style: italic !important;
}
/**
 * Word breaking
 *
 * Break strings when their length exceeds the width of their container.
 */
.u-textBreakWord {
  hyphens: auto;
  word-break: break-word !important;
}
.u-textNoWrap {
  white-space: nowrap !important;
}
.u-textNormalWrap {
  white-space: normal !important;
}
/**
 * Horizontal text alignment
 */
.u-textCenter {
  text-align: center !important;
}
@media only screen and (min-width: 768px), print {
  .u-md-textCenter {
    text-align: center !important;
  }
}
.u-textLeft {
  text-align: left !important;
}
@media only screen and (min-width: 600px), print {
  .u-sm-textLeft {
    text-align: left !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-textLeft {
    text-align: left !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-textLeft {
    text-align: left !important;
  }
}
.u-textRight {
  text-align: right !important;
}
@media only screen and (min-width: 600px), print {
  .u-sm-textRight {
    text-align: right !important;
  }
}
@media only screen and (min-width: 768px), print {
  .u-md-textRight {
    text-align: right !important;
  }
}
@media only screen and (min-width: 1024px), print {
  .u-lg-textRight {
    text-align: right !important;
  }
}
/**
 * Prevent whitespace wrapping
 */
.u-textNoWrap {
  white-space: nowrap !important;
}
.u-wordBreakAll {
  text-wrap: balance;
  word-break: break-all;
}
/**
 * Text truncation
 *
 * Prevent text from wrapping onto multiple lines, and truncate with an
 * ellipsis.
 *
 * 1. Ensure that the node has a maximum width after which truncation can
 *    occur.
 * 2. Fix for IE 8/9 if `word-wrap: break-word` is in effect on ancestor
 *    nodes.
 */
.u-textTruncate {
  max-width: 100%;
  /* 1 */
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
  word-wrap: normal !important;
  /* 2 */
}
/*
 * Inherit the ancestor's text color.
 */
.u-textInheritColor {
  color: inherit !important;
}
/*
 * Text transform
 */
.u-textLowercase {
  text-transform: lowercase !important;
}
.u-textUppercase {
  text-transform: uppercase !important;
}
.u-textCapitalize {
  text-transform: capitalize !important;
}
/*
 * Line heights
 */
.u-lineHeightNone {
  line-height: 0 !important;
}
@media only screen and (min-width: 480px), print {
  .u-xs-lineHeightNone {
    line-height: 0 !important;
  }
}
.u-lineHeightNormal {
  line-height: 1 !important;
}
.u-lineHeightLarge {
  line-height: 1.5;
}
.u-lineHeightXLarge {
  line-height: 1.75;
}
.u-lineHeightLg {
  line-height: 1.3 !important;
}
.u-lineHeightxLg {
  line-height: 1.375 !important;
}
.u-lineHeightxxLg {
  line-height: 28px !important;
}
.u-lineHeightxxxLg {
  line-height: 48px !important;
}
/*
 * Text shadow.
 */
.u-textShadowSm {
  text-shadow: 0 0 8px rgba(51, 51, 51, 0.6);
}
.u-textShadowMd {
  text-shadow: 0 0 12px rgba(51, 51, 51, 0.6);
}
.u-textShadowLg {
  text-shadow: 0 0 24px rgba(51, 51, 51, 0.6);
}
.u-textDropCap {
  font-family: 'CoopNew-Black', sans-serif;
  font-size: 54px;
  float: left;
  margin-top: 16px;
  margin-right: 0.3125rem;
  position: relative;
}
/*
 * Text decoration
 */
.u-textUnderline {
  text-decoration: underline;
}
.u-textUnderlinePositionUnder {
  text-underline-position: under;
}
.u-overflowWrapAnywhere {
  overflow-wrap: anywhere !important;
}
.Banner {
  min-height: 100%;
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  background-size: cover;
  background-position: center;
  background-color: #fff;
}
@media only screen and (min-width: 768px), print {
  .Banner {
    flex-direction: row;
  }
}
.Banner.Banner--twoHundred .Banner-cell {
  min-height: 200px;
}
.Banner-cell {
  width: 100%;
  display: flex;
  align-items: stretch;
  position: relative;
  min-height: 350px;
  background-size: cover;
  background-position: center;
  order: 1;
}
.Banner-cell--stretch {
  align-items: stretch;
}
.Banner-cell.Banner-cell--orderedFirst {
  order: 0;
}
@media only screen and (min-width: 768px), print {
  .Banner-cell.Banner-cell--orderedFirst {
    order: 1;
  }
}
.Banner-media {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-size: cover;
  background-position: center;
}
.Banner-image {
  object-fit: cover;
  z-index: 0;
}
.Banner-content {
  z-index: 1;
  min-height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  line-height: 24px;
  padding: 1.875rem;
}
@media only screen and (min-width: 768px), print {
  .Banner-content {
    padding: 3.125rem;
  }
}
.Banner-content.Banner-content--noVCenter {
  justify-content: space-between;
}
.Banner-content.Banner-content--verticalFlip {
  flex-direction: column-reverse;
}
.Banner-text {
  width: 100%;
}
.Banner-text--relative {
  position: relative;
}
.Banner-link {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  z-index: 2;
}
.Banner-wrappingLink {
  width: 100%;
  display: block;
  z-index: 2;
}
.Banner-heading {
  line-height: 1;
  font-weight: normal;
  font-size: 1.5rem;
}
@media only screen and (min-width: 600px), print {
  .Banner-heading {
    font-size: 1.75rem;
  }
}
.Banner-heading.Banner-heading--large {
  font-size: 2.1875rem;
}
@media only screen and (min-width: 600px), print {
  .Banner-heading.Banner-heading--large {
    font-size: 3.125rem;
  }
}
.Banner-button {
  padding: 1.875rem 0 0 0;
}
@media only screen and (min-width: 768px), print {
  .Banner-button {
    padding: 0.625rem 0 0 0;
  }
  .Banner-button--left {
    text-align: left;
  }
  .Banner-button--right {
    text-align: right;
  }
  .Banner-button--top {
    margin-bottom: auto;
  }
  .Banner-button--bottom {
    margin-top: auto;
  }
}
.Banner-button a {
  z-index: 1;
}
.Banner-image {
  width: 100%;
  height: 100%;
  position: absolute;
}
.Banner-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.Banner--noMinHeight .Banner-cell {
  min-height: 100% !important;
}
@media only screen and (min-width: 768px), print {
  .Banner--contentLessPadding {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }
}
@media only screen and (min-width: 768px), print {
  .Banner--contentLessHorizontalPadding {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
.Banner--prodOffers {
  min-height: 180px;
  height: 100%;
  width: 100%;
  border: none;
}
.Banner--prodOffers .Banner-cell {
  width: 100%;
  height: 100%;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  padding: 20px 30px;
}
@media only screen and (min-width: 600px), print {
  .Banner--prodOffers .Banner-cell {
    padding: 30px 40px;
  }
}
@media only screen and (min-width: 600px), print {
  .Banner--prodOffers .Banner-cell--step1 {
    align-items: flex-start;
  }
}
.Banner--prodOffers .Banner-cell--step2 {
  align-items: flex-start;
}
.Banner--prodOffers .Banner-cell--step2 .Banner--notice {
  width: 100%;
  height: 100%;
}
.Banner--prodOffers .Banner-cell--step3 {
  align-items: flex-start;
}
.Banner--prodOffers .Banner-cell .Banner-formfields {
  width: 100%;
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 600px), print {
  .Banner--prodOffers .Banner-cell .Banner-formfields {
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0.625rem;
  }
}
.Banner--prodOffers .Banner-cell .Banner-formfields .field-1 {
  width: 100%;
  margin: 5px 0;
}
@media only screen and (min-width: 600px), print {
  .Banner--prodOffers .Banner-cell .Banner-formfields .field-1 {
    width: 40%;
  }
}
.Banner--prodOffers .Banner-cell--step4 {
  align-items: flex-start;
}
.Banner--prodOffers .Banner-cell--step4 .Banner-content {
  min-height: 0;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  margin-bottom: 0.93750234rem;
  padding: 0;
  /*line-height: 24px;*/
}
@media only screen and (min-width: 600px), print {
  .Banner--prodOffers .Banner-cell--step4 .Banner-content {
    margin-bottom: 0.625rem;
  }
}
.Banner--prodOffers .Banner-cell--step4 .Banner-cta {
  width: 100%;
  display: flex;
  flex-direction: row;
  justify-content: flex-start;
  align-items: center;
}
.Banner--prodOffers .Banner-cell--step5 .Banner--notice {
  width: 100%;
  height: 100%;
  background-color: #e8f2d7;
}
.Banner--prodOffers .Banner-cell--step6 {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  background-color: #e8f2d7;
}
.Banner--prodOffers .Banner-cell--step7 {
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  background-color: #e8f2d7;
}
@media only screen and (min-width: 600px), print {
  .Banner--prodOffers .Banner-cell--step7 {
    flex-direction: row;
    align-items: center;
  }
}
.Banner--triple {
  flex-wrap: wrap;
}
@media only screen and (min-width: 1080px), print {
  .Banner--triple {
    flex-wrap: nowrap;
  }
}
@media only screen and (min-width: 768px), print {
  .Banner--triple .Banner-cell {
    flex: 1 0 50%;
  }
}
@media only screen and (min-width: 1080px), print {
  .Banner--triple .Banner-cell {
    flex: 1 1 auto;
  }
}
.Banner--triple .Banner-cell .Banner-content {
  min-height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  line-height: 24px;
  padding: 1.875rem;
  /*.Banner-content--noVCenter {
                justify-content: space-between;
            }

            .Banner-content--verticalFlip {
                flex-direction: column-reverse;
            }*/
}
@media only screen and (min-width: 768px), print {
  .Banner--triple .Banner-cell .Banner-content {
    padding: 3.125rem;
  }
}
@media only screen and (min-width: 1080px), print {
  .Banner--triple .Banner-cell .Banner-content {
    padding-left: 1.875rem;
    padding-right: 1.875rem;
  }
}
.Banner--triple .Banner-cell .Banner-content--VerticalCenter {
  justify-content: center;
}
.Button {
  max-width: 100%;
  height: 40px;
  display: inline-block;
  color: #333;
  fill: none;
  stroke: #333;
  text-align: center;
  text-decoration: none !important;
  cursor: pointer;
  user-select: none;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  word-wrap: normal;
  border-radius: 4px;
  line-height: 1;
  font-size: 1rem;
  padding: 11px 34px;
  position: relative;
  -webkit-appearance: none;
  border: 1px solid transparent;
  vertical-align: middle;
  font-weight: normal;
  outline: none;
}
.Button.is-disabled,
.Button:disabled {
  pointer-events: none;
}
.Button.is-disabled,
.Button:disabled {
  opacity: 0.5;
}
.Button:focus {
  border: 1px solid #00aa46;
}
.Button-iconFill,
.Button-iconStroke {
  fill: none;
  stroke: none;
  vertical-align: bottom;
  transition: fill 0.2s ease-in-out;
}
/***************** Colors *****************
*******************************************/
.Button--white {
  background: #ffffff;
  color: #00aa46;
  stroke: #00aa46;
  border-color: #ffffff;
}
@media only screen and (min-width: 1024px), print {
  .Button--white:hover,
  .Button--white:focus {
    border-color: #00aa46;
  }
}
.Button--green {
  background: #00aa46;
  border-color: #00aa46;
  color: #ffffff;
  stroke: #ffffff;
}
@media only screen and (min-width: 1024px), print {
  .Button--green:hover,
  .Button--green:focus {
    background: #005537;
    border-color: #005537;
  }
  .Button--green.hasNoHover:hover,
  .Button--green.hasNoHover:focus {
    background: #00aa46;
    border-color: #005537;
  }
}
.Button--green.is-active {
  background: #005537;
  border-color: #005537;
}
.Button--red {
  background: #ff3300;
  border-color: #ff3300;
  color: #ffffff;
  stroke: #ffffff;
}
.Button--red:hover,
.Button--red:focus {
  border-color: #ff6565;
}
@media only screen and (min-width: 1024px), print {
  .Button--red:hover,
  .Button--red:focus {
    background: #ff6565;
    border-color: #ff6565;
  }
}
.Button--red.is-active {
  background: #ff6565;
  border-color: #ff6565;
}
.Button--greenLight2 {
  background: #e8f2d7;
  border-color: #e8f2d7;
  color: #005537;
  stroke: #005537;
}
@media only screen and (min-width: 1024px), print {
  .Button--greenLight2:hover,
  .Button--greenLight2:focus {
    background: #ffffff;
    border-color: #ffffff;
    color: #005537;
    stroke: #005537;
  }
}
.Button--greenDark {
  background: #005537;
  border-color: #005537;
  color: #ffffff;
  stroke: #ffffff;
}
@media only screen and (min-width: 1024px), print {
  .Button--greenDark:hover,
  .Button--greenDark:focus {
    background: #ffffff;
    border-color: #ffffff;
    color: #005537;
    stroke: #005537;
  }
}
.Button--transparentGray {
  background: #ffffff;
  border-color: #ededed;
  color: #999;
}
@media only screen and (min-width: 1024px), print {
  .Button--transparentGray:hover,
  .Button--transparentGray:focus {
    color: #00aa46;
    border-color: #00aa46;
  }
}
.Button--grayLight2 {
  background: #ededed;
  border-color: #ededed;
  color: #333;
}
.Button--grayLight2:hover,
.Button--grayLight2:focus {
  background: #00aa46;
  color: white;
}
.Button--grayLight2.is-disabled {
  pointer-events: none;
  opacity: 0.5;
}
.Button--transparentWhite {
  background: transparent;
  border-color: #ffffff;
  color: #ffffff;
  fill: #ffffff;
}
@media only screen and (min-width: 1024px), print {
  .Button--transparentWhite:hover,
  .Button--transparentWhite:focus-visible {
    background: #ffffff;
    color: #00aa46 !important;
    fill: #00aa46 !important;
  }
}
.Button--grayGreenToDarkGreen {
  background: transparent;
  border-color: #ededed;
  color: #00aa46;
}
@media only screen and (min-width: 1024px), print {
  .Button--grayGreenToDarkGreen:hover,
  .Button--grayGreenToDarkGreen:focus {
    border-color: #00aa46;
    color: #005537;
  }
}
.Button--transparentGreen {
  background: transparent;
  border-color: #00aa46;
  color: #00aa46;
  fill: #00aa46;
}
@media only screen and (min-width: 1024px), print {
  .Button--transparentGreen:hover,
  .Button--transparentGreen:focus-visible {
    color: #005537;
  }
}
.Button--transparentGreen.Button--transparentGreen.Button {
  stroke: #00aa46;
}
.Button--transparentGreenDark {
  background: transparent;
  border-color: #005537;
  color: #005537;
  fill: #005537;
}
@media only screen and (min-width: 1024px), print {
  .Button--transparentGreenDark:hover,
  .Button--transparentGreenDark:focus {
    background: #005537;
    color: #f5f5f5;
    fill: #f5f5f5;
  }
}
.Button--invertedGreen {
  background: #ffffff;
  border-color: #ededed;
  color: #097a36;
  stroke: #097a36;
}
@media only screen and (min-width: 1024px), print {
  .Button--invertedGreen:hover,
  .Button--invertedGreen:focus {
    color: #ffffff;
    stroke: #ffffff;
    background: #097a36;
    border-color: #097a36;
  }
  .Button--invertedGreen:hover.is-disabled,
  .Button--invertedGreen:focus.is-disabled {
    background: #ffffff;
    border-color: #ededed;
    color: #097a36;
    stroke: #097a36;
  }
}
.Button--invertedGreenDark {
  background: #ffffff;
  border-color: #ededed;
  color: #00aa46;
  stroke: #00aa46;
}
@media only screen and (min-width: 1024px), print {
  .Button--invertedGreenDark:hover,
  .Button--invertedGreenDark:focus {
    color: #ffffff;
    stroke: #ffffff;
    background: #005537;
    border-color: #005537;
  }
  .Button--invertedGreenDark:hover .Button-iconFill,
  .Button--invertedGreenDark:focus .Button-iconFill {
    fill: #ffffff;
  }
  .Button--invertedGreenDark.is-active {
    background: #005537;
    border-color: #005537;
  }
}
.Button--invertedGreenDark .Button-iconFill {
  fill: #00aa46;
}
.Button--facebook {
  background: #3a559f;
  border-color: #3a559f;
  color: #ffffff;
  fill: #ffffff;
}
.Button--facebook svg {
  height: 20px;
  width: 20px;
  vertical-align: middle;
  margin-left: 0.625rem;
  margin-top: -2px;
}
@media only screen and (min-width: 1024px), print {
  .Button--facebook:hover,
  .Button--facebook:focus {
    background: #ffffff;
    color: #3a559f;
    fill: #3a559f;
  }
}
/***************** Shapes *****************
*******************************************/
.Button--radius {
  border-radius: 20px;
}
.Button--radius18 {
  border-radius: 18px;
}
.Button--round {
  width: 40px;
  border-radius: 50%;
  display: flex;
  flex-shrink: 0;
  align-items: center;
  justify-content: center;
  padding: 12px;
  position: relative;
}
.Button--round svg {
  position: absolute;
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 50%;
  transform: translateY(-50%);
  width: 14px;
  height: 14px;
  fill: transparent;
}
.Button--roundSmall {
  width: 30px;
  height: 30px;
}
.Button--roundLarge {
  width: 70px;
  height: 70px;
}
/***************** Sizes ******************
*******************************************/
.Button--full {
  width: 100%;
  padding-left: 0;
  padding-right: 0;
}
.Button--small {
  font-size: 0.875rem;
  padding: 0.41666667rem 0.93750234rem;
  height: 30px;
  line-height: 1.1;
}
.Button--small .Button-iconFill,
.Button--small .Button-iconStroke {
  width: 1rem;
  height: 1rem;
}
.Button--smallV2 {
  font-size: 0.875rem;
  padding: 0.41666667rem 0.93750234rem;
  height: 30px;
  line-height: 1.1;
}
@media only screen and (min-width: 480px), print {
  .Button--smallV2 {
    padding-left: 58px;
    padding-right: 58px;
  }
}
.Button--medium {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  line-height: 1.1;
}
@media only screen and (min-width: 600px), print {
  .Button--medium {
    padding-left: 34px;
    padding-right: 34px;
  }
}
.Button--mediumToSmall {
  font-size: 0.875rem;
  padding-left: 1.25rem;
  padding-right: 1.25rem;
  line-height: 1.1;
}
@media only screen and (min-width: 600px), print {
  .Button--mediumToSmall {
    padding-left: 34px;
    padding-right: 34px;
  }
}
@media only screen and (min-width: 600px), print {
  .Button--mediumToSmall {
    font-size: 0.875rem;
    padding: 0.41666667rem 0.93750234rem;
    height: 30px;
    line-height: 1.1;
  }
  .Button--mediumToSmall .Button-iconFill,
  .Button--mediumToSmall .Button-iconStroke {
    width: 1rem;
    height: 1rem;
  }
}
.Button--mediumToSmall.Button--fixedWidth {
  min-width: 90px;
  padding-left: 0;
  padding-right: 0;
}
.Button--smallToMedium {
  font-size: 0.875rem;
  padding: 0.41666667rem 0.93750234rem;
  height: 30px;
  line-height: 1.1;
}
.Button--smallToMedium .Button-iconFill,
.Button--smallToMedium .Button-iconStroke {
  width: 1rem;
  height: 1rem;
}
@media only screen and (min-width: 600px), print {
  .Button--smallToMedium {
    font-size: 0.875rem;
    padding-left: 1.25rem;
    padding-right: 1.25rem;
    line-height: 1.1;
  }
}
@media only screen and (min-width: 600px), print and only screen and (min-width: 600px), print {
  .Button--smallToMedium {
    padding-left: 34px;
    padding-right: 34px;
  }
}
.Button--dynamic {
  height: auto;
}
.Button--doubleLine {
  height: 70px;
  border-radius: 35px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-top: 0;
  padding-bottom: 0;
}
.Button--compact {
  padding-left: 12px;
  padding-right: 12px;
}
.Button--textSmall {
  font-size: 0.875rem;
  padding-top: 11px;
  padding-bottom: 11px;
  line-height: 1.1;
}
.Button--textMedium {
  font-size: 1rem;
  line-height: 1;
}
.Button-textSmallToMedium {
  font-size: 0.875rem;
  padding-top: 11px;
  padding-bottom: 11px;
  line-height: 1.1;
}
@media only screen and (min-width: 600px), print {
  .Button-textSmallToMedium {
    font-size: 1rem;
    line-height: 1;
  }
}
.Grid {
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  min-width: 100%;
  flex: 1 1 100%;
}
.Grid-cell:empty {
  display: none !important;
}
.Grid-cell {
  width: 100%;
  flex: 0 0 100%;
  box-sizing: inherit;
}
.Grid-cell:empty {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}
.Grid-cell.Grid-emptyCell {
  display: initial !important;
  padding: 0 !important;
}
.Grid--noMinHeight {
  min-height: 0;
}
.Grid--alignCenter {
  justify-content: center;
}
.Grid--alignRight {
  justify-content: flex-end;
}
.Grid--alignMiddle {
  align-items: center;
}
.Grid--alignBottom {
  align-items: flex-end;
}
.Grid--flexWrapReverse {
  flex-wrap: wrap-reverse;
}
@media only screen and (min-width: 1024px), print {
  .Grid--flexWrapReverse {
    flex-wrap: wrap;
  }
}
/* Compensate minus margin between two '.Grid's . AM-ticket : COOPAM-4883 */
.Grid.Grid--gutterV + .Grid.Grid--gutterV {
  margin-top: 10px;
}
@media only screen and (min-width: 1024px), print {
  .Grid.Grid--gutterV + .Grid.Grid--gutterV {
    margin-top: 20px;
  }
}
.Grid--dynamicWidth {
  flex-wrap: nowrap;
  flex-direction: column;
}
@media only screen and (min-width: 1024px), print {
  .Grid--dynamicWidth {
    flex-direction: row;
  }
}
.Grid--dynamicWidth > .Grid-cell {
  flex: 0 0 auto;
}
.Grid--dynamicWidth .Grid-cell--fixedWidth {
  display: flex;
}
@media only screen and (min-width: 1024px), print {
  .Grid--dynamicWidth .Grid-cell--fixedWidth {
    width: 254px;
  }
}
.Grid--dynamicWidth .Grid-cell--grownWidth {
  display: flex;
  flex-grow: 1;
  flex-shrink: 1;
}
@media only screen and (min-width: 1024px), print {
  .Grid--dynamicWidth .Grid-cell--grownWidth {
    width: calc(100% - 254px);
  }
}
.Grid--recipePage {
  flex-wrap: nowrap;
  flex-direction: column;
}
@media only screen and (min-width: 1024px), print {
  .Grid--recipePage {
    flex-direction: row;
  }
}
.Grid--recipePage > .Grid-cell {
  flex: 0 0 auto;
}
.Grid--recipePage .Grid-cell--fixedWidth {
  display: flex;
  flex-direction: column;
}
@media only screen and (min-width: 1024px), print {
  .Grid--recipePage .Grid-cell--fixedWidth {
    width: 480px;
  }
}
.Grid--recipePage .Grid-cell--grownWidth {
  flex-grow: 1;
  flex-shrink: 1;
}
@media only screen and (min-width: 1024px), print {
  .Grid--recipePage .Grid-cell--grownWidth {
    width: calc(100% - 480px);
  }
}
.Grid--fit > .Grid-cell {
  flex: 1 1 0%;
}
.Grid--fitNoDynamics > .Grid-cell {
  flex: 0 0 0%;
}
.Grid--equalHeight > .Grid-cell {
  display: flex;
}
.Grid-cell--fit {
  display: flex;
  width: auto;
  flex: 0 0 auto !important;
}
.Grid-cell--center {
  display: block !important;
  margin-right: auto !important;
  margin-left: auto !important;
}
.Grid--borderA > .Grid-cell--border {
  border-right: 1px solid #ededed;
  border-bottom: 1px solid #ededed;
}
.Grid--borderA > .Grid-cell--border:last-of-type {
  border: none;
}
.Grid--borderH > .Grid-cell--border {
  border-right: 1px solid #ededed;
}
.Grid--borderH > .Grid-cell--border:last-of-type {
  border: none;
}
.Grid--borderV > .Grid-cell--border {
  border-bottom: 1px solid #ededed;
}
.Grid--borderV > .Grid-cell--border:last-of-type {
  border: none;
}
.Grid--horizontalHidden {
  flex-wrap: nowrap;
  overflow: hidden;
}
.Grid-items {
  margin: -1px;
}
.Grid-items > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
}
.Grid--product {
  margin: -1px;
}
.Grid--product > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
  width: 50%;
}
@media only screen and (min-width: 480px), print {
  .Grid--product > .Grid-cell {
    width: 33.33333333%;
  }
}
@media only screen and (min-width: 600px), print {
  .Grid--product > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 900px) {
  .Grid--product > .Grid-cell {
    width: 16.66666667%;
  }
}
@media only screen and (min-width: 1024px), print {
  .Grid--product > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 1200px) {
  .Grid--product > .Grid-cell {
    width: 16.66666667%;
  }
}
@media only screen and (min-width: 1720px) {
  .Grid--product > .Grid-cell {
    width: 12.5%;
  }
}
.Grid--recipe {
  margin: -1px;
}
.Grid--recipe > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
  width: 50%;
  /*@media @bpXXLarge {
            width: 12.5%; //1of8
        }*/
}
@media only screen and (min-width: 480px), print {
  .Grid--recipe > .Grid-cell {
    width: 33.33333333%;
  }
}
@media only screen and (min-width: 600px), print {
  .Grid--recipe > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 900px) {
  .Grid--recipe > .Grid-cell {
    width: 16.66666667%;
  }
}
@media only screen and (min-width: 1024px), print {
  .Grid--recipe > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 1200px) {
  .Grid--recipe > .Grid-cell {
    width: 16.66666667%;
  }
}
.Grid--reverse {
  flex-direction: column-reverse;
}
@media only screen and (min-width: 1024px), print {
  .Grid--reverse {
    flex-direction: row-reverse;
  }
}
.Grid--recipe-narrow {
  margin: -1px;
}
.Grid--recipe-narrow > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
  width: 50%;
}
.Grid--partner {
  margin: -1px;
}
.Grid--partner > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
  width: 50%;
  /*@media @bpXXLarge {
            width: 12.5%; //1of8
        }*/
}
@media only screen and (min-width: 480px), print {
  .Grid--partner > .Grid-cell {
    width: 33.33333333%;
  }
}
@media only screen and (min-width: 600px), print {
  .Grid--partner > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 900px) {
  .Grid--partner > .Grid-cell {
    width: 16.66666667%;
  }
}
@media only screen and (min-width: 1024px), print {
  .Grid--partner > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 1200px) {
  .Grid--partner > .Grid-cell {
    width: 16.66666667%;
  }
}
.Main-container--small .Grid--partner > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
  width: 50%;
}
@media only screen and (min-width: 600px), print {
  .Main-container--small .Grid--partner > .Grid-cell {
    width: 33.33333333%;
  }
}
.Grid--groceryBag {
  margin: -1px;
}
.Grid--groceryBag > .Grid-cell {
  display: flex;
  padding: 1px;
  flex-basis: auto;
  width: 50%;
  /*@media only screen and (min-width: 1200px) {
            width: (100% * 1 / 6); //1of6
        }

        @media @bpXXLarge {
            width: 12.5%; //1of8
        }*/
}
@media only screen and (min-width: 480px), print {
  .Grid--groceryBag > .Grid-cell {
    width: 33.33333333%;
  }
}
@media only screen and (min-width: 600px), print {
  .Grid--groceryBag > .Grid-cell {
    width: 25%;
  }
}
@media only screen and (min-width: 900px) {
  .Grid--groceryBag > .Grid-cell {
    width: 16.66666667%;
  }
}
@media only screen and (min-width: 1024px), print {
  .Grid--groceryBag > .Grid-cell {
    width: 25%;
  }
}
/**
 * Browser fallback for Flexible Box Layout.
 * Can also be forced using .Grid--simple.
 */
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid,
.Grid--simple {
  display: block;
  font-size: 0;
  text-align: left;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid > .Grid-cell,
.Grid--simple > .Grid-cell {
  flex: none;
  box-sizing: border-box;
  display: inline-block;
  font-size: 16px;
  font-size: 1rem;
  text-align: left;
  vertical-align: top;
  width: 100%;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--alignCenter,
.Grid--simple.Grid--alignCenter {
  text-align: center;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--alignRight,
.Grid--simple.Grid--alignRight {
  text-align: right;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--alignMiddle > .Grid-cell,
.Grid--simple.Grid--alignMiddle > .Grid-cell {
  vertical-align: middle;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--alignBottom > .Grid-cell,
.Grid--simple.Grid--alignBottom > .Grid-cell {
  vertical-align: bottom;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--fit,
.Grid--simple.Grid--fit {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin: 0 !important;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--fit > .Grid-cell,
.Grid--simple.Grid--fit > .Grid-cell {
  display: table-cell;
  width: auto;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--fit > .Grid-cell:first-child,
.Grid--simple.Grid--fit > .Grid-cell:first-child {
  padding-left: 0;
}
.no-flexbox.no-flexboxlegacy.no-flexboxtweener .Grid.Grid--fit > .Grid-cell:last-child,
.Grid--simple.Grid--fit > .Grid-cell:last-child {
  padding-right: 0;
}
/**
 * Grid Gutter Sizes
 * Wrap in .Grid to increase specificity.
 * All gutters are in Pixels to support both Flexbox and Simple mode.
 *
 * Format: Grid--gutter[direction:A|V|H][size:xsm|sm|md|lg|xlg]
 * Examples: Grid--gutterA (All), Grid--gutterH (Horizontal), Grid--gutterHlg (large horizontal gutter)
 *
 * Gutter directions:
 *    A = all (right, left, top, bottom)
 *    H = horizontal (right, left)
 *    V = vertical (top, bottom)
 *
 * Gutter sizes:
 *    xs = xsmall
 *    s  = small
 *    m  = medium
 *    l  = large
 *    xl = xlarge
 */
.Grid {
  /**
     * Horizontal gutters (left & right)
     */
  /**
     * Vertical gutters (top & bottom)
     */
}
.Grid.Grid--gutterH,
.Grid.Grid--gutterA {
  margin-left: -10px;
  margin-right: -10px;
}
.Grid.Grid--gutterH > .Grid-cell,
.Grid.Grid--gutterA > .Grid-cell {
  padding-left: 10px;
  padding-right: 10px;
}
@media only screen and (min-width: 1024px), print {
  .Grid.Grid--gutterH,
  .Grid.Grid--gutterA {
    margin-left: -20px;
    margin-right: -20px;
  }
  .Grid.Grid--gutterH > .Grid-cell,
  .Grid.Grid--gutterA > .Grid-cell {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.Grid.Grid--gutterHx,
.Grid.Grid--gutterAx {
  margin-left: -0.5px;
  margin-right: -0.5px;
}
.Grid.Grid--gutterHx > .Grid-cell,
.Grid.Grid--gutterAx > .Grid-cell {
  padding-left: 0.5px;
  padding-right: 0.5px;
}
@media only screen and (min-width: 600px), print {
  .Grid.Grid--gutterHx,
  .Grid.Grid--gutterAx {
    margin-left: -10px;
    margin-right: -10px;
  }
  .Grid.Grid--gutterHx > .Grid-cell,
  .Grid.Grid--gutterAx > .Grid-cell {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media only screen and (min-width: 1024px), print {
  .Grid.Grid--gutterHx,
  .Grid.Grid--gutterAx {
    margin-left: -20px;
    margin-right: -20px;
  }
  .Grid.Grid--gutterHx > .Grid-cell,
  .Grid.Grid--gutterAx > .Grid-cell {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.Grid.Grid--gutterHx2,
.Grid.Grid--gutterAx2 {
  margin-left: -10px;
  margin-right: -10px;
}
.Grid.Grid--gutterHx2 > .Grid-cell,
.Grid.Grid--gutterAx2 > .Grid-cell {
  padding-left: 10px;
  padding-right: 10px;
}
@media only screen and (min-width: 768px), print {
  .Grid.Grid--gutterHx2,
  .Grid.Grid--gutterAx2 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .Grid.Grid--gutterHx2 > .Grid-cell,
  .Grid.Grid--gutterAx2 > .Grid-cell {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.Grid.Grid--gutterH2xsm,
.Grid.Grid--gutterA2xsm {
  margin-left: -3.33333333px;
  margin-right: -3.33333333px;
}
.Grid.Grid--gutterH2xsm > .Grid-cell,
.Grid.Grid--gutterA2xsm > .Grid-cell {
  padding-left: 3.33333333px;
  padding-right: 3.33333333px;
}
.Grid.Grid--gutterH3xsm,
.Grid.Grid--gutterA3xsm {
  margin-left: -2.5px;
  margin-right: -2.5px;
}
.Grid.Grid--gutterH3xsm > .Grid-cell,
.Grid.Grid--gutterA3xsm > .Grid-cell {
  padding-left: 2.5px;
  padding-right: 2.5px;
}
.Grid.Grid--gutterHxsm,
.Grid.Grid--gutterAxsm {
  margin-left: -5px;
  margin-right: -5px;
}
.Grid.Grid--gutterHxsm > .Grid-cell,
.Grid.Grid--gutterAxsm > .Grid-cell {
  padding-left: 5px;
  padding-right: 5px;
}
.Grid.Grid--gutterHsm,
.Grid.Grid--gutterAsm {
  margin-left: -7.50001875px;
  margin-right: -7.50001875px;
}
.Grid.Grid--gutterHsm > .Grid-cell,
.Grid.Grid--gutterAsm > .Grid-cell {
  padding-left: 7.50001875px;
  padding-right: 7.50001875px;
}
.Grid.Grid--gutterHmd,
.Grid.Grid--gutterAmd {
  margin-left: -10px;
  margin-right: -10px;
}
.Grid.Grid--gutterHmd > .Grid-cell,
.Grid.Grid--gutterAmd > .Grid-cell {
  padding-left: 10px;
  padding-right: 10px;
}
.Grid.Grid--gutterHlg,
.Grid.Grid--gutterAlg {
  margin-left: -15px;
  margin-right: -15px;
}
.Grid.Grid--gutterHlg > .Grid-cell,
.Grid.Grid--gutterAlg > .Grid-cell {
  padding-left: 15px;
  padding-right: 15px;
}
.Grid.Grid--gutterHxlg,
.Grid.Grid--gutterAxlg {
  margin-left: -20px;
  margin-right: -20px;
}
.Grid.Grid--gutterHxlg > .Grid-cell,
.Grid.Grid--gutterAxlg > .Grid-cell {
  padding-left: 20px;
  padding-right: 20px;
}
.Grid.Grid--gutterV,
.Grid.Grid--gutterA {
  margin-top: -10px;
  margin-bottom: -10px;
}
.Grid.Grid--gutterV > .Grid-cell,
.Grid.Grid--gutterA > .Grid-cell {
  padding-top: 10px;
  padding-bottom: 10px;
}
@media only screen and (min-width: 1024px), print {
  .Grid.Grid--gutterV,
  .Grid.Grid--gutterA {
    margin-top: -20px;
    margin-bottom: -20px;
  }
  .Grid.Grid--gutterV > .Grid-cell,
  .Grid.Grid--gutterA > .Grid-cell {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.Grid.Grid--gutterVx,
.Grid.Grid--gutterAx {
  margin-top: -0.5px;
  margin-bottom: -0.5px;
}
.Grid.Grid--gutterVx > .Grid-cell,
.Grid.Grid--gutterAx > .Grid-cell {
  padding-top: 0.5px;
  padding-bottom: 0.5px;
}
@media only screen and (min-width: 600px), print {
  .Grid.Grid--gutterVx,
  .Grid.Grid--gutterAx {
    margin-top: -10px;
    margin-bottom: -10px;
  }
  .Grid.Grid--gutterVx > .Grid-cell,
  .Grid.Grid--gutterAx > .Grid-cell {
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
@media only screen and (min-width: 1024px), print {
  .Grid.Grid--gutterVx,
  .Grid.Grid--gutterAx {
    margin-top: -20px;
    margin-bottom: -20px;
  }
  .Grid.Grid--gutterVx > .Grid-cell,
  .Grid.Grid--gutterAx > .Grid-cell {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.Grid.Grid--gutterVx2,
.Grid.Grid--gutterAx2 {
  margin-top: -10px;
  margin-bottom: -10px;
}
.Grid.Grid--gutterVx2 > .Grid-cell,
.Grid.Grid--gutterAx2 > .Grid-cell {
  padding-top: 10px;
  padding-bottom: 10px;
}
@media only screen and (min-width: 768px), print {
  .Grid.Grid--gutterVx2,
  .Grid.Grid--gutterAx2 {
    margin-top: -15px;
    margin-bottom: -15px;
  }
  .Grid.Grid--gutterVx2 > .Grid-cell,
  .Grid.Grid--gutterAx2 > .Grid-cell {
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
.Grid.Grid--gutterV2xsm,
.Grid.Grid--gutterA2xsm {
  margin-top: -3.33333333px;
  margin-bottom: -3.33333333px;
}
.Grid.Grid--gutterV2xsm > .Grid-cell,
.Grid.Grid--gutterA2xsm > .Grid-cell {
  padding-top: 3.33333333px;
  padding-bottom: 3.33333333px;
}
.Grid.Grid--gutterV3xsm,
.Grid.Grid--gutterA3xsm {
  margin-top: -2.5px;
  margin-bottom: -2.5px;
}
.Grid.Grid--gutterV3xsm > .Grid-cell,
.Grid.Grid--gutterA3xsm > .Grid-cell {
  padding-top: 2.5px;
  padding-bottom: 2.5px;
}
.Grid.Grid--gutterVxsm,
.Grid.Grid--gutterAxsm {
  margin-top: -5px;
  margin-bottom: -5px;
}
.Grid.Grid--gutterVxsm > .Grid-cell,
.Grid.Grid--gutterAxsm > .Grid-cell {
  padding-top: 5px;
  padding-bottom: 5px;
}
.Grid.Grid--gutterVsm,
.Grid.Grid--gutterAsm {
  margin-top: -7.50001875px;
  margin-bottom: -7.50001875px;
}
.Grid.Grid--gutterVsm > .Grid-cell,
.Grid.Grid--gutterAsm > .Grid-cell {
  padding-top: 7.50001875px;
  padding-bottom: 7.50001875px;
}
.Grid.Grid--gutterVmd,
.Grid.Grid--gutterAmd {
  margin-top: -10px;
  margin-bottom: -10px;
}
.Grid.Grid--gutterVmd > .Grid-cell,
.Grid.Grid--gutterAmd > .Grid-cell {
  padding-top: 10px;
  padding-bottom: 10px;
}
.Grid.Grid--gutterVlg,
.Grid.Grid--gutterAlg {
  margin-top: -15px;
  margin-bottom: -15px;
}
.Grid.Grid--gutterVlg > .Grid-cell,
.Grid.Grid--gutterAlg > .Grid-cell {
  padding-top: 15px;
  padding-bottom: 15px;
}
.Grid.Grid--gutterVxlg,
.Grid.Grid--gutterAxlg {
  margin-top: -20px;
  margin-bottom: -20px;
}
.Grid.Grid--gutterVxlg > .Grid-cell,
.Grid.Grid--gutterAxlg > .Grid-cell {
  padding-top: 20px;
  padding-bottom: 20px;
}
/*
.Grid--gutterA1toMd {
    margin: (-0.5 * 1px);

    & > .Grid-cell {
        padding: (0.5 * 1px);
    }

    @media @bpSmall {
        margin: (-0.5 * @Grid-gutterMd);

        & > .Grid-cell {
            padding: (0.5 * @Grid-gutterMd);
        }
    }

    @media @bpLarge {
        margin: (-0.5 * @Grid-gutterXlg);

        & > .Grid-cell {
            padding: (0.5 * @Grid-gutterXlg);
        }
    }
}
*/
@container fluid-banner (max-width: 200px) {
  .HeaderBanner .HeaderBanner-ProfileNav {
    display: none;
  }
  .HeaderBanner .HeaderBanner-Right .LoginButton {
    text-align: center;
    --xPadding: 4px;
    white-space: inherit;
    width: fit-content;
    height: auto;
    min-height: var(--height);
  }
  .HeaderBanner .HeaderBanner-Center {
    display: none;
  }
  .HeaderBanner .HeaderBanner-ProfileDotNav {
    display: flex;
  }
}
.HeaderBanner-ProfileNav {
  display: flex;
  gap: 12px;
  align-items: center;
}
.HeaderBanner-ProfileDotNav {
  display: none;
  gap: 12px;
  align-items: center;
}
@supports (position: -webkit-sticky) or (position: sticky) {
  @media only screen and (max-width: 1023px), print {
    .HeaderFluidBanner {
      position: sticky;
      top: 0;
      z-index: calc(var(--headerFluidZindex));
    }
  }
}
.HeaderFluidBanner .HeaderBanner {
  container-type: inline-size;
  container-name: fluid-banner;
  height: var(--headerFluidBannerHeight);
}
@supports (position: -webkit-sticky) or (position: sticky) {
  .HeaderStickyBanner {
    position: sticky;
    top: 0;
    z-index: var(--headerZIndex);
  }
  @media only screen and (max-width: 1023px), print {
    .HeaderStickyBanner:not(.HeaderStickyBanner--top) {
      top: var(--headerFluidBannerHeight);
    }
  }
}
.HeaderStickyBanner .HeaderBanner {
  min-height: var(--headerStickyBannerHeight);
}
.Header-logo {
  color: #00a142;
  max-height: 60px;
  transition: color 0.3s ease-in-out;
}
.Header-logo:hover {
  color: #ffffff;
}
.Header-logo:focus-visible {
  outline: #ffffff dashed 2px;
  outline-offset: -2px;
}
.Header-logo :focus {
  padding-left: 8px;
  padding-right: 8px;
  margin-left: -8px;
}
.Header-logo svg {
  height: 100%;
  max-height: 60px;
  width: 69px;
}
@media only screen and (min-width: 1366px) {
  .Header-logo svg {
    max-height: 60px;
    width: 90px;
  }
}
.HeaderBanner {
  position: relative;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 0 10px;
}
@media only screen and (min-width: 320px), print {
  .HeaderBanner {
    padding: 0 20px;
  }
}
@media only screen and (min-width: 1024px), print {
  .HeaderBanner {
    padding: 0 40px;
  }
}
.HeaderBanner-ModeSwitch {
  position: absolute;
  right: 10px;
  min-height: 32px;
}
@media only screen and (min-width: 320px), print {
  .HeaderBanner-ModeSwitch {
    right: 20px;
  }
}
@media only screen and (min-width: 1024px), print {
  .HeaderBanner-ModeSwitch {
    right: 40px;
  }
}
.HeaderBanner--bordered {
  border-bottom: 1px solid #ffffff33;
}
@media only screen and (min-width: 1024px), print {
  .HeaderBanner--wideSlots .HeaderBanner-Left,
  .HeaderBanner--wideSlots .HeaderBanner-Right {
    flex-basis: 400px;
  }
}
.HeaderBanner--black {
  color: #ffffff;
  background: #333333;
}
.HeaderBanner--black .Header-logo {
  color: #00a142;
}
.HeaderBanner--black .Header-logo:hover {
  color: #ffffff;
}
.HeaderBanner--darkGreen {
  color: #ffffff;
  background: #005537;
}
.HeaderBanner--darkGreen .Header-logo {
  color: #ffffff;
}
.HeaderBanner--darkGreen .Header-logo:hover {
  color: #097a36;
}
.HeaderBanner-Center {
  justify-content: center;
  display: flex;
  flex-shrink: 1;
  flex-grow: 1;
  text-align: center;
  min-width: 0;
}
.HeaderBanner-Left {
  display: flex;
  flex-shrink: 0;
  justify-content: flex-start;
}
@media only screen and (min-width: 1024px), print {
  .HeaderBanner-Left {
    flex-basis: 150px;
  }
}
.HeaderBanner-Left:empty {
  display: none;
}
.HeaderBanner-Right {
  display: flex;
  flex-shrink: 1;
  justify-content: flex-end;
}
@media only screen and (min-width: 1024px), print {
  .HeaderBanner-Right {
    flex-basis: 150px;
    flex-shrink: 0;
  }
}
.HeaderBanner-Right:empty {
  display: none;
}
.HeaderBanner-RightNav {
  display: flex;
  gap: 12px;
  align-items: center;
}
.HeaderBanner-LeftNav {
  display: flex;
  gap: 12px;
  align-items: center;
}
.HeaderAlerts .Notice--alert-level1 .Notice-content,
.Header .Notice--alert-level1 .Notice-content {
  padding-left: 10px;
  padding-right: 10px;
}
@media only screen and (min-width: 1024px), print {
  .HeaderAlerts .Notice--alert-level1 .Notice-content,
  .Header .Notice--alert-level1 .Notice-content {
    padding-left: 40px;
    padding-right: 40px;
  }
}
.HeaderAlerts .Notice--alert-level1 .Notice-expandedContent,
.Header .Notice--alert-level1 .Notice-expandedContent {
  padding-top: 12px;
}
.HeaderSearch {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  flex-grow: 1;
  --coop-search-border-color: #ffffff;
}
.HeaderSearchBar {
  width: 100%;
  max-width: 600px;
}
.Heading,
.Heading--h1,
h1,
.Heading--h2,
h2,
.Heading--h3,
h3,
.Heading--h4,
h4,
.Heading--h5,
h5,
.Heading--h6,
h6 {
  display: block;
  margin-top: 0;
  margin-bottom: 1.25rem;
  position: relative;
  line-height: 1.4em;
}
.Heading--h1,
h1 {
  font-weight: normal;
  font-size: 1.5rem;
  margin-bottom: 1.25rem;
  color: #333;
  line-height: 1.2;
}
@media only screen and (min-width: 768px), print {
  .Heading--h1,
  h1 {
    margin-bottom: 1.875rem;
    font-size: 1.75rem;
  }
}
.Heading--h2,
h2 {
  font-size: 1.125rem;
  font-weight: 600;
}
@media only screen and (min-width: 768px), print {
  .Heading--h2,
  h2 {
    font-size: 1.25rem;
  }
}
.Heading--h3,
h3 {
  font-weight: normal;
  font-size: 1.125rem;
}
@media only screen and (min-width: 768px), print {
  .Heading--h3,
  h3 {
    font-size: 1.25rem;
  }
}
.Heading--h4,
h4 {
  font-size: 1rem;
  font-weight: 600;
}
.Heading--h5,
h5 {
  font-size: 0.875rem;
  margin-bottom: 0.625rem;
}
.Heading--h6,
h6 {
  font-size: 0.75rem;
  margin-bottom: 0.625rem;
}
.Heading--tiny {
  font-size: 0.625rem;
  color: #333;
  text-transform: uppercase;
  letter-spacing: 1px;
}
.Heading--greenBar {
  position: relative;
  overflow: visible;
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
}
.Heading--greenBar:after {
  content: '';
  width: 30px;
  height: 2px;
  background: #aad23c;
  position: absolute;
  bottom: 0;
  left: 0;
}
.Heading--greenBarLarge {
  position: relative;
  overflow: visible;
  margin-bottom: 1.25rem;
  padding-bottom: 1.25rem;
}
.Heading--greenBarLarge:after {
  content: '';
  width: 30px;
  height: 3px;
  background: #00aa46;
  position: absolute;
  bottom: 0;
  left: 0;
}
@media only screen and (min-width: 768px), print {
  .Heading--greenBarLarge:after {
    width: 40px;
    height: 4px;
  }
}
.Heading--withIcon .Heading-icon {
  height: 35px;
  width: 37px;
  margin-left: 0.625rem;
  position: relative;
  display: inline-block;
  fill: #00aa46;
}
@media only screen and (min-width: 768px), print {
  .Heading--withIcon .Heading-icon {
    height: 45px;
    width: 47px;
  }
}
@media only screen and (min-width: 768px), print {
  .Heading--withIcon .Heading-icon--small {
    height: 35px;
    width: 35px;
  }
}
.Heading--block {
  height: 60px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-bottom: 2px solid #f5f5f5;
  padding: 0 1.25rem;
  background: #fff;
  font-weight: bold;
  font-size: 1rem;
}
@media only screen and (min-width: 768px), print {
  .Heading--block {
    font-size: 1.25rem;
  }
}
.Heading--borderTop {
  padding-top: 0.93750234rem;
  border-top: 2px solid #f5f5f5;
}
.Link {
  display: inline-block;
  transition: color 0.3s ease-in-out;
}
.Link.Link--bold {
  font-weight: bold;
}
.Link.Link--green {
  color: #008844;
}
.Link.Link--green svg {
  stroke: #00aa46 !important;
}
@media only screen and (min-width: 1024px), print {
  .Link.Link--green:hover {
    color: #005537;
    text-decoration: underline;
  }
  .Link.Link--green:hover svg {
    stroke: #005537 !important;
  }
}
.Link.Link--greenDark {
  color: #005537;
}
.Link.Link--greenDark:hover,
.Link.Link--greenDark:focus {
  color: #00aa46;
}
.Link.Link--dsCtaGreen {
  color: #097a36;
}
.Link.Link--dsCtaGreen:hover,
.Link.Link--dsCtaGreen:focus {
  color: #005537;
}
.Link.Link--underline {
  text-decoration: underline;
}
.Link.Link--underline:hover {
  text-decoration: none;
}
.Link.Link--underline:focus {
  text-decoration: none;
}
.Link.Link--green2 {
  color: #00aa46;
}
.Link.Link--green2:hover {
  color: #005537;
  text-decoration: underline;
}
.Link.Link--white {
  color: #fff;
}
.Link.Link--white svg {
  stroke: #fff !important;
}
@media only screen and (min-width: 1024px), print {
  .Link.Link--white:hover {
    text-decoration: underline;
  }
}
.Link.Link--gray {
  color: #999;
}
.Link.Link--gray svg {
  stroke: #999 !important;
}
@media only screen and (min-width: 1024px), print {
  .Link.Link--gray:hover {
    text-decoration: underline;
  }
}
.Link.Link--baseHoverRed {
  color: #333 !important;
}
.Link.Link--baseHoverRed:hover,
.Link.Link--baseHoverRed:focus {
  color: #ff3300 !important;
}
.Link.Link--baseHoverGreen {
  color: #333 !important;
}
.Link.Link--baseHoverGreen:hover,
.Link.Link--baseHoverGreen:focus {
  color: #00aa46 !important;
}
.Link.Link--whiteHoverGreen {
  color: #ffffff !important;
}
.Link.Link--whiteHoverGreen:hover,
.Link.Link--whiteHoverGreen:focus {
  color: #00aa46 !important;
}
.Link.Link--arrowBack {
  font-size: 0.875rem;
}
.Link.Link--arrowBack svg {
  height: 14px;
  width: 14px;
  vertical-align: middle;
  margin-right: 0.41666667rem;
  margin-bottom: 1px;
  fill: none;
  stroke: #999;
}
@media only screen and (min-width: 1024px), print {
  .Link.Link--arrowBack:hover {
    text-decoration: none;
  }
}
.Link.Link--arrow {
  position: relative;
}
@media only screen and (min-width: 1024px), print {
  .Link.Link--arrow:hover {
    text-decoration: none;
  }
}
.Link.Link--arrow svg {
  width: 12px;
  height: 12px;
  fill: none;
  stroke: #333;
  vertical-align: middle;
  margin-top: 0.625rem;
  margin-left: 0.41666667rem;
  transform: translateY(-50%) rotate(270deg);
  transition: transform 0.3s;
}
.Link.Link--arrow.is-expanded svg {
  transform: translateY(-50%) rotate(450deg);
}
.Link.Link--showAll {
  font-size: 0.875rem;
  font-weight: normal;
  position: absolute;
  right: 0;
}
button.Link:focus {
  outline: -webkit-focus-ring-color auto 1px;
}
.Link--skip {
  clip: rect(1px, 1px, 1px, 1px);
  height: 1px;
  overflow: hidden;
  position: fixed;
  white-space: nowrap;
  width: 1px;
  top: 0;
  left: 0;
}
.Link--skip:focus {
  clip: auto;
  height: auto;
  overflow: auto;
  width: auto;
  z-index: 1000;
  background: #fff;
  padding: 0.3rem;
}
.Link2:not(.Link2--ctaInside) {
  display: inline-flex;
  align-items: center;
  text-decoration: underline;
}
.Link2:not(.Link2--ctaInside):hover {
  text-decoration: none;
}
.Link2--ctaInside:hover .Link2-text {
  text-decoration: none;
}
.Link2--ctaInside .Link2-text {
  text-decoration: underline;
}
.Link2--ctaInside .Link2-cta {
  display: inline-flex;
  align-items: center;
}
.Link2-icon {
  width: 1.5em;
  height: 1.5em;
  margin-right: 0.5em;
  fill: currentColor;
  stroke: currentColor;
}
.Link2-text + .Link2-icon {
  margin-right: 0;
  margin-left: 0.5em;
}
.Main {
  overflow: hidden;
  background-size: cover;
}
.Main-container {
  margin-left: auto;
  margin-right: auto;
  width: 100%;
  max-width: 85rem;
}
.Main-container.Main-container--xSmall {
  max-width: 26.25rem;
}
.Main-container.Main-container--small {
  max-width: 42.5rem;
}
.Main-container.Main-container--medium {
  max-width: 52.5rem;
}
.Main-container.Main-container--full {
  max-width: 85rem;
}
@media only screen and (min-width: 1720px) {
  .Main-container.Main-container--full {
    max-width: 107.5rem;
  }
}
.Main-container.Main-container--fullBleed {
  max-width: 107.5rem;
}
@media only screen and (max-width: 599px), print {
  .Main-container.Main-container--fullBleedSm {
    padding: 0 !important;
  }
}
@media only screen and (max-width: 767px), print {
  .Main-container.Main-container--fullBleedMd {
    padding: 0 !important;
  }
}
@media only screen and (max-width: 1023px), print {
  .Main-container.Main-container--fullBleedLg {
    padding: 0 !important;
  }
}
@media only screen and (max-width: 1365px), print {
  .Main-container.Main-container--fullBleedXlg {
    padding: 0 !important;
  }
}
@media only screen and (max-width: 1719px), print {
  .Main-container.Main-container--fullBleedXXlg {
    padding: 0 !important;
  }
}
.Main-container.Main-container--fullBleedViewport {
  max-width: 100vw;
}
@media only screen and (max-width: 599px), print {
  .Main-container.Main-container--noPaddingOnMobile {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
.Main-container.Main-container--padding {
  padding-left: 0.625rem;
  padding-right: 0.625rem;
}
@media only screen and (min-width: 320px), print {
  .Main-container.Main-container--padding {
    padding-left: 1.25rem;
    padding-right: 1.25rem;
  }
}
@media only screen and (min-width: 1024px), print {
  .Main-container.Main-container--padding {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
  }
}
.Main.Main--fullHeight {
  min-height: 100vh;
}
.Navigation {
  display: none;
  flex-shrink: 1;
  min-width: 0;
}
@media only screen and (min-width: 1024px), print {
  .Navigation {
    display: flex;
  }
}
.Navigation-Link {
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
  display: flex;
  line-height: var(--headerFluidBannerHeight);
  text-decoration: none;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  text-align: center;
  font-size: 1rem;
  color: #ffffff;
  padding: 0 4px;
}
.Navigation-Link:focus-visible {
  outline: 2px dashed #fff;
  outline-offset: -2px;
}
@media only screen and (min-width: 1366px) {
  .Navigation-Link {
    padding: 0 8px;
  }
}
.Navigation-LinkText {
  display: block;
  text-overflow: ellipsis;
  overflow: hidden;
  white-space: nowrap;
}
.Navigation-List {
  list-style-type: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-shrink: 1;
  min-width: 0;
  gap: 16px;
}
@media only screen and (min-width: 1366px) {
  .Navigation-List {
    gap: 20px;
  }
}
.Navigation-ListItem {
  position: relative;
  display: flex;
  min-width: 0;
}
.Navigation-ListItem.Indicator--Top::before {
  top: -4px;
  border-radius: 0px 0px 4px 4px;
  content: '';
  display: inline-block;
  position: absolute;
  height: 4px;
  background: #f5f5f5;
  width: 100%;
  opacity: 0;
  transition: transform 0.15s ease-in-out, opacity 0.15s ease-in-out;
}
.Navigation-ListItem.Indicator--Top.is-active::before,
.Navigation-ListItem.Indicator--Top:hover::before {
  opacity: 1;
  transform: translateY(4px);
}
.Navigation-ListItem.Indicator--Bottom::after {
  left: 0;
  bottom: -4px;
  border-radius: 4px 4px 0px 0px;
  content: '';
  display: inline-block;
  position: absolute;
  height: 4px;
  background: #f5f5f5;
  width: 100%;
  opacity: 0;
  transition: transform 0.15s ease-in-out, opacity 0.15s ease-in-out;
}
.Navigation-ListItem.Indicator--Bottom.is-active::after,
.Navigation-ListItem.Indicator--Bottom:hover::after {
  opacity: 1;
  transform: translateY(-4px);
}
.Section {
  width: 100%;
  display: block;
  position: relative;
  text-decoration: none;
}
.Section-heading {
  margin-top: 1.875rem;
  text-align: center;
}
.Section.Section--offset {
  margin-top: -90px;
}
.Section.Section--bankOffset {
  margin-top: -60px;
}
@media only screen and (min-width: 600px), print {
  .Section.Section--bankOffset {
    margin-top: -90px;
  }
}
.Section.Section--padding {
  padding: 0.93750234rem;
}
@media only screen and (min-width: 600px), print {
  .Section.Section--padding {
    padding: 1.25rem;
  }
}
@media only screen and (min-width: 768px), print {
  .Section.Section--padding {
    padding: 1.875rem;
  }
}
@media only screen and (min-width: 1024px), print {
  .Section.Section--padding {
    padding: 2.5rem;
  }
}
.Section.Section--margin {
  margin-bottom: 1.25rem;
}
@media only screen and (min-width: 1024px), print {
  .Section.Section--margin {
    margin-bottom: 2.5rem;
  }
}
@media only screen and (max-width: 479px), print {
  .Section.Section--counterHPadding {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
    width: calc(100% + 2 * 1.25rem);
  }
}
.SidebarNav {
  position: relative;
  display: flex;
  top: 0;
  z-index: 8;
  padding-top: 0;
  width: 214px;
}
.SidebarNav-container {
  width: 100%;
}
@media only screen and (min-width: 1024px), print {
  .SidebarNav-container {
    min-height: 100%;
  }
}
.SidebarNav-content {
  width: 100%;
}
@media only screen and (min-width: 1024px), print {
  .SidebarNav-content {
    height: 100%;
  }
}
.SidebarNav-list {
  width: 100%;
  list-style-type: none;
  padding: 0;
  margin: 0 0 1.25rem 0;
  transform: translate3d(0, 0, 0);
}
.SidebarNav-list:last-of-type {
  margin: 0;
}
.SidebarNav-heading {
  height: 50px;
  position: relative;
  border-bottom: 1px solid #ededed;
  fill: none;
  stroke: #333;
}
.SidebarNav-headingLink {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 1.25rem;
  cursor: pointer;
}
.SidebarNav-headingKicker {
  color: #999;
  font-size: 0.75rem;
  margin-bottom: 0.41666667rem;
  font-weight: normal;
}
.SidebarNav-headingTitle {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.SidebarNav-footer {
  padding: 0.625rem 0 0.625rem 1.25rem;
  font-weight: normal;
  border-bottom: 1px solid #ededed;
  display: flex;
  align-items: center;
  cursor: pointer;
}
.SidebarNav-arrow {
  padding: 0.625rem;
  margin-right: -0.93750234rem;
  transition: transform 0.3s;
}
.SidebarNav-arrow svg {
  display: block;
}
.SidebarNav-icon {
  cursor: pointer;
  height: 10px;
  width: 10px;
  stroke: #333;
}
.SidebarNav-icon--plus {
  display: block;
}
.SidebarNav-icon--minus {
  display: none;
}
.SidebarNav-icon--recipe {
  stroke: #ffffff;
}
.SidebarNav-toggle {
  display: block;
  padding: 0.625rem;
  margin-right: -0.93750234rem;
}
.SidebarNav-panel,
.SidebarNav-subPanel {
  transform: translate3d(0, 0, 0);
}
.SidebarNav-panel .SidebarNav-heading,
.SidebarNav-subPanel .SidebarNav-heading {
  border: none;
}
.SidebarNav-panel .SidebarNav-item > .SidebarNav-heading {
  font-weight: normal;
}
.SidebarNav-subPanel {
  padding-left: 1.25rem;
}
.SidebarNav-subPanel .SidebarNav-list {
  border-left: 1px solid #097a36;
}
.SidebarNav-item {
  background: #fff;
  font-size: 0.875rem;
  font-weight: bold;
}
.SidebarNav-item.is-sm-expanded .SidebarNav-panel {
  transform: translate3d(0, 0, 0);
}
.SidebarNav-item.is-sm-expanded .SidebarNav-panel > .SidebarNav-list {
  border-bottom: 1px solid #ededed;
}
.SidebarNav-item.is-expanded > .SidebarNav-heading {
  background: #097a36;
  color: #fff;
}
.SidebarNav-item.is-expanded > .SidebarNav-heading .SidebarNav-arrow {
  fill: none;
  stroke: #fff;
  transform: rotate(90deg);
}
.SidebarNav-item.is-expanded .SidebarNav-panel {
  transform: translate3d(0, 0, 0);
}
.SidebarNav-item.is-expanded .SidebarNav-panel > .SidebarNav-list {
  border-bottom: 1px solid #ededed;
}
.SidebarNav-item.is-expanded .SidebarNav-panel .SidebarNav-item.is-expanded > .SidebarNav-heading {
  background: #fff;
  color: #097a36;
}
.SidebarNav-item.is-expanded .SidebarNav-panel .SidebarNav-item.is-expanded > .SidebarNav-heading .SidebarNav-arrow {
  fill: none;
  stroke: #097a36;
  transform: rotate(90deg);
}
.SidebarNav-item.is-expanded > .SidebarNav-subItemHeader .SidebarNav-arrow {
  transform: rotate(90deg);
}
.SidebarNav-item.is-expanded > .SidebarNav-subItemIcon--plus {
  display: none;
}
.SidebarNav-item.is-expanded > .SidebarNav-subItemIcon--minus {
  display: block;
}
.SidebarNav-item.is-expanded .SidebarNav-subItemLink {
  background: #097a36;
  border-radius: 4px;
  border: none;
  color: #fff;
}
.SidebarNav-item--temporary .SidebarNav-panel,
.SidebarNav-item--temporary > .SidebarNav-subPanel {
  display: none;
}
.SidebarNav-item--temporary.is-expanded .SidebarNav-panel,
.SidebarNav-item--temporary.is-expanded > .SidebarNav-subPanel {
  display: block;
}
.SidebarNav--online {
  background: #f5f5f5;
}
.Video {
  position: relative;
  display: flex;
  overflow: hidden;
  min-height: 350px;
}
.Video.Video--42by9 {
  min-height: 175px;
}
@media only screen and (min-width: 600px), print {
  .Video.Video--16by9 {
    min-height: 0;
    padding-bottom: 56.25%;
    height: 0;
  }
  .Video.Video--21by9 {
    min-height: 0;
    padding-bottom: 42.8571%;
    height: 0;
  }
  .Video.Video--42by9 {
    min-height: 0;
    padding-bottom: 21.4286%;
    height: 0;
  }
}
.Video.Video--force16by9 {
  min-height: 0;
  padding-bottom: 56.25%;
  height: 0;
}
.Video.Video--muteHover .Video-mute {
  opacity: 0;
}
@media only screen and (min-width: 768px), print {
  .Video.Video--muteHover:hover .Video-mute {
    opacity: 1;
  }
}
.Video-media {
  background-size: cover;
  background-position: center;
  object-fit: cover;
  position: absolute;
  height: 100%;
  min-width: 100%;
  top: 0;
  left: 50%;
  right: 0;
  bottom: 0;
  transform: translateX(-50%);
}
.Video-mute {
  background-image: url('/Assets/Icons/speaker-mute.svg');
  background-size: contain;
  background-repeat: no-repeat;
  display: none;
  position: absolute;
  top: 1.875rem;
  right: 1.875rem;
  width: 40px;
  height: 40px;
  cursor: pointer;
  z-index: 2;
  transition: opacity 0.3s;
}
@media only screen and (min-width: 768px), print {
  .Video-mute {
    display: block;
  }
}
.Video-mute.is-unmuted {
  background-image: url('/Assets/Icons/speaker.svg');
}
.Video-noSound {
  cursor: default;
}
.Video-link {
  position: absolute;
  width: 100%;
  height: 100%;
  display: block;
  top: 0;
  left: 0;
  z-index: 1;
}
.Video-content {
  width: 100%;
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.875rem;
  color: #fff;
}
@media only screen and (min-width: 768px), print {
  .Video-content {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    padding: 3.75rem;
  }
}
@media only screen and (min-width: 1024px), print {
  .Video-content {
    width: 50%;
  }
}
.Video-subLink {
  width: 100%;
  text-align: center;
  padding-top: 16px;
  padding-bottom: 15px;
}
.Video-heading {
  font-family: 'CoopNew-Black', sans-serif;
}
.Video-heading--large {
  text-transform: uppercase;
  font-size: 1.75rem;
}
@media only screen and (min-width: 600px), print {
  .Video-heading--large {
    font-size: 2.1875rem;
  }
}
@media only screen and (min-width: 1366px) {
  .Video-heading--large {
    font-size: 3.125rem;
  }
}
.Video--roundedCorners {
  border-radius: 20px;
}
.Video--roundedCorners .Video-link,
.Video--roundedCorners .Video-media {
  border-radius: 20px;
}
details.mce-accordion > summary {
  color: #097a36;
  font-weight: bold;
  cursor: pointer;
  display: flex;
  align-items: center;
}
details.mce-accordion > summary:before {
  content: '';
  display: block;
  height: 20px;
  width: 20px;
  background-color: #097a36;
  mask: url(/Assets/Icons/chevron-down.svg) no-repeat 100% 100%;
  transform: rotate(-90deg);
  margin-right: 4px;
  margin-left: -6px;
  transition: all 0.05s ease-in;
}
details.mce-accordion[open] > summary:before {
  transform: rotate(0deg);
}
.RecipeSocial {
  position: relative;
}
.RecipeSocial-buy {
  position: relative;
}
.RecipeSocial-buyListTooltip {
  position: absolute;
  text-align: center;
  top: 35px;
  right: 250px;
}
.RecipeSocial-save {
  position: relative;
}
.RecipeSocial-saveHeart {
  height: 24px;
  width: 24px;
  vertical-align: middle;
  fill: #ededed;
  stroke: #fff;
}
.RecipeSocial-saveTooltip {
  position: absolute;
  text-align: center;
  top: 35px;
  right: 142px;
}
.RecipeSocial-saveHeartTooltip {
  position: absolute;
  text-align: center;
  top: 6px;
  right: 122px;
}
@media only screen and (min-width: 375px), print {
  .RecipeSocial-saveHeartTooltip {
    right: 145px;
  }
}
@media only screen and (min-width: 480px), print {
  .RecipeSocial-saveHeartTooltip {
    right: 172px;
  }
}
@media only screen and (min-width: 600px), print {
  .RecipeSocial-saveHeartTooltip {
    right: 172px;
  }
}
.RecipeSocial-saveHeartTooltipPuff {
  position: absolute;
  text-align: center;
  top: 6px;
  right: 115px;
}
@media only screen and (min-width: 375px), print {
  .RecipeSocial-saveHeartTooltipPuff {
    right: 140px;
  }
}
@media only screen and (min-width: 600px), print {
  .RecipeSocial-saveHeartTooltipPuff {
    right: 130px;
  }
}
@media only screen and (min-width: 1024px), print {
  .RecipeSocial-saveHeartTooltipPuff {
    right: 152px;
  }
}
.RecipeSocial-share {
  position: relative;
}
.RecipeSocial-sharePopup {
  position: absolute;
  top: 35px;
  right: 110px;
  text-align: center;
}
.RecipeSocial-shareTitle {
  display: inline-block;
  margin-bottom: 14px;
}
.RecipeSocial-shareIcons {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  align-content: space-between;
}
.RecipeSidebarNav {
  list-style-type: none;
  padding: 0;
  margin: 0;
  font-size: 0.875rem;
}
.RecipeSidebarNav .RecipeSidebarNav-checkboxLink {
  display: flex;
}
.RecipeSidebarNav .RecipeSidebarNav-checkboxLink .RecipeSidebarNav-checkboxLinkText {
  display: block;
  max-width: 13ch;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.RecipeSidebarNav .RecipeSidebarNav-checkboxLink:before {
  content: '';
  margin-right: 10px;
  width: 16px;
  height: 16px;
  display: inline-block;
  border: 1px solid #999999;
  border-radius: 2px;
  background-repeat: no-repeat;
  background-position: 50% 50%;
}
.RecipeSidebarNav .RecipeSidebarNav-checkboxLink.is-checked {
  color: #00aa46;
}
.RecipeSidebarNav .RecipeSidebarNav-checkboxLink.is-checked:before {
  border: 1px solid #00aa46;
  background-image: url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMTAiIGhlaWdodD0iOCIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KICA8cGF0aCBkPSJNOSAxTDQuMzMzIDcuMzMzIDEgNC42NjciIHN0cm9rZT0iIzBBODkzRCIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjwvc3ZnPgo=);
}
.RecipeSidebarNav .RecipeSidebarNav-category1 {
  background: #ffffff;
  margin-bottom: 10px;
}
.RecipeSidebarNav .RecipeSidebarNav-category1 .RecipeSidebarNav-category1Button {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 15px;
  border-bottom: 1px solid #ededed;
}
.RecipeSidebarNav .RecipeSidebarNav-category1 .RecipeSidebarNav-category1Title {
  font-weight: bold;
}
.RecipeSidebarNav .RecipeSidebarNav-category1 .RecipeSidebarNav-category1Amount {
  margin-left: 5px;
}
.RecipeSidebarNav .RecipeSidebarNav-category1 .RecipeSidebarNav-category1SeeMoreFooter {
  width: 100%;
  border-top: 1px solid #ededed;
  padding-bottom: 20px;
  padding-top: 15px;
  text-align: left;
  display: flex;
  align-items: center;
}
.RecipeSidebarNav .RecipeSidebarNav-category1 .RecipeSidebarNav-category1ListOfChildren {
  list-style-type: none;
  padding: 0;
  margin: 0;
  padding-top: 20px;
  transition: 0.3s;
}
.RecipeSidebarNav .RecipeSidebarNav-category2 .RecipeSidebarNav-category2Header {
  width: 100%;
  display: flex;
  align-items: center;
  padding: 0 15px 20px 15px;
  position: relative;
}
.RecipeSidebarNav .RecipeSidebarNav-category2 .RecipeSidebarNav-category2Button {
  padding: 10px;
  padding-right: 15px;
  position: absolute;
  right: 0;
  background: #ffffff;
}
.RecipeSidebarNav .RecipeSidebarNav-category2 .RecipeSidebarNav-category2Amount {
  margin-left: 5px;
  color: #097a36;
}
.RecipeSidebarNav .RecipeSidebarNav-category2 .RecipeSidebarNav-category2ListOfChildren {
  list-style-type: none;
  padding: 0;
  margin: 0;
  margin-left: 25px;
  padding-bottom: 10px;
}
.RecipeSidebarNav .RecipeSidebarNav-category3 {
  padding-bottom: 20px;
}
.RecipeSidebarNav--flyin {
  width: 100%;
}
.RecipeSidebarNav--flyin .RecipeSidebarNav-checkboxLink .RecipeSidebarNav-checkboxLinkText {
  max-width: none;
}
.RecipeSidebarNav--flyin .RecipeSidebarNav-category1 {
  border-radius: 10px;
}
.RecipeSidebarNav--flyin .RecipeSidebarNav-category1 .RecipeSidebarNav-category1Button {
  border-bottom: none;
}
.RecipeSidebarNav--flyin .RecipeSidebarNav-category1PreListDiv {
  border-bottom: 1px solid #ededed;
  margin-left: 15px;
}
.RecipeSidebarNav--skeleton {
  border: 1px solid #ededed;
  height: 100%;
}

