/* full-bleed-hero:f1vtic */

  .fbhero { position: relative; display: grid; align-content: end; isolation: isolate; }
  .fbhero--short { min-height: 62vh; }
  .fbhero--default { min-height: 78vh; }
  .fbhero--full { min-height: calc(100vh - var(--header-height, 0px)); }

  .fbhero__media { position: absolute; inset: 0; z-index: -1; overflow: hidden; }

  .fbhero__img { width: 100%; height: 100%; object-fit: cover; display: block; }
  .fbhero__img--tall { display: none; }

  .fbhero__scrim {
    position: absolute;
    inset: 0;
    /* The type sits on the lower half, so that is where the shade has to be
       strongest. A hero photograph is often light exactly where the headline
       lands, and white type on a pale wall is the one contrast failure a
       merchant cannot fix from the editor. */
    background: linear-gradient(
      to top,
      rgb(var(--color-text) / calc(var(--scrim) * 1.6)) 0%,
      rgb(var(--color-text) / calc(var(--scrim) * 1.45)) 34%,
      rgb(var(--color-text) / calc(var(--scrim) * 0.9)) 62%,
      rgb(var(--color-text) / calc(var(--scrim) * 0.28)) 84%,
      transparent 100%
    );
  }

  .fbhero__grid { padding-block: var(--space-2xl) var(--space-xl); }

  .fbhero__panel {
    display: grid;
    gap: var(--space-s);
    max-width: 68rem;
    color: rgb(var(--color-bg));
  }

  .fbhero--right .fbhero__panel { margin-left: auto; }
  .fbhero--centre .fbhero__panel { margin-inline: auto; text-align: center; justify-items: center; }

  .fbhero__eyebrow, .fbhero__heading, .fbhero__text { margin: 0; color: inherit; }
  /* The measure goes on the heading, where 1ch is a heading character. On the
     panel it would be a body character, which is half the width and wraps a
     display headline one word to a line. */
  .fbhero__heading { max-width: 26ch; text-wrap: balance; }
  .fbhero__text { max-width: 46ch; }
  .fbhero__actions { display: flex; flex-wrap: wrap; gap: var(--space-s); margin-top: var(--space-xs); }

  .fbhero__strip {
    background: rgb(var(--color-bg));
    border-top: var(--border-width) solid rgb(var(--color-border));
    padding-block: var(--space-m);
  }

  .fbhero__facts {
    margin: 0;
    display: grid;
    gap: var(--space-s) var(--space-l);
    grid-template-columns: repeat(auto-fit, minmax(14rem, 1fr));
  }

  .fbhero__fact dt {
    margin: 0 0 0.2rem;
    font-family: var(--font-label);
    font-size: calc(1.1rem * var(--label-scale));
    letter-spacing: var(--label-tracking);
    text-transform: var(--label-transform);
    opacity: 0.65;
  }

  .fbhero__fact dd {
    margin: 0;
    font-size: calc(1.6rem * var(--body-scale));
    font-variant-numeric: tabular-nums;
  }

  @media screen and (max-width: 749px) {
    .fbhero__img--wide { display: none; }
    .fbhero__img--tall { display: block; }
    .fbhero__grid { padding-block: var(--space-xl) var(--space-m); }
  }

/* icon-bar:1r2fglb */

  .icon-bar--bordered { border-block: var(--border-width) solid rgb(var(--color-border)); }
  .icon-bar__list { display: grid; gap: var(--space-m); grid-template-columns: 1fr; }
  .icon-bar__item { display: flex; align-items: center; gap: var(--space-xs); }
  .icon-bar__icon { color: rgb(var(--color-accent)); flex: 0 0 auto; }
  .icon-bar__text { display: flex; flex-direction: column; gap: 0.1rem; }
  .icon-bar__list--stacked .icon-bar__item { flex-direction: column; text-align: center; gap: var(--space-2xs); }
  @media screen and (min-width: 750px) {
    .icon-bar__list { grid-template-columns: repeat(var(--cols, 4), minmax(0, 1fr)); }
    .icon-bar__list--row .icon-bar__item { justify-content: center; }
  }
  @media screen and (max-width: 749px) {
    .icon-bar__list--row { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  }

/* ingredient-spotlight:bl7j19 */

  .ingredients { display: grid; gap: var(--grid-gap); }
  .ingredient { display: flex; flex-direction: column; gap: var(--space-s); }
  .ingredient__media { border-radius: var(--radius-media); }
  .ingredient__body { display: flex; flex-direction: column; gap: var(--space-2xs); }
  .ingredient__head {
    display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between;
    gap: var(--space-2xs) var(--space-s);
    border-bottom: calc(var(--border-width) * 2) solid rgb(var(--color-text));
    padding-bottom: var(--space-2xs);
  }
  .ingredient__name { margin: 0; }
  .ingredient__dose { color: rgb(var(--color-accent)); white-space: nowrap; }
  .ingredient__latin { font-style: italic; color: rgb(var(--color-text) / 0.55); }
  .ingredient__source { display: flex; align-items: center; gap: var(--space-3xs); color: rgb(var(--color-text) / 0.6); }

  .ingredients--rows .ingredient { display: grid; grid-template-columns: 1fr; }
  @media screen and (min-width: 750px) {
    .ingredients--cards { grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); }
    .ingredients--rows .ingredient {
      grid-template-columns: 16rem minmax(0, 1fr); gap: var(--space-l); align-items: center;
      padding-bottom: var(--space-l); border-bottom: var(--border-width) solid rgb(var(--color-border));
    }
    .ingredients--rows .ingredient:last-child { border-bottom: 0; padding-bottom: 0; }
  }

/* dosage-timeline:1231hjo */

  .timeline { display: grid; gap: var(--space-l); counter-reset: timeline; }
  .timeline__step { display: grid; grid-template-columns: auto minmax(0, 1fr); gap: var(--space-m); position: relative; }
  .timeline__marker {
    width: 4.4rem; height: 4.4rem; display: grid; place-items: center;
    border: var(--border-width) solid rgb(var(--color-border)); border-radius: 50%;
    color: rgb(var(--color-accent)); background-color: rgb(var(--color-bg)); z-index: 1;
  }
  .timeline__body { display: flex; flex-direction: column; gap: var(--space-2xs); padding-bottom: var(--space-s); }
  .timeline__when { color: rgb(var(--color-accent)); }
  .timeline__note {
    margin-top: var(--space-m); padding-top: var(--space-s);
    border-top: var(--border-width) solid rgb(var(--color-border));
  }

  .timeline--vertical .timeline__step::before {
    content: ''; position: absolute; inset-inline-start: 2.2rem; top: 4.4rem; bottom: calc(-1 * var(--space-l));
    width: var(--border-width); background-color: rgb(var(--color-border));
  }
  .timeline--vertical .timeline__step:last-child::before { display: none; }

  @media screen and (min-width: 750px) {
    .timeline--horizontal { grid-template-columns: repeat(var(--cols, 3), minmax(0, 1fr)); gap: var(--space-m); }
    .timeline--horizontal .timeline__step { grid-template-columns: 1fr; gap: var(--space-s); }
    .timeline--horizontal .timeline__step::before {
      content: ''; position: absolute; top: 2.2rem; inset-inline-start: 4.4rem; inset-inline-end: calc(-1 * var(--space-m));
      height: var(--border-width); background-color: rgb(var(--color-border));
    }
    .timeline--horizontal .timeline__step:last-child::before { display: none; }
  }

/* lab-transparency:1wkk0ny */

  .lab-panel { display: grid; gap: var(--space-l); align-items: center; }
  .lab-panel__intro { display: flex; flex-direction: column; gap: var(--space-s); align-items: flex-start; }
  .lab-status { display: inline-flex; align-items: center; gap: var(--space-3xs); color: rgb(var(--color-in-stock)); }
  @media screen and (min-width: 990px) {
    .lab-panel { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-2xl); }
  }

/* image-with-text:2bnmpq */

  .split { display: grid; gap: var(--space-l); align-items: center; }
  .split__media .media { border-radius: var(--radius-media); }
  .split--flush .split__media .media { border-radius: 0; }
  .split__content { display: flex; flex-direction: column; }
  .check-list { display: flex; flex-direction: column; gap: var(--space-xs); }
  .check-list li { display: flex; gap: var(--space-xs); align-items: flex-start; }
  .check-list .icon { color: rgb(var(--color-accent)); margin-top: 0.3rem; }
  .split__stat { display: flex; flex-direction: column; gap: var(--space-3xs); }
  @media screen and (min-width: 990px) {
    .split { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--space-2xl); }
    .split--wide { grid-template-columns: minmax(0, 1.4fr) minmax(0, 1fr); }
    .split--narrow { grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); }
    .split--right .split__media { order: 2; }
    .split--flush { gap: 0; align-items: stretch; }
    .split--flush .split__content { padding: var(--space-2xl) var(--gutter); justify-content: center; }
    .split--flush .split__media .media { height: 100%; }
    .split__content--sticky { position: sticky; top: calc(var(--header-height, 0px) + var(--space-m)); }
  }

/* comparison-table:gqnmc7 */

  .compare__scroll { overflow-x: auto; }
  .compare { min-width: 52rem; font-size: calc(1.45rem * var(--body-scale)); }
  .compare th, .compare td { padding: var(--space-s) var(--space-m); text-align: center; border-bottom: var(--border-width) solid rgb(var(--color-border)); }
  .compare thead th { font-family: var(--font-label); font-size: calc(1.15rem * var(--label-scale)); letter-spacing: var(--label-tracking); text-transform: var(--label-transform); }
  .compare tbody th { text-align: start; font-weight: 400; }
  .compare__own { background-color: rgb(var(--color-accent) / 0.07); }
  .compare thead .compare__own { border-bottom-color: rgb(var(--color-accent)); }
  .compare__yes { color: rgb(var(--color-in-stock)); }
  .compare__no { color: rgb(var(--color-text) / 0.35); }
  .compare__note { margin-top: var(--space-s); text-align: center; }

/* testimonials:cbosjo */

  .testimonial { display: flex; flex-direction: column; gap: var(--space-s); height: 100%; margin: 0; }
  .testimonial--card {
    border: var(--border-width) solid rgb(var(--color-border));
    border-radius: var(--radius-block); padding: var(--space-m);
  }
  .testimonial--quote .testimonial__quote {
    font-family: var(--font-heading); font-size: calc(2.2rem * var(--heading-scale));
    line-height: 1.35; letter-spacing: var(--heading-tracking);
  }
  .testimonial__rating { display: flex; gap: 0.2rem; color: rgb(var(--color-accent)); }
  .testimonial__quote { margin: 0; flex: 1 1 auto; }
  .testimonial__author { display: flex; align-items: center; gap: var(--space-xs); }
  .testimonial__avatar { width: 4rem; flex: 0 0 auto; border-radius: 50%; }
  .testimonial__author-text { display: flex; flex-direction: column; gap: 0.1rem; }
  .testimonial__product {
    color: rgb(var(--color-accent));
    display: inline-flex;
    align-items: center;
    min-height: 2.4rem;   /* minimum tap target */
  }

/* collapsible-content:9hh3n5 */

  .faq { display: grid; gap: var(--space-l); align-items: start; }
  .faq__intro { display: flex; flex-direction: column; gap: var(--space-s); }
  .faq__media { border-radius: var(--radius-media); margin-top: var(--space-s); }
  .faq--centered { max-width: 82rem; margin-inline: auto; }
  .faq--centered .faq__intro { text-align: center; align-items: center; }
  @media screen and (min-width: 990px) {
    .faq--split { grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.2fr); gap: var(--space-2xl); }
    .faq--split .faq__intro { position: sticky; top: calc(var(--header-height, 0px) + var(--space-m)); }
  }

/* blog-posts:1bbtwil */

  .article-card { display: flex; flex-direction: column; gap: var(--space-s); }
  .article-card__body { display: flex; flex-direction: column; gap: var(--space-2xs); }
  .article-card__meta { display: flex; flex-wrap: wrap; gap: var(--space-2xs); color: rgb(var(--color-text) / 0.6); }
  .article-card__title { color: inherit; text-decoration: none; }
  .article-card__title:hover { text-decoration: underline; text-underline-offset: 0.25em; }

/* newsletter:qjh1gc */

  .newsletter-form { display: flex; flex-direction: column; gap: var(--space-xs); width: 100%; }
  .newsletter-form__row { display: flex; flex-direction: column; gap: var(--space-xs); }
  .newsletter-form__row .field { flex: 1 1 auto; }
  @media screen and (min-width: 600px) {
    .newsletter-form__row--inline { flex-direction: row; align-items: flex-end; }
  }

/* newsletter:jx95ii */

  .newsletter { display: grid; gap: var(--space-m); align-items: center; }
  .newsletter__text { display: flex; flex-direction: column; gap: var(--space-xs); }
  .newsletter__form { display: flex; flex-direction: column; gap: var(--space-xs); }
  .newsletter--centered { justify-items: center; text-align: center; }
  .newsletter--centered .newsletter__form { width: 100%; max-width: 48rem; align-items: center; }
  @media screen and (min-width: 990px) {
    .newsletter--split { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--space-2xl); }
  }

/* announcement-bar:d0grnd */

  .announcement {
    display: block;
    padding-block: var(--section-pt-mobile, var(--section-pt, 8px)) var(--section-pb-mobile, var(--section-pb, 8px));
    overflow: hidden;
  }
  .announcement[data-border] { border-bottom: var(--border-width) solid rgb(var(--color-border) / 0.6); }
  .announcement[hidden] { display: none; }

  .announcement__inner {
    display: flex;
    align-items: center;
    gap: var(--space-s) var(--space-m);
    min-height: 3.2rem;
    position: relative;
  }
  .announcement__inner--full { padding-inline: var(--gutter); }

  .announcement--centered .announcement__stage,
  .announcement--centered .announcement__marquee { flex: 1 1 auto; text-align: center; min-width: 0; }
  .announcement--start .announcement__stage { flex: 1 1 auto; text-align: start; min-width: 0; }
  .announcement--split .announcement__stage { flex: 1 1 auto; text-align: center; min-width: 0; }

  .announcement__message {
    display: inline-flex;
    align-items: center;
    gap: var(--space-2xs);
    color: inherit;
    text-decoration: none;
    font-size: var(--announcement-size, 1.3rem);
  }
  .announcement__message--label {
    font-family: var(--font-label);
    letter-spacing: var(--label-tracking);
    text-transform: var(--label-transform);
  }
  .announcement__message--heading { font-family: var(--font-heading); letter-spacing: var(--heading-tracking); }
  a.announcement__message:hover { text-decoration: underline; text-underline-offset: 0.3em; }

  .announcement__marquee-group { gap: var(--space-2xl); }
  .announcement__marquee-group .announcement__message { white-space: nowrap; }

  .announcement__nav,
  .announcement__utility { display: flex; align-items: center; gap: var(--space-2xs); flex: 0 0 auto; }
  .announcement__utility { display: none; gap: var(--space-s); }
  .announcement__utility-item {
    display: inline-flex; align-items: center; gap: var(--space-3xs);
    color: inherit; text-decoration: none;
    font-family: var(--font-label);
    font-size: calc(var(--announcement-size, 1.3rem) * 0.92);
    letter-spacing: var(--label-tracking);
    text-transform: var(--label-transform);
  }
  .announcement__control { min-height: 3.2rem; min-width: 3.2rem; color: inherit; opacity: 0.7; }
  .announcement__control:hover { opacity: 1; }
  .announcement__dismiss { min-height: 3.2rem; min-width: 3.2rem; color: inherit; opacity: 0.6; flex: 0 0 auto; }
  .announcement__dismiss:hover { opacity: 1; }
  .social-icons--compact .icon { width: 1.6rem; height: 1.6rem; }
  .social-icons--compact .button--icon { min-height: 3.2rem; min-width: 3.2rem; }

  @media screen and (min-width: 990px) {
    .announcement--split .announcement__utility { display: flex; }
    .announcement--split .announcement__inner { justify-content: space-between; }
  }
  @media screen and (max-width: 989px) {
    .announcement--split .announcement__inner { justify-content: center; }
  }

/* header:pg1xf8 */

  .wordmark {
    display: inline-flex;
    align-items: center;
    gap: 0.55em;
    font-family: var(--font-heading);
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0.01em;
    line-height: 1;
    white-space: nowrap;
  }

  .wordmark__mark {
    display: inline-flex;
    color: rgb(var(--color-accent));
  }

  .wordmark--lg { font-size: calc(2.4rem * var(--body-scale)); }
  .wordmark--sm { font-size: calc(1.5rem * var(--body-scale)); }

/* header:ifgndl */

  .nav__list { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-2xs); }
  .nav__item { position: relative; }
  .nav__link {
    display: flex; align-items: center; gap: var(--space-3xs);
    min-height: 4.4rem; padding-inline: var(--space-xs);
    color: inherit; text-decoration: none; cursor: pointer; white-space: nowrap;
  }
  .nav__link:hover, .nav__link[aria-current='page'] { text-decoration: underline; text-underline-offset: 0.35em; }
  .nav__item details[open] > .nav__link .icon { transform: rotate(180deg); }
  .nav__link .icon { transition: transform 0.2s ease; }

  .nav__dropdown {
    position: absolute; z-index: 30; top: 100%; inset-inline-start: 0; min-width: 22rem;
    background-color: rgb(var(--color-bg));
    border: var(--border-width) solid rgb(var(--color-border));
    border-radius: var(--radius-block);
    padding: var(--space-2xs); display: flex; flex-direction: column;
    box-shadow: var(--shadow);
  }
  .nav__dropdown-link {
    display: block; padding: var(--space-xs); min-height: 4rem;
    font-size: calc(1.45rem * var(--body-scale));
    color: inherit; text-decoration: none; border-radius: var(--radius-button);
  }
  .nav__dropdown-link:hover { background-color: rgb(var(--color-text) / 0.06); }
  .nav__dropdown-sub { padding-inline-start: var(--space-s); }

  .mega {
    position: absolute; z-index: 29; inset-inline: 0; top: 100%;
    background-color: rgb(var(--color-bg));
    border-top: var(--border-width) solid rgb(var(--color-border));
    border-bottom: var(--border-width) solid rgb(var(--color-border));
  }
  .nav__item--mega { position: static; }
  .mega__inner { display: grid; gap: var(--space-xl); padding-block: var(--space-l); }
  .mega__columns { display: grid; gap: var(--space-l); grid-template-columns: repeat(var(--mega-cols, 4), minmax(0, 1fr)); }
  .mega__column { display: flex; flex-direction: column; gap: var(--space-xs); }
  .mega__heading { color: inherit; text-decoration: none; }
  .mega__sublist { display: flex; flex-direction: column; gap: var(--space-3xs); }
  .mega__sublink {
    color: rgb(var(--color-text) / 0.75); text-decoration: none;
    font-size: calc(1.45rem * var(--body-scale)); display: inline-block; padding-block: 0.4rem;
  }
  .mega__sublink:hover { color: rgb(var(--color-text)); text-decoration: underline; text-underline-offset: 0.25em; }

  .mega__promo { display: flex; flex-direction: column; gap: var(--space-xs); text-decoration: none; color: inherit; width: 24rem; }
  .mega__promo-body { display: flex; flex-direction: column; gap: var(--space-3xs); }
  .mega__promo-products { display: flex; flex-direction: column; gap: var(--space-xs); width: 26rem; }
  .mega__product { display: grid; grid-template-columns: 7.2rem minmax(0, 1fr); gap: var(--space-xs); align-items: center; text-decoration: none; color: inherit; }
  .mega__product-media { width: 7.2rem; border-radius: var(--radius-media); }
  .mega__product-text { display: flex; flex-direction: column; gap: 0.2rem; min-width: 0; }
  .mega__product-title { font-size: calc(1.45rem * var(--body-scale)); }

  @media screen and (min-width: 1200px) {
    .mega__inner { grid-auto-flow: column; grid-template-columns: minmax(0, 1fr) auto; }
  }

/* header:y8g8vs */

  .localization { position: relative; }
  .localization__details { position: relative; }
  .localization__summary {
    display: flex; align-items: center; gap: var(--space-2xs);
    min-height: 4.4rem; padding-inline: var(--space-xs); cursor: pointer;
  }
  .localization__panel {
    position: absolute; z-index: 30; bottom: calc(100% + var(--space-2xs)); inset-inline-start: 0;
    min-width: 22rem; max-height: 32rem; overflow-y: auto;
    background-color: rgb(var(--color-bg));
    border: var(--border-width) solid rgb(var(--color-border));
    border-radius: var(--radius-block);
    padding: var(--space-2xs);
    display: flex; flex-direction: column;
  }
  .localization__option {
    text-align: start; padding: var(--space-xs); min-height: 4rem;
    font-size: calc(1.45rem * var(--body-scale)); border-radius: var(--radius-button);
  }
  .localization__option:hover { background-color: rgb(var(--color-text) / 0.06); }
  .localization__option[aria-current='true'] { text-decoration: underline; text-underline-offset: 0.25em; }

/* header:17u3x99 */

  .social-icons { display: flex; flex-wrap: wrap; gap: var(--space-3xs); }

/* header:13pbng */

  .mnav__list { display: flex; flex-direction: column; }
  .mnav__link {
    display: flex; align-items: center; justify-content: space-between; gap: var(--space-s);
    width: 100%; min-height: 5.2rem; padding-block: var(--space-xs);
    border-bottom: var(--border-width) solid rgb(var(--color-border));
    color: inherit; text-decoration: none; text-align: start;
    font-size: calc(1.7rem * var(--body-scale));
  }
  .mnav__sublist { padding-inline-start: var(--space-m); }
  .mnav__sublink {
    display: block; padding-block: var(--space-xs); min-height: 4.4rem;
    color: rgb(var(--color-text) / 0.75); text-decoration: none;
  }
  .mnav__panel {
    position: absolute; inset: 0; z-index: 2;
    background-color: rgb(var(--color-bg));
    padding: var(--space-m); overflow-y: auto;
  }
  .mnav__back { display: flex; align-items: center; gap: var(--space-3xs); min-height: 4.4rem; }
  .mnav__panel-title { display: block; margin-bottom: var(--space-s); color: inherit; text-decoration: none; }
  .mnav__footer { display: flex; flex-direction: column; gap: var(--space-s); padding-top: var(--space-m); }
  mobile-nav { position: relative; }

/* header:1m0h55z */

  .header {
    position: relative; z-index: 30;
    border-bottom: var(--border-width) solid rgb(var(--color-border));
    transition: transform 0.3s ease, background-color 0.3s ease;
  }
  .header[data-sticky-active] { position: sticky; top: 0; }
  .header[data-hidden] { transform: translateY(-100%); }
  .header--transparent:not([data-scrolled]) {
    background-color: transparent; border-bottom-color: transparent;
    position: absolute; inset-inline: 0; top: 0;
  }
  .header__inner {
    display: grid; align-items: center; gap: var(--space-s);
    grid-template-columns: auto 1fr auto; min-height: 6.4rem;
  }
  .header__group { display: flex; align-items: center; gap: var(--space-2xs); min-width: 0; }
  .header__group--logo { justify-content: center; }
  .header__group--nav { display: none; }
  .header__group--actions { justify-content: flex-end; }
  .header__logo-link { display: block; line-height: 0; }
  .header__logo { height: auto; max-width: 100%; }
  .header__wordmark { color: inherit; text-decoration: none; white-space: nowrap; }
  .header__cart { position: relative; }
  .header__localization, .header__account { display: none; }
  .header shopify-account { display: none; }

  @media screen and (min-width: 990px) {
    .header__inner { grid-template-columns: auto minmax(0, 1fr) auto; min-height: 7.6rem; }
    .header__menu-toggle { display: none; }
    .header__group--nav { display: flex; }
    .header__localization { display: flex; }
    .header shopify-account { display: inline-flex; }

    .header--logo-left .header__inner { grid-template-columns: auto minmax(0, 1fr) auto; }
    .header--logo-left .header__group--logo { justify-content: flex-start; order: -1; }
    .header--logo-left .header__group--start { display: none; }

    .header--logo-center .header__inner { grid-template-columns: 1fr auto 1fr; }
    .header--logo-center .header__group--nav { display: none; }
    .header--logo-center .header__group--start { display: flex; }

    .header--nav-below .header__inner { grid-template-columns: auto minmax(0, 1fr) auto; }
    .header--nav-below .header__group--nav {
      grid-column: 1 / -1; grid-row: 2; justify-content: center;
      border-top: var(--border-width) solid rgb(var(--color-border) / 0.6);
      padding-top: var(--space-xs);
    }
  }

/* footer:pg1xf8 */

  .wordmark {
    display: inline-flex;
    align-items: center;
    gap: 0.55em;
    font-family: var(--font-heading);
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0.01em;
    line-height: 1;
    white-space: nowrap;
  }

  .wordmark__mark {
    display: inline-flex;
    color: rgb(var(--color-accent));
  }

  .wordmark--lg { font-size: calc(2.4rem * var(--body-scale)); }
  .wordmark--sm { font-size: calc(1.5rem * var(--body-scale)); }

/* footer:17u3x99 */

  .social-icons { display: flex; flex-wrap: wrap; gap: var(--space-3xs); }

/* footer:qjh1gc */

  .newsletter-form { display: flex; flex-direction: column; gap: var(--space-xs); width: 100%; }
  .newsletter-form__row { display: flex; flex-direction: column; gap: var(--space-xs); }
  .newsletter-form__row .field { flex: 1 1 auto; }
  @media screen and (min-width: 600px) {
    .newsletter-form__row--inline { flex-direction: row; align-items: flex-end; }
  }

/* footer:y8g8vs */

  .localization { position: relative; }
  .localization__details { position: relative; }
  .localization__summary {
    display: flex; align-items: center; gap: var(--space-2xs);
    min-height: 4.4rem; padding-inline: var(--space-xs); cursor: pointer;
  }
  .localization__panel {
    position: absolute; z-index: 30; bottom: calc(100% + var(--space-2xs)); inset-inline-start: 0;
    min-width: 22rem; max-height: 32rem; overflow-y: auto;
    background-color: rgb(var(--color-bg));
    border: var(--border-width) solid rgb(var(--color-border));
    border-radius: var(--radius-block);
    padding: var(--space-2xs);
    display: flex; flex-direction: column;
  }
  .localization__option {
    text-align: start; padding: var(--space-xs); min-height: 4rem;
    font-size: calc(1.45rem * var(--body-scale)); border-radius: var(--radius-button);
  }
  .localization__option:hover { background-color: rgb(var(--color-text) / 0.06); }
  .localization__option[aria-current='true'] { text-decoration: underline; text-underline-offset: 0.25em; }

/* footer:16fjk1 */

  .payment-icons__list { display: flex; flex-wrap: wrap; gap: var(--space-3xs); align-items: center; }
  .payment-icons__icon { width: 3.8rem; height: auto; border-radius: 2px; }

/* footer:yoyzpb */

  .footer__credit {
    margin: 0;
    opacity: 0.6;
  }

  .footer {
    padding-block: var(--section-pt-mobile, var(--space-2xl)) var(--section-pb-mobile, var(--space-m));
    border-top: var(--border-width) solid rgb(var(--color-border));
  }
  @media screen and (min-width: 990px) {
    .footer { padding-block: var(--section-pt, var(--space-2xl)) var(--section-pb, var(--space-m)); }
  }
  .footer__grid { display: grid; gap: var(--space-l); }
  .footer__heading { display: flex; align-items: center; justify-content: space-between; gap: var(--space-s); min-height: 4.4rem; margin: 0; }
  .footer__links { display: flex; flex-direction: column; gap: var(--space-3xs); padding-bottom: var(--space-s); }
  .footer__link {
    display: flex; align-items: center; gap: var(--space-2xs);
    color: inherit; text-decoration: none; padding-block: 0.4rem; min-height: 3.2rem;
    font-size: calc(1.45rem * var(--body-scale)); opacity: 0.8;
  }
  .footer__link:hover { opacity: 1; text-decoration: underline; text-underline-offset: 0.25em; }
  .footer__brand, .footer__newsletter, .footer__contact { display: flex; flex-direction: column; gap: var(--space-s); }
  .footer__logo { width: 16rem; height: auto; }
  .footer__collapsible > summary { cursor: pointer; list-style: none; }
  .footer__collapsible > summary::-webkit-details-marker { display: none; }
  /* No JavaScript: every panel stays open. Long, but nothing is unreachable. */
  .footer__collapsible[open] .accordion__icon::after { opacity: 0; }
  .footer__disclaimer {
    margin-top: var(--space-xl); padding-top: var(--space-m);
    border-top: var(--border-width) solid rgb(var(--color-border));
    color: rgb(var(--color-text) / 0.6); max-width: 90rem;
  }
  .footer__bar {
    display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between;
    gap: var(--space-s) var(--space-m); margin-top: var(--space-xl);
    padding-top: var(--space-m); border-top: var(--border-width) solid rgb(var(--color-border));
  }
  .footer__bar-start, .footer__bar-end { display: flex; flex-wrap: wrap; align-items: center; gap: var(--space-s) var(--space-m); }
  .footer__policies { display: flex; flex-wrap: wrap; gap: var(--space-s); }

  @media screen and (min-width: 750px) {
    .footer__grid { grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); gap: var(--space-xl); }
    .footer__block--brand, .footer__block--newsletter { grid-column: span 2; }
    /* The panels are always open on desktop, so the summary is decoration.
       It is hidden, never the panel: hiding a <summary> does not open a
       <details>, it just makes the whole block unreachable. */
    .footer__collapsible > summary { display: none; }
    .footer__block--menu::before, .footer__block--text::before { content: none; }
  }

/* cart-drawer:l78hes */

  .drawer__scroll { display: flex; flex-direction: column; flex: 1 1 auto; min-height: 0; }
  .drawer__scroll > .drawer__body { flex: 1 1 auto; overflow-y: auto; overscroll-behavior: contain; padding: var(--space-m); display: flex; flex-direction: column; gap: var(--space-m); }
  .cart-drawer__items { display: flex; flex-direction: column; }
  .cart-drawer__items .cart-item:last-child { border-bottom: 0; }

/* layout:1rga0z1 */

  .search-overlay { place-items: start center; padding-top: 10vh; }
  .search-overlay__panel { width: min(76rem, 100%); }
  .drawer .drawer__inner { display: flex; flex-direction: column; height: 100%; padding: var(--space-m); overflow-y: auto; }
  .search-panel__header {
    display: flex; align-items: center; justify-content: space-between;
    gap: var(--space-s); margin-bottom: var(--space-m);
  }
  .search-panel { display: flex; flex-direction: column; gap: var(--space-m); }
  .search-panel__chips { display: flex; flex-wrap: wrap; gap: var(--space-2xs); margin-top: var(--space-xs); }
  .search-panel__results { max-height: 56vh; overflow-y: auto; overscroll-behavior: contain; }

/* layout:rrxaew */

  #QuickAdd .modal__panel { padding-top: var(--space-xl); }
  #QuickAdd .modal__close { position: absolute; top: var(--space-s); inset-inline-end: var(--space-s); }

/* layout:wvs1co */

  .back-to-top {
    position: fixed; z-index: 20; bottom: var(--space-m); inset-inline-end: var(--space-m);
    opacity: 0; pointer-events: none; transition: opacity 0.2s ease;
  }
  .back-to-top[data-visible] { opacity: 1; pointer-events: auto; }
  .back-to-top .button {
    background-color: rgb(var(--color-bg));
    border: var(--border-width) solid rgb(var(--color-border));
    border-radius: 50%;
    box-shadow: var(--shadow);
  }
  .back-to-top .icon { transform: rotate(90deg); }

/* layout:d29pzo */

  .studio-credit {
    background-color: rgb(var(--color-text));
    color: rgb(var(--color-bg));
    text-align: center;
  }

  .studio-credit__link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 0.6rem;
    padding: 0.7rem var(--space-m);
    min-height: 2.8rem;
    color: inherit;
    text-decoration: none;
    font-family: var(--font-label);
    font-size: calc(1.05rem * var(--body-scale));
    letter-spacing: 0.1em;
    text-transform: uppercase;
    opacity: 0.72;
    transition: opacity var(--duration, 200ms) ease;
  }

  .studio-credit__link:hover,
  .studio-credit__link:focus-visible {
    opacity: 1;
    text-decoration: underline;
    text-underline-offset: 0.3em;
  }

  .studio-credit__mark {
    display: inline-flex;
    color: rgb(var(--color-accent));
  }

  /* One line, always. A credit that wraps to two lines stops reading as a
     credit line and starts reading as a banner. Narrow screens get the short
     label instead of a wrap. */
  .studio-credit__label {
    white-space: nowrap;
  }

  .studio-credit__label--short {
    display: none;
  }

  @media screen and (max-width: 749px) {
    .studio-credit__label--full {
      display: none;
    }

    .studio-credit__label--short {
      display: inline;
    }
  }
