/* [project]/node_modules/keen-slider/keen-slider.min.css [client] (css) */
.keen-slider:not([data-keen-slider-disabled]) {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: transparent;
  touch-action: pan-y;
  -webkit-user-select: none;
  user-select: none;
  -khtml-user-select: none;
  align-content: flex-start;
  width: 100%;
  display: flex;
  position: relative;
  overflow: hidden;
}

.keen-slider:not([data-keen-slider-disabled]) .keen-slider__slide {
  width: 100%;
  min-height: 100%;
  position: relative;
  overflow: hidden;
}

.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-reverse] {
  flex-direction: row-reverse;
}

.keen-slider:not([data-keen-slider-disabled])[data-keen-slider-v] {
  flex-wrap: wrap;
}

/* [project]/storefront/next-js-app/src/styles/global.scss.css [client] (css) */
:root {
  --color-xxl-amber: #ffbf00;
  --color-xxl-black: #000;
  --color-xxl-blue: #0826f2;
  --color-xxl-dark-amber: #582600;
  --color-xxl-dark-blue: #080966;
  --color-xxl-dark-fuchsia: #5c005f;
  --color-xxl-dark-gray: #4f4f4f;
  --color-xxl-dark-green: #0d4100;
  --color-xxl-dark-orange: #570000;
  --color-xxl-dark-purple: #4b007c;
  --color-xxl-dark-turquoise: #004a3c;
  --color-xxl-fuchsia: #e300ba;
  --color-xxl-gray: #b1b3b3;
  --color-xxl-green: #99f500;
  --color-xxl-light-amber: #fff2cc;
  --color-xxl-light-blue: #ceeaff;
  --color-xxl-light-fuchsia: #f9ccf1;
  --color-xxl-light-gray: #f0f0f0;
  --color-xxl-light-green: #e6ffc8;
  --color-xxl-light-orange: #ffebd9;
  --color-xxl-light-purple: #f5e5ff;
  --color-xxl-light-red: #fee7ec;
  --color-xxl-light-turquoise: #dcfae8;
  --color-xxl-medium-gray: #dcdcdc;
  --color-xxl-orange: #ff7800;
  --color-xxl-purple: #9e00ff;
  --color-xxl-red: #d9002e;
  --color-xxl-turquoise: #00ecc4;
  --color-xxl-web-black: #161616;
  --color-xxl-web-gray: #373737;
  --color-xxl-web-green: #27ae60;
  --color-xxl-white: #fff;
  --color-xxl-xmas-red: #c30f16;
  --font-color-on-xxl-amber: var(--color-xxl-black);
  --font-color-on-xxl-black: var(--color-xxl-white);
  --font-color-on-xxl-blue: var(--color-xxl-white);
  --font-color-on-xxl-dark-amber: var(--color-xxl-white);
  --font-color-on-xxl-dark-blue: var(--color-xxl-white);
  --font-color-on-xxl-dark-fuchsia: var(--color-xxl-white);
  --font-color-on-xxl-dark-gray: var(--color-xxl-white);
  --font-color-on-xxl-dark-green: var(--color-xxl-white);
  --font-color-on-xxl-dark-orange: var(--color-xxl-white);
  --font-color-on-xxl-dark-purple: var(--color-xxl-white);
  --font-color-on-xxl-dark-turquoise: var(--color-xxl-white);
  --font-color-on-xxl-fuchsia: var(--color-xxl-black);
  --font-color-on-xxl-gray: var(--color-xxl-black);
  --font-color-on-xxl-green: var(--color-xxl-black);
  --font-color-on-xxl-light-amber: var(--color-xxl-black);
  --font-color-on-xxl-light-blue: var(--color-xxl-black);
  --font-color-on-xxl-light-fuchsia: var(--color-xxl-black);
  --font-color-on-xxl-light-gray: var(--color-xxl-black);
  --font-color-on-xxl-light-green: var(--color-xxl-black);
  --font-color-on-xxl-light-orange: var(--color-xxl-black);
  --font-color-on-xxl-light-purple: var(--color-xxl-black);
  --font-color-on-xxl-light-red: var(--color-xxl-black);
  --font-color-on-xxl-light-turquoise: var(--color-xxl-black);
  --font-color-on-xxl-medium-gray: var(--color-xxl-black);
  --font-color-on-xxl-orange: var(--color-xxl-black);
  --font-color-on-xxl-purple: var(--color-xxl-white);
  --font-color-on-xxl-red: var(--color-xxl-white);
  --font-color-on-xxl-turquoise: var(--color-xxl-black);
  --font-color-on-xxl-web-black: var(--color-xxl-white);
  --font-color-on-xxl-web-gray: var(--color-xxl-white);
  --font-color-on-xxl-web-green: var(--color-xxl-black);
  --font-color-on-xxl-white: var(--color-xxl-black);
  --font-color-on-xxl-xmas-red: var(--color-xxl-white);
}

.MuiTouchRipple-root {
  display: none !important;
}

:root {
  --space-hair: 1px;
  --space-line: 2px;
  --space-micro: 4px;
  --space-micro-mini: 6px;
  --space-mini: 8px;
  --space-mini-regular: 10px;
  --space-small-regular: 12px;
  --space-regular: 16px;
  --space-small: 18px;
  --space-small-large: 20px;
  --space-large: 24px;
  --space-big: 36px;
  --space-bigger-big: 40px;
  --space-small-huge: 48px;
  --space-huge: 56px;
  --space-small-giant: 72px;
  --space-giant: 96px;
  --space-bigger-giant: 120px;
  --xxl-vh: 100vh;
  --font-color-primary: var(--color-xxl-black);
  --font-color-primary-invert: var(--color-xxl-white);
  --font-color-green: var(--color-xxl-green);
  --font-color-light-gray: var(--color-xxl-light-gray);
  --font-color-mid-gray: var(--color-xxl-gray);
  --font-color-dark-gray: var(--color-xxl-web-gray);
  --font-size-base: 16px;
  --font-family-regular: "XXLSans", sans-serif;
  --font-family-medium: "XXLSans medium", sans-serif;
  --font-family-bold: "XXLSans bold", sans-serif;
  --letter-spacing-base: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  font-family: var(--font-family-regular);
  letter-spacing: -.009375rem;
  font-size: 1rem;
  font-style: normal;
  font-weight: normal;
  line-height: 1.125;
  font-family: var(--font-family-bold);
  letter-spacing: -.009375rem;
  font-style: normal;
  text-decoration: none;
}

h1 {
  font-size: 2.25rem;
  line-height: 1;
}

@media only screen and (min-width: 1024px) {
  h1 {
    font-size: 3.75rem;
  }
}

h1.h1ash3 {
  font-size: 1.25rem;
  line-height: 1.25;
}

@media only screen and (min-width: 1024px) {
  h1.h1ash3 {
    font-size: 1.5rem;
  }
}

h2 {
  font-size: 1.625rem;
  line-height: 1;
}

@media only screen and (min-width: 1024px) {
  h2 {
    font-size: 2.125rem;
  }
}

h3 {
  font-size: 1.25rem;
  line-height: 1.25;
}

@media only screen and (min-width: 1024px) {
  h3 {
    font-size: 1.5rem;
  }
}

h4 {
  font-size: .9375rem;
  line-height: 1.2;
}

h5 {
  font-size: .75rem;
  line-height: 1.2;
}

h6 {
  font-size: .625rem;
  font-weight: normal;
  font-family: var(--font-family-regular);
  line-height: 1.2;
}

@media only screen and (min-width: 1024px) {
  h6 {
    font-size: .75rem;
  }
}

p {
  font-weight: normal;
  font-family: var(--font-family-regular);
  letter-spacing: -.009375rem;
  font-size: .9375rem;
  font-style: normal;
  line-height: 1.2;
  text-decoration: none;
}

strong {
  font-weight: normal;
  font-family: var(--font-family-regular);
  letter-spacing: -.009375rem;
  font-size: .9375rem;
  font-style: normal;
  font-weight: normal;
  line-height: 1.2;
  font-family: var(--font-family-medium);
  letter-spacing: -.009375rem;
  text-decoration: none;
}

a {
  font-weight: normal;
  font-family: var(--font-family-regular);
  letter-spacing: -.009375rem;
  color: var(--font-color-primary);
  font-size: 1rem;
  font-style: normal;
  line-height: 1.125;
  text-decoration: none;
}

.button {
  font-weight: normal;
  font-family: var(--font-family-medium);
  letter-spacing: -.009375rem;
  box-sizing: border-box;
  width: fit-content;
  min-width: 110px;
  padding: 0 var(--space-large);
  border: none;
  outline: none;
  justify-content: center;
  align-items: center;
  font-size: .9375rem;
  line-height: 1;
  transition: all .2s;
  display: flex;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 1024px) {
  .button {
    min-width: 125px;
  }
}

.button--disabled {
  cursor: auto;
  opacity: .4;
  pointer-events: none;
  color: var(--color-xxl-gray);
}

.button--full-width {
  width: 100%;
}

.button--square {
  min-width: unset;
}

.button--large {
  height: 58px;
  min-height: 58px;
}

@media only screen and (min-width: 1024px) {
  .button--large {
    height: 66px;
    min-height: 66px;
  }
}

.button--small {
  height: 45px;
}

@media only screen and (min-width: 1024px) {
  .button--small {
    height: 50px;
  }
}

.button--primary {
  color: var(--color-xxl-white);
  background-color: var(--color-xxl-black);
}

.button--secondary {
  color: var(--color-xxl-web-black);
  background-color: var(--color-xxl-white);
}

.button--outlined {
  border: 1px solid var(--color-xxl-gray);
}

.button--outlined.button--primary {
  color: var(--color-xxl-white);
  border: 1px solid var(--color-xxl-white);
  background-color: #0000;
}

.button--accent {
  color: var(--color-xxl-web-black);
  background-color: var(--color-xxl-green);
  transition: all .2s;
}

.button--accent:focus-visible {
  outline-width: 2px;
  outline-style: solid;
  outline-color: var(--color-xxl-green);
  outline-offset: 2px;
}

.button--accent:active:not(:disabled), .button--accent:hover:not(:disabled) {
  color: var(--color-xxl-green);
  background-color: var(--color-xxl-web-black);
  border-color: var(--color-xxl-web-black);
  cursor: pointer;
}

.button--primary, .button--secondary {
  transition: all .2s;
}

.button--primary:focus-visible, .button--secondary:focus-visible {
  outline-width: 2px;
  outline-style: solid;
  outline-color: var(--color-xxl-green);
  outline-offset: 2px;
}

.button--primary:active:not(:disabled), .button--primary:hover:not(:disabled), .button--secondary:active:not(:disabled), .button--secondary:hover:not(:disabled) {
  color: var(--color-xxl-web-black);
  background-color: var(--color-xxl-green);
  border-color: var(--color-xxl-green);
  cursor: pointer;
}

.button:disabled {
  cursor: auto;
  opacity: .4;
  pointer-events: none;
}

.button--primary:disabled {
  color: var(--color-xxl-gray);
}

.button--with-icon svg {
  width: var(--space-small-regular);
  height: var(--space-small-regular);
  margin-right: var(--space-mini);
}

html, body {
  scroll-behavior: smooth;
}

body {
  min-width: 300px;
  color: var(--font-color-primary);
  font-size: var(--font-size-base);
  font-family: var(--font-family-regular);
  letter-spacing: var(--letter-spacing-base);
  background-color: var(--color-xxl-white);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin: 0;
  padding: 0;
  overflow-x: hidden;
}

main {
  margin-bottom: var(--space-bigger-giant);
  background-color: var(--color-xxl-white);
  position: relative;
}

@media only screen and (max-width: 374px), only screen and (hover: none)and (pointer: coarse)and (max-height: )and (orientation: landscape) {
  main.main-overflow {
    z-index: 2000;
  }
}

figure {
  margin: 0;
  padding: 0;
}

main:after {
  clear: both;
  visibility: hidden;
  content: ".";
  height: 0;
  display: block;
}

a:focus {
  outline: 2px solid var(--color-xxl-black);
  outline-offset: 2px;
}

a:focus:not(:focus-visible) {
  outline: 0;
}

a:focus-visible {
  outline: 2px solid var(--color-xxl-black);
  outline-offset: 2px;
}

.clickable {
  cursor: pointer;
}

::placeholder {
  color: var(--color-xxl-dark-gray);
  opacity: 1;
}

:-ms-placeholder-shown {
  color: var(--color-xxl-dark-gray);
}

::-moz-placeholder {
  color: var(--color-xxl-dark-gray);
}

.product__add-to-cart.disabled-button, .cart-product-info__add-to-cart.disabled-button, .disabled-button {
  cursor: auto;
  opacity: .4;
  pointer-events: none;
}

.base__loading-circle-wrapper {
  z-index: 2;
  background: inherit;
  pointer-events: none;
  justify-content: center;
  align-items: center;
  display: none;
  position: absolute;
  inset: 0;
}

.base__loading-circle-wrapper--green {
  background-color: var(--color-xxl-green);
}

.base__loading-circle {
  width: 20px;
  height: 20px;
  position: absolute;
}

.container {
  width: 100%;
  max-width: calc(100% - 24px);
  margin-left: auto;
  margin-right: auto;
}

@media only screen and (min-width: 1081px) {
  .container {
    max-width: calc(100% - 100px);
  }
}

@media only screen and (min-width: 1439px) {
  .container {
    max-width: 1332px;
  }
}

@media only screen and (min-width: 1280px) {
  .container--narrow {
    max-width: 1232px;
  }
}

.container--max-container-width {
  max-width: 1332px;
}

.container--max-site-width {
  max-width: 1920px;
}

.keyboard-focus:focus-visible {
  outline-width: 2px;
  outline-style: solid;
  outline-color: var(--color-xxl-green);
  outline-offset: 2px;
}

.hide-scrollbars {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.hide-scrollbars::-webkit-scrollbar {
  display: none;
}

.product-card__color-info {
  gap: var(--space-micro);
  height: var(--space-mini);
  align-items: center;
  display: flex;
}

@media only screen and (min-width: 1024px) {
  .product-card__color-info {
    height: 10px;
  }
}

.product-card__color-info span {
  box-sizing: border-box;
  width: var(--space-mini);
  height: var(--space-mini);
  border-radius: 50%;
  display: inline-block;
}

.product-card__color-info span.product-card__color--white {
  border: 1px solid var(--color-xxl-web-gray);
}

@media only screen and (min-width: 1024px) {
  .product-card__color-info span {
    width: 10px;
    height: 10px;
  }
}

.product-card__color-info p {
  margin: 0 0 0 1px;
  font-size: .625rem;
  line-height: 1;
}

@media only screen and (min-width: 1024px) {
  .product-card__color-info p {
    font-size: var(--space-small-regular);
  }
}

@media only screen and (min-width: 1024px) {
  .category-selector {
    margin: var(--space-big) auto;
  }
}

@media only screen and (min-width: 1024px) {
  .category-selector__list-items {
    gap: var(--space-small-regular);
    grid-template-columns: repeat(auto-fit, 122px);
  }
}

@media only screen and (min-width: 1024px) {
  .category-selector__icon {
    width: 48px;
    max-height: 48px;
    margin: 0 0 7px;
  }

  .category-selector__icon svg {
    font-size: 3rem;
  }
}

.info-messages {
  flex-direction: column;
  justify-content: center;
  align-items: center;
  display: flex;
}

.info-messages a {
  font-weight: normal;
  font-family: var(--font-family-regular);
  letter-spacing: -.009375rem;
  color: var(--color-xxl-web-black);
  white-space: nowrap;
  font-size: .75rem;
  line-height: 1rem;
  text-decoration: underline;
}

.info-messages__message {
  font-weight: normal;
  font-family: var(--font-family-regular);
  letter-spacing: -.009375rem;
  width: 100%;
  color: var(--color-xxl-web-black);
  text-align: center;
  background-color: var(--color-xxl-green);
  margin: 0;
  padding: 6px 0;
  font-size: .75rem;
  line-height: 1rem;
}

.info-messages__message--campaign {
  background-color: var(--color-xxl-orange);
}

.info-messages__message--reward {
  color: var(--color-xxl-white);
  background-color: var(--color-xxl-red);
}

.info-messages__message--black {
  color: var(--color-xxl-white);
  background-color: var(--color-xxl-black);
}

.info-messages__message a {
  color: var(--color-xxl-web-black);
}

.info-messages__message--reward a, .info-messages__message--black a {
  color: var(--color-xxl-white);
}

.top-usp li a {
  font-size: inherit;
  font-family: inherit;
  line-height: inherit;
  letter-spacing: inherit;
  text-decoration: underline;
}

.info-messages a:hover {
  text-decoration: none;
}

.top-usp {
  background-color: var(--color-xxl-green);
  width: 100%;
  height: 28px;
}

.top-usp ul {
  justify-content: center;
  align-items: center;
  height: 100%;
  margin: 0 auto;
  padding: 0;
  list-style-type: none;
  display: flex;
}

.top-usp li {
  height: 100%;
  margin-left: var(--space-small-regular);
  text-align: left;
  align-items: center;
  display: inline-flex;
}

.top-usp li:first-child {
  margin-left: 0;
}

@media only screen and (max-width: 767px) {
  .top-usp li {
    justify-content: center;
    width: 100%;
  }
}

.top-usp li svg, .top-usp li [data-inline-svg] {
  width: 12px;
  height: 12px;
  margin-right: var(--space-micro);
  vertical-align: middle;
  display: inline-block;
}

@media only screen and (max-width: 767px) {
  .top-usp .top-usp__mobile {
    display: none;
  }
}

.top-usp__top-message {
  color: var(--color-xxl-web-black);
  font-size: 10px;
  font-weight: 400;
  font-family: var(--font-family-regular);
  line-height: 1.2;
}

.top-usp__bottom-message {
  margin-left: var(--space-line);
  color: var(--color-xxl-web-black);
  font-size: 10px;
  font-weight: 400;
  font-family: var(--font-family-regular);
  line-height: 1.2;
}

.product-list {
  box-sizing: border-box;
  width: 100%;
  min-height: 466px;
  margin-top: 0;
  margin-bottom: var(--space-small-regular);
  column-gap: var(--space-mini);
  row-gap: var(--space-mini);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding: 0;
  list-style-type: none;
  display: grid;
}

@media only screen and (min-width: 768px) {
  .product-list {
    margin-bottom: var(--space-regular);
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

@media only screen and (min-width: 1024px) {
  .product-list {
    min-height: 556px;
    margin-bottom: var(--space-large);
    column-gap: var(--space-small-regular);
    row-gap: var(--space-small-regular);
    padding-left: 3px;
  }
}

html.exit-denmark #js-react-header, html.exit-denmark header:first-of-type {
  height: 52px;
}

@media (min-width: 1024px) {
  html.exit-denmark #js-react-header, html.exit-denmark header:first-of-type {
    height: 76px;
  }
}

html.exit-denmark header:first-of-type #desktop-mega-menu, html.exit-denmark header:first-of-type .search-suggestions-wrapper, html.exit-denmark header:first-of-type #xxl-react-login-link, html.exit-denmark header:first-of-type .mini-cart-button, html.exit-denmark header:first-of-type nav {
  display: none;
}

@font-face {
  font-family: XXLSans;
  src: url("../media/XXLSans-Regular.0a77pi_08m48u.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: XXLSans medium;
  src: url("../media/XXLSans-Medium.0-1b1jnw57-_-.woff2") format("woff2");
  font-display: swap;
}

@font-face {
  font-family: XXLSans bold;
  src: url("../media/XXLSans-Bold.16v~e-7yojj~l.woff2") format("woff2");
  font-display: swap;
}

.category-selector {
  margin: var(--space-large) auto;
}

@media only screen and (min-width: 1024px) {
  .category-selector {
    margin: var(--space-big) auto;
  }
}

.category-selector__list-items {
  grid-template-columns: repeat(auto-fit, 104px);
  justify-content: flex-start;
  gap: 6px;
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: grid;
}

@media only screen and (min-width: 1024px) {
  .category-selector__list-items {
    gap: var(--space-small-regular);
    grid-template-columns: repeat(auto-fit, 122px);
  }
}

.category-selector__item {
  min-height: var(--space-large);
}

.category-selector__item--selected {
  border-bottom: 1px solid var(--color-xxl-black);
}

@media only screen and (min-width: 1024px) {
  .category-selector__item {
    border: 0;
  }
}

.category-selector__link {
  box-sizing: border-box;
  width: 104px;
  height: 104px;
  padding: var(--space-mini);
  color: var(--color-xxl-black);
  font-size: .9375rem;
  font-family: var(--font-family-regular);
  text-align: center;
  word-break: break-word;
  background-color: var(--color-xxl-light-gray);
  -webkit-user-select: none;
  user-select: none;
  border: 0;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  line-height: 1.2;
  display: flex;
}

.category-selector__link:focus-visible {
  outline-width: 2px;
  outline-style: solid;
  outline-color: var(--color-xxl-green);
  outline-offset: 2px;
}

@media (hover: hover) {
  .category-selector__link--clickable:hover {
    color: var(--color-xxl-black);
    background-color: var(--color-xxl-green);
    cursor: pointer;
  }
}

@media (hover: none) {
  .category-selector__link--clickable:active {
    color: var(--color-xxl-black);
    background-color: var(--color-xxl-green);
    cursor: pointer;
  }
}

.category-selector__link--clickable:focus-visible {
  color: var(--color-xxl-black);
  background-color: var(--color-xxl-green);
  cursor: pointer;
}

@media only screen and (min-width: 1024px) {
  .category-selector__link {
    box-sizing: border-box;
    width: 122px;
    height: 122px;
    padding: var(--space-mini);
    background-color: var(--color-xxl-light-gray);
    flex-direction: column;
    justify-content: center;
    font-size: .9375rem;
  }
}

.category-selector__link--selected {
  color: var(--color-xxl-white);
  font-family: var(--font-family-bold);
  background-color: var(--color-xxl-black);
}

.category-selector__link--selected:not(:hover) img {
  filter: invert();
}

.category-selector__icon {
  width: 32px;
  max-height: 32px;
  margin: 0 0 4px;
}

.category-selector__icon--invert {
  color: var(--color-xxl-white);
}

.category-selector__icon svg {
  font-size: 2rem;
}

@media only screen and (min-width: 1024px) {
  .category-selector__icon {
    width: 48px;
    max-height: 48px;
    margin: 0 0 7px;
  }

  .category-selector__icon svg {
    font-size: 3rem;
  }
}

.category-selector__text {
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

@media only screen and (min-width: 1024px) {
  .category-selector__text {
    white-space: normal;
    text-overflow: clip;
    overflow: visible;
  }
}

.giftcard-page-hero {
  flex-direction: column;
  justify-content: center;
  min-height: 300px;
  display: flex;
  position: relative;
  overflow: hidden;
}

@media only screen and (min-width: 768px) {
  .giftcard-page-hero {
    min-height: 400px;
  }
}

.giftcard-page-hero__heading {
  margin-top: 0;
  margin-bottom: var(--space-big);
  text-align: left;
  font-size: 2rem;
}

@media only screen and (min-width: 768px) {
  .giftcard-page-hero__heading {
    margin-bottom: var(--space-bigger-big);
    font-size: 2.5rem;
  }
}

@media only screen and (min-width: 1024px) {
  .giftcard-page-hero__heading {
    font-size: 3rem;
  }
}

.giftcard-page-hero__details {
  margin-right: 0;
}

@media only screen and (min-width: 768px) {
  .giftcard-page-hero__details {
    margin-right: 48px;
  }
}

@media only screen and (min-width: 1024px) {
  .giftcard-page-hero__details {
    margin-right: 200px;
  }
}

.giftcard-page-hero__info {
  z-index: 2;
  box-sizing: border-box;
  width: 100%;
  padding-top: var(--space-large);
  padding-bottom: var(--space-large);
  flex-direction: column;
  padding: 0 12px;
  display: flex;
  position: absolute;
}

@media only screen and (min-width: 768px) {
  .giftcard-page-hero__info {
    flex-direction: row;
    align-items: center;
  }
}

@media only screen and (min-width: 1024px) {
  .giftcard-page-hero__info {
    padding: 0 48px;
  }
}

.giftcard-page-hero__info.white {
  color: var(--color-xxl-white);
}

.giftcard-page-hero__card-image {
  z-index: -1;
  text-align: right;
  width: 100%;
  height: 65%;
  position: absolute;
  bottom: -40px;
  right: -24px;
}

.giftcard-page-hero__card-image img {
  width: auto;
  height: 100%;
}

@media only screen and (min-width: 768px) {
  .giftcard-page-hero__card-image {
    width: 40%;
    height: 100%;
    position: static;
  }

  .giftcard-page-hero__card-image img {
    width: 100%;
  }
}

.hero-component__bullet-list > li {
  width: 100%;
  margin-bottom: var(--space-small-large);
  text-align: left;
  align-items: center;
  font-size: 1rem;
  line-height: 1;
  display: flex;
}

@media only screen and (min-width: 768px) {
  .hero-component__bullet-list > li {
    margin-bottom: 46px;
    font-size: 1.3rem;
  }
}

.banner {
  z-index: 1;
  flex-direction: column;
  height: 100%;
  text-decoration: none;
  display: flex;
  position: relative;
}

.banner-container {
  z-index: 1;
  position: relative;
}

.banner--link a {
  flex-direction: column;
  flex-grow: 1;
  justify-content: flex-end;
  display: flex;
}

.banner--link:hover .banner__button {
  color: var(--color-xxl-web-black);
  background-color: var(--color-xxl-green);
}

.banner--link:hover .banner__transparent-button-text:after {
  right: 1px;
}

.banner.campaign-banner__item:focus .banner__button {
  outline: none;
}

.banner--text-top .banner__text-wrapper {
  justify-content: flex-start;
}

.banner--text-bottom .banner__text-wrapper {
  justify-content: flex-end;
}

.banner__responsive-wrapper {
  flex-direction: column;
  width: 100%;
  height: 100%;
  display: flex;
  position: relative;
  overflow-x: hidden;
}

.campaign-banner .banner__responsive-wrapper {
  min-height: 168px;
}

@media only screen and (min-width: 768px) {
  .campaign-banner .banner__responsive-wrapper {
    min-height: 200px;
  }
}

@media only screen and (min-width: 1024px) {
  .campaign-banner .banner__responsive-wrapper {
    min-height: 280px;
  }
}

.full-width-banner .banner__responsive-wrapper {
  min-height: 220px;
}

@media only screen and (min-width: 768px) {
  .full-width-banner .banner__responsive-wrapper {
    min-height: 400px;
  }
}

@media only screen and (min-width: 1024px) {
  .full-width-banner .banner__responsive-wrapper {
    min-height: 540px;
  }
}

.banner__responsive-wrapper > :not(.banner__image) {
  z-index: 2;
}

.banner__image {
  z-index: 1;
  object-fit: cover;
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  inset: 0;
}

.banner__text-wrapper {
  padding: var(--space-mini);
  flex-grow: 1;
}

@media only screen and (min-width: 1024px) {
  .banner__text-wrapper {
    padding: var(--space-large);
  }
}

.banner__text-wrapper--grid {
  max-width: 100%;
  padding: var(--space-regular);
  flex-direction: column;
  display: flex;
}

@media only screen and (min-width: 1024px) {
  .banner__text-wrapper--grid {
    padding: var(--space-large);
  }
}

.campaign-hub-hero-section .banner__text-wrapper {
  width: 100%;
  max-width: 100%;
}

@media only screen and (min-width: 768px) {
  .campaign-hub-hero-section .banner__text-wrapper {
    width: 70%;
  }
}

@media only screen and (min-width: 1024px) {
  .campaign-hub-hero-section .banner__text-wrapper {
    width: 60%;
  }
}

.banner__header {
  width: 100%;
  display: flex;
}

.banner__header__text {
  flex-direction: column;
  flex-grow: 1;
  display: flex;
}

.banner__header__ribbon-wrapper .ribbon {
  justify-content: flex-end;
}

.banner__headline {
  margin: 0 0 var(--space-micro);
  color: var(--color-xxl-white);
}

.banner__headline.banner--inverted {
  color: var(--color-xxl-black);
}

.banner__text {
  margin-bottom: var(--space-micro);
  color: var(--color-xxl-white);
  display: inline-block;
}

@media only screen and (min-width: 768px) {
  .banner__text {
    margin-bottom: var(--space-mini);
  }
}

.banner__text.banner--inverted {
  color: var(--color-xxl-black);
}

.banner__description {
  color: var(--color-xxl-white);
  margin: 0;
}

.banner__description.banner--inverted {
  color: var(--color-xxl-black);
}

.banner__bottom-row, .banner__button-wrap {
  padding: 0 var(--space-small-regular) var(--space-small-regular);
}

@media only screen and (min-width: 1024px) {
  .banner__bottom-row, .banner__button-wrap {
    padding: 0 var(--space-large) var(--space-large);
  }
}

.campaign-banner .banner__button {
  pointer-events: none;
}

.banner__type {
  color: var(--color-xxl-white);
  margin-bottom: 4px;
}

.banner__type.banner--inverted {
  color: var(--color-xxl-black);
}

.banner__transparent-button {
  color: inherit;
  pointer-events: none;
  background-color: #0000;
  border: none;
  outline: none;
  margin: 0;
  padding: 0;
  position: relative;
}

.banner__transparent-button-text {
  padding-right: var(--space-regular);
  color: currentColor;
  display: inline-block;
  position: relative;
}

.banner__transparent-button-text:after {
  content: "";
  border-top: 1px solid;
  border-right: 1px solid;
  width: 7px;
  height: 7px;
  margin: auto;
  transition: right .2s;
  display: block;
  position: absolute;
  top: 0;
  bottom: 0;
  right: 4px;
  transform: rotate(45deg);
}

.full-grid-banner {
  height: 300px;
  margin-top: 12px;
}

.full-grid-banner--multi {
  height: 316px;
}

@media only screen and (min-width: 1024px) {
  .full-grid-banner--multi {
    height: 400px;
  }

  .full-grid-banner {
    height: 400px;
    margin-top: 24px;
  }
}

.hero-component {
  text-align: center;
  overflow: hidden;
}

.hero-component__heading-wrapper {
  box-sizing: border-box;
  width: 100%;
  padding-right: var(--space-small-regular);
  color: var(--font-color-primary);
  flex-direction: column;
  flex-grow: 1;
  display: flex;
  position: relative;
}

.hero-component__heading-wrapper--text-top {
  justify-content: flex-start;
}

.hero-component__heading-wrapper--text-bottom {
  justify-content: flex-end;
}

.hero-component__heading {
  margin: 0 0 var(--space-micro);
}

@media only screen and (min-width: 768px) {
  .hero-component__heading {
    margin: 0 0 var(--space-small-regular);
  }
}

.hero-component__sub-heading {
  margin: 0 0 var(--space-micro);
}

@media only screen and (min-width: 768px) {
  .hero-component__sub-heading {
    margin: 0 0 var(--space-small-regular);
  }
}

.hero-component__xxl-label {
  margin-bottom: var(--space-line);
  align-items: center;
  display: flex;
}

@media only screen and (min-width: 768px) {
  .hero-component__xxl-label {
    margin-bottom: var(--space-mini);
  }
}

.hero-component__xxl-label img {
  margin-right: var(--space-small-regular);
}

.hero-component .hero-component__link {
  display: block;
}

.hero-component .hero-component__hero-image {
  justify-content: center;
  align-items: center;
  height: 284px;
  display: flex;
  position: relative;
  overflow: hidden;
}

.hero-component .hero-component__hero-image figure, .hero-component .hero-component__hero-image .banner-image {
  object-fit: cover;
  max-width: 1332px;
  width: 100vw !important;
  height: 100% !important;
  display: inline !important;
}

.hero-component .hero-component__hero-image__height-560 {
  height: 380px;
}

@media only screen and (min-width: 768px) {
  .hero-component .hero-component__hero-image__height-560 {
    height: 560px;
  }
}

.hero-component .hero-component__hero-image__height-400 {
  height: 200px;
}

@media only screen and (min-width: 768px) {
  .hero-component .hero-component__hero-image__height-400 {
    height: 400px;
  }
}

.hero-component .hero-component__info {
  box-sizing: border-box;
  text-align: left;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  padding: 24px 12px 54px;
  display: flex;
  position: absolute;
  inset: 0;
}

@media only screen and (min-width: 768px) {
  .hero-component .hero-component__info {
    padding: 54px 24px 80px;
  }
}

.hero-component .hero-component__info.black * {
  color: var(--font-color-primary);
}

.hero-component .hero-component__info.black .hero-component__button {
  color: var(--font-color-primary-invert);
  background-color: var(--font-color-primary);
}

@media (hover: none) and (pointer: coarse) {
  .hero-component .hero-component__info.black .hero-component__button {
    -webkit-tap-highlight-color: #0000;
  }

  .hero-component .hero-component__info.black .hero-component__button:active {
    background-color: var(--color-xxl-green);
  }
}

@media (hover: hover) and (pointer: fine), (hover: hover) and (pointer: coarse) {
  .hero-component .hero-component__info.black .hero-component__button {
    transition: all .2s;
  }

  .hero-component .hero-component__info.black .hero-component__button:hover {
    background-color: var(--color-xxl-green);
  }
}

.hero-component .hero-component__info.black .hero-component__button:focus {
  outline: none;
}

.hero-component .hero-component__info.black .hero-component__button.active {
  background-color: var(--color-xxl-green);
  pointer-events: none;
}

.hero-component .hero-component__info.black .hero-component__button:hover {
  color: var(--font-color-primary);
}

.hero-component .hero-component__info:not(.black) * {
  color: var(--font-color-primary-invert);
}

.hero-component .hero-component__info:not(.black) .hero-component__button {
  color: var(--font-color-primary);
  background-color: var(--font-color-primary-invert);
}

@media (hover: none) and (pointer: coarse) {
  .hero-component .hero-component__info:not(.black) .hero-component__button {
    -webkit-tap-highlight-color: #0000;
  }

  .hero-component .hero-component__info:not(.black) .hero-component__button:active {
    background-color: var(--color-xxl-green);
  }
}

@media (hover: hover) and (pointer: fine), (hover: hover) and (pointer: coarse) {
  .hero-component .hero-component__info:not(.black) .hero-component__button {
    transition: all .2s;
  }

  .hero-component .hero-component__info:not(.black) .hero-component__button:hover {
    background-color: var(--color-xxl-green);
  }
}

.hero-component .hero-component__info:not(.black) .hero-component__button:focus {
  outline: none;
}

.hero-component .hero-component__info:not(.black) .hero-component__button.active {
  background-color: var(--color-xxl-green);
  pointer-events: none;
}

.hero-component__button-wrap {
  margin-top: var(--space-small-regular);
  margin-right: var(--space-small-regular);
}

.hero-component__buttons-wrap {
  margin-bottom: -30px;
  display: flex;
}

@media only screen and (min-width: 768px) {
  .hero-component__buttons-wrap {
    margin-bottom: -37px;
  }
}

@media only screen and (max-width: 767px) {
  .hero-component .hero-component__button-wrap:nth-child(n+3) {
    display: none;
  }
}

.hero-component--one-slide .hero-component__info {
  padding-bottom: 24px;
  display: flex;
}

@media only screen and (min-width: 768px) {
  .hero-component--one-slide .hero-component__info {
    padding-bottom: 44px;
  }
}

.hero-component:not(.hero-component__teamsales) .hero-component__link:hover .hero-component__button {
  color: var(--color-xxl-web-black);
  background-color: var(--color-xxl-green);
}

.hero-component .hero-component__wrap {
  position: relative;
}

.hero-component .hero-component__wrap .loader {
  z-index: 1;
  position: absolute;
  top: 50vh;
  left: 50%;
  transform: translate(-50%, -50%);
}

.hero-component.hero-component__teamsales .hero-component__button {
  margin-right: 14px;
}

.hero-component.hero-component__teamsales .hero-component__button:last-child {
  margin: 0;
}

.hero-component__bullet-list {
  padding: 0;
  list-style-type: none;
}

.hero-component__bullet-list > li {
  width: 100%;
  margin-bottom: var(--space-small-large);
  align-items: center;
  display: flex;
}

@media only screen and (min-width: 768px) {
  .hero-component__bullet-list > li {
    margin-bottom: 46px;
  }
}

.hero-component__bullet-icon {
  width: 28px;
  margin-right: var(--space-regular);
  display: flex;
}

.hero-component__bullet-icon svg {
  width: 100%;
  height: auto;
}

/*# sourceMappingURL=_0ho5.~r._.css.map*/