/*!****************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!./styles/layout/theme.scss ***!
  \****************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@200;300;400;500;600;700;800&display=swap);
/*!********************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!./styles/layout/theme.scss (1) ***!
  \********************************************************************************************************************************************************************************************************************************************/
/**
 * Config: Configuration
 * -----------------------------------------------------------------------------
 * Master import that's included in all Vue components.
 * - No code should be output from the configuration files as they're reused.
 *
 */
/**
 * Config: SASS variables
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Config: Mixins
 * -----------------------------------------------------------------------------
 * Global and reusable utility functions to reduce common styling.
 * - Add in alphabetical order.
 *
 */
/**
 * Resets form buttons to appear as a standard text link.
 */
/**
 * Sets container properties.
 */
/**
 * Reset container properties.
 */
/**
 * Sets custom scrollbar on element.
 * - Add to element with overflow.
 */
/**
 * Default focus styling for browsers.
 */
/**
 * Resets input elements.
 */
/**
 * Resets list elements to appear as a stacked text links.
 */
/**
 * Loading/skeleton animation.
 */
/**
 * Reset text style to default.
 * - Used for preview bar and Storybook styles.
 */
/**
 * Outputs list of transition properties.
 *
 * Accepts:
 * - $transitions: {String} List of transition properties to set
 *
 * Usage:
 * .selector {
 *   @include transition(width, height var(--timing-quick);
 * }
 */
/**
 * Returns the transition properties in the correct format.
 * This function is used by @mixin transition($transitions...).
 */
/**
 * Hide element but make it accessible to screen readers.
 */
/**
 * Reverse the properties applied by @mixin visually-hidden.
 * @param {String} $position - Positioning method for element.
 */
/**
 * Button background color swipe on hover.
 * @param {String} $background - Background colour for swipe.
 */
/**
 * Layout: Theme
 * -----------------------------------------------------------------------------
 * Core entry file for all styling in the theme layout.
 *
 */
/**
 * Import base.
 * - Add in alphabetical order.
 * - Base styles not imported here are in `critical/theme.scss`.
 */
/**
 * Base: Accessibility
 * -----------------------------------------------------------------------------
 * Handles tabbable state styles and sign post styles.
 *
 */
.accessibility {
  /**
   * Media queries.
   */
}
.accessibility__sign-post.button {
  left: var(--spacing-s);
  max-width: calc(100vw - var(--spacing-s) * 2);
  position: fixed;
  top: var(--spacing-s);
  z-index: var(--layer-temporary);
}
.accessibility__sign-post.button:not(:focus) {
  border: 0;
  clip: rect(0 0 0 0);
  -webkit-clip-path: inset(100%);
          clip-path: inset(100%);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}
.accessibility__information.button.is-active {
  line-height: 140%;
  line-height: var(--line-height-normal, 140%);
}
.accessibility__information.button.is-active .button__label {
  opacity: 1;
  opacity: initial;
}
.accessibility__sign-post--main.button {
  top: calc(var(--header-visible-height) + var(--spacing-s));
}
@media (min-width: 64em) {
  .accessibility__information.is-active:focus {
    max-width: 300px;
  }
}

/**
 * Reset focus state on tabbable elements.
 */
[tabindex]:focus,
[draggable]:focus,
a[href]:focus,
area:focus,
button:enabled:focus,
input:not([type=hidden]):enabled:focus,
object:focus,
select:enabled:focus,
textarea:enabled:focus {
  outline: 0;
}
.is-tabbable [tabindex]:focus,
.is-tabbable [draggable]:focus,
.is-tabbable a[href]:focus,
.is-tabbable area:focus,
.is-tabbable button:enabled:focus,
.is-tabbable input:not([type=hidden]):enabled:focus,
.is-tabbable object:focus,
.is-tabbable select:enabled:focus,
.is-tabbable textarea:enabled:focus {
  outline: dashed var(--color-neutral-1);
  outline-offset: 2px;
  outline-width: 2px;
}

/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
html, body {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--scale-base);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

.text-heading-6xl,
.text-heading-6xl-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-13);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -2.5rem;
}

@media (min-width: 90em) {
  .text-heading-6xl-desktop.text-heading-6xl-desktop,
  .text-heading-6xl-desktop-hover:hover.text-heading-6xl-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-13);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -2.5rem;
  }
}
.text-heading-5xl,
.text-heading-5xl-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-12);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -1.5rem;
}

@media (min-width: 90em) {
  .text-heading-5xl-desktop.text-heading-5xl-desktop,
  .text-heading-5xl-desktop-hover:hover.text-heading-5xl-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -1.5rem;
  }
}
.text-heading-4xl,
.text-heading-4xl-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-11);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -1.25rem;
}

@media (min-width: 90em) {
  .text-heading-4xl-desktop.text-heading-4xl-desktop,
  .text-heading-4xl-desktop-hover:hover.text-heading-4xl-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-11);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -1.25rem;
  }
}
.text-heading-3xl,
.text-heading-3xl-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-10);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -1rem;
}

@media (min-width: 90em) {
  .text-heading-3xl-desktop.text-heading-3xl-desktop,
  .text-heading-3xl-desktop-hover:hover.text-heading-3xl-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-10);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -1rem;
  }
}
.text-heading-2xl,
.text-heading-2xl-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-9);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.9rem;
}

@media (min-width: 90em) {
  .text-heading-2xl-desktop.text-heading-2xl-desktop,
  .text-heading-2xl-desktop-hover:hover.text-heading-2xl-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-9);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.9rem;
  }
}
.text-heading-xl,
.text-heading-xl-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-8);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.7rem;
}

@media (min-width: 90em) {
  .text-heading-xl-desktop.text-heading-xl-desktop,
  .text-heading-xl-desktop-hover:hover.text-heading-xl-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-8);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.7rem;
  }
}
.text-heading-l,
.text-heading-l-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-7);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.6rem;
}

@media (min-width: 90em) {
  .text-heading-l-desktop.text-heading-l-desktop,
  .text-heading-l-desktop-hover:hover.text-heading-l-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-7);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.6rem;
  }
}
.text-heading-m,
.text-heading-m-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-6);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.4rem;
}

@media (min-width: 90em) {
  .text-heading-m-desktop.text-heading-m-desktop,
  .text-heading-m-desktop-hover:hover.text-heading-m-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-6);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.4rem;
  }
}
.text-heading-s,
.text-heading-s-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-5);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.35rem;
}

@media (min-width: 90em) {
  .text-heading-s-desktop.text-heading-s-desktop,
  .text-heading-s-desktop-hover:hover.text-heading-s-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-5);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-2);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.35rem;
  }
}
.text-heading-xs,
.text-heading-xs-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-4);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}

@media (min-width: 90em) {
  .text-heading-xs-desktop.text-heading-xs-desktop,
  .text-heading-xs-desktop-hover:hover.text-heading-xs-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-4);
    font-weight: var(--font-weight-ft-aktual-1);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-2);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
  }
}
.text-heading-2xs,
.text-heading-2xs-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}

@media (min-width: 90em) {
  .text-heading-2xs-desktop.text-heading-2xs-desktop,
  .text-heading-2xs-desktop-hover:hover.text-heading-2xs-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-3);
    font-weight: var(--font-weight-ft-aktual-1);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-2);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
  }
}
.text-heading-3xs,
.text-heading-3xs-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-1);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}

@media (min-width: 90em) {
  .text-heading-3xs-desktop.text-heading-3xs-desktop,
  .text-heading-3xs-desktop-hover:hover.text-heading-3xs-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-1);
    font-weight: var(--font-weight-ft-aktual-1);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-2);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
  }
}
.text-body-xl-regular,
.text-body-xl-regular-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-4);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-xl-regular-desktop.text-body-xl-regular-desktop,
  .text-body-xl-regular-desktop-hover:hover.text-body-xl-regular-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-4);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-xl-bold,
.text-body-xl-bold-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-4);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-xl-bold-desktop.text-body-xl-bold-desktop,
  .text-body-xl-bold-desktop-hover:hover.text-body-xl-bold-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-4);
    font-weight: var(--font-weight-ft-aktual-1);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-xl-underline,
.text-body-xl-underline-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-4);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: underline;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-xl-underline-desktop.text-body-xl-underline-desktop,
  .text-body-xl-underline-desktop-hover:hover.text-body-xl-underline-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-4);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: underline;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-l-regular,
.text-body-l-regular-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-l-regular-desktop.text-body-l-regular-desktop,
  .text-body-l-regular-desktop-hover:hover.text-body-l-regular-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-3);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-l-bold,
.text-body-l-bold-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-l-bold-desktop.text-body-l-bold-desktop,
  .text-body-l-bold-desktop-hover:hover.text-body-l-bold-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-3);
    font-weight: var(--font-weight-ft-aktual-1);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-l-underline,
.text-body-l-underline-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: underline;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-l-underline-desktop.text-body-l-underline-desktop,
  .text-body-l-underline-desktop-hover:hover.text-body-l-underline-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-3);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: underline;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
p, .text-body-m-regular,
p, .text-body-m-regular-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  p, .text-body-m-regular-desktop.text-body-m-regular-desktop,
  p, .text-body-m-regular-desktop-hover:hover.text-body-m-regular-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-2);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-m-bold,
.text-body-m-bold-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-3);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-m-bold-desktop.text-body-m-bold-desktop,
  .text-body-m-bold-desktop-hover:hover.text-body-m-bold-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-2);
    font-weight: var(--font-weight-ft-aktual-3);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
a, .text-body-m-underline,
a, .text-body-m-underline-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: underline;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  a, .text-body-m-underline-desktop.text-body-m-underline-desktop,
  a, .text-body-m-underline-desktop-hover:hover.text-body-m-underline-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-2);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: underline;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-s-bold,
.text-body-s-bold-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-1);
  font-weight: var(--font-weight-ft-aktual-3);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-s-bold-desktop.text-body-s-bold-desktop,
  .text-body-s-bold-desktop-hover:hover.text-body-s-bold-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-1);
    font-weight: var(--font-weight-ft-aktual-3);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-s-underline,
.text-body-s-underline-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-1);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: underline;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-s-underline-desktop.text-body-s-underline-desktop,
  .text-body-s-underline-desktop-hover:hover.text-body-s-underline-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-1);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: underline;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-s-regular,
.text-body-s-regular-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-1);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-s-regular-desktop.text-body-s-regular-desktop,
  .text-body-s-regular-desktop-hover:hover.text-body-s-regular-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-1);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-xs-regular,
.text-body-xs-regular-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-0);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-xs-regular-desktop.text-body-xs-regular-desktop,
  .text-body-xs-regular-desktop-hover:hover.text-body-xs-regular-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-0);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-xs-bold,
.text-body-xs-bold-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-0);
  font-weight: var(--font-weight-ft-aktual-3);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-xs-bold-desktop.text-body-xs-bold-desktop,
  .text-body-xs-bold-desktop-hover:hover.text-body-xs-bold-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-0);
    font-weight: var(--font-weight-ft-aktual-3);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-body-xs-underline,
.text-body-xs-underline-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-0);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: underline;
  text-indent: var(--text-indent-0);
  text-transform: none;
}

@media (min-width: 90em) {
  .text-body-xs-underline-desktop.text-body-xs-underline-desktop,
  .text-body-xs-underline-desktop-hover:hover.text-body-xs-underline-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-0);
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-1);
    text-decoration: underline;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}
.text-other-button-l,
.text-other-button-l-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-4);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-3);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}

@media (min-width: 90em) {
  .text-other-button-l-desktop.text-other-button-l-desktop,
  .text-other-button-l-desktop-hover:hover.text-other-button-l-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-3);
    font-weight: var(--font-weight-ft-aktual-4);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-3);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
  }
}
.text-other-button-s,
.text-other-button-s-hover:hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-4);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-3);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}

@media (min-width: 90em) {
  .text-other-button-s-desktop.text-other-button-s-desktop,
  .text-other-button-s-desktop-hover:hover.text-other-button-s-desktop-hover:hover {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-2);
    font-weight: var(--font-weight-ft-aktual-4);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-3);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
  }
}
.text-other-price-large,
.text-other-price-large-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-6);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.4rem;
}

@media (min-width: 90em) {
  .text-other-price-large-desktop.text-other-price-large-desktop,
  .text-other-price-large-desktop-hover:hover.text-other-price-large-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-6);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.4rem;
  }
}
.text-other-price-small,
.text-other-price-small-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-5);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.35rem;
}

@media (min-width: 90em) {
  .text-other-price-small-desktop.text-other-price-small-desktop,
  .text-other-price-small-desktop-hover:hover.text-other-price-small-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-5);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.35rem;
  }
}
.text-other-sale-l,
.text-other-sale-l-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-6);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: line-through;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.4rem;
}

@media (min-width: 90em) {
  .text-other-sale-l-desktop.text-other-sale-l-desktop,
  .text-other-sale-l-desktop-hover:hover.text-other-sale-l-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-6);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: line-through;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.4rem;
  }
}
.text-other-sale-s,
.text-other-sale-s-hover:hover {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-5);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  text-decoration: line-through;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.35rem;
}

@media (min-width: 90em) {
  .text-other-sale-s-desktop.text-other-sale-s-desktop,
  .text-other-sale-s-desktop-hover:hover.text-other-sale-s-desktop-hover:hover {
    font-family: var(--font-family-thunder);
    font-size: var(--font-size-5);
    font-weight: var(--font-weight-thunder-0);
    letter-spacing: var(--letter-spacing-1);
    line-height: var(--line-height-0);
    text-decoration: line-through;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
    margin-block-end: -0.35rem;
  }
}
/**
 * Base: Form
 * -----------------------------------------------------------------------------
 * Form resets, browser normalizing and base styling.
 *
 */
form {
  margin: 0;
}

fieldset {
  border: 0;
  margin: 0;
  padding: 0;
}

legend {
  margin: 0;
  padding: 0;
}

a,
area,
button,
[role=button],
input,
label,
select,
summary,
textarea {
  font-family: inherit;
  touch-action: manipulation;
}

input[disabled],
textarea[disabled],
select[disabled] {
  cursor: default;
}

button,
input[type=submit],
label[for] {
  cursor: pointer;
}

textarea {
  min-height: 90px;
  resize: vertical;
}

select::-ms-expand {
  display: none;
}

/**
 * Force option color (affects IE only).
 */
option {
  background-color: var(--color-neutral-5);
  color: var(--color-neutral-1);
}

.input-error {
  background-color: var(--color-neutral-5);
  border-color: var(--color-system-error-light-mode);
  color: var(--color-neutral-1);
}

input[type=email],
input[type=number],
input[type=password],
input[type=search],
input[type=tel],
input[type=text],
textarea,
select {
  -moz-appearance: textfield;
  -webkit-appearance: textfield;
          appearance: textfield;
  border-radius: 0;
  border-style: solid;
  /**
   * Remove input spinners.
   */
}
input[type=email]::-moz-placeholder, input[type=number]::-moz-placeholder, input[type=password]::-moz-placeholder, input[type=search]::-moz-placeholder, input[type=tel]::-moz-placeholder, input[type=text]::-moz-placeholder, textarea::-moz-placeholder, select::-moz-placeholder {
  color: var(--color-neutral-3);
  opacity: 1;
}
input[type=email]::placeholder,
input[type=number]::placeholder,
input[type=password]::placeholder,
input[type=search]::placeholder,
input[type=tel]::placeholder,
input[type=text]::placeholder,
textarea::placeholder,
select::placeholder {
  color: var(--color-neutral-3);
  opacity: 1;
}
input[type=email][disabled],
input[type=number][disabled],
input[type=password][disabled],
input[type=search][disabled],
input[type=tel][disabled],
input[type=text][disabled],
textarea[disabled],
select[disabled] {
  cursor: default;
  opacity: 0.75;
}
input[type=email]:focus,
input[type=number]:focus,
input[type=password]:focus,
input[type=search]:focus,
input[type=tel]:focus,
input[type=text]:focus,
textarea:focus,
select:focus {
  border-color: var(--color-system-info-light-mode);
}
input[type=email]::-webkit-inner-spin-button, input[type=email]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button,
input[type=password]::-webkit-inner-spin-button,
input[type=password]::-webkit-outer-spin-button,
input[type=search]::-webkit-inner-spin-button,
input[type=search]::-webkit-outer-spin-button,
input[type=tel]::-webkit-inner-spin-button,
input[type=tel]::-webkit-outer-spin-button,
input[type=text]::-webkit-inner-spin-button,
input[type=text]::-webkit-outer-spin-button,
textarea::-webkit-inner-spin-button,
textarea::-webkit-outer-spin-button,
select::-webkit-inner-spin-button,
select::-webkit-outer-spin-button {
  -webkit-appearance: none;
  appearance: none;
  margin: 0;
}
input[type=email]::-ms-clear,
input[type=number]::-ms-clear,
input[type=password]::-ms-clear,
input[type=search]::-ms-clear,
input[type=tel]::-ms-clear,
input[type=text]::-ms-clear,
textarea::-ms-clear,
select::-ms-clear {
  display: none;
  height: 0;
  width: 0;
}
input[type=email]::-ms-reveal,
input[type=number]::-ms-reveal,
input[type=password]::-ms-reveal,
input[type=search]::-ms-reveal,
input[type=tel]::-ms-reveal,
input[type=text]::-ms-reveal,
textarea::-ms-reveal,
select::-ms-reveal {
  display: none;
  height: 0;
  width: 0;
}
input[type=email]::-webkit-search-decoration, input[type=email]::-webkit-search-cancel-button, input[type=email]::-webkit-search-results-button, input[type=email]::-webkit-search-results-decoration,
input[type=number]::-webkit-search-decoration,
input[type=number]::-webkit-search-cancel-button,
input[type=number]::-webkit-search-results-button,
input[type=number]::-webkit-search-results-decoration,
input[type=password]::-webkit-search-decoration,
input[type=password]::-webkit-search-cancel-button,
input[type=password]::-webkit-search-results-button,
input[type=password]::-webkit-search-results-decoration,
input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration,
input[type=tel]::-webkit-search-decoration,
input[type=tel]::-webkit-search-cancel-button,
input[type=tel]::-webkit-search-results-button,
input[type=tel]::-webkit-search-results-decoration,
input[type=text]::-webkit-search-decoration,
input[type=text]::-webkit-search-cancel-button,
input[type=text]::-webkit-search-results-button,
input[type=text]::-webkit-search-results-decoration,
textarea::-webkit-search-decoration,
textarea::-webkit-search-cancel-button,
textarea::-webkit-search-results-button,
textarea::-webkit-search-results-decoration,
select::-webkit-search-decoration,
select::-webkit-search-cancel-button,
select::-webkit-search-results-button,
select::-webkit-search-results-decoration {
  display: none;
}

label {
  display: inline-block;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-clip: padding-box;
  background-color: var(--color-neutral-5);
  background-position: right 10px center;
  background-repeat: no-repeat;
  background-size: var(--icon-xs) var(--icon-xs);
  border-radius: 0;
  text-transform: none;
}

input[type=checkbox],
input[type=radio] {
  margin-inline-end: var(--spacing-xs);
}

/**
 * Base: Preview bar
 * -----------------------------------------------------------------------------
 * Base styling for replacement preview bar.
 *
 */
.preview-bar {
  font-weight: normal;
  letter-spacing: 0;
  line-height: 100%;
  text-decoration: none;
  text-indent: 0;
  word-spacing: 0;
  font-family: sans-serif;
  font-size: 10px;
  background-color: rgb(0, 0, 0);
  bottom: 16px;
  color: rgb(255, 255, 255);
  padding-block-end: 8px;
  padding-block-start: 8px;
  padding-inline-end: 12px;
  padding-inline-start: 12px;
  position: fixed;
  right: 16px;
  z-index: 9998;
}
.preview-bar:hover {
  color: rgb(255, 255, 255);
  text-decoration: none;
}

/**
 * Import helpers.
 * - Add in alphabetical order.
 * - Helper styles not imported here are in `critical/theme.scss`.
 */
/**
 * Helper: Display
 * -----------------------------------------------------------------------------
 * Display classes that affect page render.
 *
 */
/**
 * Critical CSS resets.
 * - These styles are used to override styles set by the critical CSS
 *   in the `critical.liquid` snippet.
 */
.critical-hide,
.main-content .shopify-section {
  display: inline;
  display: initial;
}

.critical-clear,
body:not(.template-index) .main-content {
  opacity: 1;
}

/**
 * Only show when JS is not supported.
 */
.no-js:not(html) {
  display: none;
}
.no-js .no-js:not(html) {
  display: inline;
  display: initial;
}

/**
 * Only show when JS is supported.
 */
.no-js .js {
  display: none;
}

/**
 * Helper: Grid
 * -----------------------------------------------------------------------------
 * Grid classes for layout.
 */
/**
 * .col classes.
 */
/**
 * .grid and .col classes.
 */
/**
 * Grid classes.
 */
.grid {
  grid-gap: var(--layout-mobile-gutter);
  gap: var(--layout-mobile-gutter);
  /**
   * Grid column override.
   * - Limit prevents having more columns than the maximum for that breakpoint.
   * - Repeated instances of .grid are to apply greater specificity than other
   *   classes without using !important.
   * - E.g. .grid.grid--col-l6 means the grid has six columns at l breakpoint.
   */
  /**
   * Expand modifiers.
   * - E.g. .grid.expand-left-l or .col.expand-left-l will apply the expand left
   * modifier at the l breakpoint.
   */
  display: grid;
  grid-template-columns: repeat(4, minmax(10px, 1fr));
  position: relative;
  /**
   * Gap modifiers.
   */
  /**
   * Media queries.
   */
}
.grid.grid.grid.grid.grid--col-xs1 {
  grid-template-columns: repeat(1, minmax(10px, 1fr));
}
.grid.grid.grid.grid.grid--col-xs2 {
  grid-template-columns: repeat(2, minmax(10px, 1fr));
}
.grid.grid.grid.grid.grid--col-xs3 {
  grid-template-columns: repeat(3, minmax(10px, 1fr));
}
.grid.expand-both-xs,
.grid > .col.expand-both-xs {
  margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
  margin-inline-start: calc(var(--layout-mobile-gutter) * -1);
  padding-inline-end: var(--layout-mobile-gutter);
  padding-inline-start: var(--layout-mobile-gutter);
  width: calc(100% + (var(--layout-mobile-gutter) * 2));
}
.grid.expand-left-xs,
.grid > .col.expand-left-xs {
  margin-inline-start: calc(var(--layout-mobile-gutter) * -1);
  padding-inline-start: var(--layout-mobile-gutter);
  width: calc(100% + var(--layout-mobile-gutter));
}
.grid.expand-right-xs,
.grid > .col.expand-right-xs {
  margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
  padding-inline-end: var(--layout-mobile-gutter);
  width: calc(100% + var(--layout-mobile-gutter));
}
.grid.no-gap {
  gap: 0;
}
.grid.no-row-gap {
  row-gap: 0;
}
.grid.no-column-gap {
  -moz-column-gap: 0;
       column-gap: 0;
}
@media (min-width: 36em) {
  .grid {
    gap: var(--layout-mobile-gutter);
    /**
     * Grid column override.
     * - Limit prevents having more columns than the maximum for that breakpoint.
     * - Repeated instances of .grid are to apply greater specificity than other
     *   classes without using !important.
     * - E.g. .grid.grid--col-l6 means the grid has six columns at l breakpoint.
     */
    /**
     * Expand modifiers.
     * - E.g. .grid.expand-left-l or .col.expand-left-l will apply the expand left
     * modifier at the l breakpoint.
     */
  }
  .grid.grid.grid.grid.grid--col-s1 {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-s2 {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-s3 {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid.expand-both-s,
  .grid > .col.expand-both-s {
    margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
    margin-inline-start: calc(var(--layout-mobile-gutter) * -1);
    padding-inline-end: var(--layout-mobile-gutter);
    padding-inline-start: var(--layout-mobile-gutter);
    width: calc(100% + (var(--layout-mobile-gutter) * 2));
  }
  .grid.expand-left-s,
  .grid > .col.expand-left-s {
    margin-inline-start: calc(var(--layout-mobile-gutter) * -1);
    padding-inline-start: var(--layout-mobile-gutter);
    width: calc(100% + var(--layout-mobile-gutter));
  }
  .grid.expand-right-s,
  .grid > .col.expand-right-s {
    margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
    padding-inline-end: var(--layout-mobile-gutter);
    width: calc(100% + var(--layout-mobile-gutter));
  }
}
@media (min-width: 48em) {
  .grid {
    gap: var(--layout-tablet-gutter);
    /**
     * Grid column override.
     * - Limit prevents having more columns than the maximum for that breakpoint.
     * - Repeated instances of .grid are to apply greater specificity than other
     *   classes without using !important.
     * - E.g. .grid.grid--col-l6 means the grid has six columns at l breakpoint.
     */
    /**
     * Expand modifiers.
     * - E.g. .grid.expand-left-l or .col.expand-left-l will apply the expand left
     * modifier at the l breakpoint.
     */
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-m1 {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-m2 {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-m3 {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-m4 {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-m5 {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid.expand-both-m,
  .grid > .col.expand-both-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: calc(var(--layout-tablet-gutter) * -1);
    padding-inline-end: var(--layout-tablet-gutter);
    padding-inline-start: var(--layout-tablet-gutter);
    width: calc(100% + (var(--layout-tablet-gutter) * 2));
  }
  .grid.expand-left-m,
  .grid > .col.expand-left-m {
    margin-inline-start: calc(var(--layout-tablet-gutter) * -1);
    padding-inline-start: var(--layout-tablet-gutter);
    width: calc(100% + var(--layout-tablet-gutter));
  }
  .grid.expand-right-m,
  .grid > .col.expand-right-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    padding-inline-end: var(--layout-tablet-gutter);
    width: calc(100% + var(--layout-tablet-gutter));
  }
}
@media (min-width: 64em) {
  .grid {
    gap: var(--layout-desktop-gutter);
    /**
     * Grid column override.
     * - Limit prevents having more columns than the maximum for that breakpoint.
     * - Repeated instances of .grid are to apply greater specificity than other
     *   classes without using !important.
     * - E.g. .grid.grid--col-l6 means the grid has six columns at l breakpoint.
     */
    /**
     * Expand modifiers.
     * - E.g. .grid.expand-left-l or .col.expand-left-l will apply the expand left
     * modifier at the l breakpoint.
     */
    grid-template-columns: repeat(12, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l1 {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l2 {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l3 {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l4 {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l5 {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l6 {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l7 {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l8 {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l9 {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l10 {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-l11 {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid.expand-both-l,
  .grid > .col.expand-both-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: calc(var(--layout-desktop-gutter) * -1);
    padding-inline-end: var(--layout-desktop-gutter);
    padding-inline-start: var(--layout-desktop-gutter);
    width: calc(100% + (var(--layout-desktop-gutter) * 2));
  }
  .grid.expand-left-l,
  .grid > .col.expand-left-l {
    margin-inline-start: calc(var(--layout-desktop-gutter) * -1);
    padding-inline-start: var(--layout-desktop-gutter);
    width: calc(100% + var(--layout-desktop-gutter));
  }
  .grid.expand-right-l,
  .grid > .col.expand-right-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    padding-inline-end: var(--layout-desktop-gutter);
    width: calc(100% + var(--layout-desktop-gutter));
  }
}
@media (min-width: 90em) {
  .grid {
    gap: var(--layout-desktop-gutter);
    /**
     * Grid column override.
     * - Limit prevents having more columns than the maximum for that breakpoint.
     * - Repeated instances of .grid are to apply greater specificity than other
     *   classes without using !important.
     * - E.g. .grid.grid--col-l6 means the grid has six columns at l breakpoint.
     */
    /**
     * Expand modifiers.
     * - E.g. .grid.expand-left-l or .col.expand-left-l will apply the expand left
     * modifier at the l breakpoint.
     */
  }
  .grid.grid.grid.grid.grid--col-xl1 {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl2 {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl3 {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl4 {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl5 {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl6 {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl7 {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl8 {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl9 {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl10 {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid.grid.grid.grid.grid--col-xl11 {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid.expand-both-xl,
  .grid > .col.expand-both-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: calc(var(--layout-desktop-gutter) * -1);
    padding-inline-end: var(--layout-desktop-gutter);
    padding-inline-start: var(--layout-desktop-gutter);
    width: calc(100% + (var(--layout-desktop-gutter) * 2));
  }
  .grid.expand-left-xl,
  .grid > .col.expand-left-xl {
    margin-inline-start: calc(var(--layout-desktop-gutter) * -1);
    padding-inline-start: var(--layout-desktop-gutter);
    width: calc(100% + var(--layout-desktop-gutter));
  }
  .grid.expand-right-xl,
  .grid > .col.expand-right-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    padding-inline-end: var(--layout-desktop-gutter);
    width: calc(100% + var(--layout-desktop-gutter));
  }
}

/**
 * Column classes.
 */
.grid > .col {
  /**
   * Full width span class.
   * - E.g. xs-span.
   * - Span from first column to last column.
   */
  /**
   * Span col classes.
   * - E.g. l6.
   * - And internal grid column classes.
   * - Setting xs4 will become l12 if no other class is set.
   */
  /**
   * Position col classes.
   * - E.g. l6-12.
   * - And internal grid column classes.
   * - Setting xs1-2 will become l1-6 if no other class is set.
   */
  /**
   * Offset col classes.
   * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
   * - Must be set at all breakpoints you want an offset.
   */
  /**
   * Position col classes.
   * - E.g. l6-12.
   * - And internal grid column classes.
   * - Setting xs1-2 will become l1-6 if no other class is set.
   */
  /**
   * Offset col classes.
   * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
   * - Must be set at all breakpoints you want an offset.
   */
  /**
   * Position col classes.
   * - E.g. l6-12.
   * - And internal grid column classes.
   * - Setting xs1-2 will become l1-6 if no other class is set.
   */
  /**
   * Offset col classes.
   * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
   * - Must be set at all breakpoints you want an offset.
   */
  /**
   * Position col classes.
   * - E.g. l6-12.
   * - And internal grid column classes.
   * - Setting xs1-2 will become l1-6 if no other class is set.
   */
  /**
   * Offset col classes.
   * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
   * - Must be set at all breakpoints you want an offset.
   */
  /**
   * Media queries.
   */
}
.grid > .col.xs-span {
  grid-column: 1/-1;
}
.grid > .col.xs1 {
  grid-column: span 1;
}
.grid > .col.xs1.grid {
  grid-template-columns: repeat(1, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs1 {
    grid-column: span 1.5;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs1 {
    grid-column: span 3;
  }
}
.grid > .col.xs1-1 {
  grid-column: 1/2;
}
.grid > .col.xs1-1.grid {
  grid-template-columns: repeat(1, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs1-1 {
    grid-column: 1/2.5;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs1-1 {
    grid-column: 1/4;
  }
}
.grid > .col.xs1-2 {
  grid-column: 1/3;
}
.grid > .col.xs1-2.grid {
  grid-template-columns: repeat(2, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs1-2 {
    grid-column: 1/4;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs1-2 {
    grid-column: 1/7;
  }
}
.grid > .col.xs1-3 {
  grid-column: 1/4;
}
.grid > .col.xs1-3.grid {
  grid-template-columns: repeat(3, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs1-3 {
    grid-column: 1/5.5;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs1-3 {
    grid-column: 1/10;
  }
}
.grid > .col.xs1-4 {
  grid-column: 1/5;
}
.grid > .col.xs1-4.grid {
  grid-template-columns: repeat(4, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs1-4 {
    grid-column: 1/7;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs1-4 {
    grid-column: 1/13;
  }
}
.grid > .col.offset-both-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - (var(--layout-mobile-gutter) * 2));
}
.grid > .col.offset-left-xs {
  margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.offset-right-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.xs2 {
  grid-column: span 2;
}
.grid > .col.xs2.grid {
  grid-template-columns: repeat(2, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs2 {
    grid-column: span 3;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs2 {
    grid-column: span 6;
  }
}
.grid > .col.xs2-2 {
  grid-column: 2/3;
}
.grid > .col.xs2-2.grid {
  grid-template-columns: repeat(1, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs2-2 {
    grid-column: 2.5/4;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs2-2 {
    grid-column: 4/7;
  }
}
.grid > .col.xs2-3 {
  grid-column: 2/4;
}
.grid > .col.xs2-3.grid {
  grid-template-columns: repeat(2, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs2-3 {
    grid-column: 2.5/5.5;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs2-3 {
    grid-column: 4/10;
  }
}
.grid > .col.xs2-4 {
  grid-column: 2/5;
}
.grid > .col.xs2-4.grid {
  grid-template-columns: repeat(3, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs2-4 {
    grid-column: 2.5/7;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs2-4 {
    grid-column: 4/13;
  }
}
.grid > .col.offset-both-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - (var(--layout-mobile-gutter) * 2));
}
.grid > .col.offset-left-xs {
  margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.offset-right-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.xs3 {
  grid-column: span 3;
}
.grid > .col.xs3.grid {
  grid-template-columns: repeat(3, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs3 {
    grid-column: span 4.5;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs3 {
    grid-column: span 9;
  }
}
.grid > .col.xs3-3 {
  grid-column: 3/4;
}
.grid > .col.xs3-3.grid {
  grid-template-columns: repeat(1, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs3-3 {
    grid-column: 4/5.5;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs3-3 {
    grid-column: 7/10;
  }
}
.grid > .col.xs3-4 {
  grid-column: 3/5;
}
.grid > .col.xs3-4.grid {
  grid-template-columns: repeat(2, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs3-4 {
    grid-column: 4/7;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs3-4 {
    grid-column: 7/13;
  }
}
.grid > .col.offset-both-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - (var(--layout-mobile-gutter) * 2));
}
.grid > .col.offset-left-xs {
  margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.offset-right-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.xs4 {
  grid-column: span 4;
}
.grid > .col.xs4.grid {
  grid-template-columns: repeat(4, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs4 {
    grid-column: span 6;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs4 {
    grid-column: span 12;
  }
}
.grid > .col.xs4-4 {
  grid-column: 4/5;
}
.grid > .col.xs4-4.grid {
  grid-template-columns: repeat(1, minmax(10px, 1fr));
}
@media (min-width: 48em) {
  .grid > .col.xs4-4 {
    grid-column: 5.5/7;
  }
}
@media (min-width: 64em) {
  .grid > .col.xs4-4 {
    grid-column: 10/13;
  }
}
.grid > .col.offset-both-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - (var(--layout-mobile-gutter) * 2));
}
.grid > .col.offset-left-xs {
  margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
  margin-inline-start: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
.grid > .col.offset-right-xs {
  margin-inline-end: var(--layout-mobile-gutter);
  width: calc(100% - var(--layout-mobile-gutter));
}
@media (min-width: 36em) {
  .grid > .col {
    /**
     * Full width span class.
     * - E.g. xs-span.
     * - Span from first column to last column.
     */
    /**
     * Span col classes.
     * - E.g. l6.
     * - And internal grid column classes.
     * - Setting xs4 will become l12 if no other class is set.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
  }
  .grid > .col.s-span {
    grid-column: 1/-1;
  }
  .grid > .col.s1 {
    grid-column: span 1;
  }
  .grid > .col.s1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.s1-1 {
    grid-column: 1/2;
  }
  .grid > .col.s1-1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.s1-2 {
    grid-column: 1/3;
  }
  .grid > .col.s1-2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.s1-3 {
    grid-column: 1/4;
  }
  .grid > .col.s1-3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.s1-4 {
    grid-column: 1/5;
  }
  .grid > .col.s1-4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-s {
    margin-inline-end: var(--layout-mobile-gutter);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - (var(--layout-mobile-gutter) * 2));
  }
  .grid > .col.offset-left-s {
    margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.offset-right-s {
    margin-inline-end: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.s2 {
    grid-column: span 2;
  }
  .grid > .col.s2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.s2-2 {
    grid-column: 2/3;
  }
  .grid > .col.s2-2.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.s2-3 {
    grid-column: 2/4;
  }
  .grid > .col.s2-3.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.s2-4 {
    grid-column: 2/5;
  }
  .grid > .col.s2-4.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-s {
    margin-inline-end: var(--layout-mobile-gutter);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - (var(--layout-mobile-gutter) * 2));
  }
  .grid > .col.offset-left-s {
    margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.offset-right-s {
    margin-inline-end: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.s3 {
    grid-column: span 3;
  }
  .grid > .col.s3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.s3-3 {
    grid-column: 3/4;
  }
  .grid > .col.s3-3.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.s3-4 {
    grid-column: 3/5;
  }
  .grid > .col.s3-4.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-s {
    margin-inline-end: var(--layout-mobile-gutter);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - (var(--layout-mobile-gutter) * 2));
  }
  .grid > .col.offset-left-s {
    margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.offset-right-s {
    margin-inline-end: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.s4 {
    grid-column: span 4;
  }
  .grid > .col.s4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.s4-4 {
    grid-column: 4/5;
  }
  .grid > .col.s4-4.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-s {
    margin-inline-end: var(--layout-mobile-gutter);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - (var(--layout-mobile-gutter) * 2));
  }
  .grid > .col.offset-left-s {
    margin-inline-end: calc(var(--layout-mobile-gutter) * -1);
    margin-inline-start: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
  .grid > .col.offset-right-s {
    margin-inline-end: var(--layout-mobile-gutter);
    width: calc(100% - var(--layout-mobile-gutter));
  }
}
@media (min-width: 48em) {
  .grid > .col {
    /**
     * Full width span class.
     * - E.g. xs-span.
     * - Span from first column to last column.
     */
    /**
     * Span col classes.
     * - E.g. l6.
     * - And internal grid column classes.
     * - Setting xs4 will become l12 if no other class is set.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
  }
  .grid > .col.m-span {
    grid-column: 1/-1;
  }
  .grid > .col.m1 {
    grid-column: span 1;
  }
  .grid > .col.m1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.m1-1 {
    grid-column: 1/2;
  }
  .grid > .col.m1-1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.m1-2 {
    grid-column: 1/3;
  }
  .grid > .col.m1-2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.m1-3 {
    grid-column: 1/4;
  }
  .grid > .col.m1-3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.m1-4 {
    grid-column: 1/5;
  }
  .grid > .col.m1-4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.m1-5 {
    grid-column: 1/6;
  }
  .grid > .col.m1-5.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.m1-6 {
    grid-column: 1/7;
  }
  .grid > .col.m1-6.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-m {
    margin-inline-end: var(--layout-tablet-gutter);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - (var(--layout-tablet-gutter) * 2));
  }
  .grid > .col.offset-left-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.offset-right-m {
    margin-inline-end: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.m2 {
    grid-column: span 2;
  }
  .grid > .col.m2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.m2-2 {
    grid-column: 2/3;
  }
  .grid > .col.m2-2.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.m2-3 {
    grid-column: 2/4;
  }
  .grid > .col.m2-3.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.m2-4 {
    grid-column: 2/5;
  }
  .grid > .col.m2-4.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.m2-5 {
    grid-column: 2/6;
  }
  .grid > .col.m2-5.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.m2-6 {
    grid-column: 2/7;
  }
  .grid > .col.m2-6.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-m {
    margin-inline-end: var(--layout-tablet-gutter);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - (var(--layout-tablet-gutter) * 2));
  }
  .grid > .col.offset-left-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.offset-right-m {
    margin-inline-end: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.m3 {
    grid-column: span 3;
  }
  .grid > .col.m3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.m3-3 {
    grid-column: 3/4;
  }
  .grid > .col.m3-3.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.m3-4 {
    grid-column: 3/5;
  }
  .grid > .col.m3-4.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.m3-5 {
    grid-column: 3/6;
  }
  .grid > .col.m3-5.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.m3-6 {
    grid-column: 3/7;
  }
  .grid > .col.m3-6.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-m {
    margin-inline-end: var(--layout-tablet-gutter);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - (var(--layout-tablet-gutter) * 2));
  }
  .grid > .col.offset-left-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.offset-right-m {
    margin-inline-end: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.m4 {
    grid-column: span 4;
  }
  .grid > .col.m4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.m4-4 {
    grid-column: 4/5;
  }
  .grid > .col.m4-4.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.m4-5 {
    grid-column: 4/6;
  }
  .grid > .col.m4-5.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.m4-6 {
    grid-column: 4/7;
  }
  .grid > .col.m4-6.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-m {
    margin-inline-end: var(--layout-tablet-gutter);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - (var(--layout-tablet-gutter) * 2));
  }
  .grid > .col.offset-left-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.offset-right-m {
    margin-inline-end: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.m5 {
    grid-column: span 5;
  }
  .grid > .col.m5.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.m5-5 {
    grid-column: 5/6;
  }
  .grid > .col.m5-5.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.m5-6 {
    grid-column: 5/7;
  }
  .grid > .col.m5-6.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-m {
    margin-inline-end: var(--layout-tablet-gutter);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - (var(--layout-tablet-gutter) * 2));
  }
  .grid > .col.offset-left-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.offset-right-m {
    margin-inline-end: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.m6 {
    grid-column: span 6;
  }
  .grid > .col.m6.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.m6-6 {
    grid-column: 6/7;
  }
  .grid > .col.m6-6.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-m {
    margin-inline-end: var(--layout-tablet-gutter);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - (var(--layout-tablet-gutter) * 2));
  }
  .grid > .col.offset-left-m {
    margin-inline-end: calc(var(--layout-tablet-gutter) * -1);
    margin-inline-start: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
  .grid > .col.offset-right-m {
    margin-inline-end: var(--layout-tablet-gutter);
    width: calc(100% - var(--layout-tablet-gutter));
  }
}
@media (min-width: 64em) {
  .grid > .col {
    /**
     * Full width span class.
     * - E.g. xs-span.
     * - Span from first column to last column.
     */
    /**
     * Span col classes.
     * - E.g. l6.
     * - And internal grid column classes.
     * - Setting xs4 will become l12 if no other class is set.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
  }
  .grid > .col.l-span {
    grid-column: 1/-1;
  }
  .grid > .col.l1 {
    grid-column: span 1;
  }
  .grid > .col.l1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l1-1 {
    grid-column: 1/2;
  }
  .grid > .col.l1-1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l1-2 {
    grid-column: 1/3;
  }
  .grid > .col.l1-2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l1-3 {
    grid-column: 1/4;
  }
  .grid > .col.l1-3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l1-4 {
    grid-column: 1/5;
  }
  .grid > .col.l1-4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l1-5 {
    grid-column: 1/6;
  }
  .grid > .col.l1-5.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l1-6 {
    grid-column: 1/7;
  }
  .grid > .col.l1-6.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l1-7 {
    grid-column: 1/8;
  }
  .grid > .col.l1-7.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.l1-8 {
    grid-column: 1/9;
  }
  .grid > .col.l1-8.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.l1-9 {
    grid-column: 1/10;
  }
  .grid > .col.l1-9.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.l1-10 {
    grid-column: 1/11;
  }
  .grid > .col.l1-10.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.l1-11 {
    grid-column: 1/12;
  }
  .grid > .col.l1-11.grid {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid > .col.l1-12 {
    grid-column: 1/13;
  }
  .grid > .col.l1-12.grid {
    grid-template-columns: repeat(12, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l2 {
    grid-column: span 2;
  }
  .grid > .col.l2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l2-2 {
    grid-column: 2/3;
  }
  .grid > .col.l2-2.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l2-3 {
    grid-column: 2/4;
  }
  .grid > .col.l2-3.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l2-4 {
    grid-column: 2/5;
  }
  .grid > .col.l2-4.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l2-5 {
    grid-column: 2/6;
  }
  .grid > .col.l2-5.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l2-6 {
    grid-column: 2/7;
  }
  .grid > .col.l2-6.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l2-7 {
    grid-column: 2/8;
  }
  .grid > .col.l2-7.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l2-8 {
    grid-column: 2/9;
  }
  .grid > .col.l2-8.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.l2-9 {
    grid-column: 2/10;
  }
  .grid > .col.l2-9.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.l2-10 {
    grid-column: 2/11;
  }
  .grid > .col.l2-10.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.l2-11 {
    grid-column: 2/12;
  }
  .grid > .col.l2-11.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.l2-12 {
    grid-column: 2/13;
  }
  .grid > .col.l2-12.grid {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l3 {
    grid-column: span 3;
  }
  .grid > .col.l3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l3-3 {
    grid-column: 3/4;
  }
  .grid > .col.l3-3.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l3-4 {
    grid-column: 3/5;
  }
  .grid > .col.l3-4.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l3-5 {
    grid-column: 3/6;
  }
  .grid > .col.l3-5.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l3-6 {
    grid-column: 3/7;
  }
  .grid > .col.l3-6.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l3-7 {
    grid-column: 3/8;
  }
  .grid > .col.l3-7.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l3-8 {
    grid-column: 3/9;
  }
  .grid > .col.l3-8.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l3-9 {
    grid-column: 3/10;
  }
  .grid > .col.l3-9.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.l3-10 {
    grid-column: 3/11;
  }
  .grid > .col.l3-10.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.l3-11 {
    grid-column: 3/12;
  }
  .grid > .col.l3-11.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.l3-12 {
    grid-column: 3/13;
  }
  .grid > .col.l3-12.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l4 {
    grid-column: span 4;
  }
  .grid > .col.l4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l4-4 {
    grid-column: 4/5;
  }
  .grid > .col.l4-4.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l4-5 {
    grid-column: 4/6;
  }
  .grid > .col.l4-5.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l4-6 {
    grid-column: 4/7;
  }
  .grid > .col.l4-6.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l4-7 {
    grid-column: 4/8;
  }
  .grid > .col.l4-7.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l4-8 {
    grid-column: 4/9;
  }
  .grid > .col.l4-8.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l4-9 {
    grid-column: 4/10;
  }
  .grid > .col.l4-9.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l4-10 {
    grid-column: 4/11;
  }
  .grid > .col.l4-10.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.l4-11 {
    grid-column: 4/12;
  }
  .grid > .col.l4-11.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.l4-12 {
    grid-column: 4/13;
  }
  .grid > .col.l4-12.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l5 {
    grid-column: span 5;
  }
  .grid > .col.l5.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l5-5 {
    grid-column: 5/6;
  }
  .grid > .col.l5-5.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l5-6 {
    grid-column: 5/7;
  }
  .grid > .col.l5-6.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l5-7 {
    grid-column: 5/8;
  }
  .grid > .col.l5-7.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l5-8 {
    grid-column: 5/9;
  }
  .grid > .col.l5-8.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l5-9 {
    grid-column: 5/10;
  }
  .grid > .col.l5-9.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l5-10 {
    grid-column: 5/11;
  }
  .grid > .col.l5-10.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l5-11 {
    grid-column: 5/12;
  }
  .grid > .col.l5-11.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.l5-12 {
    grid-column: 5/13;
  }
  .grid > .col.l5-12.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l6 {
    grid-column: span 6;
  }
  .grid > .col.l6.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l6-6 {
    grid-column: 6/7;
  }
  .grid > .col.l6-6.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l6-7 {
    grid-column: 6/8;
  }
  .grid > .col.l6-7.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l6-8 {
    grid-column: 6/9;
  }
  .grid > .col.l6-8.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l6-9 {
    grid-column: 6/10;
  }
  .grid > .col.l6-9.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l6-10 {
    grid-column: 6/11;
  }
  .grid > .col.l6-10.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l6-11 {
    grid-column: 6/12;
  }
  .grid > .col.l6-11.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.l6-12 {
    grid-column: 6/13;
  }
  .grid > .col.l6-12.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l7 {
    grid-column: span 7;
  }
  .grid > .col.l7.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.l7-7 {
    grid-column: 7/8;
  }
  .grid > .col.l7-7.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l7-8 {
    grid-column: 7/9;
  }
  .grid > .col.l7-8.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l7-9 {
    grid-column: 7/10;
  }
  .grid > .col.l7-9.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l7-10 {
    grid-column: 7/11;
  }
  .grid > .col.l7-10.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l7-11 {
    grid-column: 7/12;
  }
  .grid > .col.l7-11.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.l7-12 {
    grid-column: 7/13;
  }
  .grid > .col.l7-12.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l8 {
    grid-column: span 8;
  }
  .grid > .col.l8.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.l8-8 {
    grid-column: 8/9;
  }
  .grid > .col.l8-8.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l8-9 {
    grid-column: 8/10;
  }
  .grid > .col.l8-9.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l8-10 {
    grid-column: 8/11;
  }
  .grid > .col.l8-10.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l8-11 {
    grid-column: 8/12;
  }
  .grid > .col.l8-11.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.l8-12 {
    grid-column: 8/13;
  }
  .grid > .col.l8-12.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l9 {
    grid-column: span 9;
  }
  .grid > .col.l9.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.l9-9 {
    grid-column: 9/10;
  }
  .grid > .col.l9-9.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l9-10 {
    grid-column: 9/11;
  }
  .grid > .col.l9-10.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l9-11 {
    grid-column: 9/12;
  }
  .grid > .col.l9-11.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.l9-12 {
    grid-column: 9/13;
  }
  .grid > .col.l9-12.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l10 {
    grid-column: span 10;
  }
  .grid > .col.l10.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.l10-10 {
    grid-column: 10/11;
  }
  .grid > .col.l10-10.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l10-11 {
    grid-column: 10/12;
  }
  .grid > .col.l10-11.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.l10-12 {
    grid-column: 10/13;
  }
  .grid > .col.l10-12.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l11 {
    grid-column: span 11;
  }
  .grid > .col.l11.grid {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid > .col.l11-11 {
    grid-column: 11/12;
  }
  .grid > .col.l11-11.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.l11-12 {
    grid-column: 11/13;
  }
  .grid > .col.l11-12.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.l12 {
    grid-column: span 12;
  }
  .grid > .col.l12.grid {
    grid-template-columns: repeat(12, minmax(10px, 1fr));
  }
  .grid > .col.l12-12 {
    grid-column: 12/13;
  }
  .grid > .col.l12-12.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-l {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-l {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-l {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
}
@media (min-width: 90em) {
  .grid > .col {
    /**
     * Full width span class.
     * - E.g. xs-span.
     * - Span from first column to last column.
     */
    /**
     * Span col classes.
     * - E.g. l6.
     * - And internal grid column classes.
     * - Setting xs4 will become l12 if no other class is set.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
    /**
     * Position col classes.
     * - E.g. l6-12.
     * - And internal grid column classes.
     * - Setting xs1-2 will become l1-6 if no other class is set.
     */
    /**
     * Offset col classes.
     * - E.g. .col.offset-left-l means offset left is applied at l breakpoint.
     * - Must be set at all breakpoints you want an offset.
     */
  }
  .grid > .col.xl-span {
    grid-column: 1/-1;
  }
  .grid > .col.xl1 {
    grid-column: span 1;
  }
  .grid > .col.xl1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl1-1 {
    grid-column: 1/2;
  }
  .grid > .col.xl1-1.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl1-2 {
    grid-column: 1/3;
  }
  .grid > .col.xl1-2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl1-3 {
    grid-column: 1/4;
  }
  .grid > .col.xl1-3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl1-4 {
    grid-column: 1/5;
  }
  .grid > .col.xl1-4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl1-5 {
    grid-column: 1/6;
  }
  .grid > .col.xl1-5.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl1-6 {
    grid-column: 1/7;
  }
  .grid > .col.xl1-6.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl1-7 {
    grid-column: 1/8;
  }
  .grid > .col.xl1-7.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.xl1-8 {
    grid-column: 1/9;
  }
  .grid > .col.xl1-8.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.xl1-9 {
    grid-column: 1/10;
  }
  .grid > .col.xl1-9.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.xl1-10 {
    grid-column: 1/11;
  }
  .grid > .col.xl1-10.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.xl1-11 {
    grid-column: 1/12;
  }
  .grid > .col.xl1-11.grid {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid > .col.xl1-12 {
    grid-column: 1/13;
  }
  .grid > .col.xl1-12.grid {
    grid-template-columns: repeat(12, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl2 {
    grid-column: span 2;
  }
  .grid > .col.xl2.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl2-2 {
    grid-column: 2/3;
  }
  .grid > .col.xl2-2.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl2-3 {
    grid-column: 2/4;
  }
  .grid > .col.xl2-3.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl2-4 {
    grid-column: 2/5;
  }
  .grid > .col.xl2-4.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl2-5 {
    grid-column: 2/6;
  }
  .grid > .col.xl2-5.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl2-6 {
    grid-column: 2/7;
  }
  .grid > .col.xl2-6.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl2-7 {
    grid-column: 2/8;
  }
  .grid > .col.xl2-7.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl2-8 {
    grid-column: 2/9;
  }
  .grid > .col.xl2-8.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.xl2-9 {
    grid-column: 2/10;
  }
  .grid > .col.xl2-9.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.xl2-10 {
    grid-column: 2/11;
  }
  .grid > .col.xl2-10.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.xl2-11 {
    grid-column: 2/12;
  }
  .grid > .col.xl2-11.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.xl2-12 {
    grid-column: 2/13;
  }
  .grid > .col.xl2-12.grid {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl3 {
    grid-column: span 3;
  }
  .grid > .col.xl3.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl3-3 {
    grid-column: 3/4;
  }
  .grid > .col.xl3-3.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl3-4 {
    grid-column: 3/5;
  }
  .grid > .col.xl3-4.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl3-5 {
    grid-column: 3/6;
  }
  .grid > .col.xl3-5.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl3-6 {
    grid-column: 3/7;
  }
  .grid > .col.xl3-6.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl3-7 {
    grid-column: 3/8;
  }
  .grid > .col.xl3-7.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl3-8 {
    grid-column: 3/9;
  }
  .grid > .col.xl3-8.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl3-9 {
    grid-column: 3/10;
  }
  .grid > .col.xl3-9.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.xl3-10 {
    grid-column: 3/11;
  }
  .grid > .col.xl3-10.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.xl3-11 {
    grid-column: 3/12;
  }
  .grid > .col.xl3-11.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.xl3-12 {
    grid-column: 3/13;
  }
  .grid > .col.xl3-12.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl4 {
    grid-column: span 4;
  }
  .grid > .col.xl4.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl4-4 {
    grid-column: 4/5;
  }
  .grid > .col.xl4-4.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl4-5 {
    grid-column: 4/6;
  }
  .grid > .col.xl4-5.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl4-6 {
    grid-column: 4/7;
  }
  .grid > .col.xl4-6.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl4-7 {
    grid-column: 4/8;
  }
  .grid > .col.xl4-7.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl4-8 {
    grid-column: 4/9;
  }
  .grid > .col.xl4-8.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl4-9 {
    grid-column: 4/10;
  }
  .grid > .col.xl4-9.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl4-10 {
    grid-column: 4/11;
  }
  .grid > .col.xl4-10.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.xl4-11 {
    grid-column: 4/12;
  }
  .grid > .col.xl4-11.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.xl4-12 {
    grid-column: 4/13;
  }
  .grid > .col.xl4-12.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl5 {
    grid-column: span 5;
  }
  .grid > .col.xl5.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl5-5 {
    grid-column: 5/6;
  }
  .grid > .col.xl5-5.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl5-6 {
    grid-column: 5/7;
  }
  .grid > .col.xl5-6.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl5-7 {
    grid-column: 5/8;
  }
  .grid > .col.xl5-7.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl5-8 {
    grid-column: 5/9;
  }
  .grid > .col.xl5-8.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl5-9 {
    grid-column: 5/10;
  }
  .grid > .col.xl5-9.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl5-10 {
    grid-column: 5/11;
  }
  .grid > .col.xl5-10.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl5-11 {
    grid-column: 5/12;
  }
  .grid > .col.xl5-11.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.xl5-12 {
    grid-column: 5/13;
  }
  .grid > .col.xl5-12.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl6 {
    grid-column: span 6;
  }
  .grid > .col.xl6.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl6-6 {
    grid-column: 6/7;
  }
  .grid > .col.xl6-6.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl6-7 {
    grid-column: 6/8;
  }
  .grid > .col.xl6-7.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl6-8 {
    grid-column: 6/9;
  }
  .grid > .col.xl6-8.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl6-9 {
    grid-column: 6/10;
  }
  .grid > .col.xl6-9.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl6-10 {
    grid-column: 6/11;
  }
  .grid > .col.xl6-10.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl6-11 {
    grid-column: 6/12;
  }
  .grid > .col.xl6-11.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.xl6-12 {
    grid-column: 6/13;
  }
  .grid > .col.xl6-12.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl7 {
    grid-column: span 7;
  }
  .grid > .col.xl7.grid {
    grid-template-columns: repeat(7, minmax(10px, 1fr));
  }
  .grid > .col.xl7-7 {
    grid-column: 7/8;
  }
  .grid > .col.xl7-7.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl7-8 {
    grid-column: 7/9;
  }
  .grid > .col.xl7-8.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl7-9 {
    grid-column: 7/10;
  }
  .grid > .col.xl7-9.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl7-10 {
    grid-column: 7/11;
  }
  .grid > .col.xl7-10.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl7-11 {
    grid-column: 7/12;
  }
  .grid > .col.xl7-11.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.xl7-12 {
    grid-column: 7/13;
  }
  .grid > .col.xl7-12.grid {
    grid-template-columns: repeat(6, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl8 {
    grid-column: span 8;
  }
  .grid > .col.xl8.grid {
    grid-template-columns: repeat(8, minmax(10px, 1fr));
  }
  .grid > .col.xl8-8 {
    grid-column: 8/9;
  }
  .grid > .col.xl8-8.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl8-9 {
    grid-column: 8/10;
  }
  .grid > .col.xl8-9.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl8-10 {
    grid-column: 8/11;
  }
  .grid > .col.xl8-10.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl8-11 {
    grid-column: 8/12;
  }
  .grid > .col.xl8-11.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.xl8-12 {
    grid-column: 8/13;
  }
  .grid > .col.xl8-12.grid {
    grid-template-columns: repeat(5, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl9 {
    grid-column: span 9;
  }
  .grid > .col.xl9.grid {
    grid-template-columns: repeat(9, minmax(10px, 1fr));
  }
  .grid > .col.xl9-9 {
    grid-column: 9/10;
  }
  .grid > .col.xl9-9.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl9-10 {
    grid-column: 9/11;
  }
  .grid > .col.xl9-10.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl9-11 {
    grid-column: 9/12;
  }
  .grid > .col.xl9-11.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.xl9-12 {
    grid-column: 9/13;
  }
  .grid > .col.xl9-12.grid {
    grid-template-columns: repeat(4, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl10 {
    grid-column: span 10;
  }
  .grid > .col.xl10.grid {
    grid-template-columns: repeat(10, minmax(10px, 1fr));
  }
  .grid > .col.xl10-10 {
    grid-column: 10/11;
  }
  .grid > .col.xl10-10.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl10-11 {
    grid-column: 10/12;
  }
  .grid > .col.xl10-11.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.xl10-12 {
    grid-column: 10/13;
  }
  .grid > .col.xl10-12.grid {
    grid-template-columns: repeat(3, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl11 {
    grid-column: span 11;
  }
  .grid > .col.xl11.grid {
    grid-template-columns: repeat(11, minmax(10px, 1fr));
  }
  .grid > .col.xl11-11 {
    grid-column: 11/12;
  }
  .grid > .col.xl11-11.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.xl11-12 {
    grid-column: 11/13;
  }
  .grid > .col.xl11-12.grid {
    grid-template-columns: repeat(2, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.xl12 {
    grid-column: span 12;
  }
  .grid > .col.xl12.grid {
    grid-template-columns: repeat(12, minmax(10px, 1fr));
  }
  .grid > .col.xl12-12 {
    grid-column: 12/13;
  }
  .grid > .col.xl12-12.grid {
    grid-template-columns: repeat(1, minmax(10px, 1fr));
  }
  .grid > .col.offset-both-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - (var(--layout-desktop-gutter) * 2));
  }
  .grid > .col.offset-left-xl {
    margin-inline-end: calc(var(--layout-desktop-gutter) * -1);
    margin-inline-start: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
  .grid > .col.offset-right-xl {
    margin-inline-end: var(--layout-desktop-gutter);
    width: calc(100% - var(--layout-desktop-gutter));
  }
}

/**
 * Helper: RTE
 * -----------------------------------------------------------------------------
 * Styles for rich text editor content.
 *
 */
.rte {
  /**
   * Default table styles.
   */
  /**
   * Resetting list styles to browser default.
   */
}
.rte h1, .rte h2, .rte h3, .rte h4, .rte h5 {
  margin-block-end: -0.9rem;
  margin-block-start: revert;
}
.rte h1 + p, .rte h1 + ul, .rte h1 + ol, .rte h1 + table, .rte h1 + blockquote, .rte h2 + p, .rte h2 + ul, .rte h2 + ol, .rte h2 + table, .rte h2 + blockquote, .rte h3 + p, .rte h3 + ul, .rte h3 + ol, .rte h3 + table, .rte h3 + blockquote, .rte h4 + p, .rte h4 + ul, .rte h4 + ol, .rte h4 + table, .rte h4 + blockquote, .rte h5 + p, .rte h5 + ul, .rte h5 + ol, .rte h5 + table, .rte h5 + blockquote {
  margin-block-start: var(--spacing-l);
}
.rte h1 + h1, .rte h1 + h2, .rte h1 + h3, .rte h1 + h4 + h5, .rte h1 + h6, .rte h2 + h1, .rte h2 + h2, .rte h2 + h3, .rte h2 + h4 + h5, .rte h2 + h6, .rte h3 + h1, .rte h3 + h2, .rte h3 + h3, .rte h3 + h4 + h5, .rte h3 + h6, .rte h4 + h1, .rte h4 + h2, .rte h4 + h3, .rte h4 + h4 + h5, .rte h4 + h6, .rte h5 + h1, .rte h5 + h2, .rte h5 + h3, .rte h5 + h4 + h5, .rte h5 + h6 {
  margin-block-start: var(--spacing-7xl);
}
.rte h1 + img, .rte h2 + img, .rte h3 + img, .rte h4 + img, .rte h5 + img {
  margin-block-start: var(--spacing-l);
}
.rte h6 {
  margin-block-start: var(--spacing-2xl);
}
.rte h6 + h1, .rte h6 + h2, .rte h6 + h3, .rte h6 + h4 + h5, .rte h6 + h6 {
  margin-block-start: var(--spacing-7xl);
}
.rte p + p, .rte p + ul, .rte p + ol, .rte p + table, .rte p + blockquote, .rte ul + p, .rte ul + ul, .rte ul + ol, .rte ul + table, .rte ul + blockquote, .rte ol + p, .rte ol + ul, .rte ol + ol, .rte ol + table, .rte ol + blockquote, .rte table + p, .rte table + ul, .rte table + ol, .rte table + table, .rte table + blockquote, .rte blockquote + p, .rte blockquote + ul, .rte blockquote + ol, .rte blockquote + table, .rte blockquote + blockquote {
  margin-block-start: var(--spacing-l);
}
.rte p + h1, .rte p + h2, .rte p + h3, .rte p + h4 + h5, .rte p + h6, .rte ul + h1, .rte ul + h2, .rte ul + h3, .rte ul + h4 + h5, .rte ul + h6, .rte ol + h1, .rte ol + h2, .rte ol + h3, .rte ol + h4 + h5, .rte ol + h6, .rte table + h1, .rte table + h2, .rte table + h3, .rte table + h4 + h5, .rte table + h6, .rte blockquote + h1, .rte blockquote + h2, .rte blockquote + h3, .rte blockquote + h4 + h5, .rte blockquote + h6 {
  margin-block-start: var(--spacing-7xl);
}
.rte p + img, .rte ul + img, .rte ol + img, .rte table + img, .rte blockquote + img {
  margin-block-start: var(--spacing-l);
}
.rte img + h1, .rte img + h2, .rte img + h3, .rte img + h4, .rte img + h5, .rte img + h6, .rte img + p, .rte img + ul, .rte img + ol, .rte img + table {
  margin-block-start: var(--spacing-l);
}
.rte blockquote {
  background-color: var(--color-neutral-5);
  padding: var(--spacing-2xl) var(--spacing-7xl);
  text-align: center;
  text-transform: uppercase;
}
.rte blockquote p {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-4);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}
.rte a {
  color: var(--color-neutral-1);
  font-size: inherit;
  text-decoration: underline;
}
.rte a:hover {
  opacity: 0.75;
}
.rte table {
  border-collapse: collapse;
  color: rgb(51, 51, 51);
  /* stylelint-disable-next-line declaration-no-important */
  width: 100% !important;
}
.rte table th, .rte table td {
  border: 1px solid rgb(223, 223, 223);
  padding: calc(var(--spacing-s) + var(--spacing-3xs)) var(--spacing-xs);
  text-align: start;
}
.rte table th {
  background-color: var(--color-neutral-5);
  font-weight: var(--font-weight-normal);
}
.rte table tr:not(:first-child) {
  background-color: var(--color-neutral-5);
}
.rte table p {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
.rte ul, .rte ol {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-4);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  list-style: inherit;
  margin-block: 0;
  margin-inline: 1em;
  padding-inline-start: 1em;
}
.rte span {
  display: block;
}
@media (max-width: 63.99em) {
  .rte blockquote {
    padding: var(--spacing-2xl) var(--spacing-l);
  }
}

/**
 * Helper: Spacing
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
.mt-4xs {
  margin-block-start: var(--spacing-4xs);
}

.mb-4xs {
  margin-block-end: var(--spacing-4xs);
}

.ml-4xs {
  margin-inline-start: var(--spacing-4xs);
}

.mr-4xs {
  margin-inline-end: var(--spacing-4xs);
}

.mx-4xs {
  margin-inline-start: var(--spacing-4xs);
  margin-inline-end: var(--spacing-4xs);
}

.my-4xs {
  margin-block-start: var(--spacing-4xs);
  margin-block-end: var(--spacing-4xs);
}

.mt-3xs {
  margin-block-start: var(--spacing-3xs);
}

.mb-3xs {
  margin-block-end: var(--spacing-3xs);
}

.ml-3xs {
  margin-inline-start: var(--spacing-3xs);
}

.mr-3xs {
  margin-inline-end: var(--spacing-3xs);
}

.mx-3xs {
  margin-inline-start: var(--spacing-3xs);
  margin-inline-end: var(--spacing-3xs);
}

.my-3xs {
  margin-block-start: var(--spacing-3xs);
  margin-block-end: var(--spacing-3xs);
}

.mt-2xs {
  margin-block-start: var(--spacing-2xs);
}

.mb-2xs {
  margin-block-end: var(--spacing-2xs);
}

.ml-2xs {
  margin-inline-start: var(--spacing-2xs);
}

.mr-2xs {
  margin-inline-end: var(--spacing-2xs);
}

.mx-2xs {
  margin-inline-start: var(--spacing-2xs);
  margin-inline-end: var(--spacing-2xs);
}

.my-2xs {
  margin-block-start: var(--spacing-2xs);
  margin-block-end: var(--spacing-2xs);
}

.mt-xs {
  margin-block-start: var(--spacing-xs);
}

.mb-xs {
  margin-block-end: var(--spacing-xs);
}

.ml-xs {
  margin-inline-start: var(--spacing-xs);
}

.mr-xs {
  margin-inline-end: var(--spacing-xs);
}

.mx-xs {
  margin-inline-start: var(--spacing-xs);
  margin-inline-end: var(--spacing-xs);
}

.my-xs {
  margin-block-start: var(--spacing-xs);
  margin-block-end: var(--spacing-xs);
}

.mt-s {
  margin-block-start: var(--spacing-s);
}

.mb-s {
  margin-block-end: var(--spacing-s);
}

.ml-s {
  margin-inline-start: var(--spacing-s);
}

.mr-s {
  margin-inline-end: var(--spacing-s);
}

.mx-s {
  margin-inline-start: var(--spacing-s);
  margin-inline-end: var(--spacing-s);
}

.my-s {
  margin-block-start: var(--spacing-s);
  margin-block-end: var(--spacing-s);
}

.mt-m {
  margin-block-start: var(--spacing-m);
}

.mb-m {
  margin-block-end: var(--spacing-m);
}

.ml-m {
  margin-inline-start: var(--spacing-m);
}

.mr-m {
  margin-inline-end: var(--spacing-m);
}

.mx-m {
  margin-inline-start: var(--spacing-m);
  margin-inline-end: var(--spacing-m);
}

.my-m {
  margin-block-start: var(--spacing-m);
  margin-block-end: var(--spacing-m);
}

.mt-l {
  margin-block-start: var(--spacing-l);
}

.mb-l {
  margin-block-end: var(--spacing-l);
}

.ml-l {
  margin-inline-start: var(--spacing-l);
}

.mr-l {
  margin-inline-end: var(--spacing-l);
}

.mx-l {
  margin-inline-start: var(--spacing-l);
  margin-inline-end: var(--spacing-l);
}

.my-l {
  margin-block-start: var(--spacing-l);
  margin-block-end: var(--spacing-l);
}

.mt-xl {
  margin-block-start: var(--spacing-xl);
}

.mb-xl {
  margin-block-end: var(--spacing-xl);
}

.ml-xl {
  margin-inline-start: var(--spacing-xl);
}

.mr-xl {
  margin-inline-end: var(--spacing-xl);
}

.mx-xl {
  margin-inline-start: var(--spacing-xl);
  margin-inline-end: var(--spacing-xl);
}

.my-xl {
  margin-block-start: var(--spacing-xl);
  margin-block-end: var(--spacing-xl);
}

.mt-2xl {
  margin-block-start: var(--spacing-2xl);
}

.mb-2xl {
  margin-block-end: var(--spacing-2xl);
}

.ml-2xl {
  margin-inline-start: var(--spacing-2xl);
}

.mr-2xl {
  margin-inline-end: var(--spacing-2xl);
}

.mx-2xl {
  margin-inline-start: var(--spacing-2xl);
  margin-inline-end: var(--spacing-2xl);
}

.my-2xl {
  margin-block-start: var(--spacing-2xl);
  margin-block-end: var(--spacing-2xl);
}

.mt-3xl {
  margin-block-start: var(--spacing-3xl);
}

.mb-3xl {
  margin-block-end: var(--spacing-3xl);
}

.ml-3xl {
  margin-inline-start: var(--spacing-3xl);
}

.mr-3xl {
  margin-inline-end: var(--spacing-3xl);
}

.mx-3xl {
  margin-inline-start: var(--spacing-3xl);
  margin-inline-end: var(--spacing-3xl);
}

.my-3xl {
  margin-block-start: var(--spacing-3xl);
  margin-block-end: var(--spacing-3xl);
}

.mt-4xl {
  margin-block-start: var(--spacing-4xl);
}

.mb-4xl {
  margin-block-end: var(--spacing-4xl);
}

.ml-4xl {
  margin-inline-start: var(--spacing-4xl);
}

.mr-4xl {
  margin-inline-end: var(--spacing-4xl);
}

.mx-4xl {
  margin-inline-start: var(--spacing-4xl);
  margin-inline-end: var(--spacing-4xl);
}

.my-4xl {
  margin-block-start: var(--spacing-4xl);
  margin-block-end: var(--spacing-4xl);
}

.mt-5xl {
  margin-block-start: var(--spacing-5xl);
}

.mb-5xl {
  margin-block-end: var(--spacing-5xl);
}

.ml-5xl {
  margin-inline-start: var(--spacing-5xl);
}

.mr-5xl {
  margin-inline-end: var(--spacing-5xl);
}

.mx-5xl {
  margin-inline-start: var(--spacing-5xl);
  margin-inline-end: var(--spacing-5xl);
}

.my-5xl {
  margin-block-start: var(--spacing-5xl);
  margin-block-end: var(--spacing-5xl);
}

.mt-6xl {
  margin-block-start: var(--spacing-6xl);
}

.mb-6xl {
  margin-block-end: var(--spacing-6xl);
}

.ml-6xl {
  margin-inline-start: var(--spacing-6xl);
}

.mr-6xl {
  margin-inline-end: var(--spacing-6xl);
}

.mx-6xl {
  margin-inline-start: var(--spacing-6xl);
  margin-inline-end: var(--spacing-6xl);
}

.my-6xl {
  margin-block-start: var(--spacing-6xl);
  margin-block-end: var(--spacing-6xl);
}

.mt-7xl {
  margin-block-start: var(--spacing-7xl);
}

.mb-7xl {
  margin-block-end: var(--spacing-7xl);
}

.ml-7xl {
  margin-inline-start: var(--spacing-7xl);
}

.mr-7xl {
  margin-inline-end: var(--spacing-7xl);
}

.mx-7xl {
  margin-inline-start: var(--spacing-7xl);
  margin-inline-end: var(--spacing-7xl);
}

.my-7xl {
  margin-block-start: var(--spacing-7xl);
  margin-block-end: var(--spacing-7xl);
}

.pt-4xs {
  padding-block-start: var(--spacing-4xs);
}

.pb-4xs {
  padding-block-end: var(--spacing-4xs);
}

.pl-4xs {
  padding-inline-start: var(--spacing-4xs);
}

.pr-4xs {
  padding-inline-end: var(--spacing-4xs);
}

.px-4xs {
  padding-inline-start: var(--spacing-4xs);
  padding-inline-end: var(--spacing-4xs);
}

.py-4xs {
  padding-block-start: var(--spacing-4xs);
  padding-block-end: var(--spacing-4xs);
}

.pt-3xs {
  padding-block-start: var(--spacing-3xs);
}

.pb-3xs {
  padding-block-end: var(--spacing-3xs);
}

.pl-3xs {
  padding-inline-start: var(--spacing-3xs);
}

.pr-3xs {
  padding-inline-end: var(--spacing-3xs);
}

.px-3xs {
  padding-inline-start: var(--spacing-3xs);
  padding-inline-end: var(--spacing-3xs);
}

.py-3xs {
  padding-block-start: var(--spacing-3xs);
  padding-block-end: var(--spacing-3xs);
}

.pt-2xs {
  padding-block-start: var(--spacing-2xs);
}

.pb-2xs {
  padding-block-end: var(--spacing-2xs);
}

.pl-2xs {
  padding-inline-start: var(--spacing-2xs);
}

.pr-2xs {
  padding-inline-end: var(--spacing-2xs);
}

.px-2xs {
  padding-inline-start: var(--spacing-2xs);
  padding-inline-end: var(--spacing-2xs);
}

.py-2xs {
  padding-block-start: var(--spacing-2xs);
  padding-block-end: var(--spacing-2xs);
}

.pt-xs {
  padding-block-start: var(--spacing-xs);
}

.pb-xs {
  padding-block-end: var(--spacing-xs);
}

.pl-xs {
  padding-inline-start: var(--spacing-xs);
}

.pr-xs {
  padding-inline-end: var(--spacing-xs);
}

.px-xs {
  padding-inline-start: var(--spacing-xs);
  padding-inline-end: var(--spacing-xs);
}

.py-xs {
  padding-block-start: var(--spacing-xs);
  padding-block-end: var(--spacing-xs);
}

.pt-s {
  padding-block-start: var(--spacing-s);
}

.pb-s {
  padding-block-end: var(--spacing-s);
}

.pl-s {
  padding-inline-start: var(--spacing-s);
}

.pr-s {
  padding-inline-end: var(--spacing-s);
}

.px-s {
  padding-inline-start: var(--spacing-s);
  padding-inline-end: var(--spacing-s);
}

.py-s {
  padding-block-start: var(--spacing-s);
  padding-block-end: var(--spacing-s);
}

.pt-m {
  padding-block-start: var(--spacing-m);
}

.pb-m {
  padding-block-end: var(--spacing-m);
}

.pl-m {
  padding-inline-start: var(--spacing-m);
}

.pr-m {
  padding-inline-end: var(--spacing-m);
}

.px-m {
  padding-inline-start: var(--spacing-m);
  padding-inline-end: var(--spacing-m);
}

.py-m {
  padding-block-start: var(--spacing-m);
  padding-block-end: var(--spacing-m);
}

.pt-l {
  padding-block-start: var(--spacing-l);
}

.pb-l {
  padding-block-end: var(--spacing-l);
}

.pl-l {
  padding-inline-start: var(--spacing-l);
}

.pr-l {
  padding-inline-end: var(--spacing-l);
}

.px-l {
  padding-inline-start: var(--spacing-l);
  padding-inline-end: var(--spacing-l);
}

.py-l {
  padding-block-start: var(--spacing-l);
  padding-block-end: var(--spacing-l);
}

.pt-xl {
  padding-block-start: var(--spacing-xl);
}

.pb-xl {
  padding-block-end: var(--spacing-xl);
}

.pl-xl {
  padding-inline-start: var(--spacing-xl);
}

.pr-xl {
  padding-inline-end: var(--spacing-xl);
}

.px-xl {
  padding-inline-start: var(--spacing-xl);
  padding-inline-end: var(--spacing-xl);
}

.py-xl {
  padding-block-start: var(--spacing-xl);
  padding-block-end: var(--spacing-xl);
}

.pt-2xl {
  padding-block-start: var(--spacing-2xl);
}

.pb-2xl {
  padding-block-end: var(--spacing-2xl);
}

.pl-2xl {
  padding-inline-start: var(--spacing-2xl);
}

.pr-2xl {
  padding-inline-end: var(--spacing-2xl);
}

.px-2xl {
  padding-inline-start: var(--spacing-2xl);
  padding-inline-end: var(--spacing-2xl);
}

.py-2xl {
  padding-block-start: var(--spacing-2xl);
  padding-block-end: var(--spacing-2xl);
}

.pt-3xl {
  padding-block-start: var(--spacing-3xl);
}

.pb-3xl {
  padding-block-end: var(--spacing-3xl);
}

.pl-3xl {
  padding-inline-start: var(--spacing-3xl);
}

.pr-3xl {
  padding-inline-end: var(--spacing-3xl);
}

.px-3xl {
  padding-inline-start: var(--spacing-3xl);
  padding-inline-end: var(--spacing-3xl);
}

.py-3xl {
  padding-block-start: var(--spacing-3xl);
  padding-block-end: var(--spacing-3xl);
}

.pt-4xl {
  padding-block-start: var(--spacing-4xl);
}

.pb-4xl {
  padding-block-end: var(--spacing-4xl);
}

.pl-4xl {
  padding-inline-start: var(--spacing-4xl);
}

.pr-4xl {
  padding-inline-end: var(--spacing-4xl);
}

.px-4xl {
  padding-inline-start: var(--spacing-4xl);
  padding-inline-end: var(--spacing-4xl);
}

.py-4xl {
  padding-block-start: var(--spacing-4xl);
  padding-block-end: var(--spacing-4xl);
}

.pt-5xl {
  padding-block-start: var(--spacing-5xl);
}

.pb-5xl {
  padding-block-end: var(--spacing-5xl);
}

.pl-5xl {
  padding-inline-start: var(--spacing-5xl);
}

.pr-5xl {
  padding-inline-end: var(--spacing-5xl);
}

.px-5xl {
  padding-inline-start: var(--spacing-5xl);
  padding-inline-end: var(--spacing-5xl);
}

.py-5xl {
  padding-block-start: var(--spacing-5xl);
  padding-block-end: var(--spacing-5xl);
}

.pt-6xl {
  padding-block-start: var(--spacing-6xl);
}

.pb-6xl {
  padding-block-end: var(--spacing-6xl);
}

.pl-6xl {
  padding-inline-start: var(--spacing-6xl);
}

.pr-6xl {
  padding-inline-end: var(--spacing-6xl);
}

.px-6xl {
  padding-inline-start: var(--spacing-6xl);
  padding-inline-end: var(--spacing-6xl);
}

.py-6xl {
  padding-block-start: var(--spacing-6xl);
  padding-block-end: var(--spacing-6xl);
}

.pt-7xl {
  padding-block-start: var(--spacing-7xl);
}

.pb-7xl {
  padding-block-end: var(--spacing-7xl);
}

.pl-7xl {
  padding-inline-start: var(--spacing-7xl);
}

.pr-7xl {
  padding-inline-end: var(--spacing-7xl);
}

.px-7xl {
  padding-inline-start: var(--spacing-7xl);
  padding-inline-end: var(--spacing-7xl);
}

.py-7xl {
  padding-block-start: var(--spacing-7xl);
  padding-block-end: var(--spacing-7xl);
}

@media (min-width: 64em) {
  .mt-4xs-desktop {
    margin-block-start: var(--spacing-4xs);
  }
  .mb-4xs-desktop {
    margin-block-end: var(--spacing-4xs);
  }
  .ml-4xs-desktop {
    margin-inline-start: var(--spacing-4xs);
  }
  .mr-4xs-desktop {
    margin-inline-end: var(--spacing-4xs);
  }
  .mx-4xs-desktop {
    margin-inline-start: var(--spacing-4xs);
    margin-inline-end: var(--spacing-4xs);
  }
  .my-4xs-desktop {
    margin-block-start: var(--spacing-4xs);
    margin-block-end: var(--spacing-4xs);
  }
  .mt-3xs-desktop {
    margin-block-start: var(--spacing-3xs);
  }
  .mb-3xs-desktop {
    margin-block-end: var(--spacing-3xs);
  }
  .ml-3xs-desktop {
    margin-inline-start: var(--spacing-3xs);
  }
  .mr-3xs-desktop {
    margin-inline-end: var(--spacing-3xs);
  }
  .mx-3xs-desktop {
    margin-inline-start: var(--spacing-3xs);
    margin-inline-end: var(--spacing-3xs);
  }
  .my-3xs-desktop {
    margin-block-start: var(--spacing-3xs);
    margin-block-end: var(--spacing-3xs);
  }
  .mt-2xs-desktop {
    margin-block-start: var(--spacing-2xs);
  }
  .mb-2xs-desktop {
    margin-block-end: var(--spacing-2xs);
  }
  .ml-2xs-desktop {
    margin-inline-start: var(--spacing-2xs);
  }
  .mr-2xs-desktop {
    margin-inline-end: var(--spacing-2xs);
  }
  .mx-2xs-desktop {
    margin-inline-start: var(--spacing-2xs);
    margin-inline-end: var(--spacing-2xs);
  }
  .my-2xs-desktop {
    margin-block-start: var(--spacing-2xs);
    margin-block-end: var(--spacing-2xs);
  }
  .mt-xs-desktop {
    margin-block-start: var(--spacing-xs);
  }
  .mb-xs-desktop {
    margin-block-end: var(--spacing-xs);
  }
  .ml-xs-desktop {
    margin-inline-start: var(--spacing-xs);
  }
  .mr-xs-desktop {
    margin-inline-end: var(--spacing-xs);
  }
  .mx-xs-desktop {
    margin-inline-start: var(--spacing-xs);
    margin-inline-end: var(--spacing-xs);
  }
  .my-xs-desktop {
    margin-block-start: var(--spacing-xs);
    margin-block-end: var(--spacing-xs);
  }
  .mt-s-desktop {
    margin-block-start: var(--spacing-s);
  }
  .mb-s-desktop {
    margin-block-end: var(--spacing-s);
  }
  .ml-s-desktop {
    margin-inline-start: var(--spacing-s);
  }
  .mr-s-desktop {
    margin-inline-end: var(--spacing-s);
  }
  .mx-s-desktop {
    margin-inline-start: var(--spacing-s);
    margin-inline-end: var(--spacing-s);
  }
  .my-s-desktop {
    margin-block-start: var(--spacing-s);
    margin-block-end: var(--spacing-s);
  }
  .mt-m-desktop {
    margin-block-start: var(--spacing-m);
  }
  .mb-m-desktop {
    margin-block-end: var(--spacing-m);
  }
  .ml-m-desktop {
    margin-inline-start: var(--spacing-m);
  }
  .mr-m-desktop {
    margin-inline-end: var(--spacing-m);
  }
  .mx-m-desktop {
    margin-inline-start: var(--spacing-m);
    margin-inline-end: var(--spacing-m);
  }
  .my-m-desktop {
    margin-block-start: var(--spacing-m);
    margin-block-end: var(--spacing-m);
  }
  .mt-l-desktop {
    margin-block-start: var(--spacing-l);
  }
  .mb-l-desktop {
    margin-block-end: var(--spacing-l);
  }
  .ml-l-desktop {
    margin-inline-start: var(--spacing-l);
  }
  .mr-l-desktop {
    margin-inline-end: var(--spacing-l);
  }
  .mx-l-desktop {
    margin-inline-start: var(--spacing-l);
    margin-inline-end: var(--spacing-l);
  }
  .my-l-desktop {
    margin-block-start: var(--spacing-l);
    margin-block-end: var(--spacing-l);
  }
  .mt-xl-desktop {
    margin-block-start: var(--spacing-xl);
  }
  .mb-xl-desktop {
    margin-block-end: var(--spacing-xl);
  }
  .ml-xl-desktop {
    margin-inline-start: var(--spacing-xl);
  }
  .mr-xl-desktop {
    margin-inline-end: var(--spacing-xl);
  }
  .mx-xl-desktop {
    margin-inline-start: var(--spacing-xl);
    margin-inline-end: var(--spacing-xl);
  }
  .my-xl-desktop {
    margin-block-start: var(--spacing-xl);
    margin-block-end: var(--spacing-xl);
  }
  .mt-2xl-desktop {
    margin-block-start: var(--spacing-2xl);
  }
  .mb-2xl-desktop {
    margin-block-end: var(--spacing-2xl);
  }
  .ml-2xl-desktop {
    margin-inline-start: var(--spacing-2xl);
  }
  .mr-2xl-desktop {
    margin-inline-end: var(--spacing-2xl);
  }
  .mx-2xl-desktop {
    margin-inline-start: var(--spacing-2xl);
    margin-inline-end: var(--spacing-2xl);
  }
  .my-2xl-desktop {
    margin-block-start: var(--spacing-2xl);
    margin-block-end: var(--spacing-2xl);
  }
  .mt-3xl-desktop {
    margin-block-start: var(--spacing-3xl);
  }
  .mb-3xl-desktop {
    margin-block-end: var(--spacing-3xl);
  }
  .ml-3xl-desktop {
    margin-inline-start: var(--spacing-3xl);
  }
  .mr-3xl-desktop {
    margin-inline-end: var(--spacing-3xl);
  }
  .mx-3xl-desktop {
    margin-inline-start: var(--spacing-3xl);
    margin-inline-end: var(--spacing-3xl);
  }
  .my-3xl-desktop {
    margin-block-start: var(--spacing-3xl);
    margin-block-end: var(--spacing-3xl);
  }
  .mt-4xl-desktop {
    margin-block-start: var(--spacing-4xl);
  }
  .mb-4xl-desktop {
    margin-block-end: var(--spacing-4xl);
  }
  .ml-4xl-desktop {
    margin-inline-start: var(--spacing-4xl);
  }
  .mr-4xl-desktop {
    margin-inline-end: var(--spacing-4xl);
  }
  .mx-4xl-desktop {
    margin-inline-start: var(--spacing-4xl);
    margin-inline-end: var(--spacing-4xl);
  }
  .my-4xl-desktop {
    margin-block-start: var(--spacing-4xl);
    margin-block-end: var(--spacing-4xl);
  }
  .mt-5xl-desktop {
    margin-block-start: var(--spacing-5xl);
  }
  .mb-5xl-desktop {
    margin-block-end: var(--spacing-5xl);
  }
  .ml-5xl-desktop {
    margin-inline-start: var(--spacing-5xl);
  }
  .mr-5xl-desktop {
    margin-inline-end: var(--spacing-5xl);
  }
  .mx-5xl-desktop {
    margin-inline-start: var(--spacing-5xl);
    margin-inline-end: var(--spacing-5xl);
  }
  .my-5xl-desktop {
    margin-block-start: var(--spacing-5xl);
    margin-block-end: var(--spacing-5xl);
  }
  .mt-6xl-desktop {
    margin-block-start: var(--spacing-6xl);
  }
  .mb-6xl-desktop {
    margin-block-end: var(--spacing-6xl);
  }
  .ml-6xl-desktop {
    margin-inline-start: var(--spacing-6xl);
  }
  .mr-6xl-desktop {
    margin-inline-end: var(--spacing-6xl);
  }
  .mx-6xl-desktop {
    margin-inline-start: var(--spacing-6xl);
    margin-inline-end: var(--spacing-6xl);
  }
  .my-6xl-desktop {
    margin-block-start: var(--spacing-6xl);
    margin-block-end: var(--spacing-6xl);
  }
  .mt-7xl-desktop {
    margin-block-start: var(--spacing-7xl);
  }
  .mb-7xl-desktop {
    margin-block-end: var(--spacing-7xl);
  }
  .ml-7xl-desktop {
    margin-inline-start: var(--spacing-7xl);
  }
  .mr-7xl-desktop {
    margin-inline-end: var(--spacing-7xl);
  }
  .mx-7xl-desktop {
    margin-inline-start: var(--spacing-7xl);
    margin-inline-end: var(--spacing-7xl);
  }
  .my-7xl-desktop {
    margin-block-start: var(--spacing-7xl);
    margin-block-end: var(--spacing-7xl);
  }
  .pt-4xs-desktop {
    padding-block-start: var(--spacing-4xs);
  }
  .pb-4xs-desktop {
    padding-block-end: var(--spacing-4xs);
  }
  .pl-4xs-desktop {
    padding-inline-start: var(--spacing-4xs);
  }
  .pr-4xs-desktop {
    padding-inline-end: var(--spacing-4xs);
  }
  .px-4xs-desktop {
    padding-inline-start: var(--spacing-4xs);
    padding-inline-end: var(--spacing-4xs);
  }
  .py-4xs-desktop {
    padding-block-start: var(--spacing-4xs);
    padding-block-end: var(--spacing-4xs);
  }
  .pt-3xs-desktop {
    padding-block-start: var(--spacing-3xs);
  }
  .pb-3xs-desktop {
    padding-block-end: var(--spacing-3xs);
  }
  .pl-3xs-desktop {
    padding-inline-start: var(--spacing-3xs);
  }
  .pr-3xs-desktop {
    padding-inline-end: var(--spacing-3xs);
  }
  .px-3xs-desktop {
    padding-inline-start: var(--spacing-3xs);
    padding-inline-end: var(--spacing-3xs);
  }
  .py-3xs-desktop {
    padding-block-start: var(--spacing-3xs);
    padding-block-end: var(--spacing-3xs);
  }
  .pt-2xs-desktop {
    padding-block-start: var(--spacing-2xs);
  }
  .pb-2xs-desktop {
    padding-block-end: var(--spacing-2xs);
  }
  .pl-2xs-desktop {
    padding-inline-start: var(--spacing-2xs);
  }
  .pr-2xs-desktop {
    padding-inline-end: var(--spacing-2xs);
  }
  .px-2xs-desktop {
    padding-inline-start: var(--spacing-2xs);
    padding-inline-end: var(--spacing-2xs);
  }
  .py-2xs-desktop {
    padding-block-start: var(--spacing-2xs);
    padding-block-end: var(--spacing-2xs);
  }
  .pt-xs-desktop {
    padding-block-start: var(--spacing-xs);
  }
  .pb-xs-desktop {
    padding-block-end: var(--spacing-xs);
  }
  .pl-xs-desktop {
    padding-inline-start: var(--spacing-xs);
  }
  .pr-xs-desktop {
    padding-inline-end: var(--spacing-xs);
  }
  .px-xs-desktop {
    padding-inline-start: var(--spacing-xs);
    padding-inline-end: var(--spacing-xs);
  }
  .py-xs-desktop {
    padding-block-start: var(--spacing-xs);
    padding-block-end: var(--spacing-xs);
  }
  .pt-s-desktop {
    padding-block-start: var(--spacing-s);
  }
  .pb-s-desktop {
    padding-block-end: var(--spacing-s);
  }
  .pl-s-desktop {
    padding-inline-start: var(--spacing-s);
  }
  .pr-s-desktop {
    padding-inline-end: var(--spacing-s);
  }
  .px-s-desktop {
    padding-inline-start: var(--spacing-s);
    padding-inline-end: var(--spacing-s);
  }
  .py-s-desktop {
    padding-block-start: var(--spacing-s);
    padding-block-end: var(--spacing-s);
  }
  .pt-m-desktop {
    padding-block-start: var(--spacing-m);
  }
  .pb-m-desktop {
    padding-block-end: var(--spacing-m);
  }
  .pl-m-desktop {
    padding-inline-start: var(--spacing-m);
  }
  .pr-m-desktop {
    padding-inline-end: var(--spacing-m);
  }
  .px-m-desktop {
    padding-inline-start: var(--spacing-m);
    padding-inline-end: var(--spacing-m);
  }
  .py-m-desktop {
    padding-block-start: var(--spacing-m);
    padding-block-end: var(--spacing-m);
  }
  .pt-l-desktop {
    padding-block-start: var(--spacing-l);
  }
  .pb-l-desktop {
    padding-block-end: var(--spacing-l);
  }
  .pl-l-desktop {
    padding-inline-start: var(--spacing-l);
  }
  .pr-l-desktop {
    padding-inline-end: var(--spacing-l);
  }
  .px-l-desktop {
    padding-inline-start: var(--spacing-l);
    padding-inline-end: var(--spacing-l);
  }
  .py-l-desktop {
    padding-block-start: var(--spacing-l);
    padding-block-end: var(--spacing-l);
  }
  .pt-xl-desktop {
    padding-block-start: var(--spacing-xl);
  }
  .pb-xl-desktop {
    padding-block-end: var(--spacing-xl);
  }
  .pl-xl-desktop {
    padding-inline-start: var(--spacing-xl);
  }
  .pr-xl-desktop {
    padding-inline-end: var(--spacing-xl);
  }
  .px-xl-desktop {
    padding-inline-start: var(--spacing-xl);
    padding-inline-end: var(--spacing-xl);
  }
  .py-xl-desktop {
    padding-block-start: var(--spacing-xl);
    padding-block-end: var(--spacing-xl);
  }
  .pt-2xl-desktop {
    padding-block-start: var(--spacing-2xl);
  }
  .pb-2xl-desktop {
    padding-block-end: var(--spacing-2xl);
  }
  .pl-2xl-desktop {
    padding-inline-start: var(--spacing-2xl);
  }
  .pr-2xl-desktop {
    padding-inline-end: var(--spacing-2xl);
  }
  .px-2xl-desktop {
    padding-inline-start: var(--spacing-2xl);
    padding-inline-end: var(--spacing-2xl);
  }
  .py-2xl-desktop {
    padding-block-start: var(--spacing-2xl);
    padding-block-end: var(--spacing-2xl);
  }
  .pt-3xl-desktop {
    padding-block-start: var(--spacing-3xl);
  }
  .pb-3xl-desktop {
    padding-block-end: var(--spacing-3xl);
  }
  .pl-3xl-desktop {
    padding-inline-start: var(--spacing-3xl);
  }
  .pr-3xl-desktop {
    padding-inline-end: var(--spacing-3xl);
  }
  .px-3xl-desktop {
    padding-inline-start: var(--spacing-3xl);
    padding-inline-end: var(--spacing-3xl);
  }
  .py-3xl-desktop {
    padding-block-start: var(--spacing-3xl);
    padding-block-end: var(--spacing-3xl);
  }
  .pt-4xl-desktop {
    padding-block-start: var(--spacing-4xl);
  }
  .pb-4xl-desktop {
    padding-block-end: var(--spacing-4xl);
  }
  .pl-4xl-desktop {
    padding-inline-start: var(--spacing-4xl);
  }
  .pr-4xl-desktop {
    padding-inline-end: var(--spacing-4xl);
  }
  .px-4xl-desktop {
    padding-inline-start: var(--spacing-4xl);
    padding-inline-end: var(--spacing-4xl);
  }
  .py-4xl-desktop {
    padding-block-start: var(--spacing-4xl);
    padding-block-end: var(--spacing-4xl);
  }
  .pt-5xl-desktop {
    padding-block-start: var(--spacing-5xl);
  }
  .pb-5xl-desktop {
    padding-block-end: var(--spacing-5xl);
  }
  .pl-5xl-desktop {
    padding-inline-start: var(--spacing-5xl);
  }
  .pr-5xl-desktop {
    padding-inline-end: var(--spacing-5xl);
  }
  .px-5xl-desktop {
    padding-inline-start: var(--spacing-5xl);
    padding-inline-end: var(--spacing-5xl);
  }
  .py-5xl-desktop {
    padding-block-start: var(--spacing-5xl);
    padding-block-end: var(--spacing-5xl);
  }
  .pt-6xl-desktop {
    padding-block-start: var(--spacing-6xl);
  }
  .pb-6xl-desktop {
    padding-block-end: var(--spacing-6xl);
  }
  .pl-6xl-desktop {
    padding-inline-start: var(--spacing-6xl);
  }
  .pr-6xl-desktop {
    padding-inline-end: var(--spacing-6xl);
  }
  .px-6xl-desktop {
    padding-inline-start: var(--spacing-6xl);
    padding-inline-end: var(--spacing-6xl);
  }
  .py-6xl-desktop {
    padding-block-start: var(--spacing-6xl);
    padding-block-end: var(--spacing-6xl);
  }
  .pt-7xl-desktop {
    padding-block-start: var(--spacing-7xl);
  }
  .pb-7xl-desktop {
    padding-block-end: var(--spacing-7xl);
  }
  .pl-7xl-desktop {
    padding-inline-start: var(--spacing-7xl);
  }
  .pr-7xl-desktop {
    padding-inline-end: var(--spacing-7xl);
  }
  .px-7xl-desktop {
    padding-inline-start: var(--spacing-7xl);
    padding-inline-end: var(--spacing-7xl);
  }
  .py-7xl-desktop {
    padding-block-start: var(--spacing-7xl);
    padding-block-end: var(--spacing-7xl);
  }
}
/**
 * Helpers: Text
 * -----------------------------------------------------------------------------
 * Utility classes to format and align text.
 *
 */
.text-left,
.text-start {
  text-align: flex-start;
}

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

.text-right,
.text-end {
  text-align: flex-end;
}

.large-link {
  align-items: center;
  display: inline-flex;
}
.large-link__arrow,
.large-link .button__icon {
  align-items: center;
  background-color: var(--color-brand-1-dark);
  border-radius: 20px;
  display: flex;
  height: 40px;
  justify-content: center;
  margin-block-end: var(--spacing-xs);
  margin-inline-start: var(--spacing-s);
  opacity: 0;
  transition: background-color var(--timing-normal) ease-in-out, opacity var(--timing-normal);
  width: 40px;
}
.large-link__arrow .icon__arrow,
.large-link .button__icon .icon__arrow {
  width: 5.5px;
}
.large-link:hover .large-link__arrow {
  opacity: 1;
}
.large-link:hover .large-link__arrow:hover {
  background-color: var(--color-brand-1-default);
}

.text-link-regular {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  padding: 0;
  position: relative;
  transition: opacity var(--timing-normal) ease-in-out;
}
.text-link-regular::after {
  border-bottom: 1px solid var(--color-neutral-1);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 0;
  position: absolute;
  transition: opacity var(--timing-normal) ease-in-out;
  width: 100%;
}
.text-link-regular:hover::after {
  opacity: 1;
}

.text-link-inline {
  text-decoration: underline;
}

.text-link,
.text-link-hover {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  padding: 0;
  position: relative;
  transition: opacity var(--timing-normal) ease-in-out;
}
.text-link:hover,
.text-link-hover:hover {
  opacity: 0.7;
}
.text-link:hover::after,
.text-link-hover:hover::after {
  opacity: 0.7;
}
.text-link::after,
.text-link-hover::after {
  border-bottom: 1px solid var(--color-neutral-1);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 1;
  position: absolute;
  transition: opacity var(--timing-normal) ease-in-out;
  width: 100%;
}

.text-link-hover::after {
  opacity: 0;
}
.text-link-hover:hover {
  opacity: 1;
}
.text-link-hover:hover::after {
  opacity: 1;
}

/**
 * Helper: Transitions
 * -----------------------------------------------------------------------------
 * Transition classes for Vue transition component.
 *
 */
/**
 * Fade.
 */
.fade-enter-active,
.fade-leave-active {
  transition: opacity var(--timing-normal) var(--easing-normal);
}
.fade-enter-active.fade-enter-from, .fade-enter-active.fade-leave-to,
.fade-leave-active.fade-enter-from,
.fade-leave-active.fade-leave-to {
  opacity: 0;
}
.fade-enter-active.fade-enter-to, .fade-enter-active.fade-leave-from,
.fade-leave-active.fade-enter-to,
.fade-leave-active.fade-leave-from {
  opacity: 1;
}

/**
 * Fade up.
 */
.fade-up-enter-active,
.fade-up-leave-active {
  transition: opacity var(--timing-normal) var(--easing-normal), translate var(--timing-normal) var(--easing-normal);
}
.fade-up-enter-active.fade-up-enter-from, .fade-up-enter-active.fade-up-leave-to,
.fade-up-leave-active.fade-up-enter-from,
.fade-up-leave-active.fade-up-leave-to {
  opacity: 0;
  translate: 0 var(--spacing-l);
}
.fade-up-enter-active.fade-up-enter-to, .fade-up-enter-active.fade-up-leave-from,
.fade-up-leave-active.fade-up-enter-to,
.fade-up-leave-active.fade-up-leave-from {
  opacity: 1;
  translate: 0;
}

/**
 * Fade down.
 */
.fade-down-enter-active,
.fade-down-leave-active {
  transition: opacity var(--timing-normal) var(--easing-normal), translate var(--timing-normal) var(--easing-normal);
}
.fade-down-enter-active.fade-down-enter-from, .fade-down-enter-active.fade-down-leave-to,
.fade-down-leave-active.fade-down-enter-from,
.fade-down-leave-active.fade-down-leave-to {
  opacity: 0;
  translate: 0 calc(var(--spacing-l) * -1);
}
.fade-down-enter-active.fade-down-enter-to, .fade-down-enter-active.fade-down-leave-from,
.fade-down-leave-active.fade-down-enter-to,
.fade-down-leave-active.fade-down-leave-from {
  opacity: 1;
  translate: 0;
}

/**
 * Slide left (opens from right).
 */
.slide-left-enter-active,
.slide-left-leave-active {
  transition: translate var(--timing-normal) var(--easing-normal);
}
.slide-left-enter-active.slide-left-enter-from, .slide-left-enter-active.slide-left-leave-to,
.slide-left-leave-active.slide-left-enter-from,
.slide-left-leave-active.slide-left-leave-to {
  translate: 100%;
}
[dir=rtl] .slide-left-enter-active.slide-left-enter-from, [dir=rtl] .slide-left-enter-active.slide-left-leave-to,
[dir=rtl] .slide-left-leave-active.slide-left-enter-from,
[dir=rtl] .slide-left-leave-active.slide-left-leave-to {
  translate: -100%;
}
.slide-left-enter-active.slide-left-enter-to, .slide-left-enter-active.slide-left-leave-from,
.slide-left-leave-active.slide-left-enter-to,
.slide-left-leave-active.slide-left-leave-from {
  translate: 0;
}

/**
 * Slide right (opens from left).
 */
.slide-right-enter-active,
.slide-right-leave-active {
  transition: translate var(--timing-normal) var(--easing-normal);
}
.slide-right-enter-active.slide-right-enter-from, .slide-right-enter-active.slide-right-leave-to,
.slide-right-leave-active.slide-right-enter-from,
.slide-right-leave-active.slide-right-leave-to {
  translate: -100%;
}
[dir=rtl] .slide-right-enter-active.slide-right-enter-from, [dir=rtl] .slide-right-enter-active.slide-right-leave-to,
[dir=rtl] .slide-right-leave-active.slide-right-enter-from,
[dir=rtl] .slide-right-leave-active.slide-right-leave-to {
  translate: 100%;
}
.slide-right-enter-active.slide-right-enter-to, .slide-right-enter-active.slide-right-leave-from,
.slide-right-leave-active.slide-right-enter-to,
.slide-right-leave-active.slide-right-leave-from {
  translate: 0;
}

/**
 * Slide up (opens from bottom).
 */
.slide-up-enter-active,
.slide-up-leave-active {
  transition: translate var(--timing-normal) var(--easing-normal);
}
.slide-up-enter-active.slide-up-enter-from, .slide-up-enter-active.slide-up-leave-to,
.slide-up-leave-active.slide-up-enter-from,
.slide-up-leave-active.slide-up-leave-to {
  translate: 0 100%;
}
.slide-up-enter-active.slide-up-enter-to, .slide-up-enter-active.slide-up-leave-from,
.slide-up-leave-active.slide-up-enter-to,
.slide-up-leave-active.slide-up-leave-from {
  translate: 0;
}

/**
 * Slide down (opens from top).
 */
.slide-down-enter-active,
.slide-down-leave-active {
  transition: translate var(--timing-normal) var(--easing-normal);
}
.slide-down-enter-active.slide-down-enter-from, .slide-down-enter-active.slide-down-leave-to,
.slide-down-leave-active.slide-down-enter-from,
.slide-down-leave-active.slide-down-leave-to {
  translate: 0 -100%;
}
.slide-down-enter-active.slide-down-enter-to, .slide-down-enter-active.slide-down-leave-from,
.slide-down-leave-active.slide-down-enter-to,
.slide-down-leave-active.slide-down-leave-from {
  translate: 0;
}

/**
 * Import pages.
 */
/**
 * Page: Shopify challenge
 * -----------------------------------------------------------------------------
 * Styles for reCaptcha page shown on sign-up.
 * - Has no template, but does have a page type.
 *
 */
.shopify-challenge__container {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-block-end: var(--layout-padding-bottom);
  margin-block-start: var(--layout-padding-top);
  padding-inline-end: var(--layout-margin);
  padding-inline-start: var(--layout-margin);
}
.shopify-challenge__container .g-recaptcha {
  margin-block-end: var(--spacing-l);
}
.shopify-challenge__message {
  margin-block-end: var(--spacing-l);
}
.shopify-challenge__button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-4);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-3);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  transition: background-color var(--timing-normal) var(--easing-normal);
  align-items: center;
  background-color: var(--color-brand-1-default);
  border: 1px solid var(--color-neutral-1);
  color: var(--color-neutral-1);
  display: inline-flex;
  justify-content: space-between;
  padding: var(--spacing-s) var(--spacing-m);
}
.shopify-challenge__button:not([disabled], .is-disabled):hover, .shopify-challenge__button:not([disabled], .is-disabled).is-hover {
  background-color: var(--color-brand-1-dark);
}

/**
 * Page: Shopify policy
 * -----------------------------------------------------------------------------
 * Styles for policies.
 * - Has no template, but does have a page type.
 *
 */
.shopify-policy__container {
  margin-inline: auto;
  max-width: var(--max-content-width);
  padding-inline-end: var(--layout-mobile-margin);
  padding-inline-start: var(--layout-mobile-margin);
  width: 100%;
  margin-block-end: var(--layout-padding-bottom);
  margin-block-start: var(--spacing-7xl);
}
@media (min-width: 48em) {
  .shopify-policy__container {
    padding-inline-end: var(--layout-tablet-margin);
    padding-inline-start: var(--layout-tablet-margin);
  }
}
@media (min-width: 64em) {
  .shopify-policy__container {
    padding-inline-end: var(--layout-desktop-margin);
    padding-inline-start: var(--layout-desktop-margin);
  }
}
.shopify-policy__title {
  margin-block-end: var(--spacing-m);
  padding-block-start: var(--spacing-4xl);
  text-align: flex-start;
}

/**
 * Import global components.
 * - Global components not imported here are in `critical/theme.scss`.
 */
:root {
  --font-primary: #13294b;
  --font-secondary: #1c8195;
  --primary: #13294b;
  --secondary: #1c8195;
  --tertiary: #f4f5f5;
  --highlight: #fafafa;
  --white: #fff;
  --border: #d0d3d4;
  --font-family: Poppins, sans-serif;
  --text-sm-size: 14px;
  --text-sm-line-height: 20px;
  --text-xl-size: 20px;
  --text-xl-line-height: 28px;
  --text-2xl-size: 24px;
  --text-2xl-line-height: 32px;
  --text-3xl-size: 36px;
  --text-3xl-line-height: 40px;
  --text-4xl-size: 54px;
  --text-4xl-line-height: 64px;
  --font-bold: 700;
  -webkit-font-smoothing: antialiased;
}

*,
::after,
::before {
  box-sizing: border-box;
  border-width: 0;
  margin: 0;
}

img,
svg {
  display: block;
  max-width: 100%;
}

button {
  font: inherit;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  overflow-wrap: break-word;
}

.bread-wrapper * {
  -webkit-font-smoothing: antialiased;
  color: #13294b;
  color: var(--font-primary);
  font-family: Poppins, sans-serif;
  font-family: var(--font-family);
  line-height: 1.5;
  font-size: 16px;
}

/* Components */
.bread-button-primary {
  background-color: #1c8195;
  background-color: var(--secondary);
  padding: 12px 40px 12px 40px;
  color: #fff;
  color: var(--white);
  border-radius: 9999px;
  width: 100%;
  max-width: 360px;
  font-weight: 700;
  font-weight: var(--font-bold);
  cursor: pointer;
}

/* Components */
.bread-link-button {
  background-color: #fff;
  background-color: var(--white);
  padding: 12px 40px 12px 40px;
  color: #1c8195;
  color: var(--font-secondary);
  border-radius: 9999px;
  border: 2px solid #1c8195;
  border: 2px solid var(--secondary);
  font-weight: 700;
  font-weight: var(--font-bold);
  text-decoration: none;
}

/* Layout */
/* Header */
.bread-header {
  display: flex;
  flex-direction: column;
  justify-content: center;
  margin-bottom: 48px;
}

.bread-header .bread-title {
  padding: 16px 16px 32px 16px;
  margin-top: 40px;
}

.bread-header .bread-hero {
  width: 100%;
}

.bread-header .bread-title h1 {
  font-size: 54px;
  font-size: var(--text-4xl-size);
  line-height: 64px;
  line-height: var(--text-4xl-line-height);
  font-weight: 700;
  font-weight: var(--font-bold);
  margin-bottom: 24px;
}

.bread-header .bread-title p {
  font-size: 20px;
  font-size: var(--text-xl-size);
  line-height: 28px;
  line-height: var(--text-xl-line-height);
  text-align: left;
  margin-bottom: 24px;
}

.bread-header .bread-title .bread-title-cta {
  text-align: center;
}

/* Payment plans */
.bread-payment-plans {
  display: flex;
  justify-content: center;
  text-align: center;
  margin-bottom: 24px;
}

.bread-payment-plans .payment-plan h1 {
  font-size: 36px;
  font-size: var(--text-3xl-size);
  line-height: 40px;
  line-height: var(--text-3xl-line-height);
  font-weight: 700;
  font-weight: var(--font-bold);
  margin-bottom: 8px;
}

.bread-payment-plans .payment-plan p {
  font-size: 20px;
  font-size: var(--text-xl-size);
  line-height: 28px;
  line-height: var(--text-xl-line-height);
}

/* Loan terms */
.bread-loan-terms {
  display: flex;
  flex-direction: column;
  gap: 48px;
  justify-content: center;
  width: 100%;
  padding: 0 32px 0 32px;
  margin-bottom: 40px;
}

.bread-loan-terms .bread-terms-section {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: 100%;
}

.bread-loan-terms .bread-terms-section .bread-terms-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 9999px;
  background-color: #f4f5f5;
  background-color: var(--tertiary);
  width: 144px;
  height: 144px;
  margin-bottom: 16px;
}

.bread-loan-terms .bread-terms-section .bread-terms-icon svg {
  fill: #13294b;
  fill: var(--primary);
}

.bread-loan-terms .bread-terms-section .bread-terms-content {
  text-align: center;
}

.bread-loan-terms .bread-terms-section .bread-terms-content h2 {
  font-size: 24px;
  font-size: var(--text-2xl-size);
  line-height: 32px;
  line-height: var(--text-2xl-line-height);
  font-weight: 700;
  font-weight: var(--font-bold);
  margin-bottom: 0.8px;
}

.bread-get-your-rate {
  width: 100%;
  display: flex;
  justify-content: center;
  margin-bottom: 32px;
}

.bread-financing-made-easy {
  width: 100%;
  background-color: #f4f5f5;
  background-color: var(--tertiary);
}

.bread-financing-made-easy .bread-financing-made-easy-content {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 48px 16px 48px 16px;
}

.bread-financing-made-easy .bread-financing-made-easy-content h1 {
  font-size: 54px;
  font-size: var(--text-4xl-size);
  line-height: 64px;
  line-height: var(--text-4xl-line-height);
  text-align: center;
  font-weight: 700;
  font-weight: var(--font-bold);
  margin-bottom: 24px;
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items {
  display: flex;
  flex-direction: column;
  row-gap: 24px;
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-made-easy-item {
  display: flex;
  flex-direction: column;
  width: 100%;
  border-radius: 24px;
  padding: 40px;
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-made-easy-item h2 {
  font-size: 54px;
  font-size: var(--text-4xl-size);
  line-height: 64px;
  line-height: var(--text-4xl-line-height);
  text-align: left;
  font-weight: 700;
  font-weight: var(--font-bold);
  margin-bottom: 24px;
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-made-easy-item p.step-subtext {
  font-weight: 700;
  font-weight: var(--font-bold);
  margin-bottom: 8px;
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-one {
  background-color: #13294b;
  background-color: var(--primary);
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-one h2 {
  color: #fff;
  color: var(--white);
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-one p {
  color: #fff;
  color: var(--white);
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-two {
  color: #fff;
  color: var(--white);
  background-color: #1c8195;
  background-color: var(--secondary);
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-two h2 {
  color: #fff;
  color: var(--white);
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-two p {
  color: #fff;
  color: var(--white);
}

.bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-three {
  background-color: #fff;
  background-color: var(--white);
  border: 2px solid #d0d3d4;
  border: 2px solid var(--border);
}

/* Questions */
.bread-questions {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  background-color: #fafafa;
  background-color: var(--highlight);
  gap: 32px;
  padding: 24px 0 24px 0;
  margin-bottom: 32px;
}

.bread-questions h2 {
  font-size: 24px;
  font-size: var(--text-2xl-size);
  line-height: 32px;
  line-height: var(--text-2xl-line-height);
  font-weight: 700;
  font-weight: var(--font-bold);
}

/* Disclosures */
.bread-disclosures {
  text-align: left;
  padding: 32px 16px 32px 16px;
}

.bread-disclosures p {
  font-size: 14px;
  font-size: var(--text-sm-size);
  line-height: 20px;
  line-height: var(--text-sm-line-height);
  margin-bottom: 16px;
}

.bread-footer {
  display: flex;
  justify-content: center;
  margin-bottom: 32px;
}

/* Medium */
@media (min-width: 768px) {
  /* Header */
  .bread-header {
    flex-direction: row;
    justify-content: start;
    -moz-column-gap: 32px;
         column-gap: 32px;
    margin-bottom: 0;
  }
  .bread-header .bread-title {
    order: 2;
    margin-top: 40px;
    max-width: 896px;
  }
  .bread-header .bread-title .bread-title-cta {
    text-align: left;
  }
  .bread-header .bread-hero {
    order: 1;
    max-width: 600px;
    min-width: 400px;
  }
  /* Payment plans */
  .bread-payment-plans .payment-plan h1 {
    font-size: 54px;
    font-size: var(--text-4xl-size);
    line-height: 64px;
    line-height: var(--text-4xl-line-height);
  }
  /* Loan terms */
  .bread-loan-terms {
    flex-direction: row;
  }
  .bread-loan-terms .bread-terms-section {
    max-width: 360px;
  }
  /* Financing made easy */
  .bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items {
    display: flex;
    flex-direction: row;
    -moz-column-gap: normal;
         column-gap: normal;
  }
  .bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-made-easy-item {
    width: 33.333333%;
    max-width: 360px;
  }
  .bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-one {
    border-radius: 0;
    border-top-left-radius: 24px;
    border-bottom-left-radius: 24px;
  }
  .bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-two {
    border-radius: 0;
  }
  .bread-financing-made-easy .bread-financing-made-easy-content .bread-financing-made-easy-items .bread-financing-step-three {
    border-radius: 0;
    border-top-right-radius: 24px;
    border-bottom-right-radius: 24px;
  }
  .bread-disclosures {
    padding: 16px 80px 16px 80px;
  }
  .bread-questions {
    flex-direction: row;
  }
  .bread-button-primary {
    width: -moz-fit-content;
    width: fit-content;
  }
}
.custom-specs {
  padding-block: var(--spacing-5xl) var(--spacing-2xl);
  padding-inline: var(--spacing-xs);
}
.custom-specs.critical-component-hide {
  display: block;
}
.custom-specs ul, .custom-specs ol {
  list-style: inherit;
  margin: revert;
  padding: revert;
}
.custom-specs.critical-component-clear {
  opacity: 1;
}
.custom-specs [class^=text-heading] {
  color: var(--color-neutral-1);
}
.custom-specs__subcopy p {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
.custom-specs__subcopy p + h4, .custom-specs__subcopy p + h5, .custom-specs__subcopy p + h6, .custom-specs__subcopy p + p, .custom-specs__subcopy p + ul, .custom-specs__subcopy p + ol, .custom-specs__subcopy p + table, .custom-specs__subcopy p + blockquote {
  margin-block-start: var(--spacing-m);
}
@media (min-width: 64em) {
  .custom-specs__subcopy p + h4 + h4, .custom-specs__subcopy p + h4 + h5, .custom-specs__subcopy p + h4 + h6, .custom-specs__subcopy p + h4 + p, .custom-specs__subcopy p + h4 + ul, .custom-specs__subcopy p + h4 + ol, .custom-specs__subcopy p + h4 + table, .custom-specs__subcopy p + h4 + blockquote, .custom-specs__subcopy p + h5 + h4, .custom-specs__subcopy p + h5 + h5, .custom-specs__subcopy p + h5 + h6, .custom-specs__subcopy p + h5 + p, .custom-specs__subcopy p + h5 + ul, .custom-specs__subcopy p + h5 + ol, .custom-specs__subcopy p + h5 + table, .custom-specs__subcopy p + h5 + blockquote, .custom-specs__subcopy p + h6 + h4, .custom-specs__subcopy p + h6 + h5, .custom-specs__subcopy p + h6 + h6, .custom-specs__subcopy p + h6 + p, .custom-specs__subcopy p + h6 + ul, .custom-specs__subcopy p + h6 + ol, .custom-specs__subcopy p + h6 + table, .custom-specs__subcopy p + h6 + blockquote, .custom-specs__subcopy p + p + h4, .custom-specs__subcopy p + p + h5, .custom-specs__subcopy p + p + h6, .custom-specs__subcopy p + p + p, .custom-specs__subcopy p + p + ul, .custom-specs__subcopy p + p + ol, .custom-specs__subcopy p + p + table, .custom-specs__subcopy p + p + blockquote, .custom-specs__subcopy p + ul + h4, .custom-specs__subcopy p + ul + h5, .custom-specs__subcopy p + ul + h6, .custom-specs__subcopy p + ul + p, .custom-specs__subcopy p + ul + ul, .custom-specs__subcopy p + ul + ol, .custom-specs__subcopy p + ul + table, .custom-specs__subcopy p + ul + blockquote, .custom-specs__subcopy p + ol + h4, .custom-specs__subcopy p + ol + h5, .custom-specs__subcopy p + ol + h6, .custom-specs__subcopy p + ol + p, .custom-specs__subcopy p + ol + ul, .custom-specs__subcopy p + ol + ol, .custom-specs__subcopy p + ol + table, .custom-specs__subcopy p + ol + blockquote, .custom-specs__subcopy p + table + h4, .custom-specs__subcopy p + table + h5, .custom-specs__subcopy p + table + h6, .custom-specs__subcopy p + table + p, .custom-specs__subcopy p + table + ul, .custom-specs__subcopy p + table + ol, .custom-specs__subcopy p + table + table, .custom-specs__subcopy p + table + blockquote, .custom-specs__subcopy p + blockquote + h4, .custom-specs__subcopy p + blockquote + h5, .custom-specs__subcopy p + blockquote + h6, .custom-specs__subcopy p + blockquote + p, .custom-specs__subcopy p + blockquote + ul, .custom-specs__subcopy p + blockquote + ol, .custom-specs__subcopy p + blockquote + table, .custom-specs__subcopy p + blockquote + blockquote {
    margin-block-start: var(--spacing-l);
  }
}
.custom-specs__subcopy p + img {
  margin-block: var(--spacing-2xl);
}
@media (min-width: 64em) {
  .custom-specs__subcopy p + img {
    margin-block: calc(var(--spacing-2xl) + var(--spacing-xs));
  }
}
.custom-specs__subcopy p + h1, .custom-specs__subcopy p + h2, .custom-specs__subcopy p + h3, .custom-specs__subcopy p + h4, .custom-specs__subcopy p + h5, .custom-specs__subcopy p + h6 {
  margin-block-start: var(--spacing-m);
}
@media (min-width: 64em) {
  .custom-specs__subcopy p + h1, .custom-specs__subcopy p + h2, .custom-specs__subcopy p + h3, .custom-specs__subcopy p + h4, .custom-specs__subcopy p + h5, .custom-specs__subcopy p + h6 {
    margin-block-start: var(--spacing-l);
  }
}
.custom-specs__table {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}
.custom-specs .tablecolumn {
  width: 33%;
  padding: 10px;
  float: left;
  border: 1px solid black;
}
.custom-specs .image_center {
  display: flex;
  justify-content: center;
}
.custom-specs .image_left {
  display: flex;
  justify-content: flex-start;
}
.custom-specs .image_right {
  display: flex;
  justify-content: flex-end;
}
.custom-specs .text_right, .custom-specs .text_left {
  display: flex;
  justify-content: flex-end;
  flex-direction: column;
}
.custom-specs .witdh-s {
  width: 100%;
  padding-block: var(--spacing-s);
}
.custom-specs .witdh-x {
  width: 100%;
  padding-block: var(--spacing-s);
}
.custom-specs img {
  -o-object-fit: cover;
     object-fit: cover;
}
.custom-specs .inner-padding {
  display: flex;
}
@media (min-width: 64em) {
  .custom-specs {
    padding-inline: 0;
  }
  .custom-specs .witdh-s {
    width: 40%;
    padding-block: inherit;
  }
  .custom-specs .witdh-x {
    width: 60%;
    padding-block: inherit;
  }
  .custom-specs .text_right {
    display: flex;
    justify-content: flex-end;
    flex-direction: row-reverse;
  }
  .custom-specs .text_right .inner-padding {
    padding-inline-end: var(--spacing-2xl);
  }
  .custom-specs .text_left {
    display: flex;
    justify-content: flex-end;
    flex-direction: row;
  }
  .custom-specs .text_left .inner-padding {
    padding-inline-start: var(--spacing-2xl);
  }
}

.finance-buy-now {
  margin-inline: var(--spacing-m);
  padding-block: 0;
}
.finance-buy-now__block-div {
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.finance-buy-now__eyebrow {
  text-transform: uppercase;
}
.finance-buy-now__title {
  text-transform: uppercase;
  font-size: var(--font-size-6) !important;
  text-align: start;
}
.finance-buy-now__subcopy {
  margin-block-start: var(--spacing-m);
  margin-block-end: var(--spacing-m);
  font-size: var(--font-size-3) !important;
}
.finance-buy-now__value-subcopy {
  text-align: start;
}
.finance-buy-now__media-div {
  height: 40vh;
  order: -1;
}
.finance-buy-now__media-image {
  height: 40vh;
}
.finance-buy-now .grid {
  gap: 2.5rem;
}
.finance-buy-now__header {
  padding-block-end: var(--spacing-2xl);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}
.finance-buy-now__grid {
  margin-block-end: var(--spacing-xl);
}
.finance-buy-now__dash {
  border: 1px solid;
  width: 40px;
  margin: 2.5rem 2.5rem 2.5rem 0;
}
.finance-buy-now__info-title {
  text-align: start;
  text-transform: uppercase;
  font-size: var(--font-size-6) !important;
}
.finance-buy-now__left-padding {
  padding-left: 0;
}
.finance-buy-now__right-padding {
  padding-right: 0;
}
@media (min-width: 64em) {
  .finance-buy-now {
    margin-inline: var(--spacing-2xl);
    padding-block: var(--spacing-xl);
  }
  .finance-buy-now__grid {
    margin-block-end: var(--spacing-3xl);
  }
  .finance-buy-now__title {
    max-width: 770px;
    font-size: var(--font-size-7) !important;
    text-align: center;
  }
  .finance-buy-now__info-title {
    text-align: start;
    text-transform: uppercase;
    font-size: var(--font-size-7) !important;
  }
  .finance-buy-now .grid {
    gap: 2rem;
  }
  .finance-buy-now__header {
    padding-block-end: var(--spacing-5xl);
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 58%;
    margin: 0 auto;
  }
  .finance-buy-now__media-image-mobile {
    display: none;
  }
  .finance-buy-now__media-image-desktop {
    display: block;
  }
  .finance-buy-now__media-div {
    height: 70vh;
    order: inherit;
  }
  .finance-buy-now__media-image {
    height: 70vh;
  }
  .finance-buy-now__value-subcopy {
    text-align: center;
  }
  .finance-buy-now__subcopy {
    margin-block-start: calc(var(--spacing-s) + var(--spacing-xs));
    margin-block-end: inherit;
    font-size: var(--font-size-4) !important;
  }
  .finance-buy-now__dash {
    border: 1px solid;
    width: 40px;
    margin: 2.5rem;
  }
  .finance-buy-now__subcopy {
    margin-block-start: calc(var(--spacing-s) + var(--spacing-xs));
    margin-block-end: inherit;
    font-size: var(--font-size-4) !important;
  }
  .finance-buy-now__button-wrapper {
    margin-block-end: 0;
    margin-block-start: calc(var(--spacing-s) + var(--spacing-2xs));
  }
  .finance-buy-now__cta {
    font-size: var(--font-size-3) !important;
  }
}
@media (min-width: 90em) {
  .finance-buy-now .grid {
    gap: 5rem;
  }
  .finance-buy-now__left-padding {
    padding-left: 0;
  }
  .finance-buy-now__right-padding {
    padding-right: 0;
  }
}

/**
 * Styles: Hero banner (finance-hero)
 * -----------------------------------------------------------------------------
 * Base styles for hero banner component.
 *
 */
.finance-hero {
  max-height: calc(100vh - 93px);
}
.finance-hero.critical-component-hide {
  display: block;
}
.finance-hero.critical-component-clear {
  opacity: 1;
}
.finance-hero .splide.is-initialized:not(.is-active) .splide__list {
  height: auto;
  height: initial;
  display: flex !important;
}
.finance-hero .splide__slide {
  width: 100%;
}
.finance-hero [class*=text-heading] {
  color: var(--color-neutral-5);
}
.finance-hero__slide-media {
  position: relative;
}
.finance-hero__slide-media::after {
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.75) 83.11%);
  content: "";
  display: block;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.finance-hero__slide {
  max-height: calc(100vh - 93px);
  position: relative;
}
.finance-hero__media-image-desktop {
  display: none;
}
.finance-hero__slide-content {
  display: flex;
  flex-flow: column;
  height: 100%;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.finance-hero__eyebrow {
  color: var(--color-neutral-5);
  text-transform: uppercase;
}
.finance-hero__title {
  margin-block-start: var(--spacing-m);
  text-transform: uppercase;
  color: var(--color-neutral-5);
}
.finance-hero__subcopy {
  color: var(--color-neutral-5);
  margin-block-start: var(--spacing-m);
}
.finance-hero__button-wrapper {
  margin-block-start: var(--spacing-l);
}
.finance-hero__cta--2 {
  display: none;
}
.finance-hero .splide__pagination {
  left: auto;
  right: var(--spacing-m);
  width: -moz-fit-content;
  width: fit-content;
}
@media (min-width: 64em) {
  .finance-hero__title {
    max-width: 1050px;
  }
  .finance-hero__media-image-mobile {
    display: none;
  }
  .finance-hero__media-image-desktop {
    display: block;
  }
  .finance-hero__slide-content {
    width: 60%;
  }
  .finance-hero__inner-content {
    margin-inline-start: var(--spacing-l);
    margin-inline-end: var(--spacing-l);
    margin-block-start: var(--spacing-l);
    margin-block-end: var(--spacing-l);
  }
  .finance-hero__slide-media::after {
    background: linear-gradient(224.52deg, rgba(0, 0, 0, 0) 26.43%, rgba(0, 0, 0, 0.75) 78.88%);
  }
  .finance-hero__subcopy {
    margin-block-start: calc(var(--spacing-m) + var(--spacing-xs));
  }
  .finance-hero__slide {
    max-height: calc(100vh - 93px);
  }
  .finance-hero .splide__pagination {
    margin-block-end: var(--spacing-6xl);
    margin-inline-end: var(--spacing-6xl);
  }
  .finance-hero__button-wrapper {
    margin-block-end: 0;
    margin-block-start: calc(var(--spacing-xl) + var(--spacing-2xs));
  }
  .finance-hero .splide.is-initialized:not(.is-active) .splide__list {
    height: 420px;
    display: flex !important;
  }
  .finance-hero__cta--2 {
    display: inline-flex;
    margin-block-end: 0;
    margin-inline-start: calc(var(--spacing-m) + var(--spacing-2xs));
  }
}
.finance-hero .splide__arrow {
  display: none;
}
@media (min-width: 90em) {
  .finance-hero .splide.is-initialized:not(.is-active) .splide__list {
    height: 560px;
    display: flex !important;
  }
}
@media (min-width: 90em) and (min-width: 90em) {
  .finance-hero .splide.is-initialized:not(.is-active) .splide__list {
    height: 560px;
    display: flex !important;
  }
  .finance-hero__inner-content {
    margin-block-start: var(--spacing-6xl);
    margin-block-end: var(--spacing-6xl);
    margin-inline-start: var(--spacing-6xl);
    margin-inline-end: var(--spacing-6xl);
  }
}

.finance-info-blocks {
  margin-inline: var(--spacing-m);
  padding-block: 0;
  padding-block-end: var(--spacing-2xl);
}
.finance-info-blocks__title {
  text-transform: uppercase;
  text-align: start;
}
.finance-info-blocks__subcopy p, .finance-info-blocks__subcopy span {
  font-size: var(--font-size-3) !important;
}
.finance-info-blocks__header {
  padding-block-end: var(--spacing-2xl);
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  width: 100%;
}
.finance-info-blocks__dash {
  border: 1px solid;
  width: 40px;
  margin: 2.5rem 2.5rem 2.5rem 0;
}
.finance-info-blocks__value-subcopy {
  text-align: start;
}
.finance-info-blocks__info-outer {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.finance-info-blocks__info-div {
  display: flex;
  flex-direction: column;
  width: 100%;
}
.finance-info-blocks__dash-inner {
  border: 1px solid;
  width: 40px;
  margin: 2.5rem 2.5rem 1rem 0;
}
@media (min-width: 64em) {
  .finance-info-blocks {
    margin-inline: var(--spacing-2xl);
    padding-block: var(--spacing-xl);
    padding-block-end: var(--spacing-5xl);
  }
  .finance-info-blocks__info-outer {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
  }
  .finance-info-blocks__title {
    max-width: 770px;
    text-align: center;
  }
  .finance-info-blocks__info-div {
    display: flex;
    flex-direction: column;
    width: 30%;
  }
  .finance-info-blocks__value-subcopy {
    text-align: center;
  }
  .finance-info-blocks__header {
    padding-block-end: var(--spacing-5xl);
    display: flex;
    flex-direction: column;
    align-items: center;
    width: 58%;
    margin: 0 auto;
  }
  .finance-info-blocks__dash {
    border: 1px solid;
    width: 40px;
    margin: 2.5rem;
  }
  .finance-info-blocks__subcopy p, .finance-info-blocks__subcopy span {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-4) !important;
    font-weight: var(--font-weight-ft-aktual-2);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-1);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: none;
  }
}

.finance-logo .grid {
  gap: 0;
}
.finance-logo .col:first-child {
  border-right: 2px solid;
}
.finance-logo .grid > .col.l6 {
  grid-column: span 2;
}
@media (min-width: 64em) {
  .finance-logo .grid > .col.l6 {
    grid-column: span 6;
  }
  .finance-logo__images-div {
    width: 86% !important;
    margin: 0 auto;
  }
}
@media (min-width: 90em) {
  .finance-logo .grid > .col.l6 {
    grid-column: span 6;
  }
  .finance-logo__images-div {
    width: 100% !important;
  }
}

/**
 * Styles: Button (btn)
 * -----------------------------------------------------------------------------
 * Base styles for button component.
 *
 */
.button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  transition: background-color var(--timing-normal) var(--easing-normal), border-color var(--timing-normal) var(--easing-normal), opacity var(--timing-normal) var(--easing-normal);
  --button-gap: var(--spacing-m);
  --button-icon-size: var(--icon-2xs);
  align-items: center;
  border: 1px solid var(--color-neutral-1);
  color: var(--color-neutral-1);
  display: inline-flex;
  gap: var(--spacing-m);
  gap: var(--button-gap);
  justify-content: space-between;
  line-height: var(--icon-2xs);
  margin: 0;
  overflow: hidden;
  padding: var(--spacing-s) var(--spacing-m);
  position: relative;
  text-decoration: none;
  text-decoration: initial;
  /**
   * Label.
   */
  /**
   * Icons.
   */
  /**
   * Primary.
   */
  /**
   * Secondary.
   */
  /**
   * Outline.
   */
  /**
   * Text.
   */
  /**
   * General modifers.
   */
  /**
   * No icon modifier.
   */
  /**
   * Hover icon hover state.
   */
  /**
   * Show state icon.
   */
  /**
   * Disabled state.
   */
  /**
   * Focus state.
   */
  /**
   * Media queries.
   */
}
.button__label {
  transition: color var(--timing-normal) var(--easing-normal), opacity var(--timing-normal) var(--easing-normal);
  align-items: center;
  display: flex;
}
.button__label--white {
  color: var(--color-neutral-5);
}
.button__icon {
  display: inherit;
  position: relative;
}
.button__default-icon, .button__hover-icon, .button__state-icon {
  transition: opacity var(--timing-normal) var(--easing-normal);
  display: inherit;
  pointer-events: none;
}
.button__default-icon .icon, .button__hover-icon .icon, .button__state-icon .icon {
  height: var(--button-icon-size);
  width: var(--button-icon-size);
}
.button__default-swipe {
  align-items: center;
  background-color: var(--color-brand-1-dark);
  border-radius: var(--border-radius-normal);
  display: flex;
  height: var(--border-radius-normal);
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: var(--border-radius-normal);
}
.button__default-swipe .icon {
  width: 5.5px;
  z-index: var(--layer-base);
}
.button__hover-icon {
  display: inherit;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
}
.button__state-icon {
  left: 50%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  z-index: var(--layer-raised);
}
.button.button--primary {
  z-index: var(--layer-flat);
  background-color: var(--color-brand-1-dark);
  border: 0;
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  height: 50px;
  justify-content: center;
  min-width: 244px;
  transition: ease-out 0.4s;
}
.button.button--primary:not([disabled], .is-disabled):hover::before, .button.button--primary:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--primary::before {
  background: var(--color-brand-1-default);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--primary span {
  z-index: var(--layer-base);
}
.button.button--secondary {
  z-index: var(--layer-flat);
  background-color: var(--color-neutral-5);
  border-color: var(--color-neutral-1);
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  height: 50px;
  justify-content: center;
  min-width: 244px;
}
.button.button--secondary:not([disabled], .is-disabled):hover::before, .button.button--secondary:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--secondary::before {
  background: var(--color-neutral-3);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--secondary span {
  z-index: 1;
}
.button.button--secondary.button--dark {
  z-index: var(--layer-flat);
  background-color: var(--color-neutral-6);
  color: var(--color-neutral-1);
}
.button.button--secondary.button--dark:not([disabled], .is-disabled):hover::before, .button.button--secondary.button--dark:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--secondary.button--dark::before {
  background: var(--color-neutral-4);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--outline {
  z-index: var(--layer-flat);
  background-color: transparent;
  border-color: var(--color-neutral-1);
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  height: 50px;
  justify-content: center;
  min-width: 244px;
}
.button.button--outline:not([disabled], .is-disabled):hover::before, .button.button--outline:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--outline::before {
  background: var(--color-neutral-4);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--outline span {
  z-index: var(--layer-base);
}
.button.button--outline.button--dark {
  z-index: var(--layer-flat);
  border-color: var(--color-neutral-6);
  color: var(--color-neutral-6);
}
.button.button--outline.button--dark:not([disabled], .is-disabled):hover::before, .button.button--outline.button--dark:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--outline.button--dark::before {
  background: var(--color-neutral-1);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--text {
  z-index: var(--layer-flat);
  background-color: transparent;
  border: 0;
  color: var(--color-neutral-1);
  overflow: visible;
  padding: 0;
}
.button.button--text:not([disabled], .is-disabled):hover .button__default-swipe, .button.button--text:not([disabled], .is-disabled).is-hover .button__default-swipe {
  /* stylelint-disable-next-line max-nesting-depth */
}
.button.button--text:not([disabled], .is-disabled):hover .button__default-swipe::before, .button.button--text:not([disabled], .is-disabled).is-hover .button__default-swipe::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-86%) translateY(-25%) skewX(321deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--text .button__default-swipe::before {
  background: var(--color-brand-1-default);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(358deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--text.button--dark {
  color: var(--color-neutral-5);
}
.button.button--block {
  display: flex;
  width: 100%;
}
.button.button--reversed {
  direction: rtl;
}
[dir=rtl] .button.button--reversed {
  direction: ltr;
}
.button.button--center {
  justify-content: center;
}
.button.button--center .button__label {
  text-align: center;
}
.button.no-icon {
  gap: 0;
}
.button:not([disabled], .is-disabled).has-hover-icon.no-icon .button__icon {
  transition: margin var(--timing-normal) var(--easing-normal);
  height: var(--button-icon-size);
  margin-inline-start: calc(var(--button-icon-size) * -1);
  width: var(--button-icon-size);
}
.button:not([disabled], .is-disabled).has-hover-icon:hover .button__default-icon {
  opacity: 0;
}
.button:not([disabled], .is-disabled).has-hover-icon:hover .button__hover-icon {
  opacity: 1;
}
.button:not([disabled], .is-disabled).has-hover-icon:hover.no-icon .button__icon {
  margin-inline-start: var(--button-gap);
  width: var(--button-icon-size);
}
.button.show-state-icon {
  pointer-events: none;
}
.button.show-state-icon .button__label,
.button.show-state-icon .button__icon {
  opacity: 0;
}
.button.show-state-icon .button__state-icon {
  opacity: 1;
}
.button[disabled], .button.is-disabled {
  cursor: default;
  opacity: 0.4;
}
.is-tabbable .button:focus, .is-tabbable .button.is-focus {
  outline: dashed var(--color-neutral-1);
  outline-offset: 2px;
  outline-width: 2px;
}
@media (min-width: 64em) {
  .button {
    --button-gap: var(--spacing-l);
    padding: calc(var(--spacing-m) - 2px) var(--spacing-xl);
  }
  .button.button--text {
    padding: 0;
  }
}

/**
 * Styles: Button (btn)
 * -----------------------------------------------------------------------------
 * Base styles for button component.
 *
 */
.button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  transition: background-color var(--timing-normal) var(--easing-normal), border-color var(--timing-normal) var(--easing-normal), opacity var(--timing-normal) var(--easing-normal);
  --button-gap: var(--spacing-m);
  --button-icon-size: var(--icon-2xs);
  align-items: center;
  border: 1px solid var(--color-neutral-1);
  color: var(--color-neutral-1);
  display: inline-flex;
  gap: var(--spacing-m);
  gap: var(--button-gap);
  justify-content: space-between;
  line-height: var(--icon-2xs);
  margin: 0;
  overflow: hidden;
  padding: var(--spacing-s) var(--spacing-m);
  position: relative;
  text-decoration: none;
  text-decoration: initial;
  /**
   * Label.
   */
  /**
   * Icons.
   */
  /**
   * Primary.
   */
  /**
   * Secondary.
   */
  /**
   * Outline.
   */
  /**
   * Text.
   */
  /**
   * General modifers.
   */
  /**
   * No icon modifier.
   */
  /**
   * Hover icon hover state.
   */
  /**
   * Show state icon.
   */
  /**
   * Disabled state.
   */
  /**
   * Focus state.
   */
  /**
   * Media queries.
   */
}
.button__label {
  transition: color var(--timing-normal) var(--easing-normal), opacity var(--timing-normal) var(--easing-normal);
  align-items: center;
  display: flex;
}
.button__label--white {
  color: var(--color-neutral-5);
}
.button__icon {
  display: inherit;
  position: relative;
}
.button__default-icon, .button__hover-icon, .button__state-icon {
  transition: opacity var(--timing-normal) var(--easing-normal);
  display: inherit;
  pointer-events: none;
}
.button__default-icon .icon, .button__hover-icon .icon, .button__state-icon .icon {
  height: var(--button-icon-size);
  width: var(--button-icon-size);
}
.button__default-swipe {
  align-items: center;
  background-color: var(--color-brand-1-dark);
  border-radius: var(--border-radius-normal);
  display: flex;
  height: var(--border-radius-normal);
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: var(--border-radius-normal);
}
.button__default-swipe .icon {
  width: 5.5px;
  z-index: var(--layer-base);
}
.button__hover-icon {
  display: inherit;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
}
.button__state-icon {
  left: 50%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  z-index: var(--layer-raised);
}
.button.button--primary {
  z-index: var(--layer-flat);
  background-color: var(--color-brand-1-dark);
  border: 0;
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  height: 50px;
  justify-content: center;
  min-width: 244px;
  transition: ease-out 0.4s;
}
.button.button--primary:not([disabled], .is-disabled):hover::before, .button.button--primary:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--primary::before {
  background: var(--color-brand-1-default);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--primary span {
  z-index: var(--layer-base);
}
.button.button--secondary {
  z-index: var(--layer-flat);
  background-color: var(--color-neutral-5);
  border-color: var(--color-neutral-1);
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  height: 50px;
  justify-content: center;
  min-width: 244px;
}
.button.button--secondary:not([disabled], .is-disabled):hover::before, .button.button--secondary:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--secondary::before {
  background: var(--color-neutral-3);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--secondary span {
  z-index: 1;
}
.button.button--secondary.button--dark {
  z-index: var(--layer-flat);
  background-color: var(--color-neutral-6);
  color: var(--color-neutral-1);
}
.button.button--secondary.button--dark:not([disabled], .is-disabled):hover::before, .button.button--secondary.button--dark:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--secondary.button--dark::before {
  background: var(--color-neutral-4);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--outline {
  z-index: var(--layer-flat);
  background-color: transparent;
  border-color: var(--color-neutral-1);
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  height: 50px;
  justify-content: center;
  min-width: 244px;
}
.button.button--outline:not([disabled], .is-disabled):hover::before, .button.button--outline:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--outline::before {
  background: var(--color-neutral-4);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--outline span {
  z-index: var(--layer-base);
}
.button.button--outline.button--dark {
  z-index: var(--layer-flat);
  border-color: var(--color-neutral-6);
  color: var(--color-neutral-6);
}
.button.button--outline.button--dark:not([disabled], .is-disabled):hover::before, .button.button--outline.button--dark:not([disabled], .is-disabled).is-hover::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-70%) translateY(-25%) skewX(280deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--outline.button--dark::before {
  background: var(--color-neutral-1);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(352deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--text {
  z-index: var(--layer-flat);
  background-color: transparent;
  border: 0;
  color: var(--color-neutral-1);
  overflow: visible;
  padding: 0;
}
.button.button--text:not([disabled], .is-disabled):hover .button__default-swipe, .button.button--text:not([disabled], .is-disabled).is-hover .button__default-swipe {
  /* stylelint-disable-next-line max-nesting-depth */
}
.button.button--text:not([disabled], .is-disabled):hover .button__default-swipe::before, .button.button--text:not([disabled], .is-disabled).is-hover .button__default-swipe::before {
  opacity: 1;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-86%) translateY(-25%) skewX(321deg);
  transition: opacity var(--timing-normal) var(--easing-normal), transform var(--timing-normal) ease-in;
}
.button.button--text .button__default-swipe::before {
  background: var(--color-brand-1-default);
  content: "";
  height: 200%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  /* stylelint-disable-next-line function-disallowed-list */
  transform: translateX(-102%) translateY(-25%) skewX(358deg);
  transform-origin: bottom left;
  transition: opacity var(--timing-slow) var(--easing-normal), transform var(--timing-normal) ease-in;
  width: 275%;
  z-index: var(--layer-base);
}
.button.button--text.button--dark {
  color: var(--color-neutral-5);
}
.button.button--block {
  display: flex;
  width: 100%;
}
.button.button--reversed {
  direction: rtl;
}
[dir=rtl] .button.button--reversed {
  direction: ltr;
}
.button.button--center {
  justify-content: center;
}
.button.button--center .button__label {
  text-align: center;
}
.button.no-icon {
  gap: 0;
}
.button:not([disabled], .is-disabled).has-hover-icon.no-icon .button__icon {
  transition: margin var(--timing-normal) var(--easing-normal);
  height: var(--button-icon-size);
  margin-inline-start: calc(var(--button-icon-size) * -1);
  width: var(--button-icon-size);
}
.button:not([disabled], .is-disabled).has-hover-icon:hover .button__default-icon {
  opacity: 0;
}
.button:not([disabled], .is-disabled).has-hover-icon:hover .button__hover-icon {
  opacity: 1;
}
.button:not([disabled], .is-disabled).has-hover-icon:hover.no-icon .button__icon {
  margin-inline-start: var(--button-gap);
  width: var(--button-icon-size);
}
.button.show-state-icon {
  pointer-events: none;
}
.button.show-state-icon .button__label,
.button.show-state-icon .button__icon {
  opacity: 0;
}
.button.show-state-icon .button__state-icon {
  opacity: 1;
}
.button[disabled], .button.is-disabled {
  cursor: default;
  opacity: 0.4;
}
.is-tabbable .button:focus, .is-tabbable .button.is-focus {
  outline: dashed var(--color-neutral-1);
  outline-offset: 2px;
  outline-width: 2px;
}
@media (min-width: 64em) {
  .button {
    --button-gap: var(--spacing-l);
    padding: calc(var(--spacing-m) - 2px) var(--spacing-xl);
  }
  .button.button--text {
    padding: 0;
  }
}

/**
 * Styles: Country selector btn (country-selector-btn)
 * -----------------------------------------------------------------------------
 * Base styles for country selector btn component.
 *
 */
.country-selector-btn__label {
  transition: color var(--timing-normal) var(--easing-normal);
  color: var(--color-neutral-1);
  font-size: var(--font-size-1);
}
.country-selector-btn .button__icon {
  align-items: center;
  display: flex;
  width: 100%;
}
.country-selector-btn .icon {
  color: var(--color-neutral-1);
  height: 4px;
  width: 7px;
}
.country-selector-btn__flag {
  border: 1px solid var(--color-neutral-1);
  border-radius: 12px;
  margin-inline-end: var(--spacing-2xs);
  min-height: var(--spacing-l);
  min-width: var(--spacing-l);
  overflow: hidden;
  position: relative;
}
.country-selector-btn__flag img {
  height: var(--spacing-l);
  left: -1px;
  min-height: var(--spacing-l);
  min-width: var(--spacing-l);
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  width: var(--spacing-l);
}
.country-selector-btn__footer {
  display: block;
  transition: border var(--timing-normal) ease-in-out;
  width: 100%;
}
.country-selector-btn__footer.button--text {
  background-color: var(--color-neutral-5);
  border: 1px solid var(--color-neutral-1);
  border-radius: var(--spacing-l);
  padding-block-end: var(--spacing-xs);
  padding-block-start: var(--spacing-xs);
  padding-inline-end: var(--spacing-m);
  padding-inline-start: var(--spacing-m);
}
.country-selector-btn__footer .country-selector-btn__label {
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  text-transform: none;
  text-transform: initial;
}
.country-selector-btn__footer .icon {
  margin-inline-start: auto;
}
.country-selector-btn__footer.button--text:hover, .country-selector-btn__footer.button--text:focus, .country-selector-btn__footer:hover, .country-selector-btn__footer:focus {
  border: 1px solid var(--color-neutral-2);
  box-shadow: 4px 4px 20px 0 rgb(var(--color-neutral-1) 0.05);
}
@media (min-width: 48em) {
  .country-selector-btn {
    display: block;
  }
}
@media (max-width: 63.99em) {
  .country-selector-btn.mobile-flag-only .country-selector-btn__label {
    display: none;
  }
}
@media (min-width: 64em) {
  .country-selector-btn__footer {
    max-width: 295px;
  }
}

/**
 * Styles: Feature highlight card (feature-highlight-card)
 * -----------------------------------------------------------------------------
 * Base styles for feature highlight card component.
 *
 */
.feature-highlight-card {
  overflow: hidden;
  position: relative;
}
.feature-highlight-card__content {
  display: flex;
  flex-direction: column;
  height: 100%;
  justify-content: flex-end;
  padding: var(--spacing-m);
  position: absolute;
  top: 0;
  transition: transform var(--timing-slow) ease-in-out;
}
.feature-highlight-card__content.is-active .icon__plus {
  display: block;
}
.feature-highlight-card__content.is-active .icon__minus {
  display: none;
}
.feature-highlight-card .icon__plus {
  display: block;
}
.feature-highlight-card .icon__minus {
  display: none;
}
.feature-highlight-card__content-toggle {
  align-items: center;
  background-color: var(--color-neutral-5);
  border-radius: 34px;
  display: flex;
  height: 34px;
  justify-content: center;
  position: relative;
  width: 34px;
}
.feature-highlight-card__title, .feature-highlight-card__subcopy {
  color: var(--color-neutral-5);
}
.feature-highlight-card__subcopy {
  overflow: scroll;
}
.feature-highlight-card__subcopy p, .feature-highlight-card__subcopy a, .feature-highlight-card__subcopy em, .feature-highlight-card__subcopy strong {
  color: var(--color-neutral-5);
  font-size: var(--font-size-4);
  font-weight: 500;
}
.feature-highlight-card::before, .feature-highlight-card__content {
  z-index: var(--layer-flat);
}
.feature-highlight-card::before {
  /* stylelint-disable-next-line property-disallowed-list */
  background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0.04%, rgba(0, 0, 0, 0.5) 99.96%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
@media (max-width: 63.99em) {
  .feature-highlight-card__subcopy {
    margin-block-start: var(--spacing-xs);
  }
}
@media (min-width: 64em) {
  .feature-highlight-card__content-toggle {
    display: none;
  }
  .feature-highlight-card__subcopy {
    max-width: 700px;
    padding-block-start: var(--spacing-m);
    width: var(--feature-copy-width);
    overflow: hidden;
  }
  .feature-highlight-card__content {
    padding: var(--spacing-xl) var(--spacing-l);
    width: 100%;
  }
}

/**
 * Styles: humm-widget (humm-widget)
 * -----------------------------------------------------------------------------
 * Base styles for humm-widget component.
 *
 */
.hummWidget {
  display: none;
}

.humm-widget .btn_layout {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.humm-widget .btn_price {
  font-weight: 700 !important;
  font-size: 30px !important;
  font-family: var(--font-family-ft-aktual);
  padding-inline: 1px;
  text-align: center;
}

.humm-widget .main-product__breadpay {
  justify-content: space-around;
  align-items: center;
  gap: 0.8rem;
  background-color: #ce5c1d;
  color: #FFF;
  font-weight: 400;
  min-width: 300px;
  width: -moz-min-content;
  width: min-content;
  margin-top: 0.8rem;
}

/**
 * Styles: Images (images)
 * -----------------------------------------------------------------------------
 * Base styles for art direction and responsive image components.
 *
 */
.images {
  background-color: var(--color-skeleton-background);
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
  /**
   * Modifiers.
   */
}
.images__spacer {
  display: block;
  height: 0;
}
.images__picture, .images__source, .images__image {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.images__image {
  transition: opacity var(--timing-normal) var(--easing-normal), scale var(--timing-normal) var(--easing-normal);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: 50% 50%;
     object-position: 50% 50%;
}
html:not(.no-js) .images__image.is-loading {
  opacity: 0;
  scale: 1.05;
}
.images.images--no-padding {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
}
@media (min-width: 0em) {
  .images__spacer {
    padding-bottom: var(--xs-padding-bottom);
  }
  .images__image {
    -o-object-position: var(--xs-object-position);
       object-position: var(--xs-object-position);
  }
}
@media (min-width: 36em) {
  .images__spacer {
    padding-bottom: var(--s-padding-bottom);
  }
  .images__image {
    -o-object-position: var(--s-object-position);
       object-position: var(--s-object-position);
  }
}
@media (min-width: 48em) {
  .images__spacer {
    padding-bottom: var(--m-padding-bottom);
  }
  .images__image {
    -o-object-position: var(--m-object-position);
       object-position: var(--m-object-position);
  }
}
@media (min-width: 64em) {
  .images__spacer {
    padding-bottom: var(--l-padding-bottom);
  }
  .images__image {
    -o-object-position: var(--l-object-position);
       object-position: var(--l-object-position);
  }
}
@media (min-width: 90em) {
  .images__spacer {
    padding-bottom: var(--xl-padding-bottom);
  }
  .images__image {
    -o-object-position: var(--xl-object-position);
       object-position: var(--xl-object-position);
  }
}

/**
 * Styles: Overlay (overlay)
 * -----------------------------------------------------------------------------
 * Base styles for overlays (default styles for drawers and modals).
 *
 */
/**
 * Styles: Window overlay (overlay)
 * -----------------------------------------------------------------------------
 * Base styles for window overlay.
 *
 */
.window-overlay {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  background-color: var(--color-overlay-background-overlay);
  cursor: default;
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: var(--layer-window-overlay);
  /**
   * Liquid state.
   */
}
.window-overlay.liquid {
  animation: fade-in var(--timing-normal) var(--easing-normal);
}
.window-overlay[class*=quicksearch] {
  z-index: var(--layer-heightened);
}

.overlay {
  position: fixed;
  z-index: var(--layer-overlay);
  /**
   * Media queries.
   */
}
.overlay__container {
  max-height: 100%;
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
  padding: var(--spacing-m);
  position: relative;
}
.overlay__header {
  align-items: center;
  display: grid;
  grid-gap: var(--spacing-m);
  gap: var(--spacing-m);
  grid-template-columns: 1fr var(--icon-m);
  margin-block-end: var(--spacing-l);
}
.overlay__close-container {
  display: flex;
  flex-direction: column;
  grid-column: 2;
  justify-content: flex-start;
}
.overlay__body {
  margin-block-start: var(--spacing-l);
}
.overlay__body.overlay__body--no-margin {
  margin-block-start: 0;
}
@media (min-width: 64em) {
  .overlay__header {
    gap: var(--spacing-l);
  }
  .overlay__close {
    margin: calc(var(--spacing-m) * -1);
    padding: var(--spacing-m);
  }
}

/**
 * Import overriding type styles.
 */
/**
 * Styles: Drawer (overlay)
 * -----------------------------------------------------------------------------
 * Specific styles for drawer overlays.
 *
 */
.drawer {
  background-color: var(--color-neutral-5);
  height: var(--viewport-height);
  left: 0;
  max-width: 500px;
  top: 0;
  width: 90%;
  /**
   * Modifiers.
   */
  /**
   * RTL.
   */
  /**
   * Media queries.
   */
}
.drawer__container {
  min-height: 100%;
  padding-block-end: calc(var(--spacing-m) + env(safe-area-inset-bottom));
}
.drawer__body {
  display: flex;
  max-height: 100%;
  min-height: 100%;
}
.drawer__body > div,
.drawer__body > div:not([class]) > div {
  width: 100%;
}
.drawer__body > div:not(.critical-component-hide),
.drawer__body > div:not([class]) > div:not(.critical-component-hide) {
  display: flex;
}
.drawer.drawer--left {
  left: auto;
  left: initial;
  right: 0;
}
[dir=rtl] .drawer {
  left: auto;
  left: initial;
  right: 0;
}
[dir=rtl] .drawer.drawer--left {
  left: 0;
  right: auto;
  right: initial;
}
@media (min-width: 64em) {
  .drawer__container {
    padding: var(--spacing-l);
    padding-block-end: calc(var(--spacing-l) + env(safe-area-inset-bottom));
  }
}

/**
 * Styles: Modal (overlay)
 * -----------------------------------------------------------------------------
 * Specific styles for modal overlays.
 *
 */
.modal {
  display: grid;
  height: 100%;
  left: 0;
  place-items: center;
  pointer-events: none;
  top: 0;
  width: 100%;
  /**
   * RTL.
   */
  /**
   * Media queries.
   */
}
.modal__container {
  background-color: var(--color-neutral-5);
  max-width: 684px;
  padding: var(--spacing-l);
  pointer-events: auto;
  width: 90%;
}
.modal__close-container {
  height: auto;
  position: absolute;
  right: var(--spacing-m);
  top: var(--spacing-m);
}
[dir=rtl] .modal__close-container {
  left: var(--spacing-m);
  right: auto;
  right: initial;
}
@media (min-width: 64em) {
  .modal__container {
    padding: var(--spacing-4xl);
  }
  .modal__header.modal__header--no-title {
    margin-block-end: 0;
  }
  .modal__close-container {
    right: var(--spacing-l);
    top: var(--spacing-l);
  }
  [dir=rtl] .modal__close-container {
    left: var(--spacing-l);
    right: auto;
    right: initial;
  }
}

/**
 * Styles: Shelf (overlay)
 * -----------------------------------------------------------------------------
 * Specific styles for shelf overlays.
 *
 */
.shelf {
  background-color: var(--color-neutral-5);
  bottom: 0;
  left: 0;
  width: 100%;
  /**
   * Modifiers.
   */
  /**
   * Media queries.
   */
}
.shelf__container {
  margin-inline: auto;
  max-width: var(--max-content-width);
  padding-inline-end: var(--layout-mobile-margin);
  padding-inline-start: var(--layout-mobile-margin);
  width: 100%;
  scrollbar-color: grey;
  scrollbar-width: thin;
  max-height: calc(var(--viewport-height) - var(--spacing-5xl));
  overflow-y: auto;
  padding: var(--spacing-m);
}
@media (min-width: 48em) {
  .shelf__container {
    padding-inline-end: var(--layout-tablet-margin);
    padding-inline-start: var(--layout-tablet-margin);
  }
}
@media (min-width: 64em) {
  .shelf__container {
    padding-inline-end: var(--layout-desktop-margin);
    padding-inline-start: var(--layout-desktop-margin);
  }
}
.shelf__container::-webkit-scrollbar {
  width: 5px;
}
.shelf__container::-webkit-scrollbar-track {
  background-color: transparent;
}
.shelf__container::-webkit-scrollbar-thumb {
  background-color: var(--color-neutral-3);
}
.shelf.shelf--down {
  bottom: auto;
  bottom: initial;
  top: 0;
}
@media (min-width: 64em) {
  .shelf__container {
    padding: var(--spacing-l);
  }
}

/**
 * Import component-specific styles.
 */
/**
 * Styles: Cart drawer overlay (cart-drawer)
 * -----------------------------------------------------------------------------
 * Override styles for cart drawer overlay.
 *
 */
.cart-drawer-overlay {
  /**
   * Media queries.
   */
}
.cart-drawer-overlay__container {
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding: 0;
}
.cart-drawer-overlay__header {
  margin-block-end: 0;
  padding: var(--spacing-m);
}
.cart-drawer-overlay__body {
  flex: 1;
  height: 100%;
  margin-block-start: 0;
}
.cart-drawer-overlay__title {
  align-items: center;
  display: flex;
}
.cart-drawer-overlay .overlay__count {
  align-items: center;
  background-color: var(--color-brand-1-dark);
  border-radius: var(--border-radius-small);
  display: inline-flex;
  height: var(--icon-m);
  justify-content: center;
  margin-inline-start: var(--spacing-xs);
  width: var(--icon-m);
}
.cart-drawer-overlay .overlay__close {
  margin: 0;
  padding: 0;
}
.cart-drawer-overlay.drawer {
  width: 100%;
}
@media (min-width: 64em) {
  .cart-drawer-overlay.drawer {
    max-width: 481px;
  }
}

/**
 * Styles: Menu drawer overlay
 * -----------------------------------------------------------------------------
 * Override styles for menu drawer overlay.
 *
 */
.menu-drawer-overlay {
  max-width: 440px;
  width: 100%;
}
.menu-drawer-overlay__header {
  justify-content: flex-end;
  margin-block-end: var(--spacing-m);
  padding-inline: var(--spacing-m);
}
.menu-drawer-overlay__container {
  background-color: var(--color-neutral-4);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  padding-inline-end: 0;
  padding-inline-start: 0;
}

/**
 * Styles: Cart drawer overlay
 * -----------------------------------------------------------------------------
 * Override styles for cart drawer overlay.
 *
 */
.gift-with-purchase-overlay {
  min-width: 375px;
  /**
  * Media queries.
  */
}
.gift-with-purchase-overlay__container {
  display: flex;
  flex-flow: column;
  padding: 0;
}
.gift-with-purchase-overlay__header {
  background-color: var(--color-neutral-5);
  margin-block-end: 0;
  padding: var(--spacing-m);
  position: sticky;
  top: 0;
  z-index: var(--layer-raised);
}
.gift-with-purchase-overlay__body {
  background-color: var(--color-neutral-4);
  flex: 1;
  margin-block-start: 0;
  padding: var(--spacing-m);
}
.gift-with-purchase-overlay__body .gift-with-purchase-modal {
  display: block;
}
.gift-with-purchase-overlay .overlay__close {
  margin: 0;
  padding: 0;
}
@media (min-width: 48em) {
  .gift-with-purchase-overlay {
    left: auto;
    left: initial;
    max-width: 500px;
    right: var(--layout-margin);
  }
  [dir=rtl] .gift-with-purchase-overlay {
    left: var(--layout-margin);
    right: auto;
    right: initial;
  }
}
@media (min-width: 90em) {
  .gift-with-purchase-overlay {
    right: calc((100vw - var(--max-content-width)) / 2 + var(--layout-margin));
  }
  [dir=rtl] .gift-with-purchase-overlay {
    left: calc((100vw - var(--max-content-width)) / 2 + var(--layout-margin));
    right: auto;
    right: initial;
  }
}

.product-compare-card {
  background-color: var(--color-neutral-5);
  display: block;
  height: 100%;
  text-decoration: none;
}
.product-compare-card__header-content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: var(--spacing-l) var(--spacing-l) var(--spacing-m);
}
.product-compare-card .price_affirm {
  line-height: 1.6rem;
}
.product-compare-card__title {
  padding-block-end: var(--spacing-l);
  width: -moz-fit-content;
  width: fit-content;
}
.product-compare-card__subcopy {
  font-size: var(--font-size-4);
  width: 100%;
}
.product-compare-card__price--mobile {
  align-items: flex-start;
  display: flex;
  justify-content: flex-end;
}
.product-compare-card__price--mobile .product-compare-card__base-price-copy {
  margin-inline-end: var(--spacing-xs);
}
.product-compare-card__price--mobile .product-prices .product-prices__price, .product-compare-card__price--mobile .product-prices .product-prices-compare-at-price {
  font-size: var(--font-size-6);
}
.product-compare-card__price--desktop {
  display: none;
}
.product-compare-card__badge {
  padding-block: calc(var(--spacing-m) + var(--spacing-2xs));
}
.product-compare-card__badge .product-badge__text {
  text-wrap: auto;
}
.product-compare-card__content {
  border-top: 1px solid var(--color-neutral-3);
  padding: var(--spacing-l);
}
.product-compare-card__base-price {
  margin-inline-start: var(--spacing-3xs);
}
.product-compare-card__price-inner {
  align-items: center;
  display: flex;
  justify-content: flex-end;
}
.product-compare-card__stats {
  display: block;
}
.product-compare-card__stat {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.product-compare-card__stat:nth-child(-n+4) {
  margin-block-end: var(--spacing-l);
}
.product-compare-card__stat-unit {
  display: inline-block;
  margin-inline-start: var(--spacing-2xs);
  width: 18px;
}
.product-compare-card__stat-value {
  display: flex;
  align-items: baseline;
}
@media (min-width: 64em) {
  .product-compare-card__title {
    width: 50%;
  }
  .product-compare-card__badge {
    padding-block: calc(var(--spacing-m) + var(--spacing-2xs));
  }
  .product-compare-card__badge .product-badge__text {
    text-wrap: auto;
  }
}
@media (min-width: 90em) {
  .product-compare-card {
    display: flex;
  }
  .product-compare-card__header {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 66.6666666667%;
  }
  .product-compare-card__content {
    border-left: 1px solid var(--color-neutral-3);
    border-top: none;
    padding: var(--spacing-xl) var(--spacing-l);
    width: 33.3333333333%;
  }
  .product-compare-card__header-content {
    display: block;
    padding: var(--spacing-xl) var(--spacing-xl) var(--spacing-m);
  }
  .product-compare-card__thumbnail .images__image {
    transition: transform var(--timing-slow) var(--easing-normal);
  }
  .product-compare-card__thumbnail:hover .images__image {
    transform: scaleY(1.5) scaleX(1.5);
  }
  .product-compare-card__badge {
    padding-block: calc(var(--spacing-m) + var(--spacing-2xs));
  }
  .product-compare-card__badge .product-badge__text {
    text-wrap: auto;
  }
  .product-compare-card__title, .product-compare-card__base-price-copy {
    padding-block-end: calc(var(--spacing-m) + var(--spacing-2xs));
  }
  .product-compare-card__title, .product-compare-card__base-price-copy, .product-compare-card__subcopy {
    width: 100%;
  }
  .product-compare-card__price--mobile {
    display: none;
  }
  .product-compare-card__price--desktop {
    display: block;
  }
  .product-compare-card__price--desktop .product-prices .product-prices__price, .product-compare-card__price--desktop .product-prices .product-prices-compare-at-price {
    font-size: var(--font-size-6);
  }
  .product-compare-card__stat, .product-compare-card__price--desktop {
    align-items: flex-start;
    display: flex;
    flex-flow: column;
    justify-content: space-between;
  }
  .product-compare-card__stat:nth-child(-n+4), .product-compare-card__price--desktop:nth-child(-n+4) {
    margin-block-end: var(--spacing-3xl);
  }
  .product-compare-card__stat-value {
    margin-block-start: var(--spacing-m);
    display: flex;
    align-items: baseline;
  }
}

/**
 * Styles: Product prices (product-prices)
 * -----------------------------------------------------------------------------
 * Base styles for product prices component.
 *
 */
.product-prices {
  display: inline-flex;
  gap: var(--spacing-xs);
  /**
   * Loading state.
   */
}
.product-prices__prefix {
  margin-inline-end: calc(var(--spacing-xs) * -1);
}
.product-prices__sold-out {
  color: var(--color-system-error-light-mode);
}
.product-prices__price--on-sale, .is-on-sale .product-prices__price {
  color: var(--color-system-sale);
}
.product-prices__breadpay {
  justify-content: space-around;
  align-items: center;
  gap: 0.8rem;
  background-color: #ce5c1d;
  color: #FFF;
  font-weight: 400;
  min-width: 300px;
  width: -moz-min-content;
  width: min-content;
  margin-top: 0.8rem;
}
.product-prices__breadpaybtn {
  position: absolute;
  opacity: 0;
  height: 64px;
  min-width: 343px;
}
.product-prices__breadpaybtn button {
  min-width: 343px;
}
.product-prices__price, .product-prices__compare-at-price, .product-prices-compare-at-price {
  display: flex;
  align-items: center;
}
.product-prices__compare-at-price, .product-prices-compare-at-price {
  color: var(--color-neutral-2);
}
.product-prices__compare-at-price .product-prices__value, .product-prices-compare-at-price .product-prices__value {
  text-decoration: line-through;
}
.text-other-price-small .product-prices__currency, .text-heading-s .product-prices__currency {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-1);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
}
@media (min-width: 90em) {
  .text-heading-m .product-prices__currency, .text-heading-l .product-prices__currency, .text-other-sale-s .product-prices__currency, .text-other-price-large-desktop .product-prices__currency, .text-heading-l-desktop .product-prices__currency, .text-other-sale-l-desktop .product-prices__currency {
    font-family: var(--font-family-ft-aktual);
    font-size: var(--font-size-5);
    font-weight: var(--font-weight-ft-aktual-1);
    letter-spacing: var(--letter-spacing-0);
    line-height: var(--line-height-0);
    padding-inline-end: var(--spacing-3xs);
    text-decoration: none;
    text-indent: var(--text-indent-0);
    text-transform: uppercase;
  }
}
html:not(.no-js) .product-prices.is-loading {
  background-color: var(--color-skeleton-background);
  background-image: none;
  border-color: transparent;
  color: transparent;
  display: block;
  overflow: hidden;
  pointer-events: none;
  position: relative;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  width: var(--spacing-8xl);
}
html:not(.no-js) .product-prices.is-loading::after {
  animation: left-to-right 2s linear infinite;
  animation: left-to-right var(--timing-loading, 2s) linear infinite;
  background-image: var(--color-skeleton-gradient);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  translate: -100% 0;
  width: 100%;
}
html:not(.no-js) .product-prices.is-loading * {
  color: transparent;
  pointer-events: none;
}

.btn_layout {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.btn_layout span {
  padding-inline: 0.8rem;
}

.btn_price {
  font-weight: 700;
  font-size: 30px;
  font-family: var(--font-family-ft-aktual);
  padding-inline: 1px;
  text-align: center;
}

/**
 * Styles: Product range (product-range)
 * -----------------------------------------------------------------------------
 * Base styles for product range component.
 *
 */
.product-stat {
  overflow-y: clip;
  position: relative;
  margin-inline-end: 0;
}
.product-stat:nth-child(1) {
  border: 3px solid transparent;
  border-bottom-color: var(--color-neutral-5);
}
.product-stat:nth-child(2) {
  border: 3px solid transparent;
  border-bottom-color: var(--color-neutral-5);
}
.product-stat:nth-child(3) {
  border: 3px solid transparent;
  border-bottom-color: var(--color-neutral-5);
}
.product-stat:nth-child(4) {
  border: 3px solid transparent;
  border-bottom-color: var(--color-neutral-5);
}
.product-stat:first-of-type {
  padding-block-start: var(--spacing-m);
}
.product-stat:last-of-type {
  padding-block-end: var(--spacing-m);
}
.product-stat__header {
  align-items: flex-start;
  display: flex;
  justify-content: space-between;
}
.product-stat__content {
  display: flex;
  justify-content: space-between;
}
.product-stat__title {
  font-weight: var(--font-weight-ft-aktual-3);
  text-transform: uppercase;
}
.product-stat__description {
  width: 50%;
}
.product-stat__value {
  margin-block-start: calc(var(--spacing-3xs) + var(--spacing-2xs));
}
.product-stat__value-number {
  margin-inline-end: var(--spacing-2xs);
}
@media (min-width: 64em) {
  .product-stat {
    margin-inline-end: var(--spacing-6xl);
  }
  .product-stat__description {
    max-width: 300px;
    width: 66%;
  }
  .product-stat:nth-child(1) {
    border: 3px solid transparent;
    border-bottom-color: var(--color-neutral-5);
  }
  .product-stat:nth-child(2) {
    border: 3px solid transparent;
    border-bottom-color: var(--color-neutral-5);
  }
  .product-stat:nth-child(3) {
    border: none;
    border-bottom-color: var(--color-neutral-5);
  }
  .product-stat:nth-child(4) {
    border: none;
    border-bottom-color: var(--color-neutral-5);
  }
}

/*
  Responsive video styling (maintains aspect ratios)
 */
.responsive-video {
  height: 100%;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.responsive-video video {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}
.responsive-video__video {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}
.responsive-video__spacer {
  display: block;
}
.responsive-video__spacer--desktop {
  display: none;
}
.responsive-video__controls {
  padding: var(--spacing-m);
  position: relative;
  text-align: left;
  z-index: var(--layer-raised);
}
.responsive-video__button {
  border: 0;
  color: var(--color-neutral-5);
  padding: 0;
}
.responsive-video__button--mute {
  display: none;
}
.responsive-video__button--volume {
  display: inline-flex;
}
.responsive-video.is-muted .responsive-video__button--mute {
  display: inline-flex;
}
.responsive-video.is-muted .responsive-video__button--volume {
  display: none;
}
@media (min-width: 64em) {
  .responsive-video__spacer--desktop {
    display: block;
  }
  .responsive-video__spacer--mobile {
    display: none;
  }
}

/**
 * Styles: Search bar (search-bar)
 * -----------------------------------------------------------------------------
 * Base styles for search bar component.
 *
 */
.search-bar__quicksearch {
  background-color: var(--color-neutral-5);
  display: flex;
  flex-direction: column;
  position: absolute;
  right: 0;
  top: var(--spacing-6xl);
}
.search-bar__results {
  background-color: var(--color-neutral-4);
  display: flex;
  flex: 1;
  flex-direction: column;
  gap: var(--spacing-m);
  padding: var(--spacing-l) var(--spacing-2xl);
}
.search-bar__results .text-heading-3xs {
  margin-block-end: var(--spacing-m);
}
.search-bar__result-card {
  background-color: var(--color-neutral-5);
  border: 1px solid transparent;
  display: flex;
  gap: var(--spacing-m);
  padding: var(--spacing-m);
  text-decoration: none;
  transition: border var(--timing-normal) var(--easing-normal);
}
.search-bar__result-card:hover {
  border: 1px solid var(--color-neutral-2);
}
.search-bar__result-card .product-prices__currency {
  font-size: var(--font-size-3);
}
.search-bar__result-card .product-prices__value {
  font-size: var(--font-size-5);
}
.search-bar__suggestions {
  padding: var(--spacing-l) var(--spacing-m);
}
.search-bar__suggestions b {
  color: var(--color-neutral-1);
}
.search-bar__suggestions .text-heading-m {
  margin-block-end: var(--spacing-l);
}
.search-bar__input-wrapper {
  position: relative;
}
.search-bar__input-wrapper .search-bar__clear {
  position: absolute;
  right: var(--spacing-3xs);
  top: 0;
}
.search-bar__input-wrapper .icon__close {
  height: var(--icon-m);
  width: var(--icon-m);
}
.search-bar__trending-toggle {
  display: flex;
  gap: var(--spacing-2xl);
  padding-block-end: 7px;
  width: 100%;
}
.search-bar__trending-toggle .icon-button {
  padding-block: 0;
  padding-inline-start: 0;
}
.search-bar__trending-toggle .icon-button.active {
  border-bottom: 1px solid var(--color-neutral-1);
}
.search-bar__trending-toggle .icon-button:not(.active) {
  color: var(--color-neutral-2);
}
.search-bar__additional-results {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-m);
}
.search-bar .quicksearch__body {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.search-bar .quicksearch__container {
  height: 100%;
  left: 0;
  padding: 0;
  position: absolute;
  top: calc(var(--spacing-7xl) + var(--spacing-2xs));
  width: 100%;
}
.search-bar .quicksearch__suggestions {
  margin-block-end: var(--spacing-l);
}
.search-bar .quicksearch__suggestions a {
  text-decoration: none;
}
.search-bar .quicksearch__image {
  flex: 1;
  max-width: 80px;
}
.search-bar .quicksearch__details {
  flex: 2;
}
.search-bar .quicksearch__price {
  color: var(--color-neutral-1);
  margin-block-start: var(--spacing-m);
}
.search-bar .quicksearch__header--no-title {
  display: none;
}
@media (min-width: 90em) {
  .search-bar .quicksearch__container {
    left: auto;
    right: 0;
  }
}
@media (min-width: 64em) {
  .search-bar__quicksearch {
    top: auto;
    top: initial;
  }
  .search-bar__suggestions {
    flex: 1;
    padding-inline: var(--spacing-2xl);
  }
  .search-bar .quicksearch__container {
    height: auto;
    max-width: 502px;
    top: calc(var(--spacing-7xl) + var(--spacing-s));
  }
  .search-bar .quicksearch__suggestions {
    margin-block-end: var(--spacing-m);
  }
  .search-bar .quicksearch__body {
    height: auto;
  }
  .search-bar .quicksearch__results {
    flex: initial;
  }
}

/**
 * Styles: Transition height (transition-height)
 * -----------------------------------------------------------------------------
 * Base styles for transition height.
 *
 */
.height-enter,
.height-leave-to {
  height: 0;
}

.height-enter-active,
.height-leave-active {
  transition: height var(--timing-normal) var(--easing-normal);
  overflow: hidden;
}

/**
 * Import other components.
 */
/**
 * Component: Form group
 * -----------------------------------------------------------------------------
 * Group styling for a combination of form elements within a form.
 *
 */
.form-group {
  display: grid;
  grid-gap: var(--spacing-l);
  gap: var(--spacing-l);
  /**
   * Modifiers.
   */
  /**
   * RTL.
   */
}
.form-group + .form-group {
  margin-block-start: var(--spacing-l);
}
.form-group__field {
  display: grid;
  grid-gap: var(--spacing-xs);
  gap: var(--spacing-xs);
}
.form-group__label {
  display: flex;
}
.form-group__label abbr {
  text-decoration: none;
}
.form-group__optional {
  margin-inline-start: auto;
}
.form-group input[type=email],
.form-group input[type=number],
.form-group input[type=password],
.form-group input[type=search],
.form-group input[type=tel],
.form-group input[type=text],
.form-group textarea,
.form-group select {
  transition: border-color var(--timing-normal) var(--easing-normal);
  background-color: var(--color-neutral-5);
  border: 1px solid var(--color-neutral-1);
  border-radius: var(--border-radius-small);
  color: var(--color-neutral-1);
  min-height: calc(var(--spacing-s) * 2 + var(--font-size-3) + 2px);
  padding: var(--spacing-xs) var(--spacing-m);
  width: 100%;
  /* stylelint-disable-next-line selector-pseudo-element-no-unknown */
}
.form-group input[type=email]:focus,
.form-group input[type=number]:focus,
.form-group input[type=password]:focus,
.form-group input[type=search]:focus,
.form-group input[type=tel]:focus,
.form-group input[type=text]:focus,
.form-group textarea:focus,
.form-group select:focus {
  border-color: var(--color-system-info-light-mode);
}
.has-error .form-group input[type=email], .form-group input[type=email].has-error,
.has-error .form-group input[type=number],
.form-group input[type=number].has-error,
.has-error .form-group input[type=password],
.form-group input[type=password].has-error,
.has-error .form-group input[type=search],
.form-group input[type=search].has-error,
.has-error .form-group input[type=tel],
.form-group input[type=tel].has-error,
.has-error .form-group input[type=text],
.form-group input[type=text].has-error,
.has-error .form-group textarea,
.form-group textarea.has-error,
.has-error .form-group select,
.form-group select.has-error {
  border-color: var(--color-system-error-light-mode);
}
.has-success .form-group input[type=email], .form-group input[type=email].has-success,
.has-success .form-group input[type=number],
.form-group input[type=number].has-success,
.has-success .form-group input[type=password],
.form-group input[type=password].has-success,
.has-success .form-group input[type=search],
.form-group input[type=search].has-success,
.has-success .form-group input[type=tel],
.form-group input[type=tel].has-success,
.has-success .form-group input[type=text],
.form-group input[type=text].has-success,
.has-success .form-group textarea,
.form-group textarea.has-success,
.has-success .form-group select,
.form-group select.has-success {
  border-color: var(--color-system-success-light-mode);
}
.form-group input[type=email]:hover,
.form-group input[type=number]:hover,
.form-group input[type=password]:hover,
.form-group input[type=search]:hover,
.form-group input[type=tel]:hover,
.form-group input[type=text]:hover,
.form-group textarea:hover,
.form-group select:hover {
  border-color: var(--color-neutral-2);
}
.form-group input[type=email]::-moz-placeholder, .form-group input[type=number]::-moz-placeholder, .form-group input[type=password]::-moz-placeholder, .form-group input[type=search]::-moz-placeholder, .form-group input[type=tel]::-moz-placeholder, .form-group input[type=text]::-moz-placeholder, .form-group textarea::-moz-placeholder, .form-group select::-moz-placeholder {
  color: var(--color-neutral-1);
  opacity: 1;
}
.form-group input[type=email]::placeholder,
.form-group input[type=number]::placeholder,
.form-group input[type=password]::placeholder,
.form-group input[type=search]::placeholder,
.form-group input[type=tel]::placeholder,
.form-group input[type=text]::placeholder,
.form-group textarea::placeholder,
.form-group select::placeholder {
  color: var(--color-neutral-1);
  opacity: 1;
}
.form-group input[type=email]::input-placeholder,
.form-group input[type=number]::input-placeholder,
.form-group input[type=password]::input-placeholder,
.form-group input[type=search]::input-placeholder,
.form-group input[type=tel]::input-placeholder,
.form-group input[type=text]::input-placeholder,
.form-group textarea::input-placeholder,
.form-group select::input-placeholder {
  color: var(--color-neutral-1);
}
.form-group select {
  background-image: url("data:image/svg+xml, %3Csvg class=%27icon icon__chevron-fill icon__chevron-fill--down%27 viewBox=%270 0 24 24%27 xmlns=%27http://www.w3.org/2000/svg%27%3E%3Cpath d=%27M12.5 14 9 10h7l-3.5 4Z%27/%3E%3C/svg%3E");
  background-position: right var(--spacing-m) center;
  background-repeat: no-repeat;
  background-size: var(--icon-m) var(--icon-m);
}
.form-group textarea {
  min-height: 90px;
}
.form-group__footer {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
}
.form-group__note {
  transition: color var(--timing-normal) var(--easing-normal);
}
.form-group.is-hidden {
  display: none;
}
.form-group.has-error input, .form-group.has-error textarea, .form-group.has-error select, .form-group__field.has-error input, .form-group__field.has-error textarea, .form-group__field.has-error select {
  border-color: var(--color-system-error-light-mode);
}
.form-group.has-error .form-group__note, .form-group__field.has-error .form-group__note {
  color: var(--color-system-error-light-mode);
}
.form-group.has-success input, .form-group.has-success textarea, .form-group.has-success select, .form-group__field.has-success input, .form-group__field.has-success textarea, .form-group__field.has-success select {
  border-color: var(--color-system-success-light-mode);
}
.form-group.has-success .form-group__note, .form-group__field.has-success .form-group__note {
  color: var(--color-system-success-light-mode);
}
[dir=rtl] .form-group select {
  background-position: 10px 50%;
}

/**
 * Component: One Trust (one-trust)
 * -----------------------------------------------------------------------------
 * Custom styles for the One Trust cookie consent banner.
 *
 */
/* stylelint-disable max-nesting-depth */
/* stylelint-disable selector-max-id */
/* stylelint-disable selector-max-compound-selectors */
/* stylelint-disable declaration-no-important */
body #onetrust-banner-sdk .ot-sdk-container {
  padding: var(--spacing-m);
  width: 100%;
}
body #onetrust-banner-sdk .ot-sdk-container .ot-sdk-row {
  display: flex;
  flex-direction: column;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-group-container {
  align-items: center;
  display: flex;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-group-container,
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group-parent {
  width: 100%;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-policy {
  margin: 0;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-policy-text {
  color: var(--color-neutral-1);
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group-parent {
  display: flex;
  justify-content: flex-end;
  left: 0 !important;
  margin: 0;
  padding: 0;
  position: relative !important;
  top: 0;
  transform: translateY(0);
}
body #onetrust-banner-sdk .ot-sdk-container .has-reject-all-button #onetrust-button-group,
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
  width: 100%;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group {
  align-items: center;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  transition: background-color var(--timing-normal) var(--easing-normal), border-color var(--timing-normal) var(--easing-normal), opacity var(--timing-normal) var(--easing-normal);
  align-items: center;
  color: var(--color-neutral-1);
  display: inline-flex;
  gap: var(--spacing-m);
  justify-content: space-between;
  line-height: var(--icon-2xs);
  overflow: hidden;
  position: relative;
  width: initial;
  /**
  * Primary.
  */
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button:hover {
  opacity: 1;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button:not(#onetrust-accept-btn-handler) {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  margin: 0;
  margin-inline-end: var(--spacing-xl);
  min-width: auto;
  position: relative;
  text-indent: var(--text-indent-0);
  text-transform: none;
  width: -moz-fit-content;
  width: fit-content;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button:not(#onetrust-accept-btn-handler):hover {
  opacity: 0.7;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button:not(#onetrust-accept-btn-handler):hover::after {
  opacity: 0.7;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button:not(#onetrust-accept-btn-handler)::after {
  border-bottom: 1px solid var(--color-neutral-1);
  bottom: 0;
  content: "";
  left: 0;
  opacity: 1;
  position: absolute;
  transition: opacity var(--timing-normal) ease-in-out;
  width: 100%;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-accept-btn-handler {
  background-color: var(--color-brand-1-dark);
  border-color: transparent;
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-4);
  height: 50px;
  justify-content: center;
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-0);
  margin: 0;
  min-width: 244px;
  padding: var(--spacing-s) var(--spacing-2xl);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  transition: var(--easing-normal) var(--timing-normal);
  width: auto;
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-accept-btn-handler:hover {
  background-color: var(--color-brand-1-default);
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-accept-btn-handler span {
  z-index: var(--layer-base);
}
body #onetrust-banner-sdk .ot-sdk-container #onetrust-pc-btn-handler,
body #onetrust-banner-sdk .ot-sdk-container #onetrust-reject-all-handler,
body #onetrust-banner-sdk .ot-sdk-container #onetrust-accept-btn-handler {
  margin: 0;
}
@media (max-width: 47.99em) {
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-reject-all-handler {
    margin-inline-end: auto;
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-accept-btn-handler {
    margin-block-start: var(--spacing-l);
    width: 100%;
  }
}
@media (max-width: 63.99em) {
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-group-container {
    margin-block-end: var(--spacing-m);
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-reject-all-handler {
    margin-inline-end: auto;
  }
}
@media (min-width: 48em) and (max-width: 63.99em) {
  body #onetrust-banner-sdk .ot-sdk-container .has-reject-all-button #onetrust-button-group,
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group {
    justify-content: space-between;
    width: 100%;
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-accept-btn-handler {
    max-width: 375px;
    width: 100%;
  }
}
@media (min-width: 64em) {
  body #onetrust-banner-sdk .ot-sdk-container .ot-sdk-row {
    flex-direction: row;
    justify-content: space-between;
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-group-container {
    width: 55%;
  }
  body #onetrust-banner-sdk .ot-sdk-container .has-reject-all-button #onetrust-button-group,
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group {
    justify-content: flex-end;
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group-parent {
    width: 65%;
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group button#onetrust-accept-btn-handler {
    font-size: var(--font-size-3);
  }
}
@media (min-width: 90em) {
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-policy {
    margin-inline: var(--spacing-l);
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-group-container {
    width: 45%;
  }
  body #onetrust-banner-sdk .ot-sdk-container #onetrust-button-group-parent {
    width: 55%;
  }
}
body #onetrust-banner-sdk #onetrust-close-btn-container {
  display: none;
}

/* stylelint-disable property-disallowed-list */
/* stylelint-disable selector-class-pattern */
/**
 * Component: Review.Io
 * -----------------------------------------------------------------------------
 * Styles override for the Reviews.io App.
 *
 */
/* stylelint-disable selector-max-compound-selectors */
/* stylelint-disable max-nesting-depth */
/* stylelint-disable selector-type-no-unknown */
reviewsio-product-reviews-widget [data-reviewsio-widget=polaris],
.product-reviews [data-reviewsio-widget=polaris] {
  grid-column: span 12;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Button,
.product-reviews .ElementsWidget-prefix .R-Button {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-3);
  font-weight: var(--font-weight-ft-aktual-4);
  letter-spacing: var(--letter-spacing-1);
  line-height: var(--line-height-3);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  transition: background-color var(--timing-normal) var(--easing-normal), border-color var(--timing-normal) var(--easing-normal), opacity var(--timing-normal) var(--easing-normal);
  align-items: center;
  background-color: var(--color-brand-1-dark);
  border: 0;
  border-radius: var(--border-radius-normal);
  color: var(--color-neutral-1);
  display: inline-flex;
  justify-content: center;
  margin: 0;
  overflow: hidden;
  padding: var(--spacing-s) var(--spacing-m);
  position: relative;
  transition: ease-out 0.4s;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Button:hover, reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Button.is-hover,
.product-reviews .ElementsWidget-prefix .R-Button:hover,
.product-reviews .ElementsWidget-prefix .R-Button.is-hover {
  background-color: var(--color-brand-1-default);
  color: var(--color-neutral-1);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Button--primary,
.product-reviews .ElementsWidget-prefix .R-Button--primary {
  padding: var(--spacing-m) var(--spacing-2xl);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Button--primary:hover, reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Button--primary.is-hover,
.product-reviews .ElementsWidget-prefix .R-Button--primary:hover,
.product-reviews .ElementsWidget-prefix .R-Button--primary.is-hover {
  color: var(--color-neutral-1);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-RatingStars .R-RatingStars__stars .stars__icon,
.product-reviews .ElementsWidget-prefix .R-RatingStars .R-RatingStars__stars .stars__icon {
  font-size: var(--font-size-3);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TextHeading,
.product-reviews .ElementsWidget-prefix .R-TextHeading {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-6);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.4rem;
  margin-block-end: 0;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TextHeading .cssVar-authorName,
.product-reviews .ElementsWidget-prefix .R-TextHeading .cssVar-authorName {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TextBody--xxxs,
.product-reviews .ElementsWidget-prefix .R-TextBody--xxxs {
  font-size: var(--font-size-2);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TabControls .R-TabControls__item,
.product-reviews .ElementsWidget-prefix .R-TabControls .R-TabControls__item {
  border-bottom: 1px solid var(--color-neutral-3);
  text-transform: uppercase;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TabControls .R-TabControls__item.isActive,
.product-reviews .ElementsWidget-prefix .R-TabControls .R-TabControls__item.isActive {
  border-bottom: 1px solid var(--color-neutral-1);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TabControls .R-TabControls__item.isActive .R-TextHeading,
.product-reviews .ElementsWidget-prefix .R-TabControls .R-TabControls__item.isActive .R-TextHeading {
  color: var(--color-neutral-1);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-TabControls .R-TabControls__item .R-TextHeading,
.product-reviews .ElementsWidget-prefix .R-TabControls .R-TabControls__item .R-TextHeading {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  color: var(--color-neutral-2);
  font-weight: var(--font-weight-ft-aktual-1);
  text-transform: uppercase;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-AvatarThumbnail__inner,
.product-reviews .ElementsWidget-prefix .R-AvatarThumbnail__inner {
  font-size: var(--font-size-5);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget__header .R-TextBody,
.product-reviews .ElementsWidget-prefix .ElementsWidget__header .R-TextBody {
  font-size: var(--font-size-3);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__header,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__header {
  border-color: var(--color-neutral-3);
  margin-block-start: var(--spacing-l);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__header .header__group--right,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__header .header__group--right {
  flex-basis: 260px;
  width: 100%;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__header .header__inner,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__header .header__inner {
  justify-content: center;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__subheader,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__subheader {
  border-color: var(--color-neutral-3);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .R-ContentList .R-ContentList__item,
.product-reviews .ElementsWidget-prefix .ElementsWidget .R-ContentList .R-ContentList__item {
  border-color: var(--color-neutral-3);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .R-ContentList .R-ContentList__item .item__meta,
.product-reviews .ElementsWidget-prefix .ElementsWidget .R-ContentList .R-ContentList__item .item__meta {
  border-right: 0;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .R-ContentList .R-ContentList__item .item__review .R-RatingStars,
.product-reviews .ElementsWidget-prefix .ElementsWidget .R-ContentList .R-ContentList__item .item__review .R-RatingStars {
  margin-block-end: var(--spacing-m);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  margin-block-end: var(--spacing-2xs);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field::-moz-placeholder, .product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field::-moz-placeholder {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field::placeholder,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field::placeholder {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field__input,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field__input {
  padding-bottom: 0;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field__input::-moz-placeholder, .product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field__input::-moz-placeholder {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-3);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  color: var(--color-neutral-2);
  font-weight: var(--font-weight-ft-aktual-1);
  text-transform: uppercase;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field__input::placeholder,
.product-reviews .ElementsWidget-prefix .ElementsWidget .ElementsWidget__search .R-Field__input::placeholder {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-3);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  color: var(--color-neutral-2);
  font-weight: var(--font-weight-ft-aktual-1);
  text-transform: uppercase;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget .item__inner .R-TextHeading,
.product-reviews .ElementsWidget-prefix .ElementsWidget .item__inner .R-TextHeading {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-3);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
  color: var(--color-neutral-1);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Field .R-Field__input::-moz-placeholder, .product-reviews .ElementsWidget-prefix .R-Field .R-Field__input::-moz-placeholder {
  color: var(--color-neutral-2);
  font-size: var(--font-size-4);
  font-weight: 600;
  text-transform: uppercase;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Field .R-Field__input::placeholder,
.product-reviews .ElementsWidget-prefix .R-Field .R-Field__input::placeholder {
  color: var(--color-neutral-2);
  font-size: var(--font-size-4);
  font-weight: 600;
  text-transform: uppercase;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .R-Field--leftIcon .R-Field__icon,
.product-reviews .ElementsWidget-prefix .R-Field--leftIcon .R-Field__icon {
  margin-bottom: var(--spacing-2xs);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .subheader__group .R-TabControls__item,
.product-reviews .ElementsWidget-prefix .subheader__group .R-TabControls__item {
  margin-inline-start: var(--spacing-l);
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .subheader__group:not(.u-textRight--all) .R-TabControls__item,
.product-reviews .ElementsWidget-prefix .subheader__group:not(.u-textRight--all) .R-TabControls__item {
  border-bottom: 0;
}
reviewsio-product-reviews-widget .ElementsWidget-prefix .subheader__group:not(.u-textRight--all) .R-TabControls__item.R-DropUpDownMenu-container,
.product-reviews .ElementsWidget-prefix .subheader__group:not(.u-textRight--all) .R-TabControls__item.R-DropUpDownMenu-container {
  margin-inline-start: 0;
}
reviewsio-product-reviews-widget .ElementsWidget__footer,
.product-reviews .ElementsWidget__footer {
  display: none;
}
@media (min-width: 64em) {
  reviewsio-product-reviews-widget,
  .product-reviews {
    gap: var(--layout-desktop-gutter);
    grid-template-columns: repeat(12, minmax(10px, 1fr));
  }
  reviewsio-product-reviews-widget [data-reviewsio-widget=polaris],
  .product-reviews [data-reviewsio-widget=polaris] {
    grid-column: span 9;
  }
  reviewsio-product-reviews-widget .ElementsWidget-prefix,
  .product-reviews .ElementsWidget-prefix {
    margin: 0 var(--spacing-2xl);
  }
  reviewsio-product-reviews-widget .ElementsWidget-prefix .ElementsWidget__header .header__inner,
  .product-reviews .ElementsWidget-prefix .ElementsWidget__header .header__inner {
    justify-content: flex-end;
  }
}
@media (max-width: 47.99em) {
  reviewsio-product-reviews-widget .ElementsWidget-prefix .R-MD .ElementsWidget__header .header__group--left,
  .product-reviews .ElementsWidget-prefix .R-MD .ElementsWidget__header .header__group--left {
    flex-basis: content;
  }
  reviewsio-product-reviews-widget .ElementsWidget-prefix .u-textRight--all,
  .product-reviews .ElementsWidget-prefix .u-textRight--all {
    margin: auto;
    width: -moz-fit-content;
    width: fit-content;
  }
}

reviewsio-card-carousel .CarouselWidget-prefix {
  padding-block: var(--spacing-7xl) var(--spacing-2xl);
}
reviewsio-card-carousel .CarouselWidget-prefix .R-ReviewsioLogo {
  display: none;
}
reviewsio-card-carousel .CarouselWidget-prefix .R-TextHeading {
  font-family: var(--font-family-thunder);
  text-transform: uppercase;
}
reviewsio-card-carousel .CarouselWidget-prefix .R-TextBody--xxxs {
  font-size: var(--font-size-2);
}
reviewsio-card-carousel .CarouselWidget-prefix .R-TextBody--xxxxs {
  font-size: var(--font-size-2);
}
reviewsio-card-carousel .CarouselWidget-prefix .R-MD .CarouselWidget__header {
  margin-block-end: 0;
  padding-inline: calc(var(--spacing-4xl) + var(--spacing-2xs));
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .cssVar-header__heading {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-7);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-0);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.6rem;
  margin-block-end: calc(var(--spacing-2xs) + var(--spacing-3xs));
  text-transform: uppercase;
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .cssVar-authorName {
  font-size: var(--font-size-6);
  margin-inline-end: var(--spacing-l);
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .R-ReviewsList {
  --item-maximum-columns: 4;
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .R-ReviewsList .R-ReviewsList__item {
  padding-inline: var(--spacing-xs);
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .R-ReviewsList .R-ReviewsList__item--body {
  font-size: var(--font-size-3);
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .R-ReviewsList-container {
  padding-inline: calc(var(--spacing-3xl) + var(--spacing-2xs));
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .R-ReviewsList-container .R-ReviewsList__controlButton {
  background-color: var(--color-neutral-5);
  border-radius: 50%;
  box-shadow: 4px 4px 20px 0 rgba(0, 0, 0, 0.05);
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .R-ReviewsList-container .R-ReviewsList__controlButton .controlButton__icon {
  font-size: var(--font-size-1);
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .CarouselWidget__header {
  --header-width: 252px;
  margin-inline-end: 0;
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .CarouselWidget__header .R-RatingStars .R-RatingStars__stars {
  margin-block-end: var(--spacing-s);
}
reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .CarouselWidget__header .R-RatingStars .R-RatingStars__stars .stars__icon {
  --override-header-star-color: var(--color-brand-1-dark);
  --override-header-star-disabled-color: rgb(217 217 217);
  color: var(--color-brand-1-dark);
  font-size: var(--font-size-3);
}
@media (min-width: 64em) {
  reviewsio-card-carousel .CarouselWidget-prefix {
    padding-block: var(--spacing-7xl);
  }
  reviewsio-card-carousel .CarouselWidget-prefix .R-ReviewsList-container {
    padding-inline: var(--spacing-6xl);
  }
  reviewsio-card-carousel .CarouselWidget-prefix .CarouselWidget .CarouselWidget__header {
    margin-inline-end: var(--spacing-m);
  }
}
@media (min-width: 48em) {
  reviewsio-card-carousel .CarouselWidget-prefix {
    margin-inline: auto;
    max-width: var(--max-content-width);
    padding-inline-end: var(--layout-mobile-margin);
    padding-inline-start: var(--layout-mobile-margin);
    width: 100%;
  }
}
@media (min-width: 48em) and (min-width: 48em) {
  reviewsio-card-carousel .CarouselWidget-prefix {
    padding-inline-end: var(--layout-tablet-margin);
    padding-inline-start: var(--layout-tablet-margin);
  }
}
@media (min-width: 48em) and (min-width: 64em) {
  reviewsio-card-carousel .CarouselWidget-prefix {
    padding-inline-end: var(--layout-desktop-margin);
    padding-inline-start: var(--layout-desktop-margin);
  }
}

reviewsio-text-banner .TextBanner .TextBanner__text--customerssay {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
reviewsio-text-banner .TextBanner .TextBanner__text--verdict {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-5);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.35rem;
}
reviewsio-text-banner .TextBanner .TextBanner__stars.RatingStars--large i.RatingStars__star {
  font-size: var(--font-size-2);
}
reviewsio-text-banner .TextBanner .TextBanner__text--outof {
  font-family: var(--font-family-ft-aktual);
  font-size: var(--font-size-2);
  font-weight: var(--font-weight-ft-aktual-2);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-1);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: none;
}
reviewsio-text-banner .TextBanner .TextBanner__text--outof .ruk_rating,
reviewsio-text-banner .TextBanner .TextBanner__text--outof .ruk_count {
  font-family: var(--font-family-thunder);
  font-size: var(--font-size-5);
  font-weight: var(--font-weight-thunder-0);
  letter-spacing: var(--letter-spacing-0);
  line-height: var(--line-height-2);
  text-decoration: none;
  text-indent: var(--text-indent-0);
  text-transform: uppercase;
  margin-block-end: -0.35rem;
}

/**
 * Component: Splide
 * -----------------------------------------------------------------------------
 * Base styles for Splide carousels.
 *
 */
@keyframes splide-loading {
  0% {
    transform: rotate(0);
  }
  to {
    transform: rotate(1turn);
  }
}
.splide__track--draggable {
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -moz-user-select: none;
       user-select: none;
}

.splide__track--fade > .splide__list > .splide__slide {
  margin: 0 !important;
  opacity: 0;
  z-index: 0;
}

.splide__track--fade > .splide__list > .splide__slide.is-active {
  opacity: 1;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide__track--ttb > .splide__list {
  display: block;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide:not(.is-overflow) .splide__pagination {
  display: none;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized, .splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__spinner {
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__sr {
  clip: rect(0 0 0 0);
  border: 0;
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
}

.splide__toggle.is-active .splide__toggle__play, .splide__toggle__pause {
  display: none;
}

.splide__toggle.is-active .splide__toggle__pause {
  display: inline;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

.splide {
  position: relative;
  /**
   * Arrows.
   */
  /**
   * Pagination.
   */
  /**
   * Modifiers.
   */
  /**
   * Active state.
   */
  /**
   * No JS state.
   */
}
.splide__track {
  z-index: var(--layer-flat);
}
.splide__arrows {
  transition: opacity var(--timing-normal) var(--easing-normal);
  align-items: center;
  display: flex;
  justify-content: center;
  pointer-events: none;
  position: relative;
}
.splide__arrows-counter {
  text-align: center;
  width: 40px;
}
.splide__arrow {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  transition: opacity var(--timing-normal) var(--easing-normal);
  background-color: var(--color-neutral-5);
  border-radius: 34px;
  box-shadow: 4px 4px 20px 0 rgba(0, 0, 0, 0.05);
  height: 56px;
  width: 56px;
}
.splide__arrow .icon {
  height: 10px;
  width: 5.5px;
}
.splide__arrow[disabled] {
  opacity: 0.3;
}
.splide__pagination {
  bottom: var(--spacing-l);
  gap: var(--spacing-xs);
  left: 0;
  position: absolute;
  width: 100%;
  z-index: var(--layer-raised);
}
.splide__pagination li {
  display: inherit;
}
.splide__pagination__page {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  color: inherit;
  cursor: pointer;
  outline: none;
  padding: 0;
  width: auto;
  font: inherit;
  transition: background-color var(--timing-normal) var(--easing-normal), width var(--timing-normal) var(--easing-normal);
  backface-visibility: hidden;
  background-color: var(--color-neutral-4);
  border-radius: 12px;
  height: 6px;
  width: var(--spacing-m);
}
.splide__pagination__page.is-active {
  background-color: var(--color-brand-1-default);
  width: var(--spacing-xl);
}
.splide:not(.is-overflow) .splide__arrow {
  opacity: 0;
  pointer-events: none;
}
.splide.is-active .splide__arrow {
  pointer-events: auto;
}
.no-js .splide {
  visibility: visible;
}
/*!*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/vue-loader/dist/stylePostLoader.js!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../node_modules/vue-loader/dist/index.js??ruleSet[0].use!./components/async/product-badge/product-badge.vue?vue&type=style&index=0&id=0dce573d&lang=scss ***!
  \*************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Config: Configuration
 * -----------------------------------------------------------------------------
 * Master import that's included in all Vue components.
 * - No code should be output from the configuration files as they're reused.
 *
 */
/**
 * Config: SASS variables
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Config: Mixins
 * -----------------------------------------------------------------------------
 * Global and reusable utility functions to reduce common styling.
 * - Add in alphabetical order.
 *
 */
/**
 * Resets form buttons to appear as a standard text link.
 */
/**
 * Sets container properties.
 */
/**
 * Reset container properties.
 */
/**
 * Sets custom scrollbar on element.
 * - Add to element with overflow.
 */
/**
 * Default focus styling for browsers.
 */
/**
 * Resets input elements.
 */
/**
 * Resets list elements to appear as a stacked text links.
 */
/**
 * Loading/skeleton animation.
 */
/**
 * Reset text style to default.
 * - Used for preview bar and Storybook styles.
 */
/**
 * Outputs list of transition properties.
 *
 * Accepts:
 * - $transitions: {String} List of transition properties to set
 *
 * Usage:
 * .selector {
 *   @include transition(width, height var(--timing-quick);
 * }
 */
/**
 * Returns the transition properties in the correct format.
 * This function is used by @mixin transition($transitions...).
 */
/**
 * Hide element but make it accessible to screen readers.
 */
/**
 * Reverse the properties applied by @mixin visually-hidden.
 * @param {String} $position - Positioning method for element.
 */
/**
 * Button background color swipe on hover.
 * @param {String} $background - Background colour for swipe.
 */
/**
 * Styles: Product badge (product-badge)
 * -----------------------------------------------------------------------------
 * Base styles for product badge component.
 *
 */
.product-badge {
  background-color: var(--default-badge-color);
  color: var(--default-text-color);
  padding: var(--spacing-xs);
  white-space: nowrap;
}
.product-badge__text {
  display: block;
}
.product-badge--sale {
  background-color: var(--sale-color);
  color: var(--sale-text-color);
}
.product-badge--free-shipping {
  background-color: var(--free-shipping-color);
  color: var(--free-shipping-text-color);
}
.product-badge--custom {
  background-color: var(--customer-color);
  color: var(--customer-text-color);
}
.product-badge--new {
  background-color: var(--new-color);
  color: var(--new-text-color);
}
.product-badge--featured {
  background-color: var(--featured-color);
  color: var(--featured-text-color);
}
.product-badge--best-seller, .product-badge--current {
  background-color: var(--best-seller-color);
  color: var(--best-seller-text-color);
}
/*!*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/vue-loader/dist/stylePostLoader.js!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../node_modules/vue-loader/dist/index.js??ruleSet[0].use!./components/async/menu-item/menu-item.vue?vue&type=style&index=0&id=401f8035&lang=scss ***!
  \*****************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Config: Configuration
 * -----------------------------------------------------------------------------
 * Master import that's included in all Vue components.
 * - No code should be output from the configuration files as they're reused.
 *
 */
/**
 * Config: SASS variables
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Config: Mixins
 * -----------------------------------------------------------------------------
 * Global and reusable utility functions to reduce common styling.
 * - Add in alphabetical order.
 *
 */
/**
 * Resets form buttons to appear as a standard text link.
 */
/**
 * Sets container properties.
 */
/**
 * Reset container properties.
 */
/**
 * Sets custom scrollbar on element.
 * - Add to element with overflow.
 */
/**
 * Default focus styling for browsers.
 */
/**
 * Resets input elements.
 */
/**
 * Resets list elements to appear as a stacked text links.
 */
/**
 * Loading/skeleton animation.
 */
/**
 * Reset text style to default.
 * - Used for preview bar and Storybook styles.
 */
/**
 * Outputs list of transition properties.
 *
 * Accepts:
 * - $transitions: {String} List of transition properties to set
 *
 * Usage:
 * .selector {
 *   @include transition(width, height var(--timing-quick);
 * }
 */
/**
 * Returns the transition properties in the correct format.
 * This function is used by @mixin transition($transitions...).
 */
/**
 * Hide element but make it accessible to screen readers.
 */
/**
 * Reverse the properties applied by @mixin visually-hidden.
 * @param {String} $position - Positioning method for element.
 */
/**
 * Button background color swipe on hover.
 * @param {String} $background - Background colour for swipe.
 */
/**
 * Styles: Menu item (menu-item)
 * -----------------------------------------------------------------------------
 * Base styles for menu item component.
 *
 */
.menu-item__link {
  align-items: center;
  display: flex;
  gap: var(--spacing-m);
  text-decoration: none;
}
.menu-item__link p {
  transition: color var(--timing-normal) var(--easing-normal);
  color: var(--color-neutral-1);
}
.menu-item__link:hover img {
  left: calc(var(--spacing-3xs) * -1);
}
.menu-item__link:hover span::after {
  opacity: 1;
}
.menu-item__image {
  height: 51px;
  width: 80px;
}
.menu-item__image img {
  transition: left var(--timing-quick) var(--easing-normal);
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/vue-loader/dist/stylePostLoader.js!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../node_modules/vue-loader/dist/index.js??ruleSet[0].use!./components/async/navigation-banner/navigation-banner.vue?vue&type=style&index=0&id=9b338c86&lang=scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Config: Configuration
 * -----------------------------------------------------------------------------
 * Master import that's included in all Vue components.
 * - No code should be output from the configuration files as they're reused.
 *
 */
/**
 * Config: SASS variables
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Config: Mixins
 * -----------------------------------------------------------------------------
 * Global and reusable utility functions to reduce common styling.
 * - Add in alphabetical order.
 *
 */
/**
 * Resets form buttons to appear as a standard text link.
 */
/**
 * Sets container properties.
 */
/**
 * Reset container properties.
 */
/**
 * Sets custom scrollbar on element.
 * - Add to element with overflow.
 */
/**
 * Default focus styling for browsers.
 */
/**
 * Resets input elements.
 */
/**
 * Resets list elements to appear as a stacked text links.
 */
/**
 * Loading/skeleton animation.
 */
/**
 * Reset text style to default.
 * - Used for preview bar and Storybook styles.
 */
/**
 * Outputs list of transition properties.
 *
 * Accepts:
 * - $transitions: {String} List of transition properties to set
 *
 * Usage:
 * .selector {
 *   @include transition(width, height var(--timing-quick);
 * }
 */
/**
 * Returns the transition properties in the correct format.
 * This function is used by @mixin transition($transitions...).
 */
/**
 * Hide element but make it accessible to screen readers.
 */
/**
 * Reverse the properties applied by @mixin visually-hidden.
 * @param {String} $position - Positioning method for element.
 */
/**
 * Button background color swipe on hover.
 * @param {String} $background - Background colour for swipe.
 */
/**
 * Styles: Navigation banner (navigation-banner)
 * -----------------------------------------------------------------------------
 * Base styles for navigation banner component.
 *
 */
.navigation-banner {
  display: flex;
  flex-flow: column;
  margin-block-end: var(--spacing-2xl);
  margin-block-start: var(--spacing-2xl);
  margin-inline-end: var(--spacing-xs);
  margin-inline-start: var(--spacing-xs);
  position: relative;
  text-decoration: none;
}
.navigation-banner__content {
  background-image: var(--color-overlay-linear);
  padding: var(--spacing-l) 0;
  width: 100%;
  z-index: var(--layer-flat);
}
.navigation-banner__content.navigation-banner__content--no-bg {
  background-image: none;
}
.navigation-banner__image {
  background-color: transparent;
  position: relative;
}
.navigation-banner__image.navigation-banner__image--small img {
  max-height: 250px;
  padding-block-start: var(--spacing-l);
  padding-inline-end: var(--spacing-xl);
  padding-inline-start: var(--spacing-xl);
}
.navigation-banner__image::after {
  background-color: rgba(0, 0, 0, 0.2);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  transition: background-color var(--timing-normal) var(--easing-normal);
  width: 100%;
}
.navigation-banner__heading, .navigation-banner__sub-copy {
  margin-block-end: var(--spacing-m);
}
.navigation-banner__cta-wrapper {
  display: flex;
  flex-flow: wrap;
  gap: calc(var(--spacing-m) + var(--spacing-2xs));
  justify-content: center;
}
.navigation-banner__cta {
  align-items: center;
}
.navigation-banner__cta .button__icon {
  height: 32px;
  margin: 0;
  opacity: 1;
  width: 32px;
}
.navigation-banner__cta .icon {
  height: var(--icon-xs);
  width: var(--icon-xs);
}
.navigation-banner__cta-label {
  margin-inline-end: 0;
}
.navigation-banner:hover .navigation-banner__image::after {
  background-color: transparent;
}
@media (min-width: 90em) {
.navigation-banner {
    display: grid;
    grid-gap: var(--spacing-m);
    gap: var(--spacing-m);
    grid-template-columns: repeat(2, 1fr);
    margin: 0;
}
.navigation-banner__content {
    align-items: flex-start;
    display: flex;
    flex-flow: column;
    justify-content: center;
}
.navigation-banner__cta {
    gap: var(--spacing-m);
}
}
/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/vue-loader/dist/stylePostLoader.js!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../node_modules/vue-loader/dist/index.js??ruleSet[0].use!./components/async/navigation-product/navigation-product.vue?vue&type=style&index=0&id=1f091971&lang=scss ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Config: Configuration
 * -----------------------------------------------------------------------------
 * Master import that's included in all Vue components.
 * - No code should be output from the configuration files as they're reused.
 *
 */
/**
 * Config: SASS variables
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Config: Mixins
 * -----------------------------------------------------------------------------
 * Global and reusable utility functions to reduce common styling.
 * - Add in alphabetical order.
 *
 */
/**
 * Resets form buttons to appear as a standard text link.
 */
/**
 * Sets container properties.
 */
/**
 * Reset container properties.
 */
/**
 * Sets custom scrollbar on element.
 * - Add to element with overflow.
 */
/**
 * Default focus styling for browsers.
 */
/**
 * Resets input elements.
 */
/**
 * Resets list elements to appear as a stacked text links.
 */
/**
 * Loading/skeleton animation.
 */
/**
 * Reset text style to default.
 * - Used for preview bar and Storybook styles.
 */
/**
 * Outputs list of transition properties.
 *
 * Accepts:
 * - $transitions: {String} List of transition properties to set
 *
 * Usage:
 * .selector {
 *   @include transition(width, height var(--timing-quick);
 * }
 */
/**
 * Returns the transition properties in the correct format.
 * This function is used by @mixin transition($transitions...).
 */
/**
 * Hide element but make it accessible to screen readers.
 */
/**
 * Reverse the properties applied by @mixin visually-hidden.
 * @param {String} $position - Positioning method for element.
 */
/**
 * Button background color swipe on hover.
 * @param {String} $background - Background colour for swipe.
 */
/**
 * Styles: Navigation product (navigation-product)
 * -----------------------------------------------------------------------------
 * Base styles for navigation product component.
 *
 */
.navigation-product {
  display: grid;
  grid-gap: var(--spacing-l);
  padding-block-start: var(--spacing-m);
  padding-inline-end: var(--spacing-xs);
  padding-inline-start: var(--spacing-xs);
}
.navigation-product__product {
  background-color: var(--color-neutral-5);
  padding-block-end: var(--spacing-m);
  padding-block-start: var(--spacing-m);
  text-decoration: none;
}
.navigation-product__product-body {
  display: grid;
  grid-gap: 0 var(--spacing-m);
  grid-template-columns: 114px minmax(min-content, max-content);
  padding-inline-end: var(--spacing-m);
  padding-inline-start: var(--spacing-m);
}
.navigation-product__product-price-varies {
  color: var(--color-system-sale);
  text-transform: uppercase;
}
.navigation-product__product-price-desktop {
  align-items: flex-end;
  display: none;
  padding-block-start: var(--spacing-m);
  padding-inline-end: var(--spacing-m);
  padding-inline-start: var(--spacing-m);
}
.navigation-product__product-price-container {
  align-items: center;
  display: flex;
  margin-block-end: var(--spacing-m);
  width: 100%;
}
.navigation-product__product-compare {
  color: var(--color-neutral-2);
  text-decoration: line-through;
}
.navigation-product__product-varies {
  text-transform: uppercase;
}
.navigation-product__image {
  grid-row: span 3;
}
.navigation-product__image .images__image {
  -o-object-fit: contain;
     object-fit: contain;
}
.navigation-product__product-specs {
  border-top: 1px solid var(--color-neutral-3);
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  padding-block-start: var(--spacing-m);
  padding-inline: var(--spacing-m);
}
.navigation-product__product-spec-title {
  margin-block-end: var(--spacing-s);
  text-transform: uppercase;
}
.navigation-product__product-spec-unit {
  margin-block-end: var(--spacing-3xs);
}
.navigation-product__product-spec-content {
  align-items: baseline;
  display: flex;
  gap: var(--spacing-2xs);
}
.navigation-product__product-spec-content p {
  text-transform: uppercase;
}
.navigation-product__product-spec:not(:last-of-type) {
  margin-inline-end: var(--spacing-m);
}
.navigation-product__product-spec .icon {
  height: var(--icon-s);
  width: var(--icon-s);
}
.navigation-product__product-heading-container {
  align-items: flex-start;
  display: flex;
  gap: var(--spacing-s);
  justify-content: space-between;
  margin-block-end: var(--spacing-m);
  flex-direction: column;
}
.navigation-product__product-heading, .navigation-product__product-spec {
  color: var(--color-neutral-1);
}
.navigation-product__product-text {
  margin-block-end: var(--spacing-m);
}
.navigation-product .product-badge {
  font-family: var(--font-family-thunder);
  font-weight: var(--font-size-1);
  line-height: var(--line-height-3);
  margin-block-end: 0;
}
.navigation-product .product-badge__text {
  display: block;
  /* stylelint-disable-next-line scss/double-slash-comment-inline */
  font-size: 18px;
}
@media (min-width: 90em) {
.navigation-product {
    grid-template-columns: repeat(5, 1fr);
    padding: 0;
}
.navigation-product__product {
    border: 1px solid transparent;
    display: flex;
    flex-flow: column;
    padding-block-end: var(--spacing-l);
    padding-block-start: 0;
    transition: border-color var(--timing-normal) var(--easing-normal);
}
.navigation-product__product-body {
    margin-block-end: auto;
}
.navigation-product__product-body, .navigation-product__product-specs {
    grid-template-columns: 1fr;
}
.navigation-product__product-specs {
    border-bottom: 1px solid var(--color-neutral-3);
    border-top: 0;
}
.navigation-product__product-spec {
    align-items: baseline;
    display: flex;
    justify-content: space-between;
    margin-block-end: var(--spacing-m);
    margin-inline-end: 0;
}
.navigation-product__product-spec:not(:last-of-type) {
    margin-inline-end: 0;
}
.navigation-product__product-spec-title {
    line-height: var(--font-size-0);
}
.navigation-product__product-spec-content-text {
    line-height: var(--font-size-4);
}
.navigation-product__product-spec-title, .navigation-product__product-spec-unit, .navigation-product__product-price-container {
    margin-block-end: 0;
}
.navigation-product__product-price-mobile {
    display: none;
}
.navigation-product__product-price-desktop {
    display: flex;
}
.navigation-product__product-price {
    margin-inline-start: auto;
}
.navigation-product__product:hover {
    border-color: var(--color-neutral-2);
}
.navigation-product__image {
    margin-block-end: var(--spacing-xs);
    padding-block-end: 0 var(--spacing-xs);
    padding-block-start: 0 var(--spacing-xs);
}
}
/*!*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ../node_modules/css-loader/dist/cjs.js??clonedRuleSet-2.use[1]!../node_modules/vue-loader/dist/stylePostLoader.js!../node_modules/postcss-loader/dist/cjs.js??clonedRuleSet-2.use[2]!../node_modules/sass-loader/dist/cjs.js??clonedRuleSet-2.use[3]!../node_modules/vue-loader/dist/index.js??ruleSet[0].use!./components/async/header-navigation/header-navigation.vue?vue&type=style&index=0&id=55cb54ca&lang=scss ***!
  \*********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
/**
 * Config: Configuration
 * -----------------------------------------------------------------------------
 * Master import that's included in all Vue components.
 * - No code should be output from the configuration files as they're reused.
 *
 */
/**
 * Config: SASS variables
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Base: Classes
 * -----------------------------------------------------------------------------
 * Automatically generated by `design` command, do not edit.
 *
 */
/**
 * Config: Mixins
 * -----------------------------------------------------------------------------
 * Global and reusable utility functions to reduce common styling.
 * - Add in alphabetical order.
 *
 */
/**
 * Resets form buttons to appear as a standard text link.
 */
/**
 * Sets container properties.
 */
/**
 * Reset container properties.
 */
/**
 * Sets custom scrollbar on element.
 * - Add to element with overflow.
 */
/**
 * Default focus styling for browsers.
 */
/**
 * Resets input elements.
 */
/**
 * Resets list elements to appear as a stacked text links.
 */
/**
 * Loading/skeleton animation.
 */
/**
 * Reset text style to default.
 * - Used for preview bar and Storybook styles.
 */
/**
 * Outputs list of transition properties.
 *
 * Accepts:
 * - $transitions: {String} List of transition properties to set
 *
 * Usage:
 * .selector {
 *   @include transition(width, height var(--timing-quick);
 * }
 */
/**
 * Returns the transition properties in the correct format.
 * This function is used by @mixin transition($transitions...).
 */
/**
 * Hide element but make it accessible to screen readers.
 */
/**
 * Reverse the properties applied by @mixin visually-hidden.
 * @param {String} $position - Positioning method for element.
 */
/**
 * Button background color swipe on hover.
 * @param {String} $background - Background colour for swipe.
 */
/**
 * Styles: Header navigation (header-navigation)
 * -----------------------------------------------------------------------------
 * Base styles for header navigation component.
 *
 */
.header-navigation {
  display: none;
  height: 100%;
  margin-inline-end: auto;
  /**
   * Media queries.
   */
}
.header-navigation__nav {
  height: 100%;
}
.header-navigation__list {
  display: flex;
  height: 100%;
}
.header-navigation__item {
  display: flex;
}
.header-navigation__item:hover .header-navigation__link {
  border-bottom: 2px solid var(--color-neutral-1);
}
.header-navigation__item:hover .header-navigation__link .button__icon {
  transform: rotateX(-180deg);
}
.header-navigation__item:hover .header-navigation__link-sale {
  border-bottom: 2px solid var(--color-system-sale);
}
.header-navigation__item:not(:last-of-type) {
  padding-inline-end: var(--spacing-l);
}
.header-navigation__item.is-active::after {
  background-color: var(--color-overlay-background-overlay);
  content: "";
  height: 100vh;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 100%;
  width: 100%;
}
.header-navigation__item.is-active .header-navigation__meganav {
  display: block;
}
.header-navigation__link {
  align-self: center;
  background-color: transparent;
  border: 0;
  border-bottom: 2px solid transparent;
  color: var(--color-neutral-1);
  min-height: 24px;
  overflow: visible;
}
.header-navigation__link-sale {
  color: var(--color-system-sale);
}
.header-navigation__link.button {
  padding: 0;
}
.header-navigation__link .button__icon {
  transition: transform var(--timing-button) var(--easing-normal);
  margin-inline-end: calc((var(--spacing-2xs) + var(--spacing-3xs)) * -1);
  margin-inline-start: calc(var(--spacing-2xs) * -1);
}
.header-navigation__link .button__icon .icon {
  height: var(--icon-m);
  width: var(--icon-m);
}
.header-navigation__link-label {
  letter-spacing: var(--letter-spacing-2);
  margin-inline-end: 0;
}
.header-navigation__meganav {
  background-color: var(--color-neutral-4);
  display: none;
  left: 0;
  -webkit-overflow-scrolling: touch;
  overflow-y: auto;
  padding-block: var(--spacing-l) var(--spacing-2xl);
  padding-inline: var(--spacing-l);
  position: absolute;
  top: 100%;
  width: 100%;
  z-index: var(--layer-raised);
}
.header-navigation__meganav-inner {
  display: grid;
  grid-gap: var(--spacing-l) var(--spacing-2xl);
}
.header-navigation__meganav-linklist {
  display: grid;
  grid-gap: var(--spacing-2xl);
  gap: var(--spacing-2xl);
  grid-template-columns: repeat(2, 1fr);
  padding-block-end: var(--spacing-xl);
}
.header-navigation__meganav-linklist--tertiary {
  grid-template-columns: repeat(3, 1fr);
}
.header-navigation__linklist-title {
  margin-block-end: var(--spacing-xl);
}
.header-navigation__linklist-item {
  margin-block-end: var(--spacing-m);
}
.header-navigation__banner-wrapper {
  display: grid;
  grid-gap: var(--spacing-l);
  gap: var(--spacing-l);
  grid-template-columns: repeat(3, 1fr);
}
.header-navigation__banner-wrapper .navigation-banner {
  grid-column: span 2;
}
.header-navigation__cta-btn {
  background-color: var(--color-neutral-1);
  color: var(--color-neutral-5);
  grid-column: 2/3;
  margin-inline-start: auto;
  max-width: 458px;
}
.header-navigation__cta-btn.header-navigation__cta-btn--full-width {
  grid-column: span 2;
  max-width: none;
  max-width: initial;
}
.header-navigation__meganav--menu-tab {
  padding-block: var(--spacing-2xl);
}
.header-navigation__meganav--menu-tab .header-navigation__meganav-inner {
  grid-template-columns: repeat(2, 1fr);
}
.header-navigation__meganav--menu-tab .header-navigation__banner-wrapper {
  display: block;
}
.header-navigation__meganav--menu-tab .navigation-banner {
  display: block;
}
.header-navigation__meganav--menu-tab .navigation-banner__content {
  padding-block-end: 0;
}
@media (min-width: 64em) {
.header-navigation__link-label {
    font-size: 1.2rem;
}
}
@media (min-width: 90em) {
.header-navigation {
    display: block;
}
.header-navigation__meganav {
    padding-inline: var(--spacing-2xl);
}
.header-navigation__linklist-title {
    display: inline-block;
    margin-block-end: var(--spacing-l);
}
.header-navigation__nav-container.container {
    padding-inline-start: 0;
}
}

/**
 * Styles: Promo banner (promo-banner)
 * -----------------------------------------------------------------------------
 * Base styles for promo banner component.
 *
 */
.promo-banner {
  background-color: var(--color-neutral-1);
  color: var(--color-neutral-5);
  padding: var(--spacing-xs) 0;
}
.promo-banner.critical-component-hide {
  display: block;
}
.promo-banner.critical-component-clear {
  opacity: 1;
}
.promo-banner__list {
  scrollbar-width: none;
  display: flex;
  overflow-x: auto;
  scroll-snap-stop: always;
  scroll-snap-type: x mandatory;
  width: 100%;
}
.promo-banner__list::-webkit-scrollbar {
  display: none;
  width: 0;
}
.promo-banner__list::-webkit-scrollbar-track {
  background-color: transparent;
}
.promo-banner__list::-webkit-scrollbar-thumb {
  background-color: var(--color-neutral-3);
}
.promo-banner__list-item {
  color: var(--color-neutral-5);
  flex: 1 0 100%;
  font-size: var(--font-size-0);
  position: relative;
  text-align: center;
  width: 100%;
}
.promo-banner__list-item strong {
  font-weight: var(--font-weight-thunder-0);
}
.promo-banner__list-item a {
  color: var(--color-neutral-5);
  font-size: var(--font-size-0);
  text-decoration: underline;
}
.promo-banner .splide__track {
  width: 100%;
}
.promo-banner:hover .promo-banner__autoscroll-snap, .promo-banner:focus-within .promo-banner__autoscroll-snap {
  animation-play-state: paused;
}
@media (min-width: 64em) {
.promo-banner {
    padding: var(--spacing-s) 0;
}
.promo-banner__list-item {
    font-size: var(--font-size-2);
}
.promo-banner a {
    font-size: var(--font-size-1);
}
}
