/*
 * Style
 */
/* Abstracts */
/*
 * Breakpoints
 */
/*
 * Colours
 */
/* brand */
/* functional */
/* grey tones */
/*
 * Fonts
 */
@font-face {
  font-family: "Moderat Regular";
  src: url("../fonts/5ekCq0JAe0z4.eot");
  src: url("../fonts/bvgJU8oSbe3U.woff2") format("woff2"), url("../fonts/D6sGYzXM1nDa.woff") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Moderat Light";
  src: url("../fonts/AKS523GK5csj.eot");
  src: url("../fonts/okb0arsqijvP.woff2") format("woff2"), url("../fonts/PbdTGfgM0x4E.woff") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "Moderat Bold";
  src: url("../fonts/PeHGsfXw3bCc.eot");
  src: url("../fonts/Ib3at07wvteW.woff2") format("woff2"), url("../fonts/r9hg31XfN0Oy.woff") format("woff2");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "SuperValu Icons";
  src: url("../fonts/iHrgQfSjiMvP.eot");
  src: url("../fonts/iHrgQfSjiMvP.eot#iefix") format("embedded-opentype"), url("../fonts/RXn2gQ0Gl16j.ttf") format("truetype"), url("../fonts/14JlrMgKsPPc.woff") format("woff"), url("../images/h8Dc00mIiQiw.svg#supervalu") format("svg");
  font-weight: normal;
  font-style: normal;
  font-display: block;
}
/*
 * Icons
 */
/*
 * Shadows
 */
/*
 * Transitions
 */
/*
   variable for transition speed and easing only
   define scope of transition (eg. all, background-color) in element css
*/
/* Base */
/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
/* Document
   ========================================================================== */
/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
  line-height: 1.15;
  /* 1 */
  -webkit-text-size-adjust: 100%;
  /* 2 */
}

/* Sections
   ========================================================================== */
/**
 * Remove the margin in all browsers.
 */
body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */
main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */
/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
  box-sizing: content-box;
  /* 1 */
  height: 0;
  /* 1 */
  overflow: visible;
  /* 2 */
}

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

/* Text-level semantics
   ========================================================================== */
/**
 * Remove the gray background on active links in IE 10.
 */
a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
  border-bottom: none;
  /* 1 */
  text-decoration: underline;
  /* 2 */
  text-decoration: underline dotted;
  /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
  font-weight: bolder;
}

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

/**
 * Add the correct font size in all browsers.
 */
small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */
/**
 * Remove the border on images inside links in IE 10.
 */
img {
  border-style: none;
}

/* Forms
   ========================================================================== */
/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 1 */
  line-height: 1.15;
  /* 1 */
  margin: 0;
  /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
  /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
  /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type=button],
[type=reset],
[type=submit] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type=button]::-moz-focus-inner,
[type=reset]::-moz-focus-inner,
[type=submit]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type=button]:-moz-focusring,
[type=reset]:-moz-focusring,
[type=submit]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */
legend {
  box-sizing: border-box;
  /* 1 */
  color: inherit;
  /* 2 */
  display: table;
  /* 1 */
  max-width: 100%;
  /* 1 */
  padding: 0;
  /* 3 */
  white-space: normal;
  /* 1 */
}

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

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type=checkbox],
[type=radio] {
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type=number]::-webkit-inner-spin-button,
[type=number]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type=search] {
  -webkit-appearance: textfield;
  /* 1 */
  outline-offset: -2px;
  /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */
[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
  -webkit-appearance: button;
  /* 1 */
  font: inherit;
  /* 2 */
}

/* Interactive
   ========================================================================== */
/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
  display: list-item;
}

/* Misc
   ========================================================================== */
/**
 * Add the correct display in IE 10+.
 */
template {
  display: none;
}

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

/*
 * Global
 */
* {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  box-sizing: border-box;
}

body {
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 100%;
  font-weight: normal;
  line-height: 1.5;
  color: #333333;
}

main {
  width: 100%;
  min-height: 50vh;
  margin: 0 auto;
}

div.container {
  align-self: flex-start;
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 32px;
}
div.container > div.wrapper {
  display: flex;
  margin: 0 -32px;
}
div.container > div.wrapper *.item {
  flex-basis: 100%;
  flex-grow: 1;
  margin: 32px;
}
@media all and (max-width: 992px) {
  div.container {
    padding: 0 16px;
  }
  div.container div.wrapper {
    margin: 0 -16px;
  }
  div.container div.wrapper *.item {
    margin: 16px;
  }
}
div.container.full-width {
  padding-right: 0;
  padding-left: 0;
  max-width: 100%;
}
div.container.full-width > div.wrapper {
  max-width: 1440px;
  margin-right: auto;
  margin-left: auto;
}
div.container.full-width div.container {
  padding-right: 0;
  padding-left: 0;
}
div.container figure {
  margin: 0;
}
div.container img {
  max-width: 100%;
  height: auto;
}

/*
 * Icons
 */
span[class*=icon-] {
  line-height: 1;
}
span[class*=icon-]::after {
  content: "";
  font-family: "SuperValu Icons";
  font-size: 16px;
  line-height: 1;
}

a.button.primary[class*=icon-]::after,
button.primary[class*=icon-]::after,
a.button.secondary[class*=icon-]::after,
button.secondary[class*=icon-]::after,
a.button.navigation[class*=icon-]::after {
  content: "";
  margin-left: 12px;
  font-family: "SuperValu Icons";
  font-size: 16px;
  line-height: 1;
}

a.pill[class*=icon-]::after {
  content: "";
  margin-left: 8px;
  font-family: "SuperValu Icons";
  font-size: 12px;
  line-height: 1;
}

a.button.primary.spin[class*=icon-]::after,
button.primary.spin[class*=icon-]::after,
a.button.secondary.spin[class*=icon-]::after,
button.secondary.spin[class*=icon-]::after,
a.button.navigation.spin[class*=icon-]::after,
a.pill.spin[class*=icon-]::after {
  animation: spin 1s linear infinite;
}

@keyframes spin {
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}
span.icon-aisles::after,
a.button.primary.icon-aisles::after,
button.primary.icon-aisles::after,
a.button.secondary.icon-aisles::after,
button.secondary.icon-aisles::after,
a.button.navigation.icon-aisles::after,
a.pill.icon-aisles::after {
  content: "\e900";
}
span.icon-arrow-left::after,
a.button.primary.icon-arrow-left::after,
button.primary.icon-arrow-left::after,
a.button.secondary.icon-arrow-left::after,
button.secondary.icon-arrow-left::after,
a.button.navigation.icon-arrow-left::after,
a.pill.icon-arrow-left::after {
  content: "\e901";
}
span.icon-arrow-right::after,
a.button.primary.icon-arrow-right::after,
button.primary.icon-arrow-right::after,
a.button.secondary.icon-arrow-right::after,
button.secondary.icon-arrow-right::after,
a.button.navigation.icon-arrow-right::after,
a.pill.icon-arrow-right::after {
  content: "\e902";
}
span.icon-arrow-up::after,
a.button.primary.icon-arrow-up::after,
button.primary.icon-arrow-up::after,
a.button.secondary.icon-arrow-up::after,
button.secondary.icon-arrow-up::after,
a.button.navigation.icon-arrow-up::after,
a.pill.icon-arrow-up::after {
  content: "\e903";
}
span.icon-arrow-down::after,
a.button.primary.icon-arrow-down::after,
button.primary.icon-arrow-down::after,
a.button.secondary.icon-arrow-down::after,
button.secondary.icon-arrow-down::after,
a.button.navigation.icon-arrow-down::after,
a.pill.icon-arrow-down::after {
  content: "\e904";
}
span.icon-arrow-updown::after,
a.button.primary.icon-arrow-updown::after,
button.primary.icon-arrow-updown::after,
a.button.secondary.icon-arrow-updown::after,
button.secondary.icon-arrow-updown::after,
a.button.navigation.icon-arrow-updown::after,
a.pill.icon-arrow-updown::after {
  content: "\e905";
}
span.icon-chevron-left::after,
a.button.primary.icon-chevron-left::after,
button.primary.icon-chevron-left::after,
a.button.secondary.icon-chevron-left::after,
button.secondary.icon-chevron-left::after,
a.button.navigation.icon-chevron-left::after,
a.pill.icon-chevron-left::after {
  content: "\e906";
}
span.icon-chevron-right::after,
a.button.primary.icon-chevron-right::after,
button.primary.icon-chevron-right::after,
a.button.secondary.icon-chevron-right::after,
button.secondary.icon-chevron-right::after,
a.button.navigation.icon-chevron-right::after,
a.pill.icon-chevron-right::after {
  content: "\e907";
}
span.icon-chevron-up::after,
a.button.primary.icon-chevron-up::after,
button.primary.icon-chevron-up::after,
a.button.secondary.icon-chevron-up::after,
button.secondary.icon-chevron-up::after,
a.button.navigation.icon-chevron-up::after,
a.pill.icon-chevron-up::after {
  content: "\e908";
}
span.icon-chevron-down::after,
a.button.primary.icon-chevron-down::after,
button.primary.icon-chevron-down::after,
a.button.secondary.icon-chevron-down::after,
button.secondary.icon-chevron-down::after,
a.button.navigation.icon-chevron-down::after,
a.pill.icon-chevron-down::after {
  content: "\e909";
}
span.icon-close::after,
a.button.primary.icon-close::after,
button.primary.icon-close::after,
a.button.secondary.icon-close::after,
button.secondary.icon-close::after,
a.button.navigation.icon-close::after,
a.pill.icon-close::after {
  content: "\e90a";
}
span.icon-menu-hamburger::after,
a.button.primary.icon-menu-hamburger::after,
button.primary.icon-menu-hamburger::after,
a.button.secondary.icon-menu-hamburger::after,
button.secondary.icon-menu-hamburger::after,
a.button.navigation.icon-menu-hamburger::after,
a.pill.icon-menu-hamburger::after {
  content: "\e90b";
}
span.icon-menu-hamburger-2::after,
a.button.primary.icon-menu-hamburger-2::after,
button.primary.icon-menu-hamburger-2::after,
a.button.secondary.icon-menu-hamburger-2::after,
button.secondary.icon-menu-hamburger-2::after,
a.button.navigation.icon-menu-hamburger-2::after,
a.pill.icon-menu-hamburger-2::after {
  content: "\e97a";
}
span.icon-menu-kebab::after,
a.button.primary.icon-menu-kebab::after,
button.primary.icon-menu-kebab::after,
a.button.secondary.icon-menu-kebab::after,
button.secondary.icon-menu-kebab::after,
a.button.navigation.icon-menu-kebab::after,
a.pill.icon-menu-kebab::after {
  content: "\e90c";
}
span.icon-menu-meatballs::after,
a.button.primary.icon-menu-meatballs::after,
button.primary.icon-menu-meatballs::after,
a.button.secondary.icon-menu-meatballs::after,
button.secondary.icon-menu-meatballs::after,
a.button.navigation.icon-menu-meatballs::after,
a.pill.icon-menu-meatballs::after {
  content: "\e90d";
}
span.icon-check::after,
a.button.primary.icon-check::after,
button.primary.icon-check::after,
a.button.secondary.icon-check::after,
button.secondary.icon-check::after,
a.button.navigation.icon-check::after,
a.pill.icon-check::after {
  content: "\e90e";
}
span.icon-checkbox-unchecked::after,
a.button.primary.icon-checkbox-unchecked::after,
button.primary.icon-checkbox-unchecked::after,
a.button.secondary.icon-checkbox-unchecked::after,
button.secondary.icon-checkbox-unchecked::after,
a.button.navigation.icon-checkbox-unchecked::after,
a.pill.icon-checkbox-unchecked::after {
  content: "\e90f";
}
span.icon-checkbox-checked::after,
a.button.primary.icon-checkbox-checked::after,
button.primary.icon-checkbox-checked::after,
a.button.secondary.icon-checkbox-checked::after,
button.secondary.icon-checkbox-checked::after,
a.button.navigation.icon-checkbox-checked::after,
a.pill.icon-checkbox-checked::after {
  content: "\e910";
}
span.icon-checkbox-mark::after,
a.button.primary.icon-checkbox-mark::after,
button.primary.icon-checkbox-mark::after,
a.button.secondary.icon-checkbox-mark::after,
button.secondary.icon-checkbox-mark::after,
a.button.navigation.icon-checkbox-mark::after,
a.pill.icon-checkbox-mark::after {
  content: "\e911";
}
span.icon-radio-unchecked::after,
a.button.primary.icon-radio-unchecked::after,
button.primary.icon-radio-unchecked::after,
a.button.secondary.icon-radio-unchecked::after,
button.secondary.icon-radio-unchecked::after,
a.button.navigation.icon-radio-unchecked::after,
a.pill.icon-radio-unchecked::after {
  content: "\e912";
}
span.icon-radio-checked::after,
a.button.primary.icon-radio-checked::after,
button.primary.icon-radio-checked::after,
a.button.secondary.icon-radio-checked::after,
button.secondary.icon-radio-checked::after,
a.button.navigation.icon-radio-checked::after,
a.pill.icon-radio-checked::after {
  content: "\e913";
}
span.icon-circle-clear::after,
a.button.primary.icon-circle-clear::after,
button.primary.icon-circle-clear::after,
a.button.secondary.icon-circle-clear::after,
button.secondary.icon-circle-clear::after,
a.button.navigation.icon-circle-clear::after,
a.pill.icon-circle-clear::after {
  content: "\e916";
}
span.icon-circle-check::after,
a.button.primary.icon-circle-check::after,
button.primary.icon-circle-check::after,
a.button.secondary.icon-circle-check::after,
button.secondary.icon-circle-check::after,
a.button.navigation.icon-circle-check::after,
a.pill.icon-circle-check::after {
  content: "\e914";
}
span.icon-circle-remove::after,
a.button.primary.icon-circle-remove::after,
button.primary.icon-circle-remove::after,
a.button.secondary.icon-circle-remove::after,
button.secondary.icon-circle-remove::after,
a.button.navigation.icon-circle-remove::after,
a.pill.icon-circle-remove::after {
  content: "\e915";
}
span.icon-bar-scan::after,
a.button.primary.icon-bar-scan::after,
button.primary.icon-bar-scan::after,
a.button.secondary.icon-bar-scan::after,
button.secondary.icon-bar-scan::after,
a.button.navigation.icon-bar-scan::after,
a.pill.icon-bar-scan::after {
  content: "\e917";
}
span.icon-bin-empty::after,
a.button.primary.icon-bin-empty::after,
button.primary.icon-bin-empty::after,
a.button.secondary.icon-bin-empty::after,
button.secondary.icon-bin-empty::after,
a.button.navigation.icon-bin-empty::after,
a.pill.icon-bin-empty::after {
  content: "\e918";
}
span.icon-bin-solid::after,
a.button.primary.icon-bin-solid::after,
button.primary.icon-bin-solid::after,
a.button.secondary.icon-bin-solid::after,
button.secondary.icon-bin-solid::after,
a.button.navigation.icon-bin-solid::after,
a.pill.icon-bin-solid::after {
  content: "\e919";
}
span.icon-browse::after,
a.button.primary.icon-browse::after,
button.primary.icon-browse::after,
a.button.secondary.icon-browse::after,
button.secondary.icon-browse::after,
a.button.navigation.icon-browse::after,
a.pill.icon-browse::after {
  content: "\e91a";
}
span.icon-copy::after,
a.button.primary.icon-copy::after,
button.primary.icon-copy::after,
a.button.secondary.icon-copy::after,
button.secondary.icon-copy::after,
a.button.navigation.icon-copy::after,
a.pill.icon-copy::after {
  content: "\e91b";
}
span.icon-download::after,
a.button.primary.icon-download::after,
button.primary.icon-download::after,
a.button.secondary.icon-download::after,
button.secondary.icon-download::after,
a.button.navigation.icon-download::after,
a.pill.icon-download::after {
  content: "\e91c";
}
span.icon-edit::after,
a.button.primary.icon-edit::after,
button.primary.icon-edit::after,
a.button.secondary.icon-edit::after,
button.secondary.icon-edit::after,
a.button.navigation.icon-edit::after,
a.pill.icon-edit::after {
  content: "\e91d";
}
span.icon-eye-on::after,
a.button.primary.icon-eye-on::after,
button.primary.icon-eye-on::after,
a.button.secondary.icon-eye-on::after,
button.secondary.icon-eye-on::after,
a.button.navigation.icon-eye-on::after,
a.pill.icon-eye-on::after {
  content: "\e91e";
}
span.icon-eye-off::after,
a.button.primary.icon-eye-off::after,
button.primary.icon-eye-off::after,
a.button.secondary.icon-eye-off::after,
button.secondary.icon-eye-off::after,
a.button.navigation.icon-eye-off::after,
a.pill.icon-eye-off::after {
  content: "\e91f";
}
span.icon-filter::after,
a.button.primary.icon-filter::after,
button.primary.icon-filter::after,
a.button.secondary.icon-filter::after,
button.secondary.icon-filter::after,
a.button.navigation.icon-filter::after,
a.pill.icon-filter::after {
  content: "\e920";
}
span.icon-flag::after,
a.button.primary.icon-flag::after,
button.primary.icon-flag::after,
a.button.secondary.icon-flag::after,
button.secondary.icon-flag::after,
a.button.navigation.icon-flag::after,
a.pill.icon-flag::after {
  content: "\e921";
}
span.icon-heart-empty::after,
a.button.primary.icon-heart-empty::after,
button.primary.icon-heart-empty::after,
a.button.secondary.icon-heart-empty::after,
button.secondary.icon-heart-empty::after,
a.button.navigation.icon-heart-empty::after,
a.pill.icon-heart-empty::after {
  content: "\e922";
}
span.icon-heart-solid::after,
a.button.primary.icon-heart-solid::after,
button.primary.icon-heart-solid::after,
a.button.secondary.icon-heart-solid::after,
button.secondary.icon-heart-solid::after,
a.button.navigation.icon-heart-solid::after,
a.pill.icon-heart-solid::after {
  content: "\e923";
}
span.icon-list-items::after,
a.button.primary.icon-list-items::after,
button.primary.icon-list-items::after,
a.button.secondary.icon-list-items::after,
button.secondary.icon-list-items::after,
a.button.navigation.icon-list-items::after,
a.pill.icon-list-items::after {
  content: "\e924";
}
span.icon-list-large::after,
a.button.primary.icon-list-large::after,
button.primary.icon-list-large::after,
a.button.secondary.icon-list-large::after,
button.secondary.icon-list-large::after,
a.button.navigation.icon-list-large::after,
a.pill.icon-list-large::after {
  content: "\e925";
}
span.icon-list-remove::after,
a.button.primary.icon-list-remove::after,
button.primary.icon-list-remove::after,
a.button.secondary.icon-list-remove::after,
button.secondary.icon-list-remove::after,
a.button.navigation.icon-list-remove::after,
a.pill.icon-list-remove::after {
  content: "\e926";
}
span.icon-list-save::after,
a.button.primary.icon-list-save::after,
button.primary.icon-list-save::after,
a.button.secondary.icon-list-save::after,
button.secondary.icon-list-save::after,
a.button.navigation.icon-list-save::after,
a.pill.icon-list-save::after {
  content: "\e927";
}
span.icon-list-search::after,
a.button.primary.icon-list-search::after,
button.primary.icon-list-search::after,
a.button.secondary.icon-list-search::after,
button.secondary.icon-list-search::after,
a.button.navigation.icon-list-search::after,
a.pill.icon-list-search::after {
  content: "\e928";
}
span.icon-lock::after,
a.button.primary.icon-lock::after,
button.primary.icon-lock::after,
a.button.secondary.icon-lock::after,
button.secondary.icon-lock::after,
a.button.navigation.icon-lock::after,
a.pill.icon-lock::after {
  content: "\e929";
}
span.icon-minus::after,
a.button.primary.icon-minus::after,
button.primary.icon-minus::after,
a.button.secondary.icon-minus::after,
button.secondary.icon-minus::after,
a.button.navigation.icon-minus::after,
a.pill.icon-minus::after {
  content: "\e92a";
}
span.icon-pause::after,
a.button.primary.icon-pause::after,
button.primary.icon-pause::after,
a.button.secondary.icon-pause::after,
button.secondary.icon-pause::after,
a.button.navigation.icon-pause::after,
a.pill.icon-pause::after {
  content: "\e92b";
}
span.icon-plus::after,
a.button.primary.icon-plus::after,
button.primary.icon-plus::after,
a.button.secondary.icon-plus::after,
button.secondary.icon-plus::after,
a.button.navigation.icon-plus::after,
a.pill.icon-plus::after {
  content: "\e92c";
}
span.icon-print::after,
a.button.primary.icon-print::after,
button.primary.icon-print::after,
a.button.secondary.icon-print::after,
button.secondary.icon-print::after,
a.button.navigation.icon-print::after,
a.pill.icon-print::after {
  content: "\e92d";
}
span.icon-save::after,
a.button.primary.icon-save::after,
button.primary.icon-save::after,
a.button.secondary.icon-save::after,
button.secondary.icon-save::after,
a.button.navigation.icon-save::after,
a.pill.icon-save::after {
  content: "\e92e";
}
span.icon-search::after,
a.button.primary.icon-search::after,
button.primary.icon-search::after,
a.button.secondary.icon-search::after,
button.secondary.icon-search::after,
a.button.navigation.icon-search::after,
a.pill.icon-search::after {
  content: "\e92f";
}
span.icon-send::after,
a.button.primary.icon-send::after,
button.primary.icon-send::after,
a.button.secondary.icon-send::after,
button.secondary.icon-send::after,
a.button.navigation.icon-send::after,
a.pill.icon-send::after {
  content: "\e930";
}
span.icon-settings::after,
a.button.primary.icon-settings::after,
button.primary.icon-settings::after,
a.button.secondary.icon-settings::after,
button.secondary.icon-settings::after,
a.button.navigation.icon-settings::after,
a.pill.icon-settings::after {
  content: "\e931";
}
span.icon-share::after,
a.button.primary.icon-share::after,
button.primary.icon-share::after,
a.button.secondary.icon-share::after,
button.secondary.icon-share::after,
a.button.navigation.icon-share::after,
a.pill.icon-share::after {
  content: "\e932";
}
span.icon-sort-grid::after,
a.button.primary.icon-sort-grid::after,
button.primary.icon-sort-grid::after,
a.button.secondary.icon-sort-grid::after,
button.secondary.icon-sort-grid::after,
a.button.navigation.icon-sort-grid::after,
a.pill.icon-sort-grid::after {
  content: "\e933";
}
span.icon-sort-list::after,
a.button.primary.icon-sort-list::after,
button.primary.icon-sort-list::after,
a.button.secondary.icon-sort-list::after,
button.secondary.icon-sort-list::after,
a.button.navigation.icon-sort-list::after,
a.pill.icon-sort-list::after {
  content: "\e934";
}
span.icon-star-empty::after,
a.button.primary.icon-star-empty::after,
button.primary.icon-star-empty::after,
a.button.secondary.icon-star-empty::after,
button.secondary.icon-star-empty::after,
a.button.navigation.icon-star-empty::after,
a.pill.icon-star-empty::after {
  content: "\e935";
}
span.icon-star-filled::after,
a.button.primary.icon-star-filled::after,
button.primary.icon-star-filled::after,
a.button.secondary.icon-star-filled::after,
button.secondary.icon-star-filled::after,
a.button.navigation.icon-star-filled::after,
a.pill.icon-star-filled::after {
  content: "\e936";
}
span.icon-substitute::after,
a.button.primary.icon-substitute::after,
button.primary.icon-substitute::after,
a.button.secondary.icon-substitute::after,
button.secondary.icon-substitute::after,
a.button.navigation.icon-substitute::after,
a.pill.icon-substitute::after {
  content: "\e937";
}
span.icon-substitute-bestmatch::after,
a.button.primary.icon-substitute-bestmatch::after,
button.primary.icon-substitute-bestmatch::after,
a.button.secondary.icon-substitute-bestmatch::after,
button.secondary.icon-substitute-bestmatch::after,
a.button.navigation.icon-substitute-bestmatch::after,
a.pill.icon-substitute-bestmatch::after {
  content: "\e938";
}
span.icon-substitute-none::after,
a.button.primary.icon-substitute-none::after,
button.primary.icon-substitute-none::after,
a.button.secondary.icon-substitute-none::after,
button.secondary.icon-substitute-none::after,
a.button.navigation.icon-substitute-none::after,
a.pill.icon-substitute-none::after {
  content: "\e939";
}
span.icon-substitute-product::after,
a.button.primary.icon-substitute-product::after,
button.primary.icon-substitute-product::after,
a.button.secondary.icon-substitute-product::after,
button.secondary.icon-substitute-product::after,
a.button.navigation.icon-substitute-product::after,
a.pill.icon-substitute-product::after {
  content: "\e93a";
}
span.icon-voice::after,
a.button.primary.icon-voice::after,
button.primary.icon-voice::after,
a.button.secondary.icon-voice::after,
button.secondary.icon-voice::after,
a.button.navigation.icon-voice::after,
a.pill.icon-voice::after {
  content: "\e93b";
}
span.icon-addresses::after,
a.button.primary.icon-addresses::after,
button.primary.icon-addresses::after,
a.button.secondary.icon-addresses::after,
button.secondary.icon-addresses::after,
a.button.navigation.icon-addresses::after,
a.pill.icon-addresses::after {
  content: "\e93c";
}
span.icon-basket::after,
a.button.primary.icon-basket::after,
button.primary.icon-basket::after,
a.button.secondary.icon-basket::after,
button.secondary.icon-basket::after,
a.button.navigation.icon-basket::after,
a.pill.icon-basket::after {
  content: "\e93d";
}
span.icon-calendar::after,
a.button.primary.icon-calendar::after,
button.primary.icon-calendar::after,
a.button.secondary.icon-calendar::after,
button.secondary.icon-calendar::after,
a.button.navigation.icon-calendar::after,
a.pill.icon-calendar::after {
  content: "\e93e";
}
span.icon-chat::after,
a.button.primary.icon-chat::after,
button.primary.icon-chat::after,
a.button.secondary.icon-chat::after,
button.secondary.icon-chat::after,
a.button.navigation.icon-chat::after,
a.pill.icon-chat::after {
  content: "\e93f";
}
span.icon-checkout::after,
a.button.primary.icon-checkout::after,
button.primary.icon-checkout::after,
a.button.secondary.icon-checkout::after,
button.secondary.icon-checkout::after,
a.button.navigation.icon-checkout::after,
a.pill.icon-checkout::after {
  content: "\e940";
}
span.icon-circular::after,
a.button.primary.icon-circular::after,
button.primary.icon-circular::after,
a.button.secondary.icon-circular::after,
button.secondary.icon-circular::after,
a.button.navigation.icon-circular::after,
a.pill.icon-circular::after {
  content: "\e941";
}
span.icon-clickcollect::after,
a.button.primary.icon-clickcollect::after,
button.primary.icon-clickcollect::after,
a.button.secondary.icon-clickcollect::after,
button.secondary.icon-clickcollect::after,
a.button.navigation.icon-clickcollect::after,
a.pill.icon-clickcollect::after {
  content: "\e942";
}
span.icon-clock::after,
a.button.primary.icon-clock::after,
button.primary.icon-clock::after,
a.button.secondary.icon-clock::after,
button.secondary.icon-clock::after,
a.button.navigation.icon-clock::after,
a.pill.icon-clock::after {
  content: "\e943";
}
span.icon-dashboard::after,
a.button.primary.icon-dashboard::after,
button.primary.icon-dashboard::after,
a.button.secondary.icon-dashboard::after,
button.secondary.icon-dashboard::after,
a.button.navigation.icon-dashboard::after,
a.pill.icon-dashboard::after {
  content: "\e944";
}
span.icon-delivery::after,
a.button.primary.icon-delivery::after,
button.primary.icon-delivery::after,
a.button.secondary.icon-delivery::after,
button.secondary.icon-delivery::after,
a.button.navigation.icon-delivery::after,
a.pill.icon-delivery::after {
  content: "\e945";
}
span.icon-dietary::after,
a.button.primary.icon-dietary::after,
button.primary.icon-dietary::after,
a.button.secondary.icon-dietary::after,
button.secondary.icon-dietary::after,
a.button.navigation.icon-dietary::after,
a.pill.icon-dietary::after {
  content: "\e946";
}
span.icon-dropship::after,
a.button.primary.icon-dropship::after,
button.primary.icon-dropship::after,
a.button.secondary.icon-dropship::after,
button.secondary.icon-dropship::after,
a.button.navigation.icon-dropship::after,
a.pill.icon-dropship::after {
  content: "\e947";
}
span.icon-eco::after,
a.button.primary.icon-eco::after,
button.primary.icon-eco::after,
a.button.secondary.icon-eco::after,
button.secondary.icon-eco::after,
a.button.navigation.icon-eco::after,
a.pill.icon-eco::after {
  content: "\e948";
}
span.icon-email::after,
a.button.primary.icon-email::after,
button.primary.icon-email::after,
a.button.secondary.icon-email::after,
button.secondary.icon-email::after,
a.button.navigation.icon-email::after,
a.pill.icon-email::after {
  content: "\e949";
}
span.icon-error::after,
a.button.primary.icon-error::after,
button.primary.icon-error::after,
a.button.secondary.icon-error::after,
button.secondary.icon-error::after,
a.button.navigation.icon-error::after,
a.pill.icon-error::after {
  content: "\e94a";
}
span.icon-face-happy::after,
a.button.primary.icon-face-happy::after,
button.primary.icon-face-happy::after,
a.button.secondary.icon-face-happy::after,
button.secondary.icon-face-happy::after,
a.button.navigation.icon-face-happy::after,
a.pill.icon-face-happy::after {
  content: "\e94b";
}
span.icon-face-sad::after,
a.button.primary.icon-face-sad::after,
button.primary.icon-face-sad::after,
a.button.secondary.icon-face-sad::after,
button.secondary.icon-face-sad::after,
a.button.navigation.icon-face-sad::after,
a.pill.icon-face-sad::after {
  content: "\e94c";
}
span.icon-geolocate::after,
a.button.primary.icon-geolocate::after,
button.primary.icon-geolocate::after,
a.button.secondary.icon-geolocate::after,
button.secondary.icon-geolocate::after,
a.button.navigation.icon-geolocate::after,
a.pill.icon-geolocate::after {
  content: "\e94d";
}
span.icon-help::after,
a.button.primary.icon-help::after,
button.primary.icon-help::after,
a.button.secondary.icon-help::after,
button.secondary.icon-help::after,
a.button.navigation.icon-help::after,
a.pill.icon-help::after {
  content: "\e94e";
}
span.icon-home::after,
a.button.primary.icon-home::after,
button.primary.icon-home::after,
a.button.secondary.icon-home::after,
button.secondary.icon-home::after,
a.button.navigation.icon-home::after,
a.pill.icon-home::after {
  content: "\e94f";
}
span.icon-info::after,
a.button.primary.icon-info::after,
button.primary.icon-info::after,
a.button.secondary.icon-info::after,
button.secondary.icon-info::after,
a.button.navigation.icon-info::after,
a.pill.icon-info::after {
  content: "\e950";
}
span.icon-location::after,
a.button.primary.icon-location::after,
button.primary.icon-location::after,
a.button.secondary.icon-location::after,
button.secondary.icon-location::after,
a.button.navigation.icon-location::after,
a.pill.icon-location::after {
  content: "\e951";
}
span.icon-location-empty::after,
a.button.primary.icon-location-empty::after,
button.primary.icon-location-empty::after,
a.button.secondary.icon-location-empty::after,
button.secondary.icon-location-empty::after,
a.button.navigation.icon-location-empty::after,
a.pill.icon-location-empty::after {
  content: "\e952";
}
span.icon-location-solid::after,
a.button.primary.icon-location-solid::after,
button.primary.icon-location-solid::after,
a.button.secondary.icon-location-solid::after,
button.secondary.icon-location-solid::after,
a.button.navigation.icon-location-solid::after,
a.pill.icon-location-solid::after {
  content: "\e953";
}
span.icon-location-distance::after,
a.button.primary.icon-location-distance::after,
button.primary.icon-location-distance::after,
a.button.secondary.icon-location-distance::after,
button.secondary.icon-location-distance::after,
a.button.navigation.icon-location-distance::after,
a.pill.icon-location-distance::after {
  content: "\e954";
}
span.icon-lost-connection::after,
a.button.primary.icon-lost-connection::after,
button.primary.icon-lost-connection::after,
a.button.secondary.icon-lost-connection::after,
button.secondary.icon-lost-connection::after,
a.button.navigation.icon-lost-connection::after,
a.pill.icon-lost-connection::after {
  content: "\e955";
}
span.icon-loyaltycard::after,
a.button.primary.icon-loyaltycard::after,
button.primary.icon-loyaltycard::after,
a.button.secondary.icon-loyaltycard::after,
button.secondary.icon-loyaltycard::after,
a.button.navigation.icon-loyaltycard::after,
a.pill.icon-loyaltycard::after {
  content: "\e956";
}
span.icon-mail::after,
a.button.primary.icon-mail::after,
button.primary.icon-mail::after,
a.button.secondary.icon-mail::after,
button.secondary.icon-mail::after,
a.button.navigation.icon-mail::after,
a.pill.icon-mail::after {
  content: "\e957";
}
span.icon-mobile::after,
a.button.primary.icon-mobile::after,
button.primary.icon-mobile::after,
a.button.secondary.icon-mobile::after,
button.secondary.icon-mobile::after,
a.button.navigation.icon-mobile::after,
a.pill.icon-mobile::after {
  content: "\e958";
}
span.icon-note::after,
a.button.primary.icon-note::after,
button.primary.icon-note::after,
a.button.secondary.icon-note::after,
button.secondary.icon-note::after,
a.button.navigation.icon-note::after,
a.pill.icon-note::after {
  content: "\e959";
}
span.icon-notifications::after,
a.button.primary.icon-notifications::after,
button.primary.icon-notifications::after,
a.button.secondary.icon-notifications::after,
button.secondary.icon-notifications::after,
a.button.navigation.icon-notifications::after,
a.pill.icon-notifications::after {
  content: "\e95a";
}
span.icon-offers::after,
a.button.primary.icon-offers::after,
button.primary.icon-offers::after,
a.button.secondary.icon-offers::after,
button.secondary.icon-offers::after,
a.button.navigation.icon-offers::after,
a.pill.icon-offers::after {
  content: "\e95b";
}
span.icon-orders::after,
a.button.primary.icon-orders::after,
button.primary.icon-orders::after,
a.button.secondary.icon-orders::after,
button.secondary.icon-orders::after,
a.button.navigation.icon-orders::after,
a.pill.icon-orders::after {
  content: "\e95c";
}
span.icon-payment-outline::after,
a.button.primary.icon-payment-outline::after,
button.primary.icon-payment-outline::after,
a.button.secondary.icon-payment-outline::after,
button.secondary.icon-payment-outline::after,
a.button.navigation.icon-payment-outline::after,
a.pill.icon-payment-outline::after {
  content: "\e95d";
}
span.icon-phone::after,
a.button.primary.icon-phone::after,
button.primary.icon-phone::after,
a.button.secondary.icon-phone::after,
button.secondary.icon-phone::after,
a.button.navigation.icon-phone::after,
a.pill.icon-phone::after {
  content: "\e95e";
}
span.icon-pickup-info::after,
a.button.primary.icon-pickup-info::after,
button.primary.icon-pickup-info::after,
a.button.secondary.icon-pickup-info::after,
button.secondary.icon-pickup-info::after,
a.button.navigation.icon-pickup-info::after,
a.pill.icon-pickup-info::after {
  content: "\e95f";
}
span.icon-recipe-calories::after,
a.button.primary.icon-recipe-calories::after,
button.primary.icon-recipe-calories::after,
a.button.secondary.icon-recipe-calories::after,
button.secondary.icon-recipe-calories::after,
a.button.navigation.icon-recipe-calories::after,
a.pill.icon-recipe-calories::after {
  content: "\e960";
}
span.icon-recipe-chef::after,
a.button.primary.icon-recipe-chef::after,
button.primary.icon-recipe-chef::after,
a.button.secondary.icon-recipe-chef::after,
button.secondary.icon-recipe-chef::after,
a.button.navigation.icon-recipe-chef::after,
a.pill.icon-recipe-chef::after {
  content: "\e961";
}
span.icon-recipe-cooktime::after,
a.button.primary.icon-recipe-cooktime::after,
button.primary.icon-recipe-cooktime::after,
a.button.secondary.icon-recipe-cooktime::after,
button.secondary.icon-recipe-cooktime::after,
a.button.navigation.icon-recipe-cooktime::after,
a.pill.icon-recipe-cooktime::after {
  content: "\e962";
}
span.icon-recipe-ingredients::after,
a.button.primary.icon-recipe-ingredients::after,
button.primary.icon-recipe-ingredients::after,
a.button.secondary.icon-recipe-ingredients::after,
button.secondary.icon-recipe-ingredients::after,
a.button.navigation.icon-recipe-ingredients::after,
a.pill.icon-recipe-ingredients::after {
  content: "\e963";
}
span.icon-recipe-servings::after,
a.button.primary.icon-recipe-servings::after,
button.primary.icon-recipe-servings::after,
a.button.secondary.icon-recipe-servings::after,
button.secondary.icon-recipe-servings::after,
a.button.navigation.icon-recipe-servings::after,
a.pill.icon-recipe-servings::after {
  content: "\e964";
}
span.icon-recipes::after,
a.button.primary.icon-recipes::after,
button.primary.icon-recipes::after,
a.button.secondary.icon-recipes::after,
button.secondary.icon-recipes::after,
a.button.navigation.icon-recipes::after,
a.pill.icon-recipes::after {
  content: "\e965";
}
span.icon-reserve::after,
a.button.primary.icon-reserve::after,
button.primary.icon-reserve::after,
a.button.secondary.icon-reserve::after,
button.secondary.icon-reserve::after,
a.button.navigation.icon-reserve::after,
a.pill.icon-reserve::after {
  content: "\e966";
}
span.icon-rr-coupons::after,
a.button.primary.icon-rr-coupons::after,
button.primary.icon-rr-coupons::after,
a.button.secondary.icon-rr-coupons::after,
button.secondary.icon-rr-coupons::after,
a.button.navigation.icon-rr-coupons::after,
a.pill.icon-rr-coupons::after {
  content: "\e967";
}
span.icon-rr-getpoints::after,
a.button.primary.icon-rr-getpoints::after,
button.primary.icon-rr-getpoints::after,
a.button.secondary.icon-rr-getpoints::after,
button.secondary.icon-rr-getpoints::after,
a.button.navigation.icon-rr-getpoints::after,
a.pill.icon-rr-getpoints::after {
  content: "\e968";
}
span.icon-rr-points::after,
a.button.primary.icon-rr-points::after,
button.primary.icon-rr-points::after,
a.button.secondary.icon-rr-points::after,
button.secondary.icon-rr-points::after,
a.button.navigation.icon-rr-points::after,
a.pill.icon-rr-points::after {
  content: "\e969";
}
span.icon-rr-statements::after,
a.button.primary.icon-rr-statements::after,
button.primary.icon-rr-statements::after,
a.button.secondary.icon-rr-statements::after,
button.secondary.icon-rr-statements::after,
a.button.navigation.icon-rr-statements::after,
a.pill.icon-rr-statements::after {
  content: "\e96a";
}
span.icon-rr-usepoints::after,
a.button.primary.icon-rr-usepoints::after,
button.primary.icon-rr-usepoints::after,
a.button.secondary.icon-rr-usepoints::after,
button.secondary.icon-rr-usepoints::after,
a.button.navigation.icon-rr-usepoints::after,
a.pill.icon-rr-usepoints::after {
  content: "\e96b";
}
span.icon-rr-vouchers::after,
a.button.primary.icon-rr-vouchers::after,
button.primary.icon-rr-vouchers::after,
a.button.secondary.icon-rr-vouchers::after,
button.secondary.icon-rr-vouchers::after,
a.button.navigation.icon-rr-vouchers::after,
a.pill.icon-rr-vouchers::after {
  content: "\e96c";
}
span.icon-special-request::after,
a.button.primary.icon-special-request::after,
button.primary.icon-special-request::after,
a.button.secondary.icon-special-request::after,
button.secondary.icon-special-request::after,
a.button.navigation.icon-special-request::after,
a.pill.icon-special-request::after {
  content: "\e96d";
}
span.icon-trolley::after,
a.button.primary.icon-trolley::after,
button.primary.icon-trolley::after,
a.button.secondary.icon-trolley::after,
button.secondary.icon-trolley::after,
a.button.navigation.icon-trolley::after,
a.pill.icon-trolley::after {
  content: "\e96e";
}
span.icon-unavailable::after,
a.button.primary.icon-unavailable::after,
button.primary.icon-unavailable::after,
a.button.secondary.icon-unavailable::after,
button.secondary.icon-unavailable::after,
a.button.navigation.icon-unavailable::after,
a.pill.icon-unavailable::after {
  content: "\e96f";
}
span.icon-user::after,
a.button.primary.icon-user::after,
button.primary.icon-user::after,
a.button.secondary.icon-user::after,
button.secondary.icon-user::after,
a.button.navigation.icon-user::after,
a.pill.icon-user::after {
  content: "\e970";
}
span.icon-usuals::after,
a.button.primary.icon-usuals::after,
button.primary.icon-usuals::after,
a.button.secondary.icon-usuals::after,
button.secondary.icon-usuals::after,
a.button.navigation.icon-usuals::after,
a.pill.icon-usuals::after {
  content: "\e971";
}
span.icon-blog::after,
a.button.primary.icon-blog::after,
button.primary.icon-blog::after,
a.button.secondary.icon-blog::after,
button.secondary.icon-blog::after,
a.button.navigation.icon-blog::after,
a.pill.icon-blog::after {
  content: "\e972";
}
span.icon-weight::after,
a.button.primary.icon-weight::after,
button.primary.icon-weight::after,
a.button.secondary.icon-weight::after,
button.secondary.icon-weight::after,
a.button.navigation.icon-weight::after,
a.pill.icon-weight::after {
  content: "\e973";
}
span.icon-luggage::after,
a.button.primary.icon-luggage::after,
button.primary.icon-luggage::after,
a.button.secondary.icon-luggage::after,
button.secondary.icon-luggage::after,
a.button.navigation.icon-luggage::after,
a.pill.icon-luggage::after {
  content: "\e979";
}
span.icon-turkey::after,
a.button.primary.icon-turkey::after,
button.primary.icon-turkey::after,
a.button.secondary.icon-turkey::after,
button.secondary.icon-turkey::after,
a.button.navigation.icon-turkey::after,
a.pill.icon-turkey::after {
  content: "\e97b";
}
span.icon-social-facebook::after,
a.button.primary.icon-social-facebook::after,
button.primary.icon-social-facebook::after,
a.button.secondary.icon-social-facebook::after,
button.secondary.icon-social-facebook::after,
a.button.navigation.icon-social-facebook::after,
a.pill.icon-social-facebook::after {
  content: "\e974";
}
span.icon-social-instagram::after,
a.button.primary.icon-social-instagram::after,
button.primary.icon-social-instagram::after,
a.button.secondary.icon-social-instagram::after,
button.secondary.icon-social-instagram::after,
a.button.navigation.icon-social-instagram::after,
a.pill.icon-social-instagram::after {
  content: "\e975";
}
span.icon-social-pinterest::after,
a.button.primary.icon-social-pinterest::after,
button.primary.icon-social-pinterest::after,
a.button.secondary.icon-social-pinterest::after,
button.secondary.icon-social-pinterest::after,
a.button.navigation.icon-social-pinterest::after,
a.pill.icon-social-pinterest::after {
  content: "\e976";
}
span.icon-social-twitter::after,
a.button.primary.icon-social-twitter::after,
button.primary.icon-social-twitter::after,
a.button.secondary.icon-social-twitter::after,
button.secondary.icon-social-twitter::after,
a.button.navigation.icon-social-twitter::after,
a.pill.icon-social-twitter::after {
  content: "\e977";
}
span.icon-social-youtube::after,
a.button.primary.icon-social-youtube::after,
button.primary.icon-social-youtube::after,
a.button.secondary.icon-social-youtube::after,
button.secondary.icon-social-youtube::after,
a.button.navigation.icon-social-youtube::after,
a.pill.icon-social-youtube::after {
  content: "\e978";
}
span.icon-social-tiktok::after,
a.button.primary.icon-social-tiktok::after,
button.primary.icon-social-tiktok::after,
a.button.secondary.icon-social-tiktok::after,
button.secondary.icon-social-tiktok::after,
a.button.navigation.icon-social-tiktok::after,
a.pill.icon-social-tiktok::after {
  content: "\e97c";
}

/*
 * Type
 */
h1, h2, h3, h4, h5 {
  margin: 0 0 24px 0;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-weight: normal;
  color: #C8102E;
}

h1,
.h1 {
  font-size: 56px;
  line-height: 64px;
}
@media all and (max-width: 992px) {
  h1,
.h1 {
    font-size: 40px;
    line-height: 44px;
  }
}

h2,
.h2 {
  font-size: 40px;
  line-height: 44px;
}
@media all and (max-width: 992px) {
  h2,
.h2 {
    font-size: 24px;
    line-height: 28px;
  }
}

h3,
.h3 {
  font-size: 24px;
  line-height: 28px;
}

h4,
.h4 {
  font-size: 18px;
  line-height: 24px;
}

h5,
.h5 {
  font-size: 16px;
  line-height: 24px;
}

p {
  max-width: 840px;
  margin: 0 0 24px 0;
}
p.small {
  margin: 0 0 20px 0;
  font-size: 14px;
  line-height: 20px;
}
p a {
  color: #C8102E;
}
p a:hover {
  color: #333333;
}

strong,
b {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-weight: normal;
}

blockquote {
  max-width: 840px;
  margin: 0 0 24px 0;
  padding-left: 32px;
  border-left: 3px solid #E6EAEB;
}
@media all and (max-width: 992px) {
  blockquote {
    padding-left: 16px;
  }
}

/*
 * Lists
 */
ul,
ol,
dl {
  margin: 16px 0 24px 0;
  padding: 0 0 0 28px;
}
ul li,
ol li,
dl li {
  margin-bottom: 16px;
  font-size: 100%;
  font-weight: normal;
  line-height: 1.5;
}
ul li::marker,
ol li::marker,
dl li::marker {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
ul li p,
ol li p,
dl li p {
  margin-bottom: 0;
}

p ~ ul,
p ~ ol,
p ~ dl {
  max-width: 640px;
}

/*
 * Actions
 */
/* text link
 * isolated text link style only
 * see base/_type.scss for paragraph link (p > a)
*/
a {
  color: #C8102E;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a:focus, a:active {
  color: #C8102E;
  text-decoration: none;
}

/* button */
a.button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 16px 16px 16px;
  padding: 11px 24px 13px 24px;
  min-width: 160px;
  max-width: 220px;
  min-height: 43px;
  border-radius: 4px;
  background-color: #0CA74B;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
a.button:first-of-type {
  margin-left: 0;
}
a.button:last-of-type {
  margin-right: 0;
}
a.button:only-of-type {
  margin-right: 0;
  margin-left: 0;
}
@media all and (max-width: 768px) {
  a.button {
    min-width: 90px;
    min-height: 33px;
    margin: 0 8px 16px 8px;
    padding: 8px 24px;
    font-size: 14px;
  }
}
a.button:hover {
  background-color: #15743C;
  color: #ffffff;
}
a.button:focus, a.button:active {
  background-color: #034638;
  color: #ffffff;
}
a.button.small {
  min-width: 90px;
  min-height: 33px;
  padding: 8px 24px;
  font-size: 14px;
}
a.button.disabled {
  pointer-events: none;
}
a.button.primary {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
a.button.primary:hover {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
a.button.primary:focus, a.button.primary:active {
  background-color: #034638;
  color: #ffffff;
}
a.button.primary.disabled {
  background-color: #D1D6D8;
  color: #757575;
}
a.button.secondary {
  padding-top: 10px;
  padding-bottom: 12px;
  border: 1px solid #333333;
  background-color: transparent;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #333333;
}
a.button.secondary:hover {
  background-color: #333333;
  border-color: transparent;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
a.button.secondary:focus, a.button.secondary:active {
  background-color: #333333;
  color: #ffffff;
}
@media all and (max-width: 768px) {
  a.button.secondary {
    padding-top: 6px;
    padding-bottom: 7px;
  }
}
a.button.secondary.disabled {
  border-color: #D1D6D8;
  color: #D1D6D8;
}
a.button.secondary.dark {
  border-color: #ffffff;
  color: #ffffff;
}
a.button.secondary.dark:hover {
  background-color: #ffffff;
  color: #333333;
}
a.button.secondary.dark:focus, a.button.secondary.dark:active {
  background-color: #ffffff;
  color: #333333;
}
a.button.secondary.dark.disabled {
  border-color: #757575;
  color: #757575;
}
a.button.secondary.small {
  padding-top: 7px;
  padding-bottom: 7px;
}
a.button.tertiary {
  position: relative;
  padding: 0;
  min-width: 0;
  min-height: 0;
  border-radius: 0;
  background-color: transparent;
  color: #333333;
  text-align: left;
}
a.button.tertiary::after {
  content: "\e902";
  margin-left: 8px;
  font-family: "SuperValu Icons";
  font-size: 16px;
  transform: translateX(0);
  transition: transform 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
a.button.tertiary:hover {
  color: #C8102E;
}
a.button.tertiary:hover::after {
  transform: translateX(6px);
}
@media all and (max-width: 768px) {
  a.button.tertiary:hover::after {
    transform: translateX(4px);
  }
}
a.button.tertiary:focus, a.button.tertiary:active {
  color: #C8102E;
}
a.button.tertiary.small {
  min-width: 0;
  min-height: 0;
  padding: 0 0 24px 0;
  font-size: 14px;
}
a.button.tertiary.small:hover::after {
  transform: translateX(4px);
}
a.button.tertiary.disabled {
  color: #D1D6D8;
}
a.button.tertiary.disabled::after {
  color: #D1D6D8;
}
a.button.navigation {
  border: 1px solid transparent;
  background-color: #ffffff;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #C8102E;
}
a.button.navigation:hover {
  background-color: #ffffff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #C8102E;
}
a.button.navigation:focus, a.button.navigation:active {
  background-color: #F7F8F9;
}
a.button.navigation.transparent {
  border-color: #ffffff;
  background-color: transparent;
  color: #ffffff;
}
a.button.navigation.transparent:hover, a.button.navigation.transparent:focus, a.button.navigation.transparent:active {
  background-color: #A50025;
}

/* pill */
a.pill {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 16px 12px 0;
  padding: 0 24px;
  max-width: 200px;
  height: 31px;
  border: 1px solid #333333;
  border-radius: 16.5px;
  background-color: #ffffff;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.2;
  color: #333333;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
}
a.pill:first-of-type {
  margin-left: 0;
}
a.pill:last-of-type {
  margin-right: 0;
}
a.pill:only-of-type {
  margin-right: 0;
  margin-left: 0;
}
@media all and (max-width: 768px) {
  a.pill {
    margin: 0 16px 6px 0;
  }
}
a.pill:hover {
  border-color: #C8102E;
  background-color: #C8102E;
  color: #ffffff;
}
a.pill:focus, a.pill:active {
  border-color: #A50025;
  background-color: #A50025;
  color: #ffffff;
}
a.pill.active {
  border-color: #C8102E;
  background-color: #C8102E;
  color: #ffffff;
}

/*
 * Forms
 */
form {
  width: 100%;
  max-width: 768px;
}
form fieldset {
  margin-bottom: 32px;
  padding: 24px 32px;
  border: none;
  border-radius: 16px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 768px) {
  form fieldset {
    padding: 24px 12px;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  }
}
form div.row {
  display: flex;
  width: 100%;
  max-width: 432px;
}
form div.row label {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
  color: #333333;
}
form div.row.birthday div.select div.error-message {
  width: 200px;
}
form div.field-group {
  margin-bottom: 24px;
}

div.field {
  position: relative;
  width: 100%;
  margin-right: 16px;
  padding-bottom: 24px;
}
div.field:last-of-type, div.field:only-of-type {
  margin-right: 0;
}
div.field label {
  display: block;
  margin-bottom: 4px;
  font-size: 14px;
  color: #333333;
}
div.field input,
div.field textarea,
div.field select,
div.field button {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  outline: none;
  border: none;
  border-radius: 0;
  background-color: transparent;
}
div.field ::-webkit-input-placeholder {
  color: #757575;
}
div.field ::-moz-placeholder {
  color: #757575;
}
div.field :-ms-input-placeholder {
  color: #757575;
}
div.field :-moz-placeholder {
  color: #757575;
}
div.field.mandatory label::after {
  content: "*";
  margin-left: 0.166em;
  color: #C8102E;
}
div.field div.error-message {
  display: flex;
  position: absolute;
  bottom: 3px;
  align-items: center;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 10px;
  color: #D63900;
  opacity: 0;
  transition: opacity 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  pointer-events: none;
}
div.field div.error-message > span[class^=icon-] {
  margin-right: 0.5em;
}
div.field.error div.error-message {
  opacity: 1;
}
div.field.button {
  width: auto;
  max-width: 100%;
}
div.field.button button {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 16px 16px 16px;
  padding: 12px 24px 13px 24px;
  min-width: 160px;
  max-width: 220px;
  min-height: 43px;
  border-radius: 4px;
  background-color: #0CA74B;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
}
div.field.button button:first-of-type {
  margin-left: 0;
}
div.field.button button:last-of-type {
  margin-right: 0;
}
div.field.button button:only-of-type {
  margin-right: 0;
  margin-left: 0;
}
@media all and (max-width: 768px) {
  div.field.button button {
    min-width: 90px;
    min-height: 33px;
    margin: 0 8px 16px 8px;
    padding: 8px 24px;
    font-size: 14px;
  }
}
div.field.button button:hover {
  background-color: #15743C;
  color: #ffffff;
}
div.field.button button:focus, div.field.button button:active {
  background-color: #034638;
  color: #ffffff;
}
div.field.button button.small {
  min-width: 90px;
  min-height: 33px;
  padding: 8px 24px;
  font-size: 14px;
}
div.field.button button:disabled, div.field.button button.disabled {
  pointer-events: none;
}
div.field.button button.primary {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}
div.field.button button.primary:hover {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
div.field.button button.primary:focus, div.field.button button.primary:active {
  background-color: #034638;
  color: #ffffff;
}
div.field.button button.primary:disabled, div.field.button button.primary.disabled {
  background-color: #D1D6D8;
  color: #757575;
}
div.field.button button.secondary {
  padding-top: 10px;
  padding-bottom: 12px;
  border: 1px solid #333333;
  background-color: transparent;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #333333;
}
div.field.button button.secondary:hover {
  background-color: #333333;
  border-color: transparent;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
div.field.button button.secondary:focus, div.field.button button.secondary:active {
  background-color: #333333;
  color: #ffffff;
}
@media all and (max-width: 768px) {
  div.field.button button.secondary {
    padding-top: 6px;
    padding-bottom: 7px;
  }
}
div.field.button button.secondary:disabled, div.field.button button.secondary.disabled {
  border-color: #D1D6D8;
  color: #D1D6D8;
}
div.field.button button.secondary.dark {
  border-color: #ffffff;
  color: #ffffff;
}
div.field.button button.secondary.dark:hover {
  background-color: #ffffff;
  color: #333333;
}
div.field.button button.secondary.dark:focus, div.field.button button.secondary.dark:active {
  background-color: #ffffff;
  color: #333333;
}
div.field.button button.secondary.dark:disabled, div.field.button button.secondary.dark.disabled {
  border-color: #757575;
  color: #757575;
}
div.field.button button.secondary.small {
  padding-top: 7px;
  padding-bottom: 7px;
}
div.field.text input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.text.error input {
  border-color: #D63900;
}
div.field.number input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.number.error input {
  border-color: #D63900;
}
div.field.email input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.email.error input {
  border-color: #D63900;
}
div.field.email div.field-error p.type {
  display: flex;
  align-items: center;
  margin: 0;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 10px;
  color: #D63900;
}
div.field.email div.field-error p.type::before {
  content: "\e94a";
  font-family: "SuperValu Icons";
  font-size: 16px;
  margin-right: 0.5em;
}
div.field.email div.field-error p.detail {
  margin: 0 0 20px 0;
  font-size: 14px;
  line-height: 20px;
}
div.field.tel input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.tel.error input {
  border-color: #D63900;
}
div.field.textarea textarea {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.textarea.error textarea {
  border-color: #C8102E;
}
div.field.select::after {
  content: "\e909";
  position: absolute;
  right: 16px;
  bottom: 21px;
  transform: translateY(-50%);
  font-family: "SuperValu Icons";
  font-size: 16px;
  pointer-events: none;
}
div.field.select select {
  width: 100%;
  padding: 12px 40px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
  cursor: pointer;
}
div.field.select.error select {
  border-color: #D63900;
}
div.field.checkbox {
  position: relative;
  margin-bottom: 4px;
  padding-bottom: 0;
}
div.field.checkbox input {
  position: absolute;
  left: -9999px;
}
div.field.checkbox input ~ label {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  cursor: pointer;
  user-select: none;
}
div.field.checkbox input ~ label::before {
  margin-right: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
}
div.field.checkbox input:not(:checked) ~ label::before {
  content: "\e90f";
  color: #757575;
}
div.field.checkbox input:checked ~ label::before {
  content: "\e910";
  color: #0CA74B;
}
div.field.checkbox.error input ~ label,
div.field.checkbox.error input ~ label::before {
  color: #D63900;
}
div.field.radio {
  position: relative;
}
div.field.radio input {
  position: absolute;
  left: -9999px;
}
div.field.radio input ~ label {
  display: flex;
  align-items: center;
  margin-bottom: 0;
  cursor: pointer;
  user-select: none;
}
div.field.radio input ~ label::before {
  margin-right: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
}
div.field.radio input:not(:checked) ~ label::before {
  content: "\e912";
  color: #757575;
}
div.field.radio input:checked ~ label::before {
  content: "\e913";
  color: #0CA74B;
}
div.field.radio.error input ~ label,
div.field.radio.error input ~ label::before {
  color: #D63900;
}
div.field.date input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.date.error input {
  border-color: #D63900;
}
div.field.file input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.file.error input {
  border-color: #D63900;
}
div.field.password {
  position: relative;
}
div.field.password input {
  width: 100%;
  padding: 12px 16px 11px 16px;
  border: 1px solid #333333;
  border-radius: 4px;
}
div.field.password span.toggle-password {
  position: absolute;
  top: 25px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 43px;
  height: 43px;
  cursor: pointer;
}
div.field.password span.toggle-password::after {
  content: "\e91f";
  font-family: "SuperValu Icons";
  font-size: 18px;
  color: #333333;
}
div.field.password span.toggle-password.hide::after {
  content: "\e91e";
}
div.field.password div.helper-text {
  display: flex;
  align-items: center;
  margin-top: 3px;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 12px;
  color: #757575;
  pointer-events: none;
}
div.field.password.error input {
  border-color: #D63900;
}

/* validation message */
div.validation-message {
  display: flex;
  justify-content: space-between;
  margin-bottom: 24px;
  text-align: left;
}
div.validation-message::after {
  content: "";
  font-family: "SuperValu Icons";
  font-size: 24px;
  line-height: 1;
  color: #757575;
  margin-left: 10px;
}
div.validation-message p {
  margin: 0;
  color: #757575;
}
div.validation-message.error p {
  color: #D63900;
}
div.validation-message.error::after {
  content: "\e94a";
  color: #D63900;
}
div.validation-message.success p {
  color: #0CA74B;
}
div.validation-message.success::after {
  content: "\e914";
  color: #0CA74B;
}

/*
 * Tables
 */
.insurance table {
  margin: -8px auto 0 auto;
  border-collapse: separate;
  border-spacing: 0;
}
.insurance tr th,
.insurance tr td {
  border: solid 8px white;
  border-style: none solid solid none;
  padding: 11px 24px 13px 24px;
}
.insurance tr td {
  border-radius: 16px;
}
.insurance tr:first-child td {
  border-top-style: solid;
}
.insurance tr td:first-child {
  border-left-style: solid;
}
.insurance th {
  background-color: #E6EAEB;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
.insurance td {
  background-color: #F7F8F9;
}

/* Pages */
/**
 * Article
 */
body.article div.container.article-body > div.wrapper {
  max-width: 896px;
  margin-right: auto;
  margin-left: auto;
}
@media all and (max-width: 768px) {
  body.article div.container.article-body > div.wrapper {
    flex-wrap: wrap;
  }
}

/**
 * Autism Friendly Store Locator
 */
body.autism-friendly-store-locator div.autism-friendly-store-body > div.wrapper {
  display: block;
  max-width: 840px;
  margin-right: auto;
  margin-left: auto;
}
body.autism-friendly-store-locator div.store-sounds {
  margin-bottom: 64px;
}
body.autism-friendly-store-locator div.store-sounds h2 {
  text-align: center;
}
body.autism-friendly-store-locator div.store-sounds > div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
body.autism-friendly-store-locator div.store-sounds div.item {
  flex: 0 1 calc(33.333333333% - 64px);
  display: block;
}
body.autism-friendly-store-locator div.store-sounds div.item h4 {
  margin-bottom: 12px;
  color: #757575;
}
body.autism-friendly-store-locator div.store-sounds div.item audio {
  width: 100%;
  min-width: 200px;
}
body.autism-friendly-store-locator div.store-sensory-map {
  margin-bottom: 64px;
  text-align: center;
}
body.autism-friendly-store-locator div.store-sensory-map h2 {
  text-align: center;
}
body.autism-friendly-store-locator div.store-sensory-map > div.wrapper {
  justify-content: center;
}
@media all and (max-width: 768px) {
  body.autism-friendly-store-locator div.store-sensory-map > div.wrapper {
    flex-wrap: wrap;
  }
}
body.autism-friendly-store-locator div.store-sensory-map div.item {
  margin: 16px;
}
body.autism-friendly-store-locator div.store-sensory-map div.item h5 {
  margin-bottom: 12px;
  color: #757575;
}
@media all and (max-width: 768px) {
  body.autism-friendly-store-locator div.store-sensory-map div.item {
    flex: 0 0 70px;
  }
}
body.autism-friendly-store-locator div.store-sensory-map a.button {
  margin-top: 64px;
}

/**
 * Competition
 */
body.competition header.site {
  margin-bottom: 32px;
}
body.competition main {
  max-width: 1440px;
}
body.competition main > div.wrapper {
  display: flex;
}
body.competition main > div.wrapper > div[class^=col-] {
  display: block;
  width: 100%;
}
body.competition main > div.wrapper div.col-1 {
  flex: 0 0 320px;
}
@media all and (max-width: 992px) {
  body.competition main > div.wrapper div.col-1 {
    display: none;
  }
}
body.competition main > div.wrapper div.col-2 div.container.rich-text {
  margin-left: 0;
}
body.competition form h3 {
  color: #333333;
}
body.competition form div.field.accepttcs {
  margin-bottom: 64px;
}

/**
 * Food Academy
 */
body.food-academy div.food-academy-store-body > div.wrapper {
  display: block;
  max-width: 840px;
  margin-right: auto;
  margin-left: auto;
}

/**
 * Meal Planner
 */
body.meal-planner div.meal-planner-filter h1 {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 768px;
  text-align: center;
}
body.meal-planner div.meal-planner-filter div.actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
body.meal-planner div.meal-planner-body > div.wrapper {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}
@media all and (max-width: 768px) {
  body.meal-planner div.meal-planner-body > div.wrapper {
    flex-wrap: wrap;
  }
}
@media all and (max-width: 768px) {
  body.meal-planner div.meal-planner-body div.meal-planner-recipe-list {
    order: 2;
  }
}
body.meal-planner div.meal-planner-body div.meal-planner {
  flex: 0 0 448px;
}
@media all and (max-width: 992px) {
  body.meal-planner div.meal-planner-body div.meal-planner {
    flex: 0 1 100%;
  }
}
@media all and (max-width: 768px) {
  body.meal-planner div.meal-planner-body div.meal-planner {
    order: 1;
    flex: 0 1 448px;
  }
}

/**
 * Partner
 */
body.partner div.page-action div.item {
  margin-top: 0;
  margin-bottom: 0;
  padding: 16px 0;
  border-bottom: 1px solid #F7F8F9;
}
body.partner div.page-action a.back {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 14px;
}
body.partner div.page-action a.back:hover {
  text-decoration: none;
}
body.partner div.page-action a.back span[class^=icon-] {
  margin-right: 8px;
}
body.partner div.page-action a.back span[class^=icon-]::after {
  font-size: 12px;
}
body.partner div.container.layout > div.wrapper {
  display: flex;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}
body.partner div.container.layout > div.wrapper div.col-1 {
  flex: 1 1 100%;
}
body.partner div.container.layout > div.wrapper div.col-2 {
  flex: 0 0 384px;
}
@media all and (max-width: 768px) {
  body.partner div.container.layout > div.wrapper {
    flex-wrap: wrap;
    margin-right: -16px;
    margin-left: -16px;
  }
  body.partner div.container.layout > div.wrapper div[class^=col-] {
    flex-basis: 100%;
  }
  body.partner div.container.layout > div.wrapper div.col-1 {
    order: 2;
  }
  body.partner div.container.layout > div.wrapper div.col-2 {
    order: 1;
    flex-basis: 100%;
  }
}
body.partner div.partner-actions > div.wrapper {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
body.partner.aer-lingus div.partner-aer-lingus-transfer {
  max-width: 448px;
}
body.partner.aer-lingus div.partner-aer-lingus-transfer h5 {
  color: #333333;
}
body.partner.aer-lingus div.partner-aer-lingus-transfer div.field.aerclub-points-to-transfer {
  width: 80px;
}
body.partner.aer-lingus div.partner-aer-lingus-transfer div.field.aerclub-points-to-transfer ~ div.calculated-points {
  display: flex;
  align-items: center;
  margin-left: 1em;
  padding-bottom: 24px;
}
body.partner.aer-lingus div.partner-aer-lingus-transfer div.actions {
  display: flex;
}
body.partner.aer-lingus div.partner-offer.real-rewards-balance {
  text-align: center;
}
body.partner.aer-lingus div.partner-offer.real-rewards-balance h5 {
  color: #757575;
}
body.partner.aer-lingus div.partner-offer.real-rewards-balance span.points {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 24px;
  color: #C8102E;
}
body.partner.aer-lingus div.partner-offer.money-backs-cta {
  text-align: center;
}
body.partner.aer-lingus div.partner-offer.money-backs-cta span[class^=line-] {
  display: block;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  color: #757575;
}
body.partner.aer-lingus div.partner-offer.money-backs-cta span.line-2 {
  margin-bottom: 24px;
}
body.partner.aer-lingus div.partner-offer.money-backs-cta span.euros {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 24px;
  color: #C8102E;
}

/**
 * Recipe
 */
body.recipe div.recipe-overview {
  text-align: center;
}
body.recipe div.recipe-overview h1 {
  color: #333333;
}
body.recipe div.recipe-overview div.image {
  margin: 32px 0;
}
body.recipe div.recipe-overview div.image img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (min-width: 768px) {
  body.recipe div.recipe-overview div.image img.desktop {
    display: block;
  }
  body.recipe div.recipe-overview div.image img.mobile {
    display: none;
  }
}
@media all and (max-width: 768px) {
  body.recipe div.recipe-overview div.image img.desktop {
    display: none;
  }
  body.recipe div.recipe-overview div.image img.mobile {
    display: block;
  }
}
body.recipe div.recipe-overview div.description {
  text-align: center;
}
body.recipe div.recipe-overview div.description > * {
  max-width: 640px;
  margin-right: auto;
  margin-left: auto;
}
body.recipe div.recipe-overview div.details {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  max-width: 512px;
  margin: 0 auto;
}
body.recipe div.recipe-overview div.details > span {
  display: flex;
  align-items: center;
  margin: 0 32px 16px 0;
}
body.recipe div.recipe-overview div.details > span:last-child {
  margin-right: 0;
}
body.recipe div.recipe-overview div.details > span span[class^=icon-] {
  margin-right: 16px;
}
body.recipe div.recipe-overview div.details > span span[class^=icon-]::after {
  font-size: 24px;
}
body.recipe div.recipe-body {
  margin-bottom: 64px;
}
body.recipe div.recipe-body > div.wrapper {
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}
@media all and (max-width: 768px) {
  body.recipe div.recipe-body > div.wrapper {
    flex-wrap: wrap;
  }
}
body.recipe div.recipe-body div.ingredients h2,
body.recipe div.recipe-body div.method h2 {
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  color: #333333;
}
@media all and (max-width: 768px) {
  body.recipe div.recipe-body div.method {
    order: 2;
  }
}
body.recipe div.recipe-body div.ingredients {
  flex: 0 0 448px;
  border-radius: 4px;
  background-color: #F7F8F9;
}
@media all and (max-width: 992px) {
  body.recipe div.recipe-body div.ingredients {
    flex: 0 1 100%;
  }
}
@media all and (max-width: 768px) {
  body.recipe div.recipe-body div.ingredients {
    order: 1;
    flex: 0 1 448px;
  }
}
body.recipe div.recipe-body div.ingredients div.ingredient-group h3.h5 {
  color: #333333;
}
body.recipe div.recipe-body div.ingredients div.ingredient-group ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  margin: 0 0 24px 0;
  padding: 0;
}
body.recipe div.recipe-body div.ingredients div.ingredient-group ul li {
  margin: 0;
  padding: 16px 0;
  border-bottom: 1px solid #E6EAEB;
}
body.recipe div.recipe-body div.ingredients div.ingredient-group ul li:first-child {
  padding-top: 0;
}

/**
 * Vouchers
 */
body.vouchers {
  background: white;
}

/**
 * Page with breadcrumb intro left
 */
body.page-with-breadcrumb-intro-left div.container.page-intro h1,
body.page-with-breadcrumb-intro-left div.container.page-intro p {
  margin-left: 0;
  text-align: left;
}

/**
 * Page with sidenav
 */
body.page-with-sidenav header.site {
  margin-bottom: 32px;
}
body.page-with-sidenav main {
  max-width: 1440px;
}
body.page-with-sidenav main > div.wrapper {
  display: flex;
}
body.page-with-sidenav main > div.wrapper > div[class^=col-] {
  display: block;
  width: 100%;
}
body.page-with-sidenav main > div.wrapper div.col-1 {
  flex: 0 0 320px;
}
@media all and (max-width: 992px) {
  body.page-with-sidenav main > div.wrapper div.col-1 {
    display: none;
  }
}
body.page-with-sidenav main > div.wrapper div.col-2 div.container.page-intro h1,
body.page-with-sidenav main > div.wrapper div.col-2 div.container.page-intro p {
  margin-left: 0;
  text-align: left;
}
body.page-with-sidenav main > div.wrapper div.col-2 div.container.rich-text {
  margin-left: 0;
}

/**
 * Page with two col
 */
body.page-with-two-col div.container.layout > div.wrapper {
  display: flex;
  max-width: 1200px;
  margin-right: auto;
  margin-left: auto;
}
body.page-with-two-col div.container.layout > div.wrapper div.col-1 {
  flex: 1 1 100%;
}
body.page-with-two-col div.container.layout > div.wrapper div.col-2 {
  flex: 0 0 384px;
}
@media all and (max-width: 768px) {
  body.page-with-two-col div.container.layout > div.wrapper {
    flex-wrap: wrap;
    margin-right: -16px;
    margin-left: -16px;
  }
  body.page-with-two-col div.container.layout > div.wrapper div[class^=col-] {
    flex-basis: 100%;
  }
  body.page-with-two-col div.container.layout > div.wrapper div.col-1 {
    order: 2;
  }
  body.page-with-two-col div.container.layout > div.wrapper div.col-2 {
    order: 1;
    flex-basis: 100%;
  }
}

/**
 * Login app
 */
main#login-app {
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-weight: normal;
  color: #333333;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  min-height: 50vh;
  margin: 0 auto;
  padding: 24px 32px;
}
main#login-app > .wrapper {
  width: 100%;
  max-width: 600px;
  margin: 0 auto;
  padding: 30px 16px;
}
main#login-app .form-wrapper {
  max-width: 432px;
  margin: 0 auto;
}
main#login-app .form-wrapper div.not-registered,
main#login-app .form-wrapper div.registered {
  text-align: center;
}
main#login-app .form-wrapper div.row.accept-terms {
  margin-bottom: 24px;
}
main#login-app .form-wrapper div.row.submit {
  justify-content: center;
}
main#login-app .validation-message-wrapper {
  min-height: 32px;
}
main#login-app h1 {
  text-align: center;
}
main#login-app p.intro {
  text-align: center;
}
main#login-app a.close {
  position: absolute;
  top: 48px;
  right: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  color: #333333;
}
@media all and (max-width: 992px) {
  main#login-app a.close {
    top: 16px;
    right: 16px;
    width: 18px;
    height: 18px;
  }
}
main#login-app a.close::after {
  content: "\e90a";
  font-family: "SuperValu Icons";
  font-size: 24px;
  line-height: 1;
}
@media all and (max-width: 992px) {
  main#login-app a.close::after {
    font-size: 18px;
  }
}
main#login-app a.close:hover {
  text-decoration: none;
  color: #C8102E;
}
main#login-app a.close > span {
  display: none;
}
main#login-app ::-ms-reveal {
  display: none;
}
main#login-app .row p {
  font-size: 14px;
}
main#login-app .marketing-statement {
  margin-bottom: 10px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 14px;
}
main#login-app .marketing-communications {
  margin-bottom: 24px;
}
main#login-app a.resend-verification-email:after {
  content: none;
}
main#login-app a.resend-verification-email.disabled {
  pointer-events: none;
  text-decoration: none;
  color: #D1D6D8;
}
main#login-app .recaptcha-reference {
  display: none;
}

/* Components: Global  */
/**
 * Article List
 */
div.container.article-list div.wrapper {
  flex-wrap: wrap;
}
div.container.article-list div.wrapper a.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.article-list div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.article-list div.wrapper a.item div.text {
  padding: 16px 64px 48px 16px;
}
div.container.article-list div.wrapper a.item div.text p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  color: #333333;
}
div.container.article-list div.wrapper a.item div.text span.date {
  position: absolute;
  bottom: 24px;
  font-size: 14px;
  line-height: 1;
  color: #333333;
}
div.container.article-list div.wrapper a.item div.text span.icon-arrow-right {
  position: absolute;
  right: 16px;
  bottom: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  border: 1px solid #333333;
  background-color: #ffffff;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #333333;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.article-list div.wrapper a.item div.text span.icon-arrow-right::after {
  font-size: 12px;
}
div.container.article-list div.wrapper a.item div.text span.icon-arrow-right:hover {
  background-color: #333333;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  color: #ffffff;
}
div.container.article-list div.wrapper a.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.article-list div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.article-list div.wrapper a.item {
    flex: 0 1 344px;
  }
}

/**
 * Banner M
 */
div.container.banner-m div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
@media all and (max-width: 768px) {
  div.container.banner-m div.wrapper {
    flex-wrap: wrap;
  }
  div.container.banner-m div.wrapper a.item {
    flex: 0 1 100%;
  }
}

/**
 * Banner M - Red Box
 */
div.container.banner-m-red-box div.wrapper a.item {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}
div.container.banner-m-red-box div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
div.container.banner-m-red-box div.wrapper a.item div.text {
  position: absolute;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 18px 16px 22px 16px;
  background-color: #C8102E;
}
div.container.banner-m-red-box div.wrapper a.item div.text h3 {
  margin: 0;
  color: white;
}
div.container.banner-m-red-box div.wrapper a.item div.text span.action {
  display: inline-flex;
  align-items: center;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  color: #ffffff;
}
div.container.banner-m-red-box div.wrapper a.item div.text span.action:after {
  margin-left: 12px;
  font-size: 12px;
}
@media all and (max-width: 768px) {
  div.container.banner-m-red-box div.wrapper {
    flex-wrap: wrap;
  }
  div.container.banner-m-red-box div.wrapper a.item {
    flex: 0 1 100%;
  }
}

/**
 * Breadcrumb
 */
div.breadcrumb > div.wrapper {
  max-width: 1440px;
  margin: 0 auto;
}
div.breadcrumb nav.breadcrumb {
  display: flex;
  align-items: center;
  min-height: 50px;
  margin: 0 32px;
  padding: 0;
  border-bottom: 1px solid #E6EAEB;
  overflow: hidden;
}
div.breadcrumb nav.breadcrumb a,
div.breadcrumb nav.breadcrumb span.current {
  position: relative;
  display: flex;
  align-items: center;
  margin: 0 12px;
  font-size: 12px;
  line-height: 1.5;
  color: #757575;
  text-decoration: none;
  white-space: nowrap;
}
div.breadcrumb nav.breadcrumb a:first-child {
  margin-left: 0;
}
div.breadcrumb nav.breadcrumb span.current {
  color: #333333;
  text-overflow: ellipsis;
}
div.breadcrumb nav.breadcrumb span.delimiter {
  display: block;
  width: 1px;
  height: 12px;
  margin: 0 12px;
  background-color: #C8102E;
}
@media all and (max-width: 992px) {
  div.breadcrumb nav.breadcrumb {
    margin: 0 16px;
  }
  div.breadcrumb nav.breadcrumb a {
    display: none;
  }
  div.breadcrumb nav.breadcrumb a:last-of-type {
    display: flex;
    margin-left: 0;
  }
  div.breadcrumb nav.breadcrumb span.current {
    margin-left: 0;
  }
  div.breadcrumb nav.breadcrumb span.current::before {
    content: "";
    display: block;
    width: 1px;
    height: 12px;
    margin: 0 12px 0 0;
    background-color: #C8102E;
  }
  div.breadcrumb nav.breadcrumb span.delimiter {
    display: none;
  }
}

/**
 * Card Grey Box
 */
div.container.card-grey-box div.item {
  max-width: 320px;
  border: 1px solid #E6EAEB;
  padding: 32px 24px 0 24px;
}
div.container.card-grey-box div.item h5 {
  color: #757575;
}
div.container.card-grey-box div.item div.content p {
  font-size: 14px;
  line-height: 1.4285714286;
  color: #757575;
}
div.container.card-grey-box div.item div.content a {
  text-decoration: underline;
}
div.container.card-grey-box div.item div.content a:hover {
  text-decoration: none;
}

.card-xl-list-alternating {
  display: flex;
  flex-direction: column;
  gap: 84px;
}
.card-xl-list-alternating .card-xl-list-alternating-item {
  display: flex;
  gap: 85px;
}
@media all and (max-width: 992px) {
  .card-xl-list-alternating .card-xl-list-alternating-item {
    flex-direction: column;
    gap: 32px;
  }
}
.card-xl-list-alternating .card-xl-list-alternating-item .image {
  flex: 1;
}
.card-xl-list-alternating .card-xl-list-alternating-item .image img {
  width: 100%;
  height: auto;
}
.card-xl-list-alternating .card-xl-list-alternating-item .content {
  flex: 1;
}
.card-xl-list-alternating .card-xl-list-alternating-item:nth-child(even) {
  flex-direction: row-reverse;
}
@media all and (max-width: 992px) {
  .card-xl-list-alternating .card-xl-list-alternating-item:nth-child(even) {
    flex-direction: column;
  }
}

/**
 * Card L
 */
div.container.card-l div.wrapper {
  justify-content: center;
}
div.container.card-l div.wrapper div.item {
  display: flex;
  width: 100%;
  max-width: 886px;
  overflow: hidden;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.card-l div.wrapper div.item div.image {
  flex: 1 0 386px;
}
div.container.card-l div.wrapper div.item div.image img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-l div.wrapper div.item div.text {
  padding: 32px 32px 32px 64px;
}
div.container.card-l div.wrapper div.item div.text h3.h4 {
  margin-bottom: 24px;
}
div.container.card-l div.wrapper div.item div.text p {
  display: -webkit-box;
  min-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
@media all and (max-width: 992px) {
  div.container.card-l div.wrapper div.item div.text p {
    -webkit-line-clamp: 3;
  }
}
@media all and (max-width: 768px) {
  div.container.card-l div.wrapper div.item div.text p {
    -webkit-line-clamp: 4;
  }
}
div.container.card-l div.wrapper div.item div.text div.actions {
  margin-top: 32px;
}
div.container.card-l div.wrapper div.item div.text div.actions a.button {
  margin-bottom: 0;
  margin-left: 0;
}
@media all and (max-width: 768px) {
  div.container.card-l div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-l div.wrapper div.item {
    flex: 0 1 344px;
    flex-wrap: wrap;
  }
  div.container.card-l div.wrapper div.item div.image {
    flex: 0 0 100%;
  }
  div.container.card-l div.wrapper div.item div.text {
    padding: 16px;
  }
  div.container.card-l div.wrapper div.item div.text h3.h4 {
    margin-bottom: 16px;
  }
}

/**
 * Card L
 */
div.container.card-l-red div.wrapper {
  justify-content: center;
}
div.container.card-l-red div.wrapper div.item {
  display: flex;
  width: 100%;
  max-width: 886px;
  overflow: hidden;
  background-color: #C8102E;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.card-l-red div.wrapper div.item div.text {
  padding: 32px;
}
div.container.card-l-red div.wrapper div.item div.text h3.h2 {
  margin-bottom: 24px;
  color: #ffffff;
}
div.container.card-l-red div.wrapper div.item div.text p {
  display: -webkit-box;
  min-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  color: #ffffff;
}
@media all and (max-width: 992px) {
  div.container.card-l-red div.wrapper div.item div.text p {
    -webkit-line-clamp: 3;
  }
}
@media all and (max-width: 768px) {
  div.container.card-l-red div.wrapper div.item div.text p {
    -webkit-line-clamp: 4;
  }
}
div.container.card-l-red div.wrapper div.item div.text div.actions {
  margin-top: 32px;
}
div.container.card-l-red div.wrapper div.item div.text div.actions a.button {
  margin-bottom: 0;
  margin-left: 0;
}
div.container.card-l-red div.wrapper div.item div.image {
  flex: 1 0 386px;
}
div.container.card-l-red div.wrapper div.item div.image img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (max-width: 768px) {
  div.container.card-l-red div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-l-red div.wrapper div.item {
    flex: 0 1 344px;
    flex-wrap: wrap;
  }
  div.container.card-l-red div.wrapper div.item div.image {
    order: 1;
    flex: 0 0 100%;
  }
  div.container.card-l-red div.wrapper div.item div.text {
    order: 2;
    padding: 16px;
  }
  div.container.card-l-red div.wrapper div.item div.text h3.h4 {
    margin-bottom: 16px;
  }
}

/**
 * Card L
 */
div.container.card-l-modal > div.wrapper {
  flex-wrap: wrap;
}
div.container.card-l-modal > div.wrapper .card-l-modal-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  margin: 40px 0 80px 0;
}
div.container.card-l-modal > div.wrapper .items {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}

div.container.card-l-modal-item {
  padding: 0;
}
div.container.card-l-modal-item div.wrapper {
  display: flex;
  justify-content: center;
  margin: 0;
}
div.container.card-l-modal-item div.wrapper .item {
  margin: 0;
}
div.container.card-l-modal-item div.wrapper .card-l-modal-item-link {
  color: #333333;
  flex: 1;
}
div.container.card-l-modal-item div.wrapper .card-l-modal-item-link:hover {
  text-decoration: none;
}
div.container.card-l-modal-item div.wrapper div.item-content {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  overflow: hidden;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.card-l-modal-item div.wrapper div.item-content:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
div.container.card-l-modal-item div.wrapper div.item-content div.image {
  max-width: 237px;
}
div.container.card-l-modal-item div.wrapper div.item-content div.image img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-l-modal-item div.wrapper div.item-content div.text {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 16px;
}
div.container.card-l-modal-item div.wrapper div.item-content div.text h3 {
  font-size: 18px;
  line-height: 24px;
  margin-bottom: 8px;
}
div.container.card-l-modal-item div.wrapper div.item-content div.text p {
  display: -webkit-box;
  font-size: 16px;
  min-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}
@media all and (max-width: 992px) {
  div.container.card-l-modal-item div.wrapper div.item-content div.text p {
    -webkit-line-clamp: 3;
  }
}
@media all and (max-width: 768px) {
  div.container.card-l-modal-item div.wrapper div.item-content div.text p {
    -webkit-line-clamp: 4;
  }
}
div.container.card-l-modal-item div.wrapper div.item-content div.text div.actions {
  margin-top: auto;
  display: flex;
  align-items: flex-end;
}
div.container.card-l-modal-item div.wrapper div.item-content div.text div.actions .arrow-button {
  display: block;
  margin-left: auto;
  width: 24px;
  height: 24px;
}
@media all and (max-width: 768px) {
  div.container.card-l-modal-item div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-l-modal-item div.wrapper div.item {
    flex: 0 1 344px;
    flex-wrap: wrap;
  }
  div.container.card-l-modal-item div.wrapper div.item div.image {
    flex: 0 0 100%;
  }
  div.container.card-l-modal-item div.wrapper div.item div.text {
    padding: 16px;
  }
  div.container.card-l-modal-item div.wrapper div.item div.text h3.h4 {
    margin-bottom: 16px;
  }
}
div.container.card-l-modal-item .modal-container {
  position: fixed;
  inset: 0;
  z-index: 50;
  background: rgba(0, 0, 0, 0.4);
  display: flex;
  justify-content: center;
  align-items: center;
  visibility: hidden;
  opacity: 0;
  transition: visibility 0.2s ease, opacity 0.2s ease;
}
div.container.card-l-modal-item .modal-container .modal {
  max-width: 1162px;
  max-height: 90vh;
  overflow-y: auto;
  padding: 64px 57px;
  transform: scale(0.95);
  opacity: 0;
  transition: transform 0.2s ease, opacity 0.2s ease;
  transition-delay: 0.15s;
}
div.container.card-l-modal-item .modal-container .modal p {
  max-width: none;
}
div.container.card-l-modal-item .modal-container .modal .close {
  position: absolute;
  top: 1rem;
  right: 1rem;
  background: transparent;
  border: 0;
  cursor: pointer;
}
div.container.card-l-modal-item .modal-container .modal h2 {
  margin-top: 24px;
  margin-bottom: 16px;
}
div.container.card-l-modal-item .modal-container .modal > .text {
  padding: 0 !important;
}
div.container.card-l-modal-item .modal-container.active {
  visibility: visible;
  opacity: 1;
}
div.container.card-l-modal-item .modal-container.active .modal {
  opacity: 1;
  transform: scale(1);
}
@media all and (max-width: 768px) {
  div.container.card-l-modal-item .modal-container .modal {
    padding: 32px;
  }
}

/**
 * Card M
 */
div.container.card-m div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.card-m div.wrapper div.item {
  flex: 0 1 calc(50% - 64px);
  display: flex;
  width: 100%;
  min-width: 564px;
  overflow: hidden;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.card-m div.wrapper div.item div.image {
  position: relative;
  flex: 1 0 300px;
}
div.container.card-m div.wrapper div.item div.image img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-m div.wrapper div.item div.image h5 {
  position: absolute;
  bottom: 8px;
  left: 50%;
  transform: translateX(-50%);
  color: #ffffff;
  text-align: center;
}
div.container.card-m div.wrapper div.item div.text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 32px;
  text-align: center;
}
div.container.card-m div.wrapper div.item div.text p {
  min-height: 72px;
  font-size: 18px;
  line-height: 24px;
}
div.container.card-m div.wrapper div.item div.text div.actions {
  display: flex;
  justify-content: center;
}
@media all and (max-width: 768px) {
  div.container.card-m div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-m div.wrapper div.item {
    flex: 0 1 344px;
    min-width: 0;
    flex-wrap: wrap;
  }
  div.container.card-m div.wrapper div.item div.image {
    flex: 0 0 100%;
  }
  div.container.card-m div.wrapper div.item div.text {
    padding: 16px;
  }
}

/**
 * Card S
 */
div.container.card-s div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.card-s div.wrapper a.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-s div.wrapper a.item div.text {
  padding: 16px 64px 32px 16px;
}
div.container.card-s div.wrapper a.item div.text p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  color: #333333;
}
div.container.card-s div.wrapper a.item div.text span.icon-arrow-right {
  position: absolute;
  right: 16px;
  bottom: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  border: 1px solid #333333;
  background-color: #ffffff;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #333333;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s div.wrapper a.item div.text span.icon-arrow-right::after {
  font-size: 12px;
}
div.container.card-s div.wrapper a.item div.text span.icon-arrow-right:hover {
  background-color: #333333;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  color: #ffffff;
}
div.container.card-s div.wrapper a.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.card-s div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-s div.wrapper a.item {
    flex: 0 1 344px;
  }
}

/**
 * Card S
 */
div.container.card-s-block {
  margin: 40px auto;
}
div.container.card-s-block h2 {
  text-align: center;
  margin-bottom: 8px;
}
div.container.card-s-block div.wrapper {
  flex-wrap: wrap;
}
div.container.card-s-block div.wrapper a.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s-block div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-s-block div.wrapper a.item div.text {
  padding: 16px 64px 16px 16px;
}
div.container.card-s-block div.wrapper a.item div.text h4 {
  margin-bottom: 16px;
}
div.container.card-s-block div.wrapper a.item div.text p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  font-size: 16px;
  color: #333333;
}
div.container.card-s-block div.wrapper a.item div.text span.icon-arrow-right {
  position: absolute;
  right: 16px;
  bottom: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  border: 1px solid #333333;
  background-color: #ffffff;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #333333;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s-block div.wrapper a.item div.text span.icon-arrow-right::after {
  font-size: 12px;
}
div.container.card-s-block div.wrapper a.item div.text span.icon-arrow-right:hover {
  background-color: #333333;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  color: #ffffff;
}
div.container.card-s-block div.wrapper a.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.card-s-block div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-s-block div.wrapper a.item {
    flex: 0 1 344px;
  }
}

/**
 * Card S with button
 */
div.container.card-s-with-button div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.card-s-with-button div.wrapper div.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s-with-button div.wrapper div.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-s-with-button div.wrapper div.item div.text {
  padding: 16px;
}
div.container.card-s-with-button div.wrapper div.item div.text p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  color: #333333;
}
div.container.card-s-with-button div.wrapper div.item div.text div.actions {
  display: flex;
  justify-content: center;
}
div.container.card-s-with-button div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.card-s-with-button div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-s-with-button div.wrapper div.item {
    flex: 0 1 344px;
  }
}

/**
 * Card S with button Centered
 * with no image
 */
div.container.card-s-with-button-centered div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.card-s-with-button-centered div.wrapper div.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s-with-button-centered div.wrapper div.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.card-s-with-button-centered div.wrapper div.item div.text {
  text-align: center;
  padding: 16px;
}
div.container.card-s-with-button-centered div.wrapper div.item div.text p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  color: #333333;
}
div.container.card-s-with-button-centered div.wrapper div.item div.text div.actions {
  display: flex;
  justify-content: center;
}
div.container.card-s-with-button-centered div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.card-s-with-button-centered div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-s-with-button-centered div.wrapper div.item {
    flex: 0 1 344px;
  }
}

.card-xl-button .wrapper {
  padding: 40px 0;
}
.card-xl-button .item {
  display: flex;
  gap: 80px;
  flex-wrap: wrap;
}
@media all and (max-width: 768px) {
  .card-xl-button .item {
    gap: 16px;
    flex-direction: column;
  }
}
.card-xl-button .item .image {
  flex: 1;
}
.card-xl-button .item .text {
  flex: 1;
}
.card-xl-button .item .text a.button .icon-arrow-right {
  margin-left: 12px;
}

/**
 * Card Grey Box
 */
div.container.collapsible-content div.wrapper {
  justify-content: center;
}
div.container.collapsible-content div.wrapper div.item {
  max-width: 880px;
}
div.container.collapsible-content h3 {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 1.2;
  color: #333333;
  text-align: center;
  cursor: pointer;
}
div.container.collapsible-content h3 > span[class^=icon-] {
  display: inline-block;
  margin-left: 16px;
}
div.container.collapsible-content h3 > span[class^=icon-]::after {
  font-size: 18px;
}
div.container.collapsible-content h3 ~ div.content {
  overflow: hidden;
  text-align: left;
  transition: height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.collapsible-content h3 ~ div.content > * {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition-delay: 0s;
}
div.container.collapsible-content.open h3 span[class^=icon-] {
  transform: rotate(180deg);
}
div.container.collapsible-content.open h3 ~ div.content > * {
  opacity: 1;
  pointer-events: all;
  transition-delay: 0.3s;
}

/**
 * Hero
 */
div.hero .item img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (min-width: 768px) {
  div.hero .item img.desktop {
    display: block;
  }
  div.hero .item img.mobile {
    display: none;
  }
}
@media all and (max-width: 767px) {
  div.hero .item img.desktop {
    display: none;
  }
  div.hero .item img.mobile {
    display: block;
  }
}
div.hero.full-bleed {
  padding: 0;
}
div.hero.full-bleed div.wrapper {
  margin: 0;
}
div.hero.full-bleed div.wrapper .item {
  margin: 0;
}

/**
 * Hero Slim
 */
div.hero-slim .item img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (min-width: 768px) {
  div.hero-slim .item img.desktop {
    display: block;
  }
  div.hero-slim .item img.mobile {
    display: none;
  }
}
@media all and (max-width: 767px) {
  div.hero-slim .item img.desktop {
    display: none;
  }
  div.hero-slim .item img.mobile {
    display: block;
  }
}
div.hero-slim.full-bleed {
  padding: 0;
}
div.hero-slim.full-bleed div.wrapper {
  margin: 0;
}
div.hero-slim.full-bleed div.wrapper .item {
  margin: 0;
}

/**
 * Hero Full
 * includes page header and description
 */
div.hero-full .item img {
  display: block;
  width: 100%;
  height: auto;
  margin-bottom: 48px;
}
@media all and (min-width: 768px) {
  div.hero-full .item img.desktop {
    display: block;
  }
  div.hero-full .item img.mobile {
    display: none;
  }
}
@media all and (max-width: 767px) {
  div.hero-full .item img.desktop {
    display: none;
  }
  div.hero-full .item img.mobile {
    display: block;
  }
}
div.hero-full .item h1,
div.hero-full .item p {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 768px;
  text-align: center;
}
div.hero-full.full-bleed {
  padding: 0;
}
div.hero-full.full-bleed div.wrapper {
  margin: 0;
}
div.hero-full.full-bleed div.wrapper .item {
  margin: 0;
}

/**
 * Horizontal Rule
 */
hr {
  width: 100%;
  margin: 0;
  border: none;
  border-bottom: 1px solid #E6EAEB;
}

/**
 * Hover Message
 */
div.hover-message {
  position: relative;
  margin-left: 12px;
}
div.hover-message a.action {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 4px 0 16px 0;
  padding: 8px;
  font-size: 16px;
  border-radius: 4px;
  font-weight: normal;
  line-height: 1.2;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  color: #0CA74B;
}
@media all and (max-width: 768px) {
  div.hover-message a.action {
    font-size: 14px;
  }
}
div.hover-message a.action:hover {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
div.hover-message a.action:active {
  color: #ffffff;
}
div.hover-message div.dialog {
  position: absolute;
  z-index: 2;
  top: 51px;
  left: 0;
  display: flex;
  flex-direction: column;
  width: 450px;
  margin: 0;
  padding: 24px;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  opacity: 0;
  transform: translateX(-32px);
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.hover-message div.dialog h5 {
  margin-bottom: 8px;
  color: #15743C;
}
div.hover-message div.dialog p {
  margin-bottom: 0;
}
div.hover-message div.dialog span.icon-close {
  display: none;
  position: absolute;
  top: 8px;
  right: 8px;
  cursor: pointer;
}
@media all and (max-width: 768px) {
  div.hover-message div.dialog {
    position: fixed;
    max-height: 80%;
    padding-right: 16px;
    padding-left: 16px;
    transform: translateX(-16px);
    padding-top: 40px;
    width: calc(100% - 30px);
    left: 15px;
    right: 15px;
    overflow-y: scroll;
  }
  div.hover-message div.dialog span.icon-close {
    display: block;
  }
}
div.hover-message.open a.action {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
div.hover-message.open div.dialog {
  opacity: 1;
  transform: translateX(0);
  pointer-events: all;
}

div.checkbox label {
  transition: opacity 0.2s ease;
}
div.checkbox input[type=checkbox]:disabled ~ label {
  opacity: 0.5;
}

/**
 * Image
 */
div.container.image {
  max-width: 840px;
  text-align: center;
}

/**
 * Image Gallery Plain
 */
div.container.image-gallery div.container.image-gallery-plain > div.wrapper {
  flex-wrap: wrap;
}
div.container.image-gallery div.container.image-gallery-plain > div.wrapper *.item {
  flex-basis: calc(50% - 64px);
}
@media all and (max-width: 992px) {
  div.container.image-gallery div.container.image-gallery-plain > div.wrapper {
    justify-content: center;
  }
  div.container.image-gallery div.container.image-gallery-plain > div.wrapper *.item {
    flex-basis: 100%;
  }
}

/**
 * Layout
 */
section.layout > div.wrapper {
  width: 100%;
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 32px;
}
section.layout > div.wrapper > div.layout-body {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -32px;
}
section.layout > div.wrapper div[class^=layout-column-] {
  flex-grow: 0;
  flex-shrink: 0;
  display: block;
}
@media all and (max-width: 992px) {
  section.layout > div.wrapper {
    padding: 0 16px;
  }
  section.layout > div.wrapper div.layout-body {
    margin: 0 -16px;
  }
}
section.layout.one-column-layout > div.wrapper > div.layout-body, section.layout.two-column-layout > div.wrapper > div.layout-body, section.layout.three-column-layout > div.wrapper > div.layout-body, section.layout.four-column-layout > div.wrapper > div.layout-body, section.layout.five-column-layout > div.wrapper > div.layout-body, section.layout.six-column-layout > div.wrapper > div.layout-body {
  flex-wrap: wrap;
}
section.layout.one-column-layout div[class^=layout-column-], section.layout.two-column-layout div[class^=layout-column-], section.layout.three-column-layout div[class^=layout-column-], section.layout.four-column-layout div[class^=layout-column-], section.layout.five-column-layout div[class^=layout-column-], section.layout.six-column-layout div[class^=layout-column-] {
  flex-basis: 33.3333333333%;
}
@media all and (max-width: 768px) {
  section.layout.one-column-layout div[class^=layout-column-], section.layout.two-column-layout div[class^=layout-column-], section.layout.three-column-layout div[class^=layout-column-], section.layout.four-column-layout div[class^=layout-column-], section.layout.five-column-layout div[class^=layout-column-], section.layout.six-column-layout div[class^=layout-column-] {
    flex-basis: 100% !important;
  }
}
section.layout.one-column-layout div[class^=layout-column-] {
  flex-basis: 100%;
}
section.layout.two-column-layout div[class^=layout-column-] {
  flex-basis: 50%;
}
section.layout.three-column-layout div[class^=layout-column-] {
  flex-basis: 33.3333333333%;
}
section.layout.four-column-layout div[class^=layout-column-] {
  flex-basis: 25%;
}

/**
 * Message
 */
div.message {
  position: relative;
  width: 100%;
  max-width: 660px;
  margin: 0 auto 32px auto;
  padding: 32px 32px 32px 64px;
  border-radius: 8px;
  background-color: #F7F8F9;
  overflow: hidden;
  text-align: left;
}
@media all and (max-width: 768px) {
  div.message {
    margin-bottom: 16px;
  }
}
div.message::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 8px;
  height: 100%;
  background-color: #E6EAEB;
}
div.message::after {
  content: "";
  position: absolute;
  top: 32px;
  left: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
  line-height: 1;
  transform: translateX(50%);
}
div.message h5 {
  margin-bottom: 8px;
}
div.message p {
  margin-bottom: 0;
  color: #333333;
}
div.message p ~ a.button {
  margin-top: 32px;
  margin-bottom: 0;
}
@media all and (max-width: 768px) {
  div.message p ~ a.button {
    margin-top: 16px;
  }
}
div.message.info::before {
  background-color: #15743C;
}
div.message.info::after {
  content: "\e950";
  color: #15743C;
}
div.message.info h5 {
  color: #15743C;
}
div.message.error::before {
  background-color: #D63900;
}
div.message.error::after {
  content: "\e94a";
  color: #D63900;
}
div.message.error h5 {
  color: #D63900;
}

/**
 * Message Popover
 */
div.message-popover {
  position: relative;
  max-width: 340px;
}
div.message-popover a.action {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 16px 0;
  padding: 10px 12px 12px 12px;
  min-width: 160px;
  width: 100%;
  max-width: 340px;
  min-height: 43px;
  border: 1px solid #15743C;
  border-radius: 4px;
  background-color: transparent;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 16px;
  font-weight: normal;
  line-height: 1.2;
  color: #333333;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media all and (max-width: 768px) {
  div.message-popover a.action {
    width: auto;
    min-height: 33px;
    margin: 0 0 16px 0;
    padding: 6px 24px 7px 24px;
    font-size: 14px;
  }
}
div.message-popover a.action:hover {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
div.message-popover a.action:focus, div.message-popover a.action:active {
  background-color: #333333;
  color: #ffffff;
}
div.message-popover a.action span[class^=icon-] {
  margin-right: 8px;
}
div.message-popover div.dialog {
  position: absolute;
  z-index: 2;
  top: 51px;
  right: 0;
  display: flex;
  flex-direction: column;
  width: 340px;
  margin: 0;
  padding: 40px 24px 24px 24px;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  opacity: 0;
  transform: translateX(-32px);
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media all and (max-width: 768px) {
  div.message-popover div.dialog {
    padding-right: 16px;
    padding-left: 16px;
    transform: translateX(-16px);
  }
}
@media all and (max-width: 576px) {
  div.message-popover div.dialog {
    right: -45%;
    width: 300px;
  }
}
div.message-popover div.dialog h5 {
  margin-bottom: 8px;
  color: #15743C;
}
div.message-popover div.dialog p {
  margin-bottom: 0;
}
div.message-popover div.dialog span.icon-close {
  position: absolute;
  top: 8px;
  right: 8px;
  cursor: pointer;
}
div.message-popover.open a.action {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
div.message-popover.open div.dialog {
  opacity: 1;
  transform: translateX(0);
  pointer-events: all;
}

/**
 * Modal
 */
div.overlay {
  position: fixed;
  z-index: 9999998;
  top: 0;
  left: 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  width: 100vw;
  height: 100vh;
  overflow-y: scroll;
  padding: 5vh 0;
  background-color: rgba(0, 0, 0, 0.6);
  transition: opacity 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media all and (max-width: 768px) {
  div.overlay {
    padding: 16px;
  }
}

div.modal {
  position: relative;
  z-index: 9999999;
  width: calc(100% - 64px);
  max-width: 620px;
  margin: 32px;
  padding: 56px 64px 24px 32px;
  border-radius: 16px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
@media all and (max-width: 768px) {
  div.modal {
    width: calc(100% - 32px);
    margin: 16px;
    padding: 56px 64px 24px 16px;
  }
}
div.modal.wide {
  max-width: 840px;
}
div.modal > span.icon-close {
  position: absolute;
  top: 24px;
  right: 32px;
  cursor: pointer;
}

.fade-enter-active,
.fade-leave-active {
  transition-property: opacity;
  transition-duration: 0.25s;
}

.fade-enter-active {
  transition-delay: 0.25s;
}

.fade-enter,
.fade-leave-active {
  opacity: 0;
}

/**
 * My account
 */
div.container.my-account div.actions {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 32px;
}

div.profile-communications div.contact-preferences,
div.profile-communications div.my-receipts {
  margin-bottom: 24px;
}

/**
 * Page Intro
 */
div.container.page-intro h1,
div.container.page-intro p {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 768px;
  text-align: center;
}

/**
 * Pagination
 */
div.pagination {
  width: 100%;
  margin: 48px 32px;
}
@media all and (max-width: 992px) {
  div.pagination {
    margin: 16px;
  }
}
div.pagination ul {
  display: flex;
  justify-content: center;
  margin: 0 0 24px 0;
  padding: 0;
}
div.pagination ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
div.pagination ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  margin: 4px;
  border: 1px solid #E6EAEB;
  border-radius: 4px;
  background-color: transparent;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  line-height: 1;
  color: #757575;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.pagination ul li a:hover {
  text-decoration: none;
  color: #C8102E;
}
div.pagination ul li a.active {
  border-color: #C8102E;
  background-color: #C8102E;
  color: #ffffff;
}
div.pagination ul li.previous a, div.pagination ul li.next a {
  background-color: #E6EAEB;
}
div.pagination ul li.previous a::after, div.pagination ul li.next a::after {
  content: "x";
  font-family: "SuperValu Icons";
  font-size: 12px;
  text-align: center;
  color: #757575;
}
div.pagination ul li.previous a:hover::after, div.pagination ul li.next a:hover::after {
  color: #C8102E;
}
div.pagination ul li.previous a span, div.pagination ul li.next a span {
  display: none;
}
div.pagination ul li.previous a::after {
  content: "\e906";
}
div.pagination ul li.next a::after {
  content: "\e907";
}
div.pagination a.show-all {
  display: block;
  margin: 0 auto;
  text-align: center;
}

/**
 * Recipe Search
 */
div.recipe-search h2 {
  text-align: center;
}
div.recipe-search p {
  text-align: center;
  margin: 0 auto 24px auto;
}
div.recipe-search form {
  margin: 0 auto;
  max-width: 660px;
}
div.recipe-search form div.row {
  max-width: 100%;
}
div.recipe-search form div.field.text {
  max-width: 100%;
  margin-right: 0;
  padding-bottom: 0;
}
div.recipe-search form div.field.text label {
  display: none;
}
div.recipe-search form div.field.text input {
  height: 44px;
  border-right-width: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
div.recipe-search form div.field.button {
  padding-bottom: 0;
}
div.recipe-search form div.field.button button {
  height: 44px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
@media all and (max-width: 768px) {
  div.recipe-search form div.field.button button {
    padding: 12px 24px 13px 24px;
    font-size: 16px;
  }
}
div.recipe-search div.action {
  width: 100%;
  max-width: 660px;
  margin: 0 auto;
  text-align: right;
}

/**
 * Rich Text
 */
div.container.rich-text {
  max-width: 840px;
}
div.container.rich-text img.imageright {
  float: right;
  margin: 0 0 16px 16px;
}
div.container.rich-text img.imageleft {
  float: left;
  margin: 0 16px 16px 0;
}

/**
 * Screen Loading
 */
div.container.screen-loading {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
}
div.container.screen-loading.small {
  height: auto;
}
div.container.screen-loading div.wrapper {
  max-width: 432px;
  text-align: center;
}
div.container.screen-loading h3 {
  color: #333333;
}
div.container.screen-loading div.icon-loader {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  margin-bottom: 12px;
}
div.container.screen-loading div.icon-loader div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  border: 2px solid #D1D6D8;
  border-radius: 50%;
  animation: loader-anim 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #D1D6D8 transparent transparent transparent;
}
div.container.screen-loading div.icon-loader div:nth-child(1) {
  animation-delay: -0.45s;
}
div.container.screen-loading div.icon-loader div:nth-child(2) {
  animation-delay: -0.3s;
}
div.container.screen-loading div.icon-loader div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes loader-anim {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

/**
 * Sidenav
 */
nav.side {
  margin: 32px;
  padding: 16px 16px 32px 16px;
  max-width: 320px;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
nav.side ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  margin: 0;
  padding: 0;
}
nav.side ul li {
  border-bottom: 1px solid #E6EAEB;
  margin: 0;
  padding: 0;
}
nav.side ul li a {
  display: inline-flex;
  align-items: center;
  height: 60px;
  color: #333333;
  text-decoration: none;
}
nav.side ul li a.active {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  pointer-events: none;
}
nav.side ul li ul {
  margin-bottom: 16px;
}
nav.side ul li ul li {
  margin-bottom: 12px;
  margin-left: 32px;
  border-bottom: none;
}
nav.side ul li ul li a {
  height: auto;
}
nav.side ul li ul li a.active {
  color: #C8102E;
}

/**
 * Site Footer
 */
footer.site {
  position: relative;
  margin-top: 128px;
  background-color: #333333;
}
footer.site div.wrapper {
  display: flex;
  max-width: 1440px;
  margin: 0 auto;
  padding: 32px 16px 48px 16px;
}
footer.site div[class^=col-] {
  padding: 0 16px;
}
footer.site div.col-1 {
  flex: 0 1 25%;
}
footer.site div.col-2 {
  flex: 1 0 220px;
}
footer.site div.col-3 {
  flex: 1 0 220px;
  border-left: 1px solid #ffffff;
}
footer.site div.col-4 {
  flex: 1 0 220px;
  border-left: 1px solid #ffffff;
}
footer.site div.col-5 {
  flex: 0 1 25%;
  text-align: right;
}
@media all and (max-width: 1200px) {
  footer.site div.wrapper {
    flex-wrap: wrap;
  }
  footer.site div.col-5 {
    flex: 0 0 100%;
    margin-top: 24px;
    padding-top: 24px;
    text-align: center;
  }
}
@media all and (max-width: 992px) {
  footer.site div.wrapper {
    flex-wrap: wrap;
    padding-bottom: 60px;
    max-width: 320px;
  }
  footer.site div[class^=col-] {
    flex: 0 0 100%;
    padding-right: 0;
    padding-left: 0;
  }
  footer.site div.col-1 {
    text-align: center;
  }
  footer.site div.col-3 {
    border-left: none;
  }
  footer.site div.col-4 {
    border-left: none;
  }
  footer.site div.col-5 {
    border-top: 1px solid #ffffff;
  }
}
footer.site nav h3 {
  margin-bottom: 16px;
  font-size: 16px;
  color: #ffffff;
}
footer.site nav ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
footer.site nav ul li {
  margin: 0 0 8px 0;
  padding: 0;
}
footer.site nav ul li a {
  font-size: 14px;
  color: #ffffff;
  text-decoration: none;
}
@media all and (max-width: 992px) {
  footer.site nav.about h3, footer.site nav.help h3, footer.site nav.useful h3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 40px;
    margin: 16px 0 0 0;
    cursor: pointer;
  }
  footer.site nav.about h3::after, footer.site nav.help h3::after, footer.site nav.useful h3::after {
    content: "\e909";
    display: block;
    font-family: "SuperValu Icons";
    font-size: 12px;
    line-height: 1;
  }
  footer.site nav.about ul, footer.site nav.help ul, footer.site nav.useful ul {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.6s ease-out;
  }
  footer.site nav.about.menu-open h3::after, footer.site nav.help.menu-open h3::after, footer.site nav.useful.menu-open h3::after {
    transform: rotate(180deg);
  }
  footer.site nav.about.menu-open ul, footer.site nav.help.menu-open ul, footer.site nav.useful.menu-open ul {
    max-height: 600px;
  }
}
footer.site a.button {
  min-width: 209px;
  margin: 0 0 16px 0;
}
footer.site nav.social {
  position: absolute;
  bottom: 65px;
  right: 24px;
  display: flex;
  align-items: center;
}
@media all and (max-width: 992px) {
  footer.site nav.social {
    position: relative;
    bottom: auto;
    right: auto;
    margin-top: 24px;
    justify-content: center;
  }
}
footer.site nav.social h3 {
  margin: 0 8px 0 0;
  font-size: 14px;
  line-height: 1;
}
footer.site nav.social ul {
  display: flex;
}
footer.site nav.social ul li {
  margin: 0 8px;
}
footer.site nav.social ul li a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  color: #ffffff;
}
footer.site nav.social ul li a::before {
  content: "";
  font-family: "SuperValu Icons";
  font-size: 24px;
  line-height: 1;
}
footer.site nav.social ul li a > span {
  display: none;
}
footer.site nav.social ul li.facebook a::before {
  content: "\e974";
}
footer.site nav.social ul li.twitter a::before {
  content: "\e977";
}
footer.site nav.social ul li.youtube a::before {
  content: "\e978";
}
footer.site nav.social ul li.instagram a::before {
  content: "\e975";
}
footer.site nav.social ul li.tiktok a::before {
  content: "\e97c";
}

a.button.webchat-start {
  position: fixed;
  bottom: 0;
  right: 0;
  min-width: 88px;
  min-height: 32px;
  padding: 8px 23px;
  z-index: 999999;
  margin-right: 31px;
  margin-bottom: 0;
  background-color: #C8102E;
  border: 1px solid #ffffff;
  border-bottom-color: transparent;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  font-size: 14px;
  cursor: pointer;
}
a.button.webchat-start:hover {
  background-color: #A50025;
}
@media all and (max-width: 992px) {
  a.button.webchat-start {
    margin-right: 16px;
  }
}

footer.site {
  margin-bottom: -33px;
}

footer.site + div.payment-methods {
  margin-top: 33px;
}

@supports (-webkit-touch-callout: none) {
  a.button.webchat-start {
    position: fixed;
    transform: none;
    right: 0;
    bottom: 54px;
    left: auto;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom-color: #ffffff;
  }

  footer.site {
    margin-bottom: 0;
  }

  footer.site + div.payment-methods {
    margin-top: 0;
  }
}
button#ot-sdk-btn.ot-sdk-show-settings {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  -ms-appearance: none;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 0 0 16px 0;
  padding: 8px 24px;
  width: auto;
  min-width: 209px;
  min-height: 33px;
  font-size: 14px;
  outline: none;
  border: none;
  border-radius: 4px;
  background-color: #0CA74B;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
}
button#ot-sdk-btn.ot-sdk-show-settings:hover {
  background-color: #15743C;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
  color: #ffffff;
}
button#ot-sdk-btn.ot-sdk-show-settings:focus, button#ot-sdk-btn.ot-sdk-show-settings:active {
  background-color: #034638;
  color: #ffffff;
}

div.payment-methods div.wrapper {
  display: flex;
  align-items: center;
  max-width: 1440px;
  min-height: 54px;
  padding: 0 24px;
}
@media all and (max-width: 992px) {
  div.payment-methods div.wrapper {
    justify-content: center;
  }
}
div.payment-methods span {
  margin-right: 8px;
  font-size: 14px;
  line-height: 1;
}
div.payment-methods img {
  margin: 0 8px;
}

/**
 * Site Header
 */
@media all and (min-width: 1201px) {
  header.site {
    width: 100%;
  }
  header.site nav ul {
    list-style: none;
    display: flex;
    margin: 0;
    padding: 0;
  }
  header.site nav ul li {
    margin: 0 1.5vw;
    padding: 0;
  }
  header.site nav ul li:first-child {
    margin-left: 0 !important;
  }
  header.site nav ul li:last-child {
    margin-right: 0 !important;
  }
  header.site nav ul li a {
    color: #ffffff;
    text-decoration: none;
  }
  header.site div.top > div.wrapper,
header.site div.main > div.wrapper {
    max-width: 1440px;
    margin: 0 auto;
    padding: 0 32px;
  }
  header.site div.top {
    background-color: #A50025;
  }
  header.site div.top > div.wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 32px;
  }
  header.site div.top a.store-locator {
    display: inline-flex;
    align-items: center;
    margin-right: auto;
    font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
    font-size: 14px;
    color: #ffffff;
    text-decoration: none;
  }
  header.site div.top a.store-locator::before {
    content: "\e952";
    font-family: "SuperValu Icons";
    font-size: 16px;
    margin-right: 8px;
  }
  header.site div.top nav.global ul li a {
    font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
    font-size: 14px;
  }
  header.site div.main {
    background-color: #C8102E;
  }
  header.site div.main > div.wrapper {
    display: flex;
    justify-content: space-between;
    align-items: center;
    min-height: 96px;
  }
  header.site div.main a.logo {
    display: block;
    margin-right: 3vw;
  }
  header.site div.main nav.primary {
    margin-right: 3vw;
  }
  header.site div.main nav.primary ul {
    align-items: center;
  }
  header.site div.main nav.primary ul li {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 96px;
  }
  header.site div.main nav.primary ul li a {
    font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
    font-size: 18px;
    line-height: 1;
    white-space: pre;
  }
  header.site div.main nav.primary ul li.home {
    display: none;
  }
  header.site div.main nav.primary ul li.shopping {
    margin-left: 0;
  }
  header.site div.main nav.primary ul li.shopping a {
    display: inline-flex;
    align-items: center;
    padding: 12px 24px;
    height: 48px;
    border: 2px solid #ffffff;
    border-radius: 24px;
  }
  header.site div.main nav.primary ul li.shopping a::before {
    content: "\e96e";
    font-family: "SuperValu Icons";
    font-size: 32px;
    margin-right: 16px;
  }
  header.site div.main nav.primary ul li.active::after, header.site div.main nav.primary ul li.open::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8px 8px 8px;
    border-color: transparent transparent white transparent;
    transform: translateX(-50%);
  }
  header.site div.main p.section {
    display: none;
  }
  header.site div.main a.open-menu {
    display: none;
  }
}
@media all and (max-width: 1200px) {
  header.site {
    display: flex;
    flex-direction: column;
    width: 100%;
    max-height: 48px;
    overflow: hidden;
    transition: max-height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  header.site nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
  }
  header.site nav ul li {
    margin: 0;
    padding: 0;
  }
  header.site nav ul li a {
    color: #ffffff;
    text-decoration: none;
  }
  header.site div.top > div.wrapper,
header.site div.main > div.wrapper {
    max-width: 1440px;
    margin: 0 auto;
    padding: 16px;
  }
  header.site div.top {
    order: 2;
    background-color: #A50025;
  }
  header.site div.top a.store-locator {
    position: relative;
    display: inline-flex;
    align-items: center;
    margin-bottom: 8px;
    padding-left: 54px;
    font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
    font-size: 14px;
    color: #ffffff;
    text-decoration: none;
  }
  header.site div.top a.store-locator::before {
    content: "\e952";
    position: absolute;
    font-family: "SuperValu Icons";
    font-size: 16px;
    margin-right: 8px;
    transform: translateX(-50%) translateX(-27px);
  }
  header.site div.top nav.global ul li a {
    display: inline-block;
    margin-bottom: 8px;
    padding-left: 54px;
    font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
    font-size: 14px;
  }
  header.site div.main {
    order: 1;
    background-color: #C8102E;
  }
  header.site div.main > div.wrapper {
    display: flex;
    flex-direction: column;
    padding: 14px 16px 8px 16px;
  }
  header.site div.main a.logo {
    order: 1;
    width: 84px;
    margin-bottom: 5px;
  }
  header.site div.main a.logo img {
    width: 100%;
    height: auto;
  }
  header.site div.main nav.primary {
    order: 4;
  }
  header.site div.main nav.primary ul {
    align-items: center;
  }
  header.site div.main nav.primary ul li {
    border-bottom: 1px solid #A50025;
  }
  header.site div.main nav.primary ul li:last-child {
    border-bottom: none;
  }
  header.site div.main nav.primary ul li a {
    position: relative;
    display: flex;
    align-items: center;
    min-height: 48px;
    padding-left: 54px;
    font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
    font-size: 16px;
    line-height: 1;
    white-space: pre;
  }
  header.site div.main nav.primary ul li.home a::before {
    content: "\e94f";
    position: absolute;
    font-family: "SuperValu Icons";
    font-size: 24px;
    line-height: 1;
    transform: translateX(-50%) translateX(-27px);
  }
  header.site div.main div.userbox {
    order: 2;
    max-width: 100%;
    padding: 24px 0;
    border-top: 1px solid #ffffff;
    border-bottom: 1px solid #ffffff;
    text-align: center;
  }
  header.site div.main p.section {
    position: absolute;
    top: 12px;
    right: 54px;
    margin-bottom: 0;
    color: #ffffff;
  }
  header.site div.main a.open-menu {
    order: 3;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: 0;
    right: 0;
    width: 48px;
    height: 48px;
  }
  header.site div.main a.open-menu span.core,
header.site div.main a.open-menu span.core:before,
header.site div.main a.open-menu span.core:after {
    display: block;
    position: absolute;
    width: 22px;
    height: 2px;
    border-radius: 1px;
    background-color: #ffffff;
  }
  header.site div.main a.open-menu span.core {
    top: 50%;
    margin-top: -1px;
    transition: background-color 150ms cubic-bezier(0.5, 0.15, 0.25, 1);
  }
  header.site div.main a.open-menu span.core::before {
    content: "";
    top: -7px;
    transition: top 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 300ms, transform 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 0ms, background-color 150ms cubic-bezier(0.5, 0.15, 0.25, 1);
  }
  header.site div.main a.open-menu span.core::after {
    content: "";
    bottom: -7px;
    transition: bottom 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 300ms, transform 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 0ms, background-color 150ms cubic-bezier(0.5, 0.15, 0.25, 1);
  }

  body.menu-open header.site {
    max-height: 150vh;
  }
  body.menu-open header.site div.main a.open-menu span.core {
    background-color: transparent;
  }
  body.menu-open header.site div.main a.open-menu span.core::before {
    top: 0;
    transform: rotate(45deg);
    transition: top 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 0ms, transform 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 300ms;
  }
  body.menu-open header.site div.main a.open-menu span.core::after {
    bottom: 0;
    transform: rotate(-45deg);
    transition: bottom 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 0ms, transform 150ms cubic-bezier(0.5, 0.15, 0.25, 1) 300ms;
  }
}
/**
 * Site Header
 */
header.site-ecom {
  width: 100%;
}
header.site-ecom nav ul {
  list-style: none;
  display: flex;
  margin: 0;
  padding: 0;
}
header.site-ecom nav ul li {
  margin: 0 1.5vw;
  padding: 0;
}
header.site-ecom nav ul li:first-child {
  margin-left: 0 !important;
}
header.site-ecom nav ul li:last-child {
  margin-right: 0 !important;
}
header.site-ecom nav ul li a {
  color: #ffffff;
  text-decoration: none;
}
header.site-ecom div.main {
  background-color: #C8102E;
}
header.site-ecom div.main > div.wrapper {
  display: flex;
  justify-content: space-between;
  align-items: center;
  max-width: 1440px;
  min-height: 96px;
  margin: 0 auto;
  padding: 0 32px;
}
header.site-ecom div.main a.logo {
  display: block;
  margin-right: 3vw;
}
header.site-ecom div.main nav.primary {
  margin-right: 3vw;
}
header.site-ecom div.main nav.primary ul {
  align-items: center;
}
header.site-ecom div.main nav.primary ul li {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 96px;
}
header.site-ecom div.main nav.primary ul li a {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 1;
  white-space: pre;
}
header.site-ecom div.main nav.primary ul li.shopping {
  margin-left: 0;
}
header.site-ecom div.main nav.primary ul li.shopping a {
  display: inline-flex;
  align-items: center;
  padding: 12px 24px;
  height: 48px;
  border: 2px solid #ffffff;
  border-radius: 24px;
}
header.site-ecom div.main nav.primary ul li.shopping a::before {
  content: "\e96e";
  font-family: "SuperValu Icons";
  font-size: 32px;
  margin-right: 16px;
}
header.site-ecom div.main nav.primary ul li.active::after, header.site-ecom div.main nav.primary ul li.open::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 8px 8px 8px;
  border-color: transparent transparent white transparent;
  transform: translateX(-50%);
}
header.site-ecom div.main p.section {
  display: none;
}
header.site-ecom div.main a.open-menu {
  display: none;
}
header.site-ecom.thryveaimobile {
  width: 100%;
  height: 48px;
}
header.site-ecom.thryveaimobile div.main {
  display: none;
}

/**
 * Snackbar
 */
div.snackbar-container {
  position: fixed;
  left: 50%;
  transform: translateX(-50%);
  z-index: 1000;
}
div.snackbar-container div.snackbar {
  left: 50%;
  width: 100%;
  max-width: 320px;
  padding: 16px;
  border-radius: 4px;
  background-color: rgba(51, 51, 51, 0.9);
  text-align: left;
  display: none;
  top: 0;
  margin-top: 30px;
  animation: ease-in-out;
}
div.snackbar-container div.snackbar span[class^=icon-]::after {
  margin-right: 16px;
  font-size: 24px;
  color: #ffffff;
}
div.snackbar-container div.snackbar span.message {
  color: #ffffff;
}
div.snackbar-container div.snackbar.show {
  display: flex;
}

/**
 * Status
 */
div.status {
  margin-bottom: 24px;
  padding: 24px 32px;
  max-width: 768px;
  color: #757575;
}
@media all and (max-width: 768px) {
  div.status {
    padding: 16px;
  }
}
div.status span {
  max-width: 432px;
}

/**
 * Store Locator Form
 */
@media all and (max-width: 992px) {
  div.container.store-locator-form > div.wrapper {
    flex-wrap: wrap;
  }
}
div.container.store-locator-form div.store-select,
div.container.store-locator-form div.store-detail {
  padding: 24px 32px 24px 32px;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 992px) {
  div.container.store-locator-form div.store-select,
div.container.store-locator-form div.store-detail {
    flex: 0 1 100%;
  }
}
div.container.store-locator-form div.store-detail {
  display: flex;
  flex-wrap: wrap;
}
div.container.store-locator-form div.store-detail h3 {
  flex: 0 1 100%;
}
div.container.store-locator-form div.store-detail div.store-info {
  flex: 0 1 192px;
  margin-bottom: 24px;
  padding-right: 32px;
  border-right: 1px solid #E6EAEB;
}
@media all and (max-width: 768px) {
  div.container.store-locator-form div.store-detail div.store-info {
    flex: 1 0 100%;
    padding-right: 0;
    border-right: none;
  }
}
div.container.store-locator-form div.store-detail div.store-info p.telephone,
div.container.store-locator-form div.store-detail div.store-info p.manager-name {
  margin-bottom: 0;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
div.container.store-locator-form div.store-detail div.store-info a.autism-friendly {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  margin: 24px 0 0 0;
  padding: 0 24px;
  max-width: 180px;
  height: 33px;
  border-radius: 16.5px;
  background-color: #34577F;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  font-weight: normal;
  line-height: 1.2;
  color: #ffffff;
  text-align: center;
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  cursor: pointer;
}
div.container.store-locator-form div.store-detail div.opening-hours {
  padding-left: 32px;
}
@media all and (max-width: 768px) {
  div.container.store-locator-form div.store-detail div.opening-hours {
    padding-left: 0;
  }
}

/**
 * Store Locator Map
 */
div.container.store-locator-map div.item {
  position: relative;
  width: 100%;
  height: 640px;
  background: #d0d0d0;
}
div.container.store-locator-map div.item #map-canvas {
  width: 100%;
  height: 100%;
}
div.container.store-locator-map div.item #map-canvas div.infoBox h4 {
  margin: 16px 0 16px 16px;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p {
  margin: 0;
  padding: 0;
  width: 340px;
  font-size: 14px;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p.image {
  float: left;
  width: 130px;
  height: 130px;
  margin: 0 16px;
  border-radius: 100%;
  overflow: hidden;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p.image img {
  width: 130px;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p.address {
  font-weight: bold;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p.telephone {
  margin-top: 12px;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p.directions {
  margin-top: 12px;
}
div.container.store-locator-map div.item #map-canvas div.infoBox p.opening-hours {
  display: none;
}

/**
 * Subnav
 */
div.subnav {
  background-color: #ffffff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.04);
}
div.subnav > div.wrapper {
  max-width: 1440px;
  margin: 0 auto;
}
div.subnav a.open-subnav {
  position: relative;
  display: none;
  padding: 0 16px;
  color: #333333;
}
div.subnav a.open-subnav > span.active-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  width: 100%;
  border-bottom: 1px solid transparent;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  transition: border-bottom-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition-delay: 0.3s;
}
div.subnav a.open-subnav span[class^=icon-] {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 56px;
  transform: rotate(0);
}
div.subnav a.open-subnav:hover {
  text-decoration: none;
}
@media all and (max-width: 992px) {
  div.subnav a.open-subnav {
    display: flex;
  }
}
div.subnav nav.sub ul {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
}
div.subnav nav.sub ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
div.subnav nav.sub ul li a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 56px;
  margin: 0 32px;
  color: #333333;
  text-decoration: none;
  text-align: center;
}
div.subnav nav.sub ul li a.active::after, div.subnav nav.sub ul li a.open::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  background-color: #C8102E;
}
@media all and (max-width: 992px) {
  div.subnav nav.sub {
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  div.subnav nav.sub ul {
    flex-wrap: wrap;
  }
  div.subnav nav.sub ul li {
    flex: 100%;
  }
  div.subnav nav.sub ul li a {
    margin: 0 16px;
    padding: 0;
    border-bottom: 1px solid #E6EAEB;
  }
  div.subnav nav.sub ul li a.active, div.subnav nav.sub ul li a.open {
    color: #C8102E;
  }
  div.subnav nav.sub ul li a.active::after, div.subnav nav.sub ul li a.open::after {
    display: none;
  }
  div.subnav nav.sub ul li:last-child a {
    margin-bottom: 16px;
  }
}
div.subnav.open a.open-subnav span.active-item {
  border-bottom-color: #E6EAEB;
  transition: none;
  transition-delay: 0s;
}
div.subnav.open a.open-subnav span[class^=icon-] {
  transform: rotate(180deg);
}

@media all and (min-width: 992px) {
  body.insurance div.subnav nav.sub ul li:last-child {
    margin-left: auto;
  }
}
/**
 * Subnav Insurance
 */
div.subnav-insurance {
  background-color: #ffffff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.04);
}
div.subnav-insurance > div.wrapper {
  max-width: 1440px;
  margin: 0 auto;
}
div.subnav-insurance a.open-subnav {
  position: relative;
  display: none;
  padding: 0 16px;
  color: #333333;
}
div.subnav-insurance a.open-subnav > span.active-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 56px;
  width: 100%;
  border-bottom: 1px solid transparent;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  transition: border-bottom-color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  transition-delay: 0.3s;
}
div.subnav-insurance a.open-subnav span[class^=icon-] {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 56px;
  transform: rotate(0);
}
div.subnav-insurance a.open-subnav:hover {
  text-decoration: none;
}
@media all and (max-width: 992px) {
  div.subnav-insurance a.open-subnav {
    display: flex;
  }
}
@media all and (max-width: 992px) {
  div.subnav-insurance nav.sub {
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
}
div.subnav-insurance nav.sub ul {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
}
div.subnav-insurance nav.sub ul li {
  position: relative;
  list-style: none;
  margin: 0;
  padding: 0;
}
div.subnav-insurance nav.sub ul li a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 56px;
  margin: 0 32px;
  color: #333333;
  text-decoration: none;
  text-align: center;
}
div.subnav-insurance nav.sub ul li a.active::after, div.subnav-insurance nav.sub ul li a.open::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  background-color: #C8102E;
}
@media all and (max-width: 992px) {
  div.subnav-insurance nav.sub ul li a.active::after, div.subnav-insurance nav.sub ul li a.open::after {
    height: 0;
  }
}
div.subnav-insurance nav.sub ul li.open .open-nav {
  transform: rotate(180deg);
}
div.subnav-insurance nav.sub ul li ul li a.open span {
  position: relative;
  top: 3px;
}
div.subnav-insurance nav.sub ul li ul li a.open:after {
  height: 0;
}
@media all and (max-width: 992px) {
  div.subnav-insurance nav.sub ul li.has-child > a {
    display: flex;
  }
  div.subnav-insurance nav.sub ul li.has-child > a span:not(.open-nav) {
    flex-grow: 1;
    display: block;
    text-align: left;
  }
  div.subnav-insurance nav.sub ul li.has-child > a .open-nav::after {
    content: "\e909";
    padding: 8px -8px 8px 8px;
    font-family: "SuperValu Icons";
    font-size: 16px;
    line-height: 1;
  }
  div.subnav-insurance nav.sub ul li.has-child ul li a {
    margin: 0 32px;
  }
}
@media all and (min-width: 992px) {
  div.subnav-insurance nav.sub ul li.has-child ul {
    position: absolute;
    z-index: 99998;
    top: 56px;
    left: 16px;
    flex-direction: column;
    align-items: flex-start;
    width: 240px;
    padding-bottom: 4px;
    background-color: #ffffff;
    border-radius: 0 0 8px 8px;
    box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.04);
    opacity: 0;
    transform: translateX(32px);
    pointer-events: none;
    transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  }
  div.subnav-insurance nav.sub ul li.has-child ul::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 16px;
    background: transparent;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.04) 100%);
    pointer-events: none;
  }
  div.subnav-insurance nav.sub ul li.has-child ul li {
    width: 100%;
    padding: 0 16px;
  }
  div.subnav-insurance nav.sub ul li.has-child ul li a {
    width: 100%;
    min-height: 46px;
    margin: 0;
    text-align: left;
    text-overflow: ellipsis;
  }
  div.subnav-insurance nav.sub ul li.has-child ul li:not(:last-child)::after {
    content: "";
    display: block;
    width: 100%;
    border-bottom: 1px solid #E6EAEB;
  }
}
div.subnav-insurance nav.sub ul li.has-child:hover ul {
  opacity: 1;
  transform: translateX(0);
  pointer-events: all;
}
@media all and (max-width: 992px) {
  div.subnav-insurance nav.sub ul {
    overflow: hidden;
    transition: height 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
    flex-direction: column;
  }
  div.subnav-insurance nav.sub ul li {
    width: 100%;
  }
  div.subnav-insurance nav.sub ul li a {
    margin: 0 16px;
    padding: 0;
    border-bottom: 1px solid #E6EAEB;
  }
}
div.subnav-insurance.open a.open-subnav span.active-item {
  border-bottom-color: #E6EAEB;
  transition: none;
  transition-delay: 0s;
}
div.subnav-insurance.open a.open-subnav span[class^=icon-] {
  transform: rotate(180deg);
}

@media all and (min-width: 992px) {
  body.insurance div.subnav-insurance nav.sub > ul > li:last-child {
    margin-left: auto;
  }
}
/**
 * Userbox
 */
div.userbox {
  position: relative;
  display: flex;
  margin-left: auto;
}
div.userbox a.button.navigation {
  margin: 0 8px;
}
@media all and (min-width: 992px) and (max-width: 1026px) {
  div.userbox a.button.navigation {
    min-width: 0;
    padding-right: 12px;
    padding-left: 12px;
  }
}
div.userbox a.button.navigation:last-child {
  margin-right: 0;
}
div.userbox a.user {
  color: #ffffff;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
}
div.userbox a.user span[class^=icon-] {
  display: inline-block;
  margin-left: 8px;
}
div.userbox a.user:hover {
  text-decoration: none;
}
div.userbox nav.user {
  position: absolute;
  z-index: 9999;
  top: 61px;
  right: 0;
  padding: 0 16px 0 16px;
  width: 240px;
  height: auto;
  max-height: 0;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  transition: max-height 0.6s ease-out;
}
div.userbox nav.user ul {
  list-style: none;
  display: flex;
  flex-direction: column;
  margin: 16px 0 32px 0;
  padding: 0;
}
div.userbox nav.user ul li {
  border-bottom: 1px solid #E6EAEB;
  margin: 0;
  padding: 0;
}
div.userbox nav.user ul li a {
  display: flex;
  align-items: center;
  height: 56px;
  color: #333333;
  text-decoration: none;
  transform: translateX(16px);
  opacity: 0;
  pointer-events: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1) 0.15s;
}
div.userbox nav.user ul li.active a {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
div.userbox.menu-open a.user span[class^=icon-] {
  transform: rotate(180deg);
}
div.userbox.menu-open nav.user {
  max-height: 640px;
}
div.userbox.menu-open nav.user ul li a {
  transform: translateX(0);
  opacity: 1;
  pointer-events: all;
}
div.userbox.menu-open nav.user ul li:nth-child(1) a {
  transition-delay: 0s;
}
div.userbox.menu-open nav.user ul li:nth-child(2) a {
  transition-delay: 0.05s;
}
div.userbox.menu-open nav.user ul li:nth-child(3) a {
  transition-delay: 0.1s;
}
div.userbox.menu-open nav.user ul li:nth-child(4) a {
  transition-delay: 0.15s;
}
div.userbox.menu-open nav.user ul li:nth-child(5) a {
  transition-delay: 0.2s;
}
div.userbox.menu-open nav.user ul li:nth-child(6) a {
  transition-delay: 0.25s;
}
div.userbox.menu-open nav.user ul li:nth-child(7) a {
  transition-delay: 0.3s;
}
div.userbox.menu-open nav.user ul li:nth-child(8) a {
  transition-delay: 0.35s;
}
div.userbox.menu-open nav.user ul li:nth-child(9) a {
  transition-delay: 0.4s;
}
div.userbox.menu-open nav.user ul li:nth-child(10) a {
  transition-delay: 0.45s;
}
div.userbox.menu-open nav.user ul li:nth-child(11) a {
  transition-delay: 0.5s;
}
@media all and (max-width: 992px) {
  div.userbox {
    display: block;
    width: 100%;
    max-width: 448px;
    margin-left: 0;
  }
  div.userbox a.user {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 40px;
    margin: 0 auto 0 0;
    padding: 8px 16px 8px 56px;
    border-radius: 4px;
    background-color: #ffffff;
    color: #C8102E;
  }
  div.userbox a.user::before {
    content: "\e970";
    position: absolute;
    font-family: "SuperValu Icons";
    font-size: 24px;
    line-height: 1;
    transform: translateX(-50%) translateX(-27px);
  }
  div.userbox nav.user {
    position: relative;
    top: -4px;
    width: auto;
    padding-top: 4px;
    border-radius: 0 0 4px 4px;
    box-shadow: none;
  }
  div.userbox nav.user ul li a {
    padding-left: 40px;
  }
}

/**
 * Video
 */
div.container.video {
  max-width: 840px;
}
div.container.video div.item {
  background-color: #333333;
}
div.container.video div.video-youtube {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
}
div.container.video div.video-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.container.text-button-center .wrapper .item {
  text-align: center;
}
.container.text-button-center .wrapper .item h3 {
  font-size: 40px;
  line-height: 1.1;
  margin-bottom: 24px;
}
.container.text-button-center .wrapper .item p {
  margin: 0 auto;
  max-width: 690px;
}
.container.text-button-center .wrapper .item .button {
  margin-top: 24px;
}

.partner-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: 80px;
  row-gap: 40px;
}
@media all and (max-width: 768px) {
  .partner-list {
    column-gap: 16px;
    grid-template-columns: repeat(2, 1fr);
  }
}

.container.partner-list-item {
  height: 100%;
}
.container.partner-list-item .wrapper {
  flex-direction: column;
  box-shadow: 0 0 24px rgba(0, 0, 0, 0.1);
  height: 100%;
  border-radius: 8px;
  background: white;
  overflow: hidden;
}
.container.partner-list-item .image img {
  display: block;
  width: 100%;
}
.container.partner-list-item .content {
  flex: 1;
  padding: 16px;
}
.container.partner-list-item .content h3 {
  font-size: 18px;
  margin-bottom: 16px;
}

/* Components: Identity */
/**
 * Delete Account
 */
div.delete-account p {
  text-align: left !important;
}

div.delete-account-modal p {
  text-align: left !important;
}

/**
 * Mobile number
 */
div.row.mobile-number div.field.select.prefix {
  max-width: 120px;
}

/**
 * OIDC
 */
div.container[class*=oidc-] {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
}
div.container[class*=oidc-] div.wrapper {
  max-width: 432px;
  text-align: center;
}
div.container[class*=oidc-] h3 {
  color: #333333;
}
div.container[class*=oidc-] div.icon-loader {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 32px;
  height: 32px;
  margin-bottom: 12px;
}
div.container[class*=oidc-] div.icon-loader div {
  box-sizing: border-box;
  display: block;
  position: absolute;
  width: 30px;
  height: 30px;
  border: 2px solid #D1D6D8;
  border-radius: 50%;
  animation: loader-anim 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
  border-color: #D1D6D8 transparent transparent transparent;
}
div.container[class*=oidc-] div.icon-loader div:nth-child(1) {
  animation-delay: -0.45s;
}
div.container[class*=oidc-] div.icon-loader div:nth-child(2) {
  animation-delay: -0.3s;
}
div.container[class*=oidc-] div.icon-loader div:nth-child(3) {
  animation-delay: -0.15s;
}
@keyframes loader-anim {
  0% {
    transform: rotate(0deg);
  }
  100% {
    transform: rotate(360deg);
  }
}

div.container.oidc-error span[class^=icon-]::after {
  display: inline-block;
  margin-bottom: 12px;
  font-size: 32px;
  color: #C8102E;
}

/**
 * Policy View
 */
div.container.policy-view {
  max-width: 840px;
}
div.container.policy-view div.policy-group {
  margin-bottom: 36px;
}
div.container.policy-view div.policy-group h3 {
  margin-bottom: 0;
}
div.container.policy-view div.policy {
  border-bottom: 1px solid #E6EAEB;
}
div.container.policy-view div.policy > h4 {
  position: relative;
  display: block;
  margin-bottom: 0;
  padding: 24px 0;
  cursor: pointer;
  color: #333333;
}
div.container.policy-view div.policy > h4::after {
  content: "\e909";
  position: absolute;
  right: 0;
  margin-left: auto;
  font-family: "SuperValu Icons";
  font-size: 16px;
  line-height: 1;
}
div.container.policy-view div.policy div.policy-content {
  max-height: 0;
  height: auto;
  overflow: hidden;
  transition: max-height 0.6s ease-out;
}
div.container.policy-view div.policy.open > h4::after {
  content: "\e908";
}
div.container.policy-view div.policy.open div.policy-content {
  max-height: 999px;
  overflow-y: scroll;
}

/**
 * User password
 */
div.row.password-helper {
  flex-wrap: wrap;
}
div.row.password-helper div.field.password {
  margin-right: 0;
  padding-bottom: 12px;
}
div.row.password-helper div.password-requirements {
  font-size: 12px;
  line-height: 1.1428571429;
  text-align: left;
}
div.row.password-helper div.password-requirements * {
  transform: translate3d(0, 0, 0);
}
div.row.password-helper div.password-requirements > div.wrapper,
div.row.password-helper div.password-requirements > div.wrapper > * {
  max-height: 450px;
  pointer-events: none;
  overflow: hidden;
  transition: all 300ms ease-in-out;
}
div.row.password-helper div.password-requirements > div.wrapper {
  padding: 0;
}
div.row.password-helper div.password-requirements > div.wrapper > * {
  opacity: 1;
  transition-delay: 125ms;
}
div.row.password-helper div.password-requirements > div.wrapper > span {
  display: inline-block;
  margin: 12px 0 12px 0;
}
div.row.password-helper div.password-requirements ul {
  list-style-type: none;
  margin: 0 0 12px 0;
  padding: 0;
  text-align: left;
}
div.row.password-helper div.password-requirements ul li {
  position: relative;
  display: block;
  margin: 0 0 6px 0;
  padding: 0 0 0 20px;
  font-size: 12px;
  line-height: 1.1428571429;
}
div.row.password-helper div.password-requirements ul li > span {
  color: #757575;
}
div.row.password-helper div.password-requirements ul li:before {
  content: "";
  position: absolute;
  top: 2px;
  left: 4px;
  display: block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background-color: #d63900;
  opacity: 1;
  transform: scale(1);
  transition: all 150ms cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.row.password-helper div.password-requirements ul li.success > span {
  text-decoration: line-through;
  color: #333333;
}
div.row.password-helper div.password-requirements ul li.success:before {
  background-color: #0ca74b;
}
div.row.password-helper div.password-requirements[data-length="0"][data-valid=no] > div.wrapper, div.row.password-helper div.password-requirements[data-valid=yes] > div.wrapper {
  max-height: 0;
  pointer-events: none;
  transition-delay: 250ms;
}
div.row.password-helper div.password-requirements[data-length="0"][data-valid=no] > div.wrapper > *, div.row.password-helper div.password-requirements[data-valid=yes] > div.wrapper > * {
  opacity: 0;
}
div.row.password-helper div.password-requirements[data-valid=yes] > div.wrapper {
  transition-delay: 825ms;
}
div.row.password-helper div.password-requirements[data-valid=yes] > div.wrapper > * {
  transition-delay: 750ms;
}

/**
 * brand-banner
 */
div.brand-banner {
  position: relative;
  width: 100%;
  max-width: 600px;
  margin: 48px auto 24px auto;
  border: 1px solid #E6EAEB;
}
@media all and (max-width: 600px) {
  div.brand-banner {
    margin-bottom: 0;
    padding-top: 5px;
    width: 100%;
    border: 0;
  }
}
@media all and (max-width: 300px) {
  div.brand-banner {
    max-width: 300px;
  }
}
div.brand-banner div.brand-header {
  position: absolute;
  top: -20px;
  left: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-left: -130px;
  width: 260px;
  height: 40px;
  background-color: #ffffff;
}
div.brand-banner div.brand-header > span {
  display: inline-flex;
  align-items: center;
  margin: 0 10px;
  font-size: 18px;
  text-transform: uppercase;
}
div.brand-banner div.brand-header > span > span {
  margin-right: 5px;
  font-size: 30px;
  font-weight: bold;
  color: #C8102E;
}
div.brand-banner div.brand-list {
  position: relative;
  display: flex;
  justify-content: space-around;
  align-items: center;
  margin: 10px 0 10px;
  padding: 20px 0 20px 0;
}
div.brand-banner div.brand-list img.brand {
  height: 30px;
  width: auto;
  margin: 0 15px;
}
@media all and (max-width: 480px) {
  div.brand-banner div.brand-list img.brand {
    height: 28px;
    width: auto;
    margin: 0 8px;
  }
}
div.brand-banner div.brand-list ul {
  list-style: none;
  left: 0;
  top: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  justify-content: center;
  padding: 0;
  margin: 0;
  width: 100%;
}
div.brand-banner div.brand-list ul.transition {
  transition: transform 1000ms ease 0s;
}
div.brand-banner div.brand-list ul li {
  list-style: none;
  padding: 0;
  margin: 0;
  height: 30px;
}

.login-form .forgot-password {
  justify-content: flex-end;
  text-align: right;
  margin-bottom: 24px;
  padding-right: 16px;
}
.login-form .forgot-password a {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 12px;
  line-height: 1;
  text-decoration: underline;
  color: #333333;
}
.login-form .forgot-password a:hover {
  color: #C8102E;
}
.login-form .field.password {
  padding-bottom: 12px;
}

main#comm-prefs-app {
  color: #333333;
}
main#comm-prefs-app > .wrapper {
  width: 100%;
  max-width: 520px;
  margin: 45px auto 90px auto;
  text-align: center;
}
main#comm-prefs-app h1 {
  color: #a71931;
  font-weight: 500;
  margin: 0 0 24px 0;
  font-size: 30px;
}
main#comm-prefs-app p.intro {
  font-weight: 600;
}
main#comm-prefs-app a {
  color: #a71931;
  text-decoration: underline;
}
main#comm-prefs-app a:hover {
  color: #a71931;
  text-decoration: none;
}
main#comm-prefs-app a.close {
  position: absolute;
  top: -15px;
  right: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  text-decoration: none;
}
main#comm-prefs-app a.close::before,
main#comm-prefs-app a.close::after {
  content: "";
  position: absolute;
  left: 0;
  top: 60px;
  display: block;
  width: 30px;
  height: 2px;
  background-color: black;
}
main#comm-prefs-app a.close::before {
  transform: rotate(45deg);
}
main#comm-prefs-app a.close::after {
  transform: rotate(-45deg);
}
main#comm-prefs-app a.close > span {
  display: none;
}
main#comm-prefs-app form .row {
  max-width: 500px;
  margin: 0 0 30px 0;
}
main#comm-prefs-app form .field label span {
  font-size: 15px;
  text-align: left;
  cursor: pointer;
  font-weight: 600;
  color: #757575;
}
main#comm-prefs-app form .field label span span {
  font-size: 14px;
  font-weight: 500;
}

/* Components: Scan to Win */
/**
 * Competition Countdown
 */
div.competition-countdown div.wrapper {
  justify-content: center;
}
div.competition-countdown div.wrapper div.item {
  display: flex;
  justify-content: space-between;
  max-width: 720px;
  padding: 32px;
  border-radius: 4px;
  background-color: #F7F8F9;
  margin-top: 16px;
  margin-bottom: 16px;
}
div.competition-countdown div.text {
  flex-basis: 100%;
}
div.competition-countdown div.text h3 {
  margin-bottom: 0;
}
div.competition-countdown div.text h4 {
  margin-bottom: 0;
  color: #333333;
}
div.competition-countdown div.timer {
  display: flex;
  justify-content: center;
  align-items: baseline;
  margin: 0 0 0 32px;
}
div.competition-countdown div.timer div.unit {
  margin: 0 12px;
  text-align: center;
}
div.competition-countdown div.timer div.unit:first-child {
  margin-left: 0;
}
div.competition-countdown div.timer div.unit:last-child {
  margin-right: 0;
}
div.competition-countdown div.timer div.unit div.counter {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 40px;
  height: 40px;
  background-color: #ffffff;
  border-radius: 4px;
  font-size: 24px;
  line-height: 1;
  color: #C8102E;
}
div.competition-countdown div.timer div.unit div.label {
  margin-top: 4px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 12px;
  line-height: 1.16667;
  color: #757575;
}
@media all and (max-width: 576px) {
  div.competition-countdown div.wrapper div.item {
    flex-wrap: wrap;
    padding: 16px;
  }
  div.competition-countdown div.wrapper div.item div.text {
    text-align: center;
  }
  div.competition-countdown div.wrapper div.item div.timer {
    margin: 16px auto;
  }
}

/**
 * Message Enter Draw
 */
div.message.enter-draw span.closes,
div.message.enter-draw span.entries {
  display: block;
  margin-bottom: 0;
}
div.message.enter-draw span.entries {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  color: #15743C;
}

/**
 * Prize List
 */
div.prize-list div.wrapper {
  justify-content: center;
}
div.prize-list div.wrapper div.item {
  max-width: 880px;
}
div.prize-list h3 {
  text-align: center;
}
div.prize-list div.list {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: 32px;
}
div.prize-list div.list > div.item {
  flex: 0 1 16%;
  width: 140px;
  margin: 2%;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.16);
}
div.prize-list div.list > div.item img {
  display: block;
}
div.prize-list p {
  max-width: 420px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
@media all and (max-width: 576px) {
  div.prize-list div.card {
    padding: 24px;
    border-radius: 8px;
    background-color: white;
    box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  }
  div.prize-list div.card div.list {
    margin-bottom: 16px;
  }
  div.prize-list div.card div.list > div.item {
    box-shadow: none;
    flex: 0 1 29.333333333%;
  }
  div.prize-list div.card p {
    font-size: 14px;
    margin-bottom: 0;
  }
}

/**
 * Active Scans
 */
div.scan-count div.wrapper {
  justify-content: center;
}
div.scan-count div.wrapper div.item {
  margin: 0 auto;
  padding: 32px;
  max-width: 720px;
}
@media all and (max-width: 576px) {
  div.scan-count div.wrapper div.item {
    padding: 16px;
  }
}
div.scan-count h2 {
  text-align: center;
}
div.scan-count p {
  text-align: center;
}
div.scan-count div.actions {
  display: flex;
  justify-content: center;
}
div.scan-count div.actions .add-real-rewards-card {
  max-width: 240px;
}
div.scan-count div.number-of-scans {
  position: relative;
  display: flex;
  justify-content: center;
  margin-bottom: 18px;
}
div.scan-count div.number-of-scans span.figure {
  display: flex;
  align-items: center;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 56px;
  line-height: 64px;
}
div.scan-count div.number-of-scans span.figure::before {
  position: relative;
  top: 4px;
  margin-right: 16px;
  content: "\e956";
  font-family: "SuperValu Icons";
  font-size: 32px;
  line-height: 1;
}
div.scan-count div.number-of-scans a.info {
  margin-left: 24px;
  color: #333333;
}
div.scan-count div.number-of-scans a.info:hover {
  text-decoration: none;
}
div.scan-count div.number-of-scans + p {
  margin-bottom: 8px;
  font-size: 14px;
  color: #757575;
}
div.scan-count p.explainer {
  color: #C8102E;
}

/**
 * Status: Draw Entered
 */
div.status-draw-closed {
  max-width: 576px;
  margin-right: auto;
  margin-left: auto;
  padding: 24px 0;
  border-bottom: 1px solid #E6EAEB;
}
div.status-draw-closed div.text {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}
div.status-draw-closed div.text span[class^=icon-] {
  flex: 0 0 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
div.status-draw-closed div.text span[class^=icon-]::after {
  font-size: 24px;
}
div.status-draw-closed div.text p {
  margin-bottom: 0;
}
div.status-draw-closed div.action {
  display: flex;
  justify-content: center;
}

/**
 * Status: Draw Entered
 */
div.status-draw-entered {
  max-width: 576px;
  margin-right: auto;
  margin-left: auto;
  padding: 24px 0;
  border-bottom: 1px solid #E6EAEB;
}
div.status-draw-entered div.text {
  display: flex;
  align-items: center;
  margin-bottom: 24px;
}
div.status-draw-entered div.text span[class^=icon-] {
  flex: 0 0 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
div.status-draw-entered div.text span[class^=icon-]::after {
  font-size: 24px;
  color: #0CA74B;
}
div.status-draw-entered div.text p {
  margin-bottom: 0;
}
div.status-draw-entered div.text ~ p.small {
  margin: 0 0 20px 40px;
  font-size: 14px;
  line-height: 20px;
  color: #757575;
}

/**
 * Test of Skill
 */
div.test-of-skill div.wrapper {
  justify-content: center;
}
div.test-of-skill div.wrapper div.item {
  max-width: 576px;
}
div.test-of-skill h1.h4 {
  text-align: center;
}
div.test-of-skill p.question {
  margin-bottom: 0;
}
div.test-of-skill form div.row.terms {
  margin-bottom: 32px;
  padding-top: 32px;
  border-top: 1px solid #E6EAEB;
}
div.test-of-skill form div.row.closing-date p {
  margin: 0 0 20px 0;
  font-size: 14px;
  line-height: 20px;
  color: #757575;
}
div.test-of-skill form div.row.submit {
  justify-content: center;
}
@media all and (max-width: 576px) {
  div.test-of-skill div.wrapper div.item {
    flex-wrap: wrap;
    padding: 16px;
  }
  div.test-of-skill div.wrapper form div.row.terms {
    margin-bottom: 16px;
    padding-top: 16px;
  }
}

/**
 * Test of Skill Success
 */
div.test-of-skill-success div.wrapper {
  justify-content: center;
}
div.test-of-skill-success div.wrapper div.item {
  max-width: 576px;
}
div.test-of-skill-success h1.h4 {
  text-align: center;
}
div.test-of-skill-success img {
  display: block;
  margin: 0 auto 32px auto;
}

/**
 * Winners List
 */
div.winners-list a.button.tertiary {
  margin-top: 2rem;
  color: white;
}
div.winners-list a.button.tertiary span::after {
  color: white;
}
div.winners-list div.wrapper {
  justify-content: center;
}
div.winners-list div.item {
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 886px;
  overflow: hidden;
  background-color: #C8102E;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.winners-list div.item div.text {
  order: 1;
  flex: 0 0 52%;
  padding: 32px;
}
div.winners-list div.item div.text h3.h2 {
  max-width: 400px;
  margin-bottom: 24px;
  color: #ffffff;
}
div.winners-list div.item div.text p {
  margin-bottom: 0;
  color: #ffffff;
}
@media all and (max-width: 576px) {
  div.winners-list div.item div.text {
    order: 2;
    flex: 0 0 48%;
    padding: 16px;
  }
  div.winners-list div.item div.text h3.h2 {
    margin-bottom: 8px;
    font-size: 16px;
    line-height: 20px;
  }
  div.winners-list div.item div.text p.small {
    font-size: 12px;
    line-height: 18px;
  }
}
div.winners-list div.item div.image {
  order: 2;
  flex: 0 0 48%;
  height: 100%;
  margin-right: 0;
  margin-left: auto;
}
div.winners-list div.item div.image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
@media all and (max-width: 576px) {
  div.winners-list div.item div.image {
    order: 1;
    flex: 0 0 52%;
    max-height: 200px;
  }
}

div.winners-list-by-prize {
  display: flex;
  flex-wrap: wrap;
  max-width: 660px;
  margin-right: auto;
  margin-left: auto;
  width: 100%;
}
div.winners-list-by-prize .prize-group {
  flex: 1 0 100%;
  margin-bottom: 1rem;
}
div.winners-list-by-prize .prize-group h4 {
  margin-bottom: 1rem;
}
div.winners-list-by-prize .prize-group ul {
  list-style: none;
  margin: 0;
  padding: 0;
}
div.winners-list-by-prize .prize-group ul li {
  margin-bottom: 1rem;
  padding: 0;
}

div.page-action .wrapper .item {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding: 16px 0;
  border-bottom: 1px solid #f7f8f9;
}
div.page-action .wrapper .item a.back {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 14px;
}
div.page-action .wrapper .item a.back span[class^=icon-] {
  margin-left: 8px;
  margin-right: 8px;
}
div.page-action .wrapper .item a.back span[class^=icon-]:after {
  font-size: 12px;
}
div.page-action .wrapper .item a.back:hover {
  text-decoration: none;
}

.winners-content h1.h3,
.winners-content .text {
  margin-right: auto;
  margin-bottom: 2rem;
  margin-left: auto;
  max-width: 660px;
}
.winners-content .image {
  margin-right: auto;
  margin-left: auto;
  max-width: 660px;
}
.winners-content .image img {
  width: 100%;
}
.winners-content.show-all h1.h3,
.winners-content.show-all .text {
  max-width: 880px;
}
.winners-content.show-all .winners-list-by-prize {
  max-width: 880px;
}
.winners-content.show-all .winners-list-by-prize .prize-group {
  flex-basis: 50%;
}
@media (max-width: 768px) {
  .winners-content.show-all .winners-list-by-prize .prize-group {
    flex-basis: 100%;
  }
}
.winners-content.show-all .winners-list-by-prize .prize-group:last-child {
  flex-basis: 100%;
}
.winners-content.show-all .winners-list-by-prize .prize-group:last-child ul {
  columns: 2;
}
@media (max-width: 768px) {
  .winners-content.show-all .winners-list-by-prize .prize-group:last-child ul {
    columns: 1;
  }
}

.winners-search h3.h2 {
  text-align: center;
}
.winners-search form {
  margin: 0 auto;
  max-width: 660px;
}
.winners-search form .row {
  max-width: 100%;
}
.winners-search form .row.search {
  position: relative;
}
.winners-search form .row.search .field.text {
  max-width: 100%;
  margin-right: 0;
}
.winners-search form .row.search .field.text input {
  padding-right: 44px;
}
.winners-search form .row.search .icon-search {
  position: absolute;
  top: 0;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  pointer-events: none;
}
.winners-search form .row.action {
  justify-content: flex-end;
}

/* Components: Real Rewards */
/**
 * Real Rewards App Banner
 */
div.app-banner-real-rewards div.item {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
div.app-banner-real-rewards div.item p {
  max-width: 640px;
  margin: 0 auto 32px auto;
  text-align: center;
}
div.app-banner-real-rewards div.item div.actions {
  margin: 0 auto;
}

/**
 * Balance
 */
div.balance {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
div.balance div.status {
  margin-right: auto;
  margin-left: auto;
}
div.balance div.wallet {
  display: flex;
  align-items: center;
  max-width: 288px;
  margin: 16px auto;
  text-align: left;
}
div.balance div.wallet span.points {
  flex: 0 0 144px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 24px;
  color: #C8102E;
  text-align: right;
}
div.balance div.wallet span.label {
  margin-left: 16px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
div.balance div.wallet.real-rewards span.points {
  font-size: 56px;
}
div.balance div.actions {
  margin: 32px auto 0 auto;
}
div.balance div.message {
  margin: 32px auto;
}

/**
 * Card Onboarding - Date of Birth
 */
main.card-onboarding {
  position: relative;
}
main.card-onboarding a.back,
main.card-onboarding a.close {
  position: absolute;
  top: 48px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  color: #333333;
}
main.card-onboarding a.back:hover,
main.card-onboarding a.close:hover {
  text-decoration: none;
  color: #C8102E;
}
@media all and (max-width: 992px) {
  main.card-onboarding a.back,
main.card-onboarding a.close {
    top: 16px;
    width: 18px;
    height: 18px;
  }
}
main.card-onboarding a.back:after,
main.card-onboarding a.close:after {
  font-family: "SuperValu Icons";
  font-size: 24px;
  line-height: 1;
}
@media all and (max-width: 992px) {
  main.card-onboarding a.back:after,
main.card-onboarding a.close:after {
    font-size: 18px;
  }
}
main.card-onboarding a.back > span,
main.card-onboarding a.close > span {
  display: none;
}
main.card-onboarding a.back {
  left: 32px;
}
@media all and (max-width: 992px) {
  main.card-onboarding a.back {
    left: 16px;
  }
}
main.card-onboarding a.back:after {
  content: "\e901";
}
main.card-onboarding a.close {
  right: 32px;
}
@media all and (max-width: 992px) {
  main.card-onboarding a.close {
    right: 16px;
  }
}
main.card-onboarding a.close:after {
  content: "\e90a";
}
main.card-onboarding h1 {
  text-align: center;
}
main.card-onboarding div.message.session-expired p {
  text-align: left;
}
main.card-onboarding div.progress {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 24px auto;
}
main.card-onboarding div.progress div[class^=step-] {
  display: block;
  width: 8px;
  height: 8px;
  margin: 0 4px;
  border-radius: 50%;
  background-color: transparent;
  box-shadow: inset 0 0 0 1px #757575;
}
main.card-onboarding div.progress div[class^=step-]:first-child {
  margin-left: 0;
}
main.card-onboarding div.progress div[class^=step-]:last-child {
  margin-right: 0;
}
main.card-onboarding div.progress div[class^=step-].active {
  background-color: #C8102E;
  box-shadow: inset 0 0 0 1px transparent;
}
main.card-onboarding p {
  text-align: center;
}
main.card-onboarding form {
  margin-right: auto;
  margin-left: auto;
}
main.card-onboarding form div.row.submit {
  justify-content: center;
}
main.card-onboarding div.container div.wrapper {
  margin-right: auto;
  margin-left: auto;
  max-width: 432px;
}
main.card-onboarding div.container.add-card div.existing-card {
  margin-bottom: 32px;
  border-bottom: 1px solid #E6EAEB;
}
main.card-onboarding div.container.add-card div.existing-card > p {
  display: inline-flex;
  align-items: center;
  text-align: left;
}
main.card-onboarding div.container.add-card div.existing-card > p:before {
  content: "\e914";
  display: inline-block;
  margin-right: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
  color: #0CA74B;
}
main.card-onboarding div.container.add-card div.existing-card form div.row.submit {
  justify-content: center;
}
main.card-onboarding div.container.add-card div.new-card {
  margin-bottom: 32px;
  padding-bottom: 24px;
  border-bottom: 1px solid #E6EAEB;
}
main.card-onboarding div.container.add-card div.new-card > p {
  display: inline-flex;
  align-items: center;
  text-align: left;
}
main.card-onboarding div.container.add-card div.new-card > p:before {
  content: "\e916";
  display: inline-block;
  margin-right: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
}
main.card-onboarding div.container.add-card div.new-card a.button {
  display: flex;
  margin-right: auto;
  margin-left: auto;
}
main.card-onboarding div.container.add-card a.button.skip {
  display: flex;
  margin-right: auto;
  margin-left: auto;
}
main.card-onboarding div.container.store-select div.item {
  position: relative;
}
main.card-onboarding div.container.store-select div.field.store-search input {
  height: 44px;
  padding-right: 60px;
}
main.card-onboarding div.container.store-select div.field.store-search span.icon-search {
  position: absolute;
  z-index: 9999;
  right: 0;
  bottom: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 44px;
  height: 44px;
  border-radius: 0 4px 4px 0;
  background-color: #0CA74B;
  color: white;
  pointer-events: none;
}
main.card-onboarding div.container.store-select div.stores-search-results {
  position: absolute;
  bottom: 16px;
  width: 100%;
  transform: translateY(100%);
  max-height: 243px;
  overflow-y: scroll;
}
main.card-onboarding div.container.store-select div.stores-search-results div.store {
  display: flex;
  align-items: center;
  height: 53px;
  margin-bottom: 1px;
  padding: 8px 16px;
  background-color: #F7F8F9;
  cursor: pointer;
  font-size: 14px;
  line-height: 1.2;
}
main.card-onboarding div.container.store-select div.stores-search-results div.store:hover {
  background-color: #0CA74B;
  color: #ffffff;
}
main.card-onboarding div.container.store-select div.selected-store h4 {
  display: inline-flex;
  align-items: center;
  margin-bottom: 0;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 1.2;
  color: #333333;
  text-align: left;
}
main.card-onboarding div.container.store-select div.selected-store h4:before {
  content: "\e914";
  display: inline-block;
  margin-right: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
  color: #0CA74B;
}
main.card-onboarding div.container.store-select div.selected-store p {
  margin-bottom: 0;
  margin-left: 40px;
  font-size: 14px;
  text-align: left;
}
main.card-onboarding div.container.store-select div.selected-store div.actions {
  margin-top: 32px;
  text-align: center;
}
main.card-onboarding div.container.card-added {
  text-align: center;
}

/**
 * History
 */
div.history div.wallets {
  position: relative;
  margin-bottom: 24px;
  padding: 16px 24px;
  min-height: 122px;
  background-color: #F7F8F9;
}
div.history div.wallets div {
  margin-bottom: 8px;
}
div.history div.wallets div:last-child {
  margin-bottom: 0;
}
div.history div.wallets div.card-number span.label {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-weight: normal;
}
div.history div.wallets a.button {
  position: absolute;
  top: 16px;
  right: 24px;
  margin-bottom: 0;
}
@media all and (max-width: 768px) {
  div.history div.wallets a.button {
    position: relative;
    top: auto;
    right: auto;
  }
}
div.history div.history-body div.date {
  margin-bottom: 24px;
}
div.history div.history-body div.date h4 {
  margin-bottom: 8px;
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 21.6px;
  color: #757575;
}
div.history div.history-body div.date div.transactions {
  padding-top: 8px;
  border-radius: 8px;
  background-color: #F7F8F9;
}
@media all and (max-width: 768px) {
  div.history div.history-body div.date div.transactions {
    padding-top: 8px;
  }
}
div.history div.history-body div.date div.transactions div.line {
  padding: 16px;
  border-bottom: 2px solid #ffffff;
}
@media all and (max-width: 768px) {
  div.history div.history-body div.date div.transactions div.line {
    padding: 8px;
  }
}
div.history div.history-body div.date div.transactions div.line img {
  display: block;
  width: 48px;
  height: auto;
  margin-right: 16px;
  float: left;
  filter: grayscale(1);
}
div.history div.history-body div.date div.transactions div.line h5 {
  max-width: 768px;
  margin-bottom: 0;
  font-size: 16px;
  line-height: 20px;
  color: #333333;
}
div.history div.history-body div.date div.transactions div.line span.voucher-code {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 12px;
  line-height: 14px;
}
div.history div.history-body div.date div.transactions div.line span.voucher-code > span {
  margin: 0 0.15em;
}
div.history div.history-body div.date div.transactions div.line span.voucher-code > span:fist-child {
  margin-left: 0;
}
div.history div.history-body div.date div.transactions div.line span.voucher-code > span:last-child {
  margin-right: 0;
}
div.history div.history-body div.actions {
  display: flex;
  justify-content: center;
}

/**
 * Member Offers
 */
div.container.member-offers {
  padding-top: 60px;
  padding-bottom: 64px;
  background-color: #F7F8F9;
}
div.container.member-offers div.heading {
  max-width: 640px;
  margin: 0 auto;
  text-align: center;
}
div.container.member-offers div.heading p {
  margin-right: auto;
  margin-left: auto;
}

/**
 * Offers
 */
div.container.offers-heading {
  text-align: center;
}
div.container.offers-heading p {
  max-width: 640px;
  margin-right: auto;
  margin-left: auto;
}
div.container.offers-heading div.status {
  margin-right: auto;
  margin-left: auto;
  background-color: transparent;
}

div.container.offers-list {
  margin-bottom: 32px;
  padding-bottom: 64px;
  border-bottom: 1px solid #E6EAEB;
}
div.container.offers-list div.wrapper {
  flex-wrap: wrap;
  max-width: 928px;
  margin: 0 auto;
}
div.container.offers-list div.wrapper div.item {
  flex: 0 1 calc(25% - 32px);
  position: relative;
  display: flex;
  flex-direction: column;
  border-radius: 8px;
  overflow: hidden;
  margin: 16px;
  padding: 16px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.offers-list div.wrapper div.item img {
  display: block;
  width: 160px;
  height: 160px;
  object-fit: cover;
  margin: 0 auto 16px auto;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.offers-list div.wrapper div.item div.text {
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.offers-list div.wrapper div.item div.text h4 {
  min-height: 72px;
  font-size: 16px;
  color: #333333;
}
div.container.offers-list div.wrapper div.item div.text p {
  font-size: 12px;
  line-height: 18px;
  color: #757575;
}
div.container.offers-list div.wrapper div.item a.button {
  margin: auto auto 0 auto;
}
div.container.offers-list div.wrapper div.item span.code {
  margin-top: auto;
  margin-bottom: 0;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
}
div.container.offers-list div.wrapper div.item span.code > span {
  margin: 0 0.15em;
}
div.container.offers-list div.wrapper div.item span.code > span:fist-child {
  margin-left: 0;
}
div.container.offers-list div.wrapper div.item span.code > span:last-child {
  margin-right: 0;
}
div.container.offers-list div.wrapper div.item span.status-used {
  display: none;
  position: absolute;
  top: 20px;
  right: 26px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 1;
  color: #0CA74B;
}
div.container.offers-list div.wrapper div.item span.status-used span.icon-check {
  margin-right: 8px;
}
div.container.offers-list div.wrapper div.item.used img {
  opacity: 0.2;
  filter: grayscale(100%);
}
div.container.offers-list div.wrapper div.item.used div.text, div.container.offers-list div.wrapper div.item.used span.code {
  opacity: 0.3;
  filter: grayscale(100%);
}
div.container.offers-list div.wrapper div.item.used span.status-used {
  display: block;
}
div.container.offers-list div.wrapper div.item span.status-expired {
  display: none;
  position: absolute;
  top: 20px;
  right: 26px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 1;
  color: #808080;
}
div.container.offers-list div.wrapper div.item span.status-expired span.icon-calendar {
  margin-right: 8px;
}
div.container.offers-list div.wrapper div.item.expired img {
  opacity: 0.2;
  filter: grayscale(100%);
}
div.container.offers-list div.wrapper div.item.expired div.text, div.container.offers-list div.wrapper div.item.expired span.code {
  opacity: 0.3;
  filter: grayscale(100%);
}
div.container.offers-list div.wrapper div.item.expired span.status-expired {
  display: block;
}
div.container.offers-list div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
div.container.offers-list div.wrapper div.item.used.expired span.status-used {
  top: 42px;
}
@media all and (max-width: 992px) {
  div.container.offers-list div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
    margin: 0 -16px;
  }
  div.container.offers-list div.wrapper div.item {
    flex: 0 1 calc(33.3333333333% - 32px);
    margin: 8px;
  }
}
@media all and (max-width: 768px) {
  div.container.offers-list div.wrapper div.item {
    flex: 0 1 calc(50% - 12px);
    margin: 4px;
  }
  div.container.offers-list div.wrapper div.item img {
    width: 120px;
    height: 120px;
  }
  div.container.offers-list div.wrapper div.item a.button {
    padding-right: 9px;
    padding-left: 9px;
  }
}
div.container.offers-list.money-backs-group {
  padding-right: 0;
  padding-left: 0;
}
div.container.offers-list.money-backs-group div.validity {
  flex-basis: calc(100% - 64px);
}
@media all and (max-width: 576px) {
  div.container.offers-list.money-backs-group div.validity {
    flex-basis: calc(100% - 32px);
  }
}
div.container.offers-list.money-backs-group div.item.money-back {
  cursor: pointer;
}
div.container.offers-list.money-backs-group div.item.money-back.active {
  box-shadow: 0px 0px 12px 0px rgba(0, 0, 0, 0.16);
}
div.container.offers-list.money-backs-group div.item.money-back.active img,
div.container.offers-list.money-backs-group div.item.money-back.active div.text {
  opacity: 0.3;
}
@media all and (max-width: 576px) {
  div.container.offers-list.money-backs-group div.item.money-back {
    flex: 0 1 calc(50% - 32px);
    margin: 8px;
  }
}
div.container.offers-list a.show-more {
  flex: 0 1 886px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  margin: 48px auto 0 auto;
  color: #333333;
}
div.container.offers-list a.show-more span[class^=icon-]::after {
  font-size: 24px;
}
div.container.offers-list a.show-more:hover {
  text-decoration: none;
}

/**
 * Partner Card
 */
div.container.partner-card div.wrapper {
  justify-content: center;
}
div.container.partner-card div.wrapper div.item {
  display: flex;
  width: 100%;
  max-width: 886px;
  overflow: hidden;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.partner-card div.wrapper div.item div.image {
  flex: 0 0 386px;
}
div.container.partner-card div.wrapper div.item div.image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
div.container.partner-card div.wrapper div.item div.text {
  padding: 32px 32px 32px 64px;
}
div.container.partner-card div.wrapper div.item div.text h3.h4 {
  margin-bottom: 24px;
}
div.container.partner-card div.wrapper div.item div.text p {
  display: -webkit-box;
  min-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
@media all and (max-width: 992px) {
  div.container.partner-card div.wrapper div.item div.text p {
    -webkit-line-clamp: 3;
  }
}
@media all and (max-width: 768px) {
  div.container.partner-card div.wrapper div.item div.text p {
    -webkit-line-clamp: 4;
  }
}
div.container.partner-card div.wrapper div.item div.text div.actions {
  margin-top: 32px;
  display: flex;
  flex-wrap: wrap;
}
div.container.partner-card div.wrapper div.item div.text div.actions a.button:first-child {
  margin-left: 0;
}
@media all and (max-width: 768px) {
  div.container.partner-card div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.partner-card div.wrapper div.item {
    flex: 0 1 344px;
    flex-wrap: wrap;
  }
  div.container.partner-card div.wrapper div.item div.image {
    flex-shrink: 1;
  }
  div.container.partner-card div.wrapper div.item div.text {
    padding: 16px;
  }
  div.container.partner-card div.wrapper div.item div.text h3.h4 {
    margin-bottom: 16px;
  }
}

/**
 * Partner Hero
 */
div.partner-hero .item {
  position: relative;
}
div.partner-hero .item div.image img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (min-width: 992px) {
  div.partner-hero .item div.image img.desktop {
    display: block;
  }
  div.partner-hero .item div.image img.mobile {
    display: none;
  }
}
@media all and (max-width: 992px) {
  div.partner-hero .item div.image img.desktop {
    display: none;
  }
  div.partner-hero .item div.image img.mobile {
    display: block;
  }
}
div.partner-hero .item div.text {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  text-align: center;
  background: transparent url("../images/jw2VmzWg34Ia.svg") no-repeat left center;
  background-size: auto 550px;
}
div.partner-hero .item div.text > div.wrapper {
  position: relative;
  z-index: 2;
  flex: 0 1 400px;
  padding: 32px;
}
div.partner-hero .item div.text h1 {
  margin-bottom: 16px;
  font-size: 32px;
  line-height: 1.2;
  color: #ffffff;
}
div.partner-hero .item div.text p {
  margin-bottom: 32px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  color: #ffffff;
}
div.partner-hero .item div.text a.button.tertiary {
  color: #ffffff;
}
div.partner-hero .item div.text a.button.tertiary:hover {
  color: #ffffff;
}
div.partner-hero .item div.text img.real-rewards-logo {
  position: absolute;
  bottom: 32px;
  left: 32px;
  display: block;
  width: 88px;
  height: auto;
}
div.partner-hero .item div.text div.partner-logo {
  position: absolute;
  top: 32px;
  right: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 200px;
  height: 80px;
  border-radius: 8px 0px 0px 8px;
  overflow: hidden;
}
div.partner-hero .item div.text div.partner-logo > img {
  object-fit: cover;
}
@media all and (max-width: 992px) {
  div.partner-hero > div.wrapper {
    justify-content: center;
  }
  div.partner-hero > div.wrapper div.item {
    margin: 0 0 32px 0;
    max-width: 375px;
  }
  div.partner-hero > div.wrapper div.item div.text {
    justify-content: center;
    align-items: flex-end;
    background: transparent url("../images/7B9kQd0oMa6B.svg") no-repeat center bottom;
    background-size: contain;
  }
  div.partner-hero > div.wrapper div.item div.text > div.wrapper {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    min-height: 352px;
    padding: 40% 16px 72px 16px;
  }
  div.partner-hero > div.wrapper div.item div.text h1 {
    font-size: 24px;
  }
  div.partner-hero > div.wrapper div.item div.text p {
    margin-bottom: 0;
    font-size: 16px;
  }
  div.partner-hero > div.wrapper div.item div.text a.button.tertiary {
    position: absolute;
    right: 16px;
    bottom: 16px;
  }
  div.partner-hero > div.wrapper div.item div.text img.real-rewards-logo {
    bottom: 16px;
    left: 16px;
  }
  div.partner-hero > div.wrapper div.item div.text div.partner-logo {
    top: 16px;
  }
}

/**
 * Partner List Head
 */
div.partner-list-head div.item {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
div.partner-list-head div.item p {
  max-width: 416px;
  margin: 0 auto 32px auto;
  text-align: center;
}

/**
 * Partner Offer
 */
div.partner-offer {
  position: relative;
  max-width: 384px;
  padding: 32px 24px 0 24px;
  border: 1px solid #E6EAEB;
}
@media all and (max-width: 768px) {
  div.partner-offer {
    padding: 16px;
  }
}
div.partner-offer div.text {
  margin-bottom: 16px;
}
div.partner-offer div.text h4.h5,
div.partner-offer div.text p {
  color: #757575;
}
div.partner-offer div.text span.valid {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  line-height: 20px;
  color: #757575;
}
div.partner-offer div[class^=step-] {
  height: auto;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.6s ease-out;
}
div.partner-offer div[class^=step-] span.code {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
}
div.partner-offer div[class^=step-] span.code > span {
  margin: 0 0.15em;
}
div.partner-offer div[class^=step-] span.code > span:fist-child {
  margin-left: 0;
}
div.partner-offer div[class^=step-] span.code > span:last-child {
  margin-right: 0;
}
div.partner-offer div[class^=step-] > * {
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.6s ease-out;
  transition-delay: 0.6s;
}
div.partner-offer div[class^=step-].active {
  max-height: 300px;
}
div.partner-offer div[class^=step-].active > * {
  opacity: 1;
  pointer-events: all;
  transition-delay: 0s;
}
div.partner-offer div[class^=step-] div.actions {
  display: flex;
}
div.partner-offer div[class^=step-] div.actions a.button:first-child {
  margin-left: 0;
}
div.partner-offer div[class^=step-] div.actions a.button:last-child {
  margin-right: 0;
}
div.partner-offer div.step-2 div.actions a.button {
  min-width: 120px;
  margin-right: 8px;
  margin-left: 8px;
}

/**
 * Partner Vouchers
 */
div.container.partner-vouchers {
  text-align: center;
}
div.container.partner-vouchers div.status {
  margin-right: auto;
  margin-left: auto;
}

/**
 * Real Rewards Points Info
 */
div.points-info div.item {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
div.points-info div.item p {
  max-width: 640px;
  margin: 0 auto 32px auto;
  text-align: center;
}
div.points-info div.item img {
  display: inline-block;
  width: 100%;
  height: auto;
  max-width: 480px;
}

/**
 * Real Rewards Hero
 */
div.real-rewards-hero .item {
  position: relative;
}
div.real-rewards-hero .item div.image img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (min-width: 992px) {
  div.real-rewards-hero .item div.image img.desktop {
    display: block;
  }
  div.real-rewards-hero .item div.image img.mobile {
    display: none;
  }
}
@media all and (max-width: 992px) {
  div.real-rewards-hero .item div.image img.desktop {
    display: none;
  }
  div.real-rewards-hero .item div.image img.mobile {
    display: block;
  }
}
div.real-rewards-hero .item div.text {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
  height: 100%;
  text-align: center;
  background: transparent url("../images/Qy49Ji0v5a1S.svg") no-repeat right center;
  background-size: auto 550px;
}
div.real-rewards-hero .item div.text > div.wrapper {
  position: relative;
  z-index: 2;
  flex: 0 1 452px;
  padding: 32px;
}
div.real-rewards-hero .item div.text h1 {
  font-size: 32px;
  line-height: 1.2;
  color: #ffffff;
}
div.real-rewards-hero .item div.text p {
  margin-bottom: 32px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  color: #ffffff;
}
div.real-rewards-hero .item div.text div.actions {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media all and (max-width: 992px) {
  div.real-rewards-hero > div.wrapper {
    justify-content: center;
  }
  div.real-rewards-hero > div.wrapper div.item {
    margin: 0 0 32px 0;
    max-width: 576px;
  }
  div.real-rewards-hero > div.wrapper div.item div.text {
    justify-content: center;
    align-items: flex-end;
    background: transparent url("../images/MgERYHceyvCM.svg") no-repeat center bottom;
    background-size: contain;
  }
  div.real-rewards-hero > div.wrapper div.item div.text > div.wrapper {
    flex-basis: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    height: 40%;
    padding: 16px;
  }
  div.real-rewards-hero > div.wrapper div.item div.text h1 {
    font-size: 24px;
  }
  div.real-rewards-hero > div.wrapper div.item div.text p {
    font-size: 16px;
  }
  div.real-rewards-hero > div.wrapper div.item div.text div.actions {
    flex-wrap: wrap;
    flex-direction: row;
  }
}

/**
 * Real Reards Subnav
 */
div.real-rewards-subnav {
  background-color: #ffffff;
  box-shadow: 0px 4px 8px 0px rgba(0, 0, 0, 0.04);
}
div.real-rewards-subnav > div.wrapper {
  max-width: 1440px;
  margin: 0 auto;
}
div.real-rewards-subnav nav.sub ul {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 0;
}
div.real-rewards-subnav nav.sub ul li {
  list-style: none;
  margin: 0;
  padding: 0;
}
div.real-rewards-subnav nav.sub ul li a {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 56px;
  margin: 0 32px;
  color: #333333;
  text-decoration: none;
  text-align: center;
}
div.real-rewards-subnav nav.sub ul li a.active::after, div.real-rewards-subnav nav.sub ul li a.open::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 4px;
  border-radius: 2px;
  background-color: #C8102E;
}
@media all and (max-width: 992px) {
  div.real-rewards-subnav nav.sub ul li {
    flex: 1 1 25%;
    display: flex;
    justify-content: center;
    border-right: 1px solid #E6EAEB;
    text-align: center;
  }
  div.real-rewards-subnav nav.sub ul li:last-child {
    border-right: 0;
  }
  div.real-rewards-subnav nav.sub ul li a {
    flex-direction: column;
    justify-content: center;
    margin: 0 9px;
    font-size: 12px;
  }
  div.real-rewards-subnav nav.sub ul li a span {
    white-space: nowrap;
  }
  div.real-rewards-subnav nav.sub ul li a.active, div.real-rewards-subnav nav.sub ul li a.open {
    color: #C8102E;
  }
  div.real-rewards-subnav nav.sub ul li a.active::after, div.real-rewards-subnav nav.sub ul li a.open::after {
    display: none;
  }
  div.real-rewards-subnav nav.sub ul li a::before {
    content: "";
    display: block;
    font-family: "SuperValu Icons";
    font-size: 24px;
    line-height: 1;
  }
  div.real-rewards-subnav nav.sub ul li.real-rewards a::before {
    content: "\e968";
  }
  div.real-rewards-subnav nav.sub ul li.my-vouchers a::before {
    content: "\e96c";
  }
  div.real-rewards-subnav nav.sub ul li.scan-to-win a::before {
    content: "\e96b";
  }
  div.real-rewards-subnav nav.sub ul li.deals a::before {
    content: "\e95b";
  }
}

/**
 * Receipts
 */
@media all and (max-width: 768px) {
  body.receipt-active {
    overflow: hidden;
  }
}
div.receipts {
  position: relative;
}
div.receipts div.item {
  display: flex;
  align-items: flex-start;
}
div.receipts div.receipt-list-wrapper,
div.receipts div.receipt-detail {
  margin-bottom: 32px;
  padding: 24px 32px;
  border: none;
  border-radius: 16px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 768px) {
  div.receipts div.receipt-list-wrapper,
div.receipts div.receipt-detail {
    padding: 24px 12px;
    box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  }
}
div.receipts div.receipt-list-wrapper {
  flex: 0 1 768px;
}
@media all and (max-width: 768px) {
  div.receipts div.receipt-list-wrapper {
    position: relative;
    z-index: 2;
  }
}
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item {
  position: relative;
  display: flex;
  flex-direction: column;
  margin-top: 16px;
  padding: 16px 0;
  border-bottom: 1px solid #E6EAEB;
  color: #333333;
  text-decoration: none;
}
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item:first-child {
  margin-top: 0;
  padding-top: 32px;
  border-top: 1px solid #E6EAEB;
}
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item div.date {
  margin-bottom: 4px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item div.total {
  font-size: 14px;
  color: #757575;
}
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item span.icon-chevron-right {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
}
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item.active div.date,
div.receipts div.receipt-list-wrapper div.receipt-list a.receipt-item.active span.icon-chevron-right::after {
  color: #C8102E;
}
div.receipts div.receipt-list-wrapper div.receipt-list div.actions {
  display: flex;
  justify-content: center;
  margin-top: 32px;
}
div.receipts div.receipt-detail {
  position: sticky;
  top: 32px;
  flex: 0 0 375px;
  margin-left: 32px;
  display: none;
}
div.receipts div.receipt-detail.active {
  display: block;
}
@media all and (max-width: 768px) {
  div.receipts div.receipt-detail {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1;
    width: calc(100% - 32px);
    height: calc(100% - 32px);
    overflow-y: hidden;
    max-width: 768px;
    margin: 16px;
  }
  div.receipts div.receipt-detail.active {
    z-index: 3;
    box-shadow: 0 0 50px 100vh rgba(0, 0, 0, 0.3);
  }
  div.receipts div.receipt-detail .receipt-content {
    overflow-y: auto;
    height: calc(100% - 64px);
  }
}
div.receipts div.receipt-detail .no-receipt-selected {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 50%;
  text-align: center;
}
div.receipts div.receipt-detail div.receipt-heading {
  position: relative;
}
div.receipts div.receipt-detail div.receipt-heading h5 {
  text-align: center;
}
div.receipts div.receipt-detail div.receipt-heading a.close {
  display: none;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 50%;
  left: 0;
  translate: transformY(-50%);
}
@media all and (max-width: 768px) {
  div.receipts div.receipt-detail div.receipt-heading a.close {
    display: flex;
  }
}
div.receipts div.receipt-detail div.receipt-heading a.close:hover {
  text-decoration: none;
}
div.receipts div.receipt-detail .receipt-content {
  font-family: monospace;
}
div.receipts div.receipt-detail .receipt-content strong, div.receipts div.receipt-detail .receipt-content b {
  font-family: monospace;
  font-weight: bold;
}
div.receipts div.receipt-detail .receipt-content .receipt > .wrapper {
  margin: 0;
}

/**
 * Rewards Summary
 */
div.container.rewards-summary > div.wrapper > div.item {
  display: flex;
  border-bottom: 1px solid #E6EAEB;
}
div.container.rewards-summary > div.wrapper > div.item div[class^=col-] {
  flex: 1 1 50%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
div.container.rewards-summary > div.wrapper > div.item div[class^=col-][class$="2"] {
  align-items: flex-end;
}
@media all and (max-width: 576px) {
  div.container.rewards-summary > div.wrapper > div.item {
    flex-wrap: wrap;
  }
  div.container.rewards-summary > div.wrapper > div.item div[class^=col-] {
    flex: 1 0 100%;
    align-items: center;
  }
  div.container.rewards-summary > div.wrapper > div.item div[class^=col-][class$="1"] {
    margin-bottom: 16px;
  }
  div.container.rewards-summary > div.wrapper > div.item div[class^=col-][class$="2"] {
    align-items: center;
  }
}
div.container.rewards-summary h3 {
  margin-bottom: 8px;
}
div.container.rewards-summary span.card {
  display: inline-flex;
  align-items: flex-start;
  margin-bottom: 16px;
}
div.container.rewards-summary span.card span[class^=icon-] {
  margin-right: 16px;
}
div.container.rewards-summary span.card span[class^=icon-]::after {
  font-size: 24px;
}
div.container.rewards-summary.no-card span.card {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
div.container.rewards-summary a.button.add-a-real-rewards-card {
  max-width: 240px;
}
div.container.rewards-summary div.wallets {
  margin-bottom: 16px;
}
div.container.rewards-summary div.wallets div.wallet {
  display: flex;
  align-items: center;
  margin-bottom: 8px;
}
div.container.rewards-summary div.wallets div.wallet:last-child {
  margin-bottom: 0;
}
div.container.rewards-summary div.wallets div.wallet span[class^=icon-]::after {
  margin-right: 8px;
  font-size: 24px;
  color: #C8102E;
}
div.container.rewards-summary div.wallets div.wallet span.balance {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
  color: #C8102E;
}
div.container.rewards-summary div.wallets div.wallet span.target {
  font-size: 16px;
  line-height: 24px;
}
div.container.rewards-summary div.wallets div.wallet span.label {
  margin-left: 8px;
  font-size: 12px;
  line-height: 18px;
}
div.container.rewards-summary.no-card div.col-2 {
  justify-content: flex-end;
}
div.container.rewards-summary.card-and-wallets span.card {
  margin-bottom: auto;
}
@media all and (max-width: 576px) {
  div.container.rewards-summary.card-and-wallets span.card {
    margin-bottom: 16px;
  }
}

/**
 * Shopping Vouchers
 */
div.container.shopping-vouchers-header {
  text-align: center;
}
div.container.shopping-vouchers-header div.status {
  margin-right: auto;
  margin-left: auto;
  background-color: transparent;
}

div.container.shopping-vouchers-list {
  margin-bottom: 32px;
  padding-bottom: 64px;
  border-bottom: 1px solid #E6EAEB;
}
div.container.shopping-vouchers-list > div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.shopping-vouchers-list div.item {
  flex: 0 1 886px;
  position: relative;
  display: flex;
  overflow: hidden;
  border-radius: 8px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.shopping-vouchers-list div.item div.image {
  flex: 1 0 220px;
  min-height: 220px;
}
div.container.shopping-vouchers-list div.item div.image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
div.container.shopping-vouchers-list div.item div.text {
  width: 100%;
  padding: 24px;
}
div.container.shopping-vouchers-list div.item div.text h4 {
  margin-bottom: 16px;
}
div.container.shopping-vouchers-list div.item div.text p {
  min-height: 60px;
}
div.container.shopping-vouchers-list div.item div.text a.button {
  margin: 0;
}
div.container.shopping-vouchers-list div.item div.text h5.error {
  margin: 0;
}
div.container.shopping-vouchers-list div.item div.text span.code {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
}
div.container.shopping-vouchers-list div.item div.text span.code > span {
  margin: 0 0.15em;
}
div.container.shopping-vouchers-list div.item div.text span.code > span:fist-child {
  margin-left: 0;
}
div.container.shopping-vouchers-list div.item div.text span.code > span:last-child {
  margin-right: 0;
}
div.container.shopping-vouchers-list div.item span.status-used {
  display: none;
  position: absolute;
  bottom: 32px;
  right: 32px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 1;
  color: #0CA74B;
}
@media all and (max-width: 768px) {
  div.container.shopping-vouchers-list div.item span.status-used {
    bottom: 16px;
    right: 16px;
  }
}
div.container.shopping-vouchers-list div.item span.status-used > span[class^=icon-] {
  margin-right: 16px;
}
div.container.shopping-vouchers-list div.item.used div.image,
div.container.shopping-vouchers-list div.item.used div.text {
  opacity: 0.3;
  filter: grayscale(100%);
}
div.container.shopping-vouchers-list div.item.used span.status-used {
  display: block;
}
div.container.shopping-vouchers-list div.item span.status-expired {
  display: none;
  position: absolute;
  bottom: 32px;
  right: 32px;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  text-transform: uppercase;
  font-size: 18px;
  line-height: 1;
  color: #808080;
}
@media all and (max-width: 768px) {
  div.container.shopping-vouchers-list div.item span.status-expired {
    bottom: 16px;
    right: 16px;
  }
}
div.container.shopping-vouchers-list div.item span.status-expired > span[class^=icon-] {
  margin-right: 16px;
}
div.container.shopping-vouchers-list div.item.expired div.image,
div.container.shopping-vouchers-list div.item.expired div.text {
  opacity: 0.3;
  filter: grayscale(100%);
}
div.container.shopping-vouchers-list div.item.expired span.status-expired {
  display: block;
}
div.container.shopping-vouchers-list div.item.expired.used span.status-used {
  right: 170px;
}
div.container.shopping-vouchers-list a.show-more {
  flex: 0 1 886px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 48px;
  height: 48px;
  margin: 48px auto 0 auto;
  color: #333333;
}
div.container.shopping-vouchers-list a.show-more span[class^=icon-]::after {
  font-size: 24px;
}
div.container.shopping-vouchers-list a.show-more:hover {
  text-decoration: none;
}
@media all and (max-width: 768px) {
  div.container.shopping-vouchers-list div.item {
    flex: 0 1 320px;
    flex-wrap: wrap;
  }
  div.container.shopping-vouchers-list div.item div.image {
    flex: 0 0 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 16px 16px 0 16px;
    min-height: auto;
  }
  div.container.shopping-vouchers-list div.item div.image img {
    width: 120px;
    height: 120px;
    border-radius: 4px;
  }
  div.container.shopping-vouchers-list div.item div.text {
    padding: 16px;
  }
  div.container.shopping-vouchers-list div.item div.text h3.h4 {
    margin-bottom: 16px;
  }
}

/**
 * Statements
 */
div.statements div.status {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
div.statements h2 {
  text-align: center;
}
div.statements div.wallets {
  position: relative;
  margin-bottom: 8px;
  padding: 16px 24px;
  min-height: 122px;
  background-color: #F7F8F9;
}
div.statements div.wallets div.wallet {
  margin-bottom: 6px;
}
div.statements div.wallets div.wallet.real-rewards {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
}
div.statements div.wallets div.card-number {
  position: absolute;
  top: 16px;
  right: 24px;
}
@media all and (max-width: 768px) {
  div.statements div.wallets {
    margin-bottom: 32px;
  }
  div.statements div.wallets div.card-number {
    position: relative;
    top: 0;
    right: 0;
    margin-bottom: 12px;
  }
}
div.statements div.wallets div.action {
  margin-top: 24px;
}
div.statements div.statement-body div.line {
  display: flex;
  width: 100%;
  min-height: 56px;
  margin-bottom: 1px;
  padding: 16px 24px;
  background-color: #F7F8F9;
}
div.statements div.statement-body div.line.statement-head {
  align-items: center;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 18px;
  line-height: 24px;
}
div.statements div.statement-body div.line.statement-head > div.date {
  color: #333333;
}
div.statements div.statement-body div.line > div {
  width: 100%;
  margin-right: 24px;
}
div.statements div.statement-body div.line > div:last-child {
  margin-right: 0;
}
div.statements div.statement-body div.line > div.date {
  flex: 0 0 90px;
  color: #757575;
}
div.statements div.statement-body div.line > div.description {
  flex: 1 0 240px;
}
div.statements div.statement-body div.line > div.wallet {
  flex: 1 0 90px;
  text-align: center;
}
div.statements div.statement-body div.line > div.wallet span.label {
  display: none;
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}
@media all and (max-width: 768px) {
  div.statements div.statement-body div.line {
    flex-wrap: wrap;
    margin-bottom: 8px;
    padding: 8px 16px;
  }
  div.statements div.statement-body div.line.statement-head {
    display: none;
  }
  div.statements div.statement-body div.line > div {
    flex: 1 0 100% !important;
    margin-bottom: 6px;
    text-align: left !important;
  }
  div.statements div.statement-body div.line > div.wallet span.label {
    display: inline;
  }
}
div.statements div.statements-load-more {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 32px;
}

/* Components: Real People */
/**
 * Food Academy How to apply
 */
div.container.food-academy-how-to-apply div.wrapper {
  justify-content: center;
}
div.container.food-academy-how-to-apply div.wrapper a.item {
  display: flex;
  width: 100%;
  max-width: 640px;
  overflow: hidden;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
}
div.container.food-academy-how-to-apply div.wrapper a.item:hover {
  text-decoration: none;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.image {
  flex: 1 0 210px;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 200px;
  background: #F7F8F9 url("") no-repeat center center;
  background-size: cover;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.image h3.h2 {
  margin-bottom: 0;
  color: #ffffff;
  text-align: center;
  text-transform: uppercase;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.text {
  position: relative;
  padding: 32px 64px 32px 16px;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.text h4 {
  margin-bottom: 24px;
  color: #C8102E;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.text p {
  color: #333333;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.text span.icon-arrow-right {
  position: absolute;
  right: 16px;
  bottom: 16px;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  border: 1px solid #333333;
  background-color: #ffffff;
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
  color: #333333;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.food-academy-how-to-apply div.wrapper a.item div.text span.icon-arrow-right::after {
  font-size: 12px;
}
div.container.food-academy-how-to-apply div.wrapper a.item div.text span.icon-arrow-right:hover {
  background-color: #333333;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
  color: #ffffff;
}
@media all and (max-width: 768px) {
  div.container.food-academy-how-to-apply div.wrapper a.item {
    flex: 0 1 344px;
    flex-wrap: wrap;
  }
  div.container.food-academy-how-to-apply div.wrapper a.item div.image {
    flex: 0 0 100%;
  }
  div.container.food-academy-how-to-apply div.wrapper a.item div.text h4 {
    margin-bottom: 16px;
  }
}

/**
 * Real People Landing Intro
 */
div.real-people-landing-intro div.wrapper {
  max-width: 660px;
  margin: 0 auto;
}
div.real-people-landing-intro div.wrapper div.item {
  display: flex;
  align-items: center;
}
@media all and (max-width: 768px) {
  div.real-people-landing-intro div.wrapper div.item {
    flex-wrap: wrap;
    justify-content: center;
  }
}
div.real-people-landing-intro div.wrapper div.item img {
  margin-left: 32px;
  width: 160px;
  height: auto;
}

/**
 * Real People Card
 */
div.real-people-card {
  margin-bottom: 64px;
  max-width: 1120px;
}
div.real-people-card div.wrapper {
  display: flex;
  flex-wrap: wrap;
}
div.real-people-card div.wrapper div.item {
  display: flex;
  flex: 0 0 100%;
}
div.real-people-card div.wrapper div.item div.media,
div.real-people-card div.wrapper div.item div.text {
  flex: 0 0 50%;
  padding: 32px;
}
div.real-people-card div.wrapper div.item div.media a.button,
div.real-people-card div.wrapper div.item div.text a.button {
  margin-top: 16px;
}
div.real-people-card div.wrapper div.item div.media img {
  width: 100%;
  height: auto;
}
@media all and (max-width: 768px) {
  div.real-people-card div.wrapper div.item {
    flex-wrap: wrap;
  }
  div.real-people-card div.wrapper div.item div.media,
div.real-people-card div.wrapper div.item div.text {
    flex: 0 0 100%;
    padding: 16px;
  }
  div.real-people-card div.wrapper div.item div.media {
    padding-bottom: 0;
  }
}

/* Components: Recipes */
/**
 * Feature Recipe Hero
 */
div.hero-feature-recipe .item {
  position: relative;
}
div.hero-feature-recipe .item div.image img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (min-width: 768px) {
  div.hero-feature-recipe .item div.image img.desktop {
    display: block;
  }
  div.hero-feature-recipe .item div.image img.mobile {
    display: none;
  }
}
@media all and (max-width: 767px) {
  div.hero-feature-recipe .item div.image img.desktop {
    display: none;
  }
  div.hero-feature-recipe .item div.image img.mobile {
    display: block;
  }
}
div.hero-feature-recipe .item div.text {
  position: absolute;
  top: 50%;
  left: 50%;
  padding: 32px 24px;
  min-width: 320px;
  border-radius: 8px;
  background-color: #C8102E;
  transform: translate3d(-50%, -50%, 0);
  text-align: center;
}
div.hero-feature-recipe .item div.text h3 {
  margin: 0;
  color: #ffffff;
}
div.hero-feature-recipe .item div.text p {
  color: #ffffff;
}
div.hero-feature-recipe .item div.text p ~ a.button {
  margin-top: 8px;
}

/**
 * Meal Planner
 */
div.container.meal-planner div.item {
  padding: 32px;
  background-color: #F7F8F9;
}
@media all and (max-width: 768px) {
  div.container.meal-planner div.item {
    padding: 16px;
  }
}
div.container.meal-planner h3.h4 {
  font-family: "Moderat Regular", "Helvetica", Arial, sans-serif;
  color: #333333;
}
div.container.meal-planner div.chosen-recipe-card {
  display: flex;
  height: 120px;
  margin-bottom: 16px;
  border-radius: 4px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.meal-planner div.chosen-recipe-card img {
  display: block;
  width: auto;
  height: 100%;
}
div.container.meal-planner div.chosen-recipe-card div.text {
  position: relative;
  padding: 16px;
  width: 100%;
}
div.container.meal-planner div.chosen-recipe-card div.text h5 {
  display: -webkit-box;
  width: calc(100% - 32px);
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
}
div.container.meal-planner div.chosen-recipe-card div.text span.remove {
  position: absolute;
  top: 16px;
  right: 16px;
  color: #333333;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.meal-planner div.chosen-recipe-card div.text span.remove::after {
  font-size: 24px;
}
div.container.meal-planner div.chosen-recipe-card div.text span.remove:hover {
  color: #C8102E;
}
div.container.meal-planner div.placeholder {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 120px;
  margin-bottom: 16px;
  border: 1px solid #D1D6D8;
  border-radius: 4px;
  color: #D1D6D8;
}
div.container.meal-planner form.send-plan {
  margin-top: 32px;
}

/**
 * Meal Planner Recipe List
 */
div.container.meal-planner-recipe-list div.wrapper {
  flex-wrap: wrap;
}
div.container.meal-planner-recipe-list div.wrapper div.item {
  flex: 0 1 calc(50% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  color: #333333;
}
div.container.meal-planner-recipe-list div.wrapper div.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.meal-planner-recipe-list div.wrapper div.item > a.recipe {
  color: #333333;
}
div.container.meal-planner-recipe-list div.wrapper div.item > a.recipe:hover {
  text-decoration: none;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.text {
  position: relative;
  padding: 16px 64px 0 16px;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.text h4 {
  min-height: 48px;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.text span.share {
  position: absolute;
  top: 16px;
  right: 16px;
  cursor: pointer;
  transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.meal-planner-recipe-list div.wrapper div.item div.text span.share::after {
  font-size: 24px;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.text span.share:hover {
  color: #C8102E;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.details {
  display: flex;
  flex-wrap: wrap;
  padding: 16px 16px 24px 16px;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.details > span {
  display: flex;
  align-items: center;
  margin: 0 32px 0 0;
  font-size: 14px;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.details > span:last-child {
  margin-right: 0;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.details > span span[class^=icon-] {
  margin-right: 8px;
}
div.container.meal-planner-recipe-list div.wrapper div.item div.details > span span[class^=icon-]::after {
  font-size: 24px;
}
div.container.meal-planner-recipe-list div.wrapper div.item a.button {
  margin: 0 16px 24px 16px;
}
div.container.meal-planner-recipe-list div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.meal-planner-recipe-list div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.meal-planner-recipe-list div.wrapper div.item {
    flex: 0 1 344px;
  }
}

/**
 * Recipe List
 */
div.container.recipe-list div.wrapper {
  flex-wrap: wrap;
}
div.container.recipe-list div.wrapper a.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  color: #333333;
}
div.container.recipe-list div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.recipe-list div.wrapper a.item div.text {
  position: relative;
  padding: 16px 64px 54px 16px;
}
div.container.recipe-list div.wrapper a.item div.text h4 {
  min-height: 48px;
}
div.container.recipe-list div.wrapper a.item div.text span.share {
  position: absolute;
  top: 16px;
  right: 16px;
  cursor: pointer;
  transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.recipe-list div.wrapper a.item div.text span.share::after {
  font-size: 24px;
}
div.container.recipe-list div.wrapper a.item div.text span.share:hover {
  color: #C8102E;
}
div.container.recipe-list div.wrapper a.item div.details {
  position: absolute;
  bottom: 16px;
  left: 16px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
div.container.recipe-list div.wrapper a.item div.details > span {
  display: flex;
  align-items: center;
  margin: 0 32px 0 0;
  font-size: 14px;
}
div.container.recipe-list div.wrapper a.item div.details > span:last-child {
  margin-right: 0;
}
div.container.recipe-list div.wrapper a.item div.details > span span[class^=icon-] {
  margin-right: 8px;
}
div.container.recipe-list div.wrapper a.item div.details > span span[class^=icon-]::after {
  font-size: 24px;
}
div.container.recipe-list div.wrapper a.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.recipe-list div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.recipe-list div.wrapper a.item {
    flex: 0 1 344px;
  }
}

/**
 * Related Recipe List
 */
div.container.recipe-list-related {
  margin-top: 16px;
}
div.container.recipe-list-related h3 {
  margin-bottom: 0;
}
@media all and (max-width: 992px) {
  div.container.recipe-list-related h3 {
    text-align: center;
  }
}
div.container.recipe-list-related div.wrapper {
  flex-wrap: wrap;
}
div.container.recipe-list-related div.wrapper a.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
  color: #333333;
}
div.container.recipe-list-related div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.recipe-list-related div.wrapper a.item div.text {
  position: relative;
  padding: 16px 64px 54px 16px;
}
div.container.recipe-list-related div.wrapper a.item div.text span.share {
  position: absolute;
  top: 16px;
  right: 16px;
  cursor: pointer;
  transition: color 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.recipe-list-related div.wrapper a.item div.text span.share::after {
  font-size: 24px;
}
div.container.recipe-list-related div.wrapper a.item div.text span.share:hover {
  color: #C8102E;
}
div.container.recipe-list-related div.wrapper a.item div.details {
  position: absolute;
  bottom: 16px;
  left: 16px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
div.container.recipe-list-related div.wrapper a.item div.details > span {
  display: flex;
  align-items: center;
  margin: 0 32px 0 0;
  font-size: 14px;
}
div.container.recipe-list-related div.wrapper a.item div.details > span:last-child {
  margin-right: 0;
}
div.container.recipe-list-related div.wrapper a.item div.details > span span[class^=icon-] {
  margin-right: 8px;
}
div.container.recipe-list-related div.wrapper a.item div.details > span span[class^=icon-]::after {
  font-size: 24px;
}
div.container.recipe-list-related div.wrapper a.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.recipe-list-related div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.recipe-list-related div.wrapper a.item {
    flex: 0 1 344px;
  }
}

/**
 * Recipe Search Advanced
 */
div.recipe-search-advanced h2 {
  text-align: center;
}
div.recipe-search-advanced form {
  margin: 0 auto;
  max-width: 660px;
}
div.recipe-search-advanced form div.row {
  max-width: 100%;
}
div.recipe-search-advanced form div.field.text {
  max-width: 100%;
  margin-right: 0;
  padding-bottom: 0;
}
div.recipe-search-advanced form div.field.text label {
  display: none;
}
div.recipe-search-advanced form div.field.text input {
  height: 44px;
  border-right-width: 0;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
div.recipe-search-advanced form div.field.button {
  padding-bottom: 0;
}
div.recipe-search-advanced form div.field.button button {
  height: 44px;
  border-top-left-radius: 0;
  border-bottom-left-radius: 0;
}
@media all and (max-width: 768px) {
  div.recipe-search-advanced form div.field.button button {
    padding: 12px 24px 13px 24px;
    font-size: 16px;
  }
}
div.recipe-search-advanced div.action {
  width: 100%;
  max-width: 660px;
  margin: 0 auto;
  text-align: right;
}

/* Components: Gift Cards */
/**
 * Balance Check
 */
div.container.gift-card-balance-check div.item {
  display: flex;
  justify-content: space-between;
}
div.container.gift-card-balance-check div.item form {
  flex: 0 1 432px;
}
div.container.gift-card-balance-check div.item div.images {
  flex: 0 1 840px;
  display: flex;
}
div.container.gift-card-balance-check div.item div.images img {
  display: block;
}
@media all and (max-width: 992px) {
  div.container.gift-card-balance-check div.item {
    flex-wrap: wrap;
  }
  div.container.gift-card-balance-check div.item div.images {
    flex-wrap: wrap;
  }
}

div.container.gift-card-balance-check-result div.item {
  padding: 32px;
  border-radius: 8px;
  max-width: 432px;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 992px) {
  div.container.gift-card-balance-check-result div.item {
    padding: 16px;
  }
}

/**
 * Corporate Signup Form
 */
div.container.gift-card-corporate-signup div.section {
  margin-bottom: 32px;
}
div.container.gift-card-corporate-signup div.order-details #card-counter div.card div.card-amount {
  flex: 0 0 66.666666666%;
}
div.container.gift-card-corporate-signup div.order-details #card-counter div.card span.remove-row {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 43px;
  margin-top: 25px;
  cursor: pointer;
}
div.container.gift-card-corporate-signup div.order-details #card-counter div.card span.remove-row.icon-bin-empty:after {
  font-size: 18px;
}
div.container.gift-card-corporate-signup div.order-details #card-counter div.card:first-child span.remove-row {
  opacity: 0;
  pointer-events: none;
}
div.container.gift-card-corporate-signup div.order-details div.summary {
  margin-bottom: 32px;
}
div.container.gift-card-corporate-signup div.order-details div.summary div.row {
  justify-content: space-between;
  margin-bottom: 8px;
}
div.container.gift-card-corporate-signup div.order-details div.summary div.row:first-child {
  border-top: 1px solid #E6EAEB;
  padding-top: 24px;
}
div.container.gift-card-corporate-signup div.order-details div.summary div.row > span.amount {
  text-align: right;
}
div.container.gift-card-corporate-signup div.order-details div.summary div.row.discount {
  color: #C8102E;
}
div.container.gift-card-corporate-signup div.order-details div.summary div.row.grand-total {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
}

/**
 * Card S with button Centered
 * with no image
 */
div.container.gift-cards-actions div.wrapper {
  flex-wrap: wrap;
}
div.container.gift-cards-actions div.wrapper div.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.gift-cards-actions div.wrapper div.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.gift-cards-actions div.wrapper div.item div.text {
  text-align: center;
  padding: 16px;
}
div.container.gift-cards-actions div.wrapper div.item div.text p {
  display: -webkit-box;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  color: #333333;
}
div.container.gift-cards-actions div.wrapper div.item div.text div.actions {
  display: flex;
  justify-content: center;
}
div.container.gift-cards-actions div.wrapper div.item div.text a.button {
  background-color: #C8102E;
}
div.container.gift-cards-actions div.wrapper div.item div.text a.inline {
  color: inherit;
}
div.container.gift-cards-actions div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.gift-cards-actions div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.gift-cards-actions div.wrapper div.item {
    flex: 0 1 344px;
  }
}

/* Components: Insurance */
/**
 * Accordion
 */
div.container.accordion h3.h2 {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 768px;
  text-align: center;
}
div.container.accordion div.wrapper {
  flex-direction: column;
}
div.container.accordion div.wrapper div.item {
  margin-top: 0;
  margin-bottom: 1rem;
}
div.container.accordion details {
  border-bottom: 1px solid #E6EAEB;
}
div.container.accordion details summary {
  display: flex;
  align-items: baseline;
  list-style: none;
  padding-bottom: 1rem;
  cursor: pointer;
}
div.container.accordion details summary::-webkit-details-marker {
  display: none;
}
div.container.accordion details summary::after {
  content: "\e909";
  margin-left: auto;
  font-family: "SuperValu Icons";
  font-size: 1rem;
  line-height: 1;
}
div.container.accordion details summary h4.h3 {
  margin-bottom: 0;
  color: #333333;
}
div.container.accordion details[open] summary::after {
  content: "\e908";
}

/**
 * Banner M Mint
 */
div.container.banner-m-mint-box div.wrapper a.item {
  position: relative;
  border-radius: 8px;
  overflow: hidden;
}
div.container.banner-m-mint-box div.wrapper a.item img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 8px;
}
div.container.banner-m-mint-box div.wrapper a.item div.text {
  position: absolute;
  bottom: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  padding: 18px 16px 22px 16px;
  background-color: #6ECEB2;
}
div.container.banner-m-mint-box div.wrapper a.item div.text h3 {
  margin: 0;
  color: white;
}
div.container.banner-m-mint-box div.wrapper a.item div.text span.icon-arrow-right {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 24px;
  height: 24px;
  border-radius: 12px;
  border: 1px solid #ffffff;
  background-color: transparent;
  box-shadow: 0 0 0 #ffffff;
  color: #ffffff;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.banner-m-mint-box div.wrapper a.item div.text span.icon-arrow-right::after {
  font-size: 12px;
}
@media all and (max-width: 768px) {
  div.container.banner-m-mint-box div.wrapper {
    flex-wrap: wrap;
  }
  div.container.banner-m-mint-box div.wrapper a.item {
    flex: 0 1 100%;
  }
}

/**
 * Call To Action
 */
div.container.call-to-action div.wrapper div.item {
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #F7F8F9;
  padding: 32px;
}
div.container.call-to-action div.wrapper div.item p {
  margin-bottom: 0;
  font-size: 18px;
  line-height: 1.2;
  color: #333333;
}
div.container.call-to-action div.wrapper div.item a.button {
  margin-bottom: 0;
  margin-left: 16px;
}
@media all and (max-width: 768px) {
  div.container.call-to-action div.wrapper div.item {
    flex-direction: column;
    padding: 16px;
  }
  div.container.call-to-action div.wrapper div.item p {
    margin-bottom: 24px;
  }
  div.container.call-to-action div.wrapper div.item a.button {
    margin-bottom: 8px;
    margin-left: 0;
  }
}

/**
 * Card S Content
 */
div.container.card-s-content > h3 {
  margin-top: 32px;
  text-align: center;
}
div.container.card-s-content div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.card-s-content div.wrapper div.item {
  flex: 0 1 calc(33.333333333% - 64px);
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.card-s-content div.wrapper div.item div.image {
  display: flex;
  justify-content: center;
  padding: 16px;
}
div.container.card-s-content div.wrapper div.item div.text {
  padding: 16px 64px 32px 16px;
}
div.container.card-s-content div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.card-s-content div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.card-s-content div.wrapper div.item {
    flex: 0 1 344px;
  }
}

/**
 * Card L
 */
div.container.card-l-insurance > h3 {
  margin-top: 32px;
  text-align: center;
}
div.container.card-l-insurance div.wrapper {
  flex-direction: column;
  align-items: center;
}
div.container.card-l-insurance div.wrapper div.item {
  display: flex;
  width: 100%;
  max-width: 886px;
  overflow: hidden;
  background-color: #ffffff;
  border-radius: 8px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
}
div.container.card-l-insurance div.wrapper div.item div.image {
  flex: 1 0 386px;
}
div.container.card-l-insurance div.wrapper div.item div.image img {
  display: block;
  width: auto;
  height: auto;
  object-fit: cover;
}
div.container.card-l-insurance div.wrapper div.item div.text {
  padding: 32px 32px 32px 64px;
}
div.container.card-l-insurance div.wrapper div.item div.text h3.h4 {
  margin-bottom: 24px;
}
div.container.card-l-insurance div.wrapper div.item div.text p {
  display: -webkit-box;
  margin: 0 0 20px 0;
  min-height: 60px;
  overflow: hidden;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  font-size: 14px;
  line-height: 20px;
}
div.container.card-l-insurance div.wrapper div.item div.text div.actions {
  margin-top: 32px;
}
@media all and (max-width: 768px) {
  div.container.card-l-insurance div.wrapper {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
  }
  div.container.card-l-insurance div.wrapper div.item {
    flex: 0 1 344px;
    flex-wrap: wrap;
  }
  div.container.card-l-insurance div.wrapper div.item div.image {
    flex: 0 0 100%;
  }
  div.container.card-l-insurance div.wrapper div.item div.text {
    padding: 16px;
  }
  div.container.card-l-insurance div.wrapper div.item div.text h3.h4 {
    margin-bottom: 16px;
  }
}

/**
 * Collapsible Group
 */
div.container.collapsible-group div.wrapper div.item {
  padding: 0 32px;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  border-radius: 8px;
}
@media all and (max-width: 768px) {
  div.container.collapsible-group div.wrapper div.item {
    padding: 0 16px;
  }
}
div.container.collapsible-group h3 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0;
  padding: 24px 0;
  width: 100%;
  cursor: pointer;
}
div.container.collapsible-group div.row-group {
  height: auto;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.6s ease-out;
  transition-delay: 0ms;
}
div.container.collapsible-group div.row-group div.row {
  display: flex;
  justify-content: space-between;
  padding: 32px 0;
  border-bottom: 1px solid #E6EAEB;
  opacity: 0;
  transform: translateX(30px);
  transition: all 0.6s ease-out;
  transition-delay: 0.6s;
}
div.container.collapsible-group div.row-group div.row:first-of-type {
  padding-top: 0;
}
div.container.collapsible-group div.row-group div.row:last-of-type {
  border-bottom: none;
}
div.container.collapsible-group div.row-group div.row div.text h5 {
  display: inline-flex;
  align-items: center;
  margin-bottom: 8px;
  color: #333333;
}
div.container.collapsible-group div.row-group div.row div.text h5 span[class^=icon-] {
  margin-right: 8px;
}
div.container.collapsible-group div.row-group div.row div.text h5 span[class^=icon-]::after {
  font-size: 24px;
}
div.container.collapsible-group div.row-group div.row div.text p {
  margin-bottom: 0;
  max-width: 480px;
}
div.container.collapsible-group div.row-group div.row div.action a.button {
  min-width: 200px;
  max-width: 200px;
}
@media all and (max-width: 768px) {
  div.container.collapsible-group div.row-group div.row {
    flex-wrap: wrap;
  }
  div.container.collapsible-group div.row-group div.row div.action {
    margin-top: 32px;
  }
}
div.container.collapsible-group.open h3 span[class^=icon-] {
  transform: rotate(180deg);
}
div.container.collapsible-group.open div.row-group {
  max-height: 2000px;
}
div.container.collapsible-group.open div.row-group div.row {
  opacity: 1;
  transform: translateX(0);
  transition-delay: 0ms;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(1) {
  transition-delay: 0.2s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(2) {
  transition-delay: 0.4s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(3) {
  transition-delay: 0.6s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(4) {
  transition-delay: 0.8s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(5) {
  transition-delay: 1s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(6) {
  transition-delay: 1.2s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(7) {
  transition-delay: 1.4s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(8) {
  transition-delay: 1.6s;
}
div.container.collapsible-group.open div.row-group div.row:nth-child(9) {
  transition-delay: 1.8s;
}

/**
 * Contact Banner
 */
div.contact-banner div.item {
  display: flex;
}
div.contact-banner div.item div.image {
  flex: 0 0 50%;
}
div.contact-banner div.item div.text {
  flex: 0 0 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
}
div.contact-banner div.item div.text h2 {
  margin-bottom: 0;
}
div.contact-banner div.item div.text h3.tel-number a {
  color: #333333;
}
div.contact-banner div.item div.text p {
  font-size: 24px;
  line-height: 28px;
}
@media all and (max-width: 992px) {
  div.contact-banner div.item {
    flex-wrap: wrap;
  }
  div.contact-banner div.item div.image {
    order: 2;
    flex: 0 0 100%;
  }
  div.contact-banner div.item div.text {
    order: 1;
    flex: 0 0 100%;
  }
}

/**
 * Fine Print
 */
div.container.fine-print h3, div.container.fine-print h4, div.container.fine-print h5 {
  margin-bottom: 0;
  font-size: 14px;
  line-height: 20px;
  color: #333333;
}
div.container.fine-print p {
  margin-bottom: 20px;
  max-width: 1200px;
  font-size: 14px;
  line-height: 20px;
}

/**
 * Info Group
 */
div.container.info-group header,
div.container.info-group div.row {
  display: flex;
}
div.container.info-group header h3, div.container.info-group header h4,
div.container.info-group div.row h3,
div.container.info-group div.row h4 {
  margin-bottom: 0;
  color: #333333;
}
div.container.info-group header p,
div.container.info-group div.row p {
  max-width: 100%;
}
div.container.info-group header div[class^=col-],
div.container.info-group div.row div[class^=col-] {
  padding: 16px;
}
div.container.info-group header div[class^=col-][class$="1"],
div.container.info-group div.row div[class^=col-][class$="1"] {
  flex: 0 1 33.3333333333%;
}
div.container.info-group header div[class^=col-][class$="2"],
div.container.info-group div.row div[class^=col-][class$="2"] {
  flex: 0 1 66.6666666667%;
  background-color: #F7F8F9;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 768px) {
  div.container.info-group header,
div.container.info-group div.row {
    flex-wrap: wrap;
  }
  div.container.info-group header div[class^=col-][class$="1"], div.container.info-group header div[class^=col-][class$="2"],
div.container.info-group div.row div[class^=col-][class$="1"],
div.container.info-group div.row div[class^=col-][class$="2"] {
    flex: 0 1 100%;
  }
}
div.container.info-group header div.col-2 {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 16px;
  border-radius: 8px;
}
div.container.info-group header div.col-2 img {
  margin-right: 8px;
}
div.container.info-group div.row div.col-2::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  margin-top: 16px;
  background-color: #E6EAEB;
}
@media all and (max-width: 992px) {
  div.container.info-group div.row div.col-2::after {
    display: none;
  }
}
div.container.info-group div.row:first-of-type div.col-2 {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
div.container.info-group div.row:last-of-type div.col-2 {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
div.container.info-group div.row:last-of-type div.col-2::after {
  display: none;
}

/**
 * Insurance Product Banner
 */
div.insurance-product-banner div.item {
  display: flex;
}
div.insurance-product-banner div.item div.image {
  flex: 0 0 50%;
}
div.insurance-product-banner div.item div.text {
  flex: 0 0 50%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 32px;
}
div.insurance-product-banner div.item div.text div.tel-number {
  display: flex;
  align-items: center;
  margin-bottom: 16px;
}
div.insurance-product-banner div.item div.text div.tel-number img {
  margin-right: 16px;
}
div.insurance-product-banner div.item div.text div.tel-number a {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 40px;
  line-height: 44px;
  color: #333333;
}
div.insurance-product-banner div.item div.text div.tel-number a:hover {
  text-decoration: none;
}
div.insurance-product-banner div.item div.text h2 {
  max-width: 576px;
  color: #333333;
}
div.insurance-product-banner div.item div.text div.actions {
  display: flex;
}
@media all and (max-width: 992px) {
  div.insurance-product-banner div.item {
    flex-wrap: wrap;
  }
  div.insurance-product-banner div.item div.image {
    order: 1;
    flex: 0 0 100%;
  }
  div.insurance-product-banner div.item div.image img {
    display: block;
    width: 50%;
    margin: 0 auto;
  }
  div.insurance-product-banner div.item div.text {
    order: 2;
    flex: 0 0 100%;
    align-items: center;
    padding-right: 0;
    padding-left: 0;
  }
  div.insurance-product-banner div.item div.text h2 {
    text-align: center;
  }
}
div.insurance-product-banner.default div.item div.text div.tel-number span {
  color: #C8102E;
}
div.insurance-product-banner.car div.item div.text div.tel-number span {
  color: #6ECEB2;
}
div.insurance-product-banner.home div.item div.text div.tel-number span {
  color: #a44dc4;
}
div.insurance-product-banner.travel div.item div.text div.tel-number span {
  color: #FFBC3D;
}
div.insurance-product-banner.van div.item div.text div.tel-number span {
  color: #6ECEB2;
}
div.insurance-product-banner.life div.item div.text div.tel-number span {
  color: #79BAE1;
}

/**
 * Insurance Product Card
 */
div.container.insurance-product-card div.wrapper {
  flex-wrap: wrap;
}
div.container.insurance-product-card div.wrapper div.item {
  display: flex;
  flex-direction: column;
  position: relative;
  border-radius: 8px;
  overflow: hidden;
  background-color: #ffffff;
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.08);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.25, 0.1, 0.25, 1);
}
div.container.insurance-product-card div.wrapper div.item:first-child:nth-last-child(3), div.container.insurance-product-card div.wrapper div.item:first-child:nth-last-child(3) ~ div.item {
  flex: 0 1 calc(33.333333333% - 64px);
}
div.container.insurance-product-card div.wrapper div.item:first-child:nth-last-child(4), div.container.insurance-product-card div.wrapper div.item:first-child:nth-last-child(4) ~ div.item {
  flex: 0 1 calc(25% - 64px) !important;
}
div.container.insurance-product-card div.wrapper div.item.car {
  background-color: rgba(110, 206, 178, 0.25);
}
div.container.insurance-product-card div.wrapper div.item.home {
  background-color: rgba(164, 77, 196, 0.15);
}
div.container.insurance-product-card div.wrapper div.item.travel {
  background-color: rgba(255, 188, 61, 0.15);
}
div.container.insurance-product-card div.wrapper div.item.life {
  background-color: rgba(0, 198, 215, 0.15);
}
div.container.insurance-product-card div.wrapper div.item img {
  display: block;
  width: 100%;
  height: auto;
}
div.container.insurance-product-card div.wrapper div.item div.logo {
  display: flex;
  justify-content: center;
  padding: 32px 16px 32px 16px;
}
div.container.insurance-product-card div.wrapper div.item div.logo img {
  width: 80%;
}
div.container.insurance-product-card div.wrapper div.item div.image {
  margin-bottom: 32px;
}
div.container.insurance-product-card div.wrapper div.item div.text {
  flex-basis: 100%;
  margin-bottom: 32px;
  padding: 0 16px;
}
div.container.insurance-product-card div.wrapper div.item div.actions {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 16px;
  padding: 16px;
}
div.container.insurance-product-card div.wrapper div.item div.actions a.button {
  margin: 0 8px 16px 8px;
}
div.container.insurance-product-card div.wrapper div.item div.tel-number {
  display: flex;
  align-items: center;
  margin-bottom: 32px;
  padding: 0 16px;
}
div.container.insurance-product-card div.wrapper div.item div.tel-number a {
  font-size: 24px;
  line-height: 1;
}
div.container.insurance-product-card div.wrapper div.item div.tel-number span.icon-phone {
  margin-right: 16px;
}
div.container.insurance-product-card div.wrapper div.item div.tel-number span.icon-phone::after {
  font-size: 24px;
}
div.container.insurance-product-card div.wrapper div.item div.actions {
  display: flex;
  justify-content: center;
  padding: 0 16px;
}
div.container.insurance-product-card div.wrapper div.item:hover {
  box-shadow: 0px 0px 24px 0px rgba(0, 0, 0, 0.16);
}
@media all and (max-width: 992px) {
  div.container.insurance-product-card div.wrapper {
    flex-wrap: wrap;
    justify-content: center;
  }
  div.container.insurance-product-card div.wrapper div.item {
    flex: 0 1 344px;
  }
}

/**
 * Insurance Young Drivers
 */
div.insurance-young-drivers {
  position: relative;
  margin-top: 64px;
  margin-bottom: 64px;
  background-color: #C8102E;
}
div.insurance-young-drivers .item {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
}
@media all and (max-width: 992px) {
  div.insurance-young-drivers .item {
    flex-wrap: wrap;
  }
}
div.insurance-young-drivers .item .image {
  position: absolute;
  width: 50%;
}
div.insurance-young-drivers .item .image img {
  display: block;
  width: 100%;
  height: auto;
}
@media all and (max-width: 992px) {
  div.insurance-young-drivers .item .image {
    position: relative;
    margin-top: -64px;
    width: 100%;
  }
  div.insurance-young-drivers .item .image img {
    max-width: 432px;
    margin-right: auto;
    margin-left: auto;
  }
}
div.insurance-young-drivers .item .card {
  flex: 1 1 auto;
  margin-left: 50%;
  padding: 32px;
  min-height: 364px;
  border-radius: 8px;
  background-color: #ffffff;
}
div.insurance-young-drivers .item .card > h3,
div.insurance-young-drivers .item .card > p {
  max-width: 432px;
}
div.insurance-young-drivers .item .card .field.button {
  padding-bottom: 0;
}
@media all and (max-width: 992px) {
  div.insurance-young-drivers .item .card {
    flex-basis: 432px;
    margin-left: 0;
  }
}

/**
 * Message
 */
div.insurance-message {
  position: relative;
  width: 100%;
  max-width: 660px;
  margin: 0 auto;
  padding: 32px 32px 32px 64px;
  border-radius: 8px;
  background-color: #F7F8F9;
  overflow: hidden;
  text-align: left;
}
div.insurance-message::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 8px;
  height: 100%;
  background-color: #E6EAEB;
}
div.insurance-message::after {
  content: "";
  position: absolute;
  top: 32px;
  left: 16px;
  font-family: "SuperValu Icons";
  font-size: 24px;
  line-height: 1;
  transform: translateX(50%);
}
div.insurance-message h5 {
  margin-bottom: 8px;
}
div.insurance-message p {
  margin-bottom: 0;
  color: #333333;
}
div.insurance-message p ~ a.button {
  margin-top: 32px;
  margin-bottom: 0;
}
@media all and (max-width: 768px) {
  div.insurance-message p ~ a.button {
    margin-top: 16px;
  }
}
div.insurance-message.info::before {
  background-color: #15743C;
}
div.insurance-message.info::after {
  content: "\e950";
  color: #15743C;
}
div.insurance-message.info h5 {
  color: #15743C;
}
div.insurance-message.error::before {
  background-color: #D63900;
}
div.insurance-message.error::after {
  content: "\e94a";
  color: #D63900;
}
div.insurance-message.error h5 {
  color: #D63900;
}
div.insurance-message.slim {
  max-width: 100%;
  padding-top: 16px;
  padding-bottom: 16px;
}
div.insurance-message.slim::after {
  top: 16px;
}
div.insurance-message.slim p {
  max-width: 100%;
}

/**
 * Pill List
 */
div.container.pill-list div.wrapper {
  justify-content: center;
}
div.container.pill-list div.wrapper div.item h3 {
  text-align: center;
}
div.container.pill-list div.wrapper div.item div.actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

/**
 * Testimonial Carousel
 */
div.testimonial-carousel {
  margin: 64px 32px;
}
@media all and (max-width: 768px) {
  div.testimonial-carousel {
    margin: 32px 16px;
  }
}
div.testimonial-carousel div.wrapper {
  position: relative;
  max-width: 840px;
  margin: 0 auto;
}
div.testimonial-carousel h3 {
  text-align: center;
}
div.testimonial-carousel blockquote {
  position: relative;
  padding-left: 0;
  border-left: none;
  min-height: 72px;
  width: calc(100% - 128px);
  margin: 0 auto;
}
div.testimonial-carousel blockquote::before, div.testimonial-carousel blockquote::after {
  content: "";
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 20px;
  height: 20px;
  background: transparent url("") no-repeat center center;
  background-size: contain;
  pointer-events: none;
}
div.testimonial-carousel blockquote::before {
  top: 0;
  left: -8px;
  background-image: url("../images/UMwtTXFUyUuQ.svg");
  transform: translateX(-100%);
}
div.testimonial-carousel blockquote::after {
  bottom: 0;
  right: 8px;
  background-image: url("../images/TrHrCMzNZKqc.svg");
  transform: translateX(100%);
}
div.testimonial-carousel blockquote + footer {
  display: block;
  width: calc(100% - 128px);
  margin: 0 auto;
}
div.testimonial-carousel blockquote + footer cite.author {
  font-family: "Moderat Bold", "Helvetica", Arial, sans-serif;
  font-size: 14px;
  font-style: normal;
  color: #C8102E;
}
div.testimonial-carousel div.controls {
  position: absolute;
  z-index: 10;
  top: 72px;
  display: flex;
  justify-content: space-between;
  width: 100%;
  pointer-events: none;
}
div.testimonial-carousel div.controls span.previous,
div.testimonial-carousel div.controls span.next {
  width: 32px;
  height: 32px;
  line-height: 32px;
  pointer-events: all;
  cursor: pointer;
  text-align: center;
}
div.testimonial-carousel div.controls span.previous:hover::after,
div.testimonial-carousel div.controls span.next:hover::after {
  color: #C8102E;
}

/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
.slick-track:before, .slick-track:after {
  content: "";
  display: table;
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
  display: none;
}

/**
 * Video Gallery - YouTube Shorts
 */
div.container.video-gallery-youtube-shorts {
  max-width: 100%;
  padding-top: 5rem;
  padding-bottom: 5rem;
  background: transparent url("../images/I8UIhxguzQo1.svg") no-repeat center center;
  background-size: contain;
}
div.container.video-gallery-youtube-shorts > div.wrapper {
  margin-right: auto;
  margin-left: auto;
}
div.container.video-gallery-youtube-shorts h2 {
  display: block;
  margin-right: auto;
  margin-left: auto;
  max-width: 768px;
  text-align: center;
}
div.container.video-gallery-youtube-shorts div.wrapper {
  flex-wrap: wrap;
  justify-content: center;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item {
  flex: 0 1 375px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video {
  position: relative;
  margin: 52px auto;
  width: 315px;
  height: 560px;
  background-color: black;
  border-radius: 40px;
  box-shadow: 0px 0px 0px 11px #1f1f1f, 0px 0px 0px 13px #191919, 0px 0px 0px 20px #111;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video:before, div.container.video-gallery-youtube-shorts div.wrapper div.item .video:after {
  content: "";
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video:before {
  top: 0px;
  width: 56%;
  height: 30px;
  background-color: #1f1f1f;
  border-radius: 0px 0px 40px 40px;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video div.speaker,
div.container.video-gallery-youtube-shorts div.wrapper div.item .video div.camera,
div.container.video-gallery-youtube-shorts div.wrapper div.item .video span {
  position: absolute;
  display: block;
  color: transparent;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video div.speaker {
  top: 0px;
  left: 50%;
  transform: translate(-50%, 6px);
  height: 8px;
  width: 15%;
  background-color: #101010;
  border-radius: 8px;
  box-shadow: inset 0px -3px 3px 0px rgba(255, 255, 255, 0.2);
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video div.camera {
  left: 10%;
  top: 0px;
  transform: translate(180px, 4px);
  width: 12px;
  height: 12px;
  background-color: #101010;
  border-radius: 12px;
  box-shadow: inset 0px -3px 2px 0px rgba(255, 255, 255, 0.2);
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video div.camera:after {
  content: "";
  position: absolute;
  background-color: black;
  width: 6px;
  height: 6px;
  top: 2px;
  left: 2px;
  top: 3px;
  left: 3px;
  display: block;
  border-radius: 4px;
  box-shadow: inset 0px -2px 2px rgba(0, 0, 0, 0.5);
}
div.container.video-gallery-youtube-shorts div.wrapper div.item .video iframe {
  border-radius: 40px;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item div.text {
  max-width: 320px;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item div.text img {
  max-width: 100px;
  margin-bottom: 1rem;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item div.text h3 {
  color: #333333;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item:nth-child(even) div.video {
  order: 2;
}
div.container.video-gallery-youtube-shorts div.wrapper div.item:nth-child(even) div.text {
  order: 1;
}

/**
 * Table 3col
 */
div.container.table-3-col h2 {
  text-align: center;
}
div.container.table-3-col header,
div.container.table-3-col div.row {
  display: flex;
}
div.container.table-3-col header img,
div.container.table-3-col div.row img {
  max-width: 40px;
  margin-right: 10px;
}
div.container.table-3-col header h3, div.container.table-3-col header h4,
div.container.table-3-col div.row h3,
div.container.table-3-col div.row h4 {
  color: #333333;
}
div.container.table-3-col header div[class^=col-],
div.container.table-3-col div.row div[class^=col-] {
  position: relative;
  flex: 0 1 calc(33.333333333% - 16px);
  margin: 0 8px;
  padding: 16px;
  background-color: #F7F8F9;
  box-shadow: 0px 2px 4px 0px rgba(0, 0, 0, 0.08);
}
@media all and (max-width: 768px) {
  div.container.table-3-col header div[class^=col-],
div.container.table-3-col div.row div[class^=col-] {
    flex: 0 1 calc(50% - 16px);
  }
}
div.container.table-3-col header h3 {
  margin-bottom: 0;
}
div.container.table-3-col header div[class^=col-] {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 16px;
  border-radius: 8px;
}
div.container.table-3-col div.row div[class^=col-]::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 16px;
  display: block;
  width: calc(100% - 32px);
  height: 1px;
  background-color: #ffffff;
}
@media all and (max-width: 768px) {
  div.container.table-3-col div.row div[class^=col-]::after {
    left: 8px;
    width: calc(100% - 16px);
  }
}
div.container.table-3-col div.row:first-of-type div[class^=col-] {
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
div.container.table-3-col div.row:last-of-type div[class^=col-] {
  border-bottom-left-radius: 8px;
  border-bottom-right-radius: 8px;
}
div.container.table-3-col div.row:last-of-type div[class^=col-]::after {
  display: none;
}
div.container.table-3-col div.desktop {
  display: block;
}
div.container.table-3-col div.mobile {
  display: none;
}
@media all and (max-width: 768px) {
  div.container.table-3-col header,
div.container.table-3-col div.row {
    display: flex;
  }
  div.container.table-3-col header h3, div.container.table-3-col header h4, div.container.table-3-col header p,
div.container.table-3-col div.row h3,
div.container.table-3-col div.row h4,
div.container.table-3-col div.row p {
    font-size: 14px;
    line-height: 20px;
  }
  div.container.table-3-col header div[class^=col-],
div.container.table-3-col div.row div[class^=col-] {
    flex: 0 1 calc(50% - 8px);
    margin: 8px 4px;
  }
  div.container.table-3-col div.desktop {
    display: none;
  }
  div.container.table-3-col div.mobile {
    display: block;
  }
  div.container.table-3-col div.mobile.cols-1-2 .col-3 {
    display: none;
  }
  div.container.table-3-col div.mobile.cols-1-3 .col-2 {
    display: none;
  }
}

/*# sourceMappingURL=style.css.map */
