/** Shopify CDN: Minification failed

Line 214:2 Unexpected "{"
Line 214:3 Expected identifier but found "%"
Line 215:56 Unexpected "("
Line 219:3 Expected identifier but found "%"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:bestsellers (INDEX:7) */
.bj-section { padding-block: var(--space-xl); }
  .bj-bestsellers__head { max-width: 56ch; margin-bottom: var(--space-md); }
  .bj-bestsellers__sub { color: var(--color-muted); margin-top: var(--space-xs); }
  .bj-bestsellers__footer { display: flex; justify-content: center; margin-top: var(--space-md); }
/* END_SECTION:bestsellers */

/* START_SECTION:blog-featured (INDEX:8) */
.bj-journal-featured { padding-block: var(--space-lg) var(--space-md); }
  .bj-journal-featured__eyebrow { margin-bottom: var(--space-sm); }
  .bj-journal-featured__card {
    display: grid; grid-template-columns: 1fr; gap: var(--space-md);
    text-decoration: none; color: inherit;
    background: var(--color-surface); border-radius: var(--radius-md);
    overflow: hidden; box-shadow: var(--shadow-card-rest);
    transition: box-shadow var(--duration-hover) var(--ease-editorial), transform var(--duration-hover) var(--ease-editorial);
  }
  @media (min-width: 768px) { .bj-journal-featured__card { grid-template-columns: 1.1fr 1fr; align-items: stretch; } }
  .bj-journal-featured__card:hover { box-shadow: var(--shadow-card-hover); transform: translateY(-4px); }
  .bj-journal-featured__media { aspect-ratio: 16 / 10; background: var(--color-hairline); overflow: hidden; }
  @media (min-width: 768px) { .bj-journal-featured__media { aspect-ratio: auto; height: 100%; } }
  .bj-journal-featured__media img { width: 100%; height: 100%; object-fit: cover; transition: transform var(--duration-slow) var(--ease-editorial); }
  .bj-journal-featured__card:hover .bj-journal-featured__media img { transform: scale(1.03); }
  .bj-journal-featured__body { padding: var(--space-md); display: flex; flex-direction: column; gap: var(--space-xs); align-self: center; }
  @media (min-width: 768px) { .bj-journal-featured__body { padding: var(--space-lg); } }
  .bj-journal-featured__title { margin-top: var(--space-xs); }
  .bj-journal-featured__excerpt { color: var(--color-muted); }
  .bj-journal-featured__cta { margin-top: var(--space-xs); }
/* END_SECTION:blog-featured */

/* START_SECTION:blog-hero (INDEX:9) */
.bj-journal-hero {
    position: relative;
    padding-block: var(--space-xl) var(--space-lg);
    background: var(--color-surface-warm);
    overflow: hidden;
  }
  .bj-journal-hero::before,
  .bj-journal-hero::after {
    content: '';
    position: absolute;
    border-radius: 50%;
    filter: blur(48px);
    opacity: 0.35;
    pointer-events: none;
  }
  .bj-journal-hero::before {
    width: 320px; height: 320px;
    background: var(--color-accent);
    top: -120px; right: -80px;
  }
  .bj-journal-hero::after {
    width: 260px; height: 260px;
    background: var(--color-primary);
    bottom: -140px; left: -60px;
    opacity: 0.18;
  }
  .bj-journal-hero__inner { position: relative; max-width: 720px; }
  .bj-journal-hero__eyebrow { margin-bottom: var(--space-sm); }
  .bj-journal-hero__subheading { color: var(--color-muted); margin-top: var(--space-sm); max-width: 58ch; }
  .bj-journal-hero__cta { margin-top: var(--space-md); }
/* END_SECTION:blog-hero */

/* START_SECTION:blog-shop-cta (INDEX:10) */
.bj-journal-cta { padding-block: var(--space-lg) var(--space-xl); }
  .bj-journal-cta__inner {
    background: var(--color-surface-warm); border-radius: var(--radius-md);
    padding: var(--space-lg) var(--space-md); text-align: center;
    display: flex; flex-direction: column; align-items: center; gap: var(--space-sm);
  }
  @media (min-width: 768px) { .bj-journal-cta__inner { padding: var(--space-lg); } }
  .bj-journal-cta__copy { color: var(--color-muted); max-width: 56ch; }
  .bj-journal-cta__actions { display: flex; flex-wrap: wrap; gap: var(--space-sm); justify-content: center; margin-top: var(--space-xs); }
/* END_SECTION:blog-shop-cta */

/* START_SECTION:brand-statement (INDEX:14) */
.bj-statement {
    background: var(--color-primary);
    color: var(--color-paper);
    padding-block: var(--space-xl);
  }
  .bj-statement__inner { max-width: 880px; }
  .bj-statement__eyebrow { border-color: var(--color-paper); color: var(--color-paper); margin-bottom: var(--space-sm); }
  .bj-statement__quote { color: var(--color-paper); font-size: clamp(1.5rem, 3.6vw, 2.5rem); }
  .bj-statement__attribution { color: oklch(1 0 0 / 0.7); margin-top: var(--space-sm); }
  .bj-statement__stats {
    display: grid; grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
    gap: var(--space-md); margin-top: var(--space-lg);
    border-top: 1px solid oklch(1 0 0 / 0.2); padding-top: var(--space-md);
  }
  .bj-statement__stat-number { color: var(--color-paper); font-size: clamp(2rem, 4vw, 3rem); }
  .bj-statement__stat-label { color: oklch(1 0 0 / 0.7); margin-top: 4px; }
/* END_SECTION:brand-statement */

/* START_SECTION:brand-story (INDEX:15) */
.bj-story { padding-block: var(--space-lg); display: flex; flex-direction: column; gap: var(--space-xl); }
  .bj-story__row { display: grid; gap: var(--space-lg); grid-template-columns: 1fr; align-items: center; }
  @media (min-width: 768px) { .bj-story__row { grid-template-columns: 1fr 1fr; gap: var(--space-xl); } }
  .bj-story__row--reverse { direction: rtl; }
  .bj-story__row--reverse > * { direction: ltr; }
  .bj-story__media { aspect-ratio: 4/5; border-radius: var(--radius-md); overflow: hidden; background: var(--color-surface); }
  .bj-story__media img { width: 100%; height: 100%; object-fit: cover; }
  .bj-story__copy .bj-tag { margin-bottom: var(--space-sm); }
  .bj-story__text { color: var(--color-muted); margin-top: var(--space-sm); }
  .bj-story__text p + p { margin-top: var(--space-sm); }
/* END_SECTION:brand-story */

/* START_SECTION:contact-form (INDEX:20) */
.bj-contact { padding-block: var(--space-lg) var(--space-xl); }
  .bj-contact__layout { display: grid; gap: var(--space-lg); grid-template-columns: 1fr; }
  @media (min-width: 1024px) { .bj-contact__layout { grid-template-columns: 0.85fr 1.15fr; } }

  .bj-contact__info-copy { color: var(--color-muted); margin-top: var(--space-sm); max-width: 48ch; }
  .bj-contact__channels { list-style: none; margin: var(--space-md) 0 0; padding: 0; display: flex; flex-direction: column; gap: var(--space-sm); }
  .bj-contact__channels li { display: flex; flex-direction: column; gap: 2px; padding-bottom: var(--space-sm); border-bottom: 1px solid var(--color-hairline); }
  .bj-contact__channels a { color: var(--color-primary); text-decoration: none; }
  .bj-contact__channels a:hover { text-decoration: underline; }
  .bj-contact__response { color: var(--color-muted); }
  .bj-contact__social { display: flex; gap: var(--space-sm); margin-top: var(--space-md); }
  .bj-contact__social a { color: var(--color-ink); font-size: var(--size-label); text-decoration: none; border-bottom: 1px solid var(--color-hairline); }

  .bj-contact__form-wrap { background: var(--color-surface); border-radius: var(--radius-md); padding: var(--space-md); }
  @media (min-width: 768px) { .bj-contact__form-wrap { padding: var(--space-lg); } }
  .bj-contact__field { margin-bottom: var(--space-sm); display: flex; flex-direction: column; gap: 6px; }
  .bj-contact__textarea { resize: vertical; min-height: 120px; }
  .bj-contact__submit { width: 100%; margin-top: var(--space-xs); }
  .bj-contact__success { text-align: center; padding: var(--space-lg) 0; }
  .bj-contact__success .bj-body { color: var(--color-muted); margin-top: var(--space-xs); }
  .bj-contact__error {
    background: oklch(0.55 0.18 25 / 0.08); border: 1px solid var(--color-sale-red);
    border-radius: var(--radius-sm); padding: var(--space-sm); margin-bottom: var(--space-md); color: var(--color-sale-red);
  }
  .bj-contact__error ul { margin: var(--space-xs) 0 0; padding-left: 1.25em; }
/* END_SECTION:contact-form */

/* START_SECTION:footer (INDEX:35) */
.bj-footer { background: var(--color-ink); color: oklch(1 0 0 / 0.85); padding-top: var(--space-xl); }
  .bj-footer__grid { display: grid; gap: var(--space-md); grid-template-columns: 1fr; }
  @media (min-width: 768px) { .bj-footer__grid { grid-template-columns: 1.4fr 1fr 1fr 1fr; } }
  .bj-footer__logo { color: var(--color-paper); }
  .bj-footer__logo--image {
    display: block; height: auto;
    /* Theme settings -> Logo stores the ink-colored mark (for light backgrounds elsewhere); flipped to white here for the dark footer via CSS rather than needing a second upload. */
    filter: brightness(0) invert(1);
  }
  .bj-footer__about { color: oklch(1 0 0 / 0.7); margin-top: var(--space-xs); max-width: 40ch; }
  .bj-footer__social { display: flex; gap: var(--space-md); margin-top: var(--space-sm); flex-wrap: wrap; }
  .bj-footer__social a,
  .bj-footer__col a {
    text-decoration: none;
    background-image: linear-gradient(currentColor, currentColor);
    background-position: 0 100%;
    background-repeat: no-repeat;
    background-size: 0% 1px;
    padding-bottom: 2px;
    transition: background-size var(--duration-hover) var(--ease-editorial),
                color var(--duration-hover) var(--ease-editorial);
  }
  .bj-footer__social a:hover, .bj-footer__col a:hover { background-size: 100% 1px; }
  .bj-footer__social a { color: var(--color-paper); font-size: var(--size-label); display: inline-flex; align-items: center; gap: 6px; }
  .bj-footer__social a svg { flex-shrink: 0; transition: transform var(--duration-hover) var(--ease-editorial); }
  .bj-footer__social a:hover svg { transform: translateY(-1px); }
  .bj-footer__col { display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-xs); }
  .bj-footer__col .bj-title { color: var(--color-paper); margin-bottom: 4px; }
  .bj-footer__col a { color: oklch(1 0 0 / 0.7); font-size: 0.9375rem; }
  .bj-footer__col a:hover { color: var(--color-paper); }
  .bj-footer__trust-item { display: flex; align-items: center; gap: 6px; color: oklch(1 0 0 / 0.7); font-size: 0.9375rem; }
  .bj-footer__trust-item svg { color: var(--color-stock-green); flex-shrink: 0; }
  .bj-footer__legal {
    display: flex; justify-content: space-between; flex-wrap: wrap; gap: var(--space-xs);
    margin-top: var(--space-xl); padding-block: var(--space-sm);
    border-top: 1px solid oklch(1 0 0 / 0.15);
    color: oklch(1 0 0 / 0.55); font-size: 0.8125rem;
  }
/* END_SECTION:footer */

/* START_SECTION:header (INDEX:38) */
.bj-header {
    background: var(--color-paper);
    position: sticky;
    top: 0;
    z-index: var(--z-sticky);
    border-bottom: 1px solid transparent;
    transition: background var(--duration-hover) var(--ease-editorial),
                box-shadow var(--duration-hover) var(--ease-editorial),
                border-color var(--duration-hover) var(--ease-editorial);
  }

  /* Homepage only: header floats transparent/glass over the hero image,
     then solidifies once the visitor scrolls past it. Every other template
     keeps the sticky solid header above (unchanged). */
  .template-index .bj-header {
    position: fixed;
    top: 0; left: 0; right: 0;
    background: transparent;
  }
  .template-index .bj-header:not(.bj-header--scrolled) .bj-header__logo,
  .template-index .bj-header:not(.bj-header--scrolled) .bj-header__link,
  .template-index .bj-header:not(.bj-header--scrolled) .bj-header__icon-btn {
    color: var(--color-paper);
  }
  {%- comment -%}
    Theme settings → Logo stores the ink-colored mark (reads on the solid
    header everywhere else); flipped to white here for the transparent
    over-hero state via CSS, same trick as footer.liquid, so only one file
    needs uploading.
  {%- endcomment -%}
  .template-index .bj-header:not(.bj-header--scrolled) .bj-header__logo-image {
    filter: brightness(0) invert(1);
  }
  .template-index .bj-header:not(.bj-header--scrolled) .bj-header__link:hover,
  .template-index .bj-header:not(.bj-header--scrolled) .bj-header__link--active {
    border-color: var(--color-paper);
  }
  .bj-header--scrolled {
    background: var(--glass-bg);
    -webkit-backdrop-filter: var(--glass-blur);
    backdrop-filter: var(--glass-blur);
    border-bottom-color: var(--color-hairline);
    box-shadow: 0 1px 0 var(--color-hairline);
  }
  @supports not (backdrop-filter: blur(1px)) {
    .bj-header--scrolled { background: var(--color-paper); }
  }
  .bj-header__inner {
    display: flex;
    align-items: center;
    gap: var(--space-md);
    padding-block: var(--space-xs);
  }
  .bj-header__logo {
    font-family: var(--font-display);
    font-weight: 380;
    font-size: 1.25rem;
    color: var(--color-ink);
    text-decoration: none;
    margin-right: auto;
    display: inline-flex;
    align-items: center;
  }
  .bj-header__logo-image {
    display: block; width: 120px; height: auto;
    transition: filter var(--duration-hover) var(--ease-editorial);
  }
  .bj-header__nav { display: none; gap: var(--space-md); align-items: center; }
  @media (min-width: 1024px) { .bj-header__nav { display: flex; } }
  .bj-header__link {
    font-family: var(--font-body);
    font-weight: 560;
    font-size: var(--size-label);
    letter-spacing: 0.04em;
    text-decoration: none;
    color: var(--color-ink);
    padding-bottom: 4px;
    border-bottom: 2px solid transparent;
    transition: border-color var(--duration-hover) var(--ease-editorial);
  }
  .bj-header__link:hover, .bj-header__link--active { border-color: var(--color-primary); }
  .bj-header__link--parent {
    display: inline-flex; align-items: center; gap: 6px;
    background: none; border-top: none; border-left: none; border-right: none;
    cursor: pointer; padding-top: 0;
  }
  .bj-header__link--parent svg { transition: transform var(--duration-hover) var(--ease-editorial); }

  .bj-header__dropdown { position: relative; }
  .bj-header__dropdown-panel {
    position: absolute; top: calc(100% + 16px); left: 50%; transform: translate(-50%, 8px);
    min-width: 220px;
    background: var(--color-paper);
    box-shadow: var(--shadow-modal-lift);
    border-radius: var(--radius-md);
    padding: var(--space-xs);
    display: flex; flex-direction: column; gap: 2px;
    opacity: 0; visibility: hidden;
    transition: opacity var(--duration-hover) var(--ease-editorial),
                transform var(--duration-hover) var(--ease-editorial),
                visibility var(--duration-hover);
  }
  .bj-header__dropdown:hover .bj-header__dropdown-panel,
  .bj-header__dropdown:focus-within .bj-header__dropdown-panel,
  .bj-header__dropdown[data-open="true"] .bj-header__dropdown-panel {
    opacity: 1; visibility: visible; transform: translate(-50%, 0);
  }
  .bj-header__dropdown:hover .bj-header__link--parent svg,
  .bj-header__dropdown[data-open="true"] .bj-header__link--parent svg { transform: rotate(180deg); }
  .bj-header__dropdown-link {
    font-family: var(--font-body); font-size: 0.9375rem; color: var(--color-ink);
    text-decoration: none; padding: 10px 14px; border-radius: var(--radius-sm);
    transition: background var(--duration-hover) var(--ease-editorial);
  }
  .bj-header__dropdown-link:hover { background: var(--color-surface); }
  .bj-header__dropdown-link--all { font-weight: 560; border-bottom: 1px solid var(--color-hairline); margin-bottom: 4px; padding-bottom: 14px; }

  .bj-header__actions { display: flex; align-items: center; gap: var(--space-xs); }
  .bj-header__icon-btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 44px; height: 44px;
    color: var(--color-ink);
    position: relative;
    /* Reset here (not just on the .bj-header__nav-toggle button) so this class
       is safe on a <button> as well as the <a> tags it's normally used on --
       otherwise the browser's default gray/outset button chrome shows through. */
    background: none; border: none; padding: 0; margin: 0;
    font: inherit; text-decoration: none; cursor: pointer;
  }
  .bj-header__icon-btn:hover { color: var(--color-primary); }
  .bj-header__nav-toggle { border: none; background: none; cursor: pointer; }
  @media (min-width: 1024px) { .bj-header__nav-toggle { display: none; } }
  .bj-header__cart-count {
    position: absolute; top: 4px; right: 4px;
    background: var(--color-accent); color: var(--color-paper);
    font-size: 0.625rem; font-weight: 700;
    width: 16px; height: 16px; border-radius: 50%;
    display: flex; align-items: center; justify-content: center;
  }
  .bj-header__cart-count[hidden] { display: none; }
  .bj-nav-backdrop {
    position: fixed; inset: 0;
    background: var(--glass-bg-dark);
    -webkit-backdrop-filter: blur(6px);
    backdrop-filter: blur(6px);
    z-index: var(--z-drawer-backdrop);
    opacity: 0;
    transition: opacity var(--duration-hover) var(--ease-editorial);
  }
  .bj-nav-backdrop.is-visible { opacity: 1; }
  @supports not (backdrop-filter: blur(1px)) {
    .bj-nav-backdrop { background: oklch(0.17 0.02 240.4 / 0.55); }
  }
  .bj-nav-drawer {
    position: fixed; top: 0; right: 0; bottom: 0;
    width: min(320px, 88vw);
    background: var(--color-paper);
    box-shadow: var(--shadow-modal-lift);
    z-index: var(--z-drawer);
    display: flex; flex-direction: column; gap: var(--space-xs);
    padding: var(--space-lg) var(--space-md);
    overflow-y: auto;
    transform: translateX(100%);
    transition: transform var(--duration-reveal) var(--ease-editorial);
  }
  .bj-nav-drawer[aria-hidden="false"] { transform: translateX(0); }
  .bj-nav-drawer__link, .bj-nav-drawer__summary {
    font-family: var(--font-display); font-size: var(--size-title); font-weight: 380;
    color: var(--color-ink); text-decoration: none; padding-block: var(--space-xs);
    border-bottom: 1px solid var(--color-hairline);
    cursor: pointer; list-style: none;
    display: flex; align-items: center; justify-content: space-between;
  }
  .bj-nav-drawer__summary::-webkit-details-marker { display: none; }
  .bj-nav-drawer__summary::after {
    content: '+'; font-family: var(--font-display); color: var(--color-primary); font-size: 1.125rem;
  }
  .bj-nav-drawer__group[open] .bj-nav-drawer__summary::after { content: '−'; }
  .bj-nav-drawer__submenu { display: flex; flex-direction: column; padding-left: var(--space-xs); }
  .bj-nav-drawer__sublink {
    font-family: var(--font-body); color: var(--color-muted); text-decoration: none;
    padding-block: 10px; border-bottom: 1px solid var(--color-hairline);
  }
/* END_SECTION:header */

/* START_SECTION:hero (INDEX:39) */
.bj-hero { position: relative; overflow: hidden; }
  .bj-hero__track { position: relative; height: clamp(520px, 82vh, 860px); }
  .bj-hero__slide {
    position: absolute; inset: 0;
    opacity: 0; visibility: hidden;
    transition: opacity var(--duration-reveal) var(--ease-editorial);
  }
  .bj-hero__slide--active { opacity: 1; visibility: visible; }
  .bj-hero__media { position: absolute; inset: 0; }
  .bj-hero__media img {
    width: 100%; height: 100%; object-fit: cover;
    transform: scale(1);
  }
  .bj-hero__slide--active .bj-hero__media img {
    animation: bj-hero-zoom 12s linear forwards;
  }
  @keyframes bj-hero-zoom {
    from { transform: scale(1); }
    to { transform: scale(1.08); }
  }
  @media (prefers-reduced-motion: reduce) {
    .bj-hero__slide--active .bj-hero__media img { animation: none; }
  }
  .bj-hero__media::after {
    content: ''; position: absolute; inset: 0;
    background:
      linear-gradient(180deg, oklch(0.17 0.02 240.4 / 0.4) 0%, transparent 22%),
      linear-gradient(0deg, oklch(0.17 0.02 240.4 / 0.55) 0%, oklch(0.17 0.02 240.4 / 0.05) 45%, transparent 65%);
  }
  .bj-hero__content {
    position: relative; height: 100%;
    display: flex; flex-direction: column; justify-content: flex-end;
    gap: var(--space-xs);
    padding-bottom: var(--space-xl);
    color: var(--color-paper);
    max-width: 640px;
  }
  .bj-hero__eyebrow { border-color: var(--color-paper); color: var(--color-paper); margin-bottom: var(--space-xs); }
  .bj-hero__heading { color: var(--color-paper); }
  .bj-hero__subheading { color: var(--color-paper); max-width: 46ch; }
  .bj-hero__actions { display: flex; gap: var(--space-xs); flex-wrap: wrap; margin-top: var(--space-sm); }
  .bj-hero__actions .bj-btn--ghost { background: transparent; color: var(--color-paper); border-color: var(--color-paper); }
  .bj-hero__actions .bj-btn--ghost:hover { background: oklch(1 0 0 / 0.12); }
  .bj-hero__dots {
    position: absolute; bottom: var(--space-sm); left: var(--space-md);
    display: flex; gap: 8px; z-index: 2;
  }
  .bj-hero__dot {
    width: 28px; height: 3px; background: oklch(1 0 0 / 0.4); border: none; cursor: pointer;
    transition: background var(--duration-hover) var(--ease-editorial);
  }
  .bj-hero__dot--active { background: var(--color-paper); }
  @media (max-width: 767px) {
    .bj-hero__track { height: clamp(560px, 92vh, 720px); }
    .bj-hero__content { padding-bottom: var(--space-lg); }
  }
/* END_SECTION:hero */

/* START_SECTION:ingredient-trust (INDEX:50) */
.bj-trust { padding-block: var(--space-xl); background: var(--color-surface); }
  .bj-trust__layout { display: grid; gap: var(--space-lg); grid-template-columns: 1fr; }
  @media (min-width: 1024px) { .bj-trust__layout { grid-template-columns: 0.9fr 1.1fr; } }
  .bj-trust__sub { color: var(--color-muted); margin-top: var(--space-xs); }
  .bj-trust__tags { display: flex; flex-wrap: wrap; gap: var(--space-xs); margin-top: var(--space-md); }
/* END_SECTION:ingredient-trust */

/* START_SECTION:main-article (INDEX:57) */
.bj-article__top { padding-top: var(--space-lg); max-width: 820px; }
  .bj-breadcrumbs { margin-bottom: var(--space-md); }
  .bj-breadcrumbs ol { list-style: none; display: flex; flex-wrap: wrap; gap: 6px; margin: 0; padding: 0; font-size: 0.8125rem; color: var(--color-muted); }
  .bj-breadcrumbs li:not(:last-child)::after { content: '/'; margin-left: 6px; color: var(--color-hairline); }
  .bj-breadcrumbs a { color: var(--color-muted); text-decoration: none; }
  .bj-breadcrumbs a:hover { color: var(--color-primary); text-decoration: underline; }
  .bj-breadcrumbs li[aria-current] { color: var(--color-ink); }

  .bj-article__title { margin-top: var(--space-sm); }
  .bj-article__meta {
    display: flex; flex-wrap: wrap; align-items: center; gap: 8px;
    color: var(--color-muted); font-size: 0.9375rem; margin-top: var(--space-sm);
  }
  .bj-article__meta svg { vertical-align: -2px; margin-right: 2px; }
  .bj-article__updated { font-style: italic; }

  .bj-article__media { margin-top: var(--space-lg); border-radius: var(--radius-md); overflow: hidden; }
  .bj-article__media img { width: 100%; height: auto; aspect-ratio: 16 / 9; object-fit: cover; }

  .bj-article__body-wrap { max-width: 820px; padding-block: var(--space-lg); }
  .bj-article__body { font-size: 1.0625rem; line-height: 1.75; color: var(--color-ink); }
  .bj-article__body > * + * { margin-top: var(--space-sm); }
  .bj-article__body h2 { font-family: var(--font-display); font-weight: 380; font-size: var(--size-headline); margin-top: var(--space-lg); scroll-margin-top: var(--space-md); }
  .bj-article__body h3 { font-weight: 560; font-size: var(--size-title); margin-top: var(--space-md); scroll-margin-top: var(--space-md); }
  .bj-article__body ul, .bj-article__body ol { padding-left: 1.4em; }
  .bj-article__body li + li { margin-top: 6px; }
  .bj-article__body img { width: 100%; height: auto; border-radius: var(--radius-sm); }
  .bj-article__body a { color: var(--color-primary); }
  .bj-article__body blockquote {
    border-left: 3px solid var(--color-accent); padding-left: var(--space-sm);
    color: var(--color-muted); font-style: italic;
  }

  .bj-callout {
    background: var(--color-surface-warm); border-radius: var(--radius-md);
    padding: var(--space-sm) var(--space-md); margin-block: var(--space-md) !important;
  }
  .bj-callout p:first-child { margin-top: 0; }
  .bj-callout p:last-child { margin-bottom: 0; }

  .bj-routine-steps { list-style: none; padding: 0; margin-block: var(--space-md) !important; counter-reset: bj-routine-step; }
  .bj-routine-step {
    counter-increment: bj-routine-step;
    display: flex; gap: var(--space-sm); align-items: flex-start;
    background: var(--color-surface); border-radius: var(--radius-md);
    padding: var(--space-sm) var(--space-md);
  }
  .bj-routine-step + .bj-routine-step { margin-top: var(--space-xs); }
  .bj-routine-step::before {
    content: counter(bj-routine-step);
    flex-shrink: 0; width: 28px; height: 28px; border-radius: 50%;
    background: var(--color-primary); color: var(--color-paper);
    display: flex; align-items: center; justify-content: center;
    font-weight: 560; font-size: 0.875rem;
  }

  .bj-answer-box {
    background: var(--color-surface-warm); border-radius: var(--radius-md);
    border-left: 3px solid var(--color-accent);
    padding: var(--space-sm) var(--space-md); margin-bottom: var(--space-md);
  }
  .bj-answer-label {
    display: inline-block; font-weight: 560; font-size: var(--size-label);
    letter-spacing: 0.04em; text-transform: uppercase; color: var(--color-accent-deep);
    margin-bottom: 6px;
  }
  .bj-answer-box p { margin: 0; color: var(--color-ink); }

  .bj-toc {
    background: var(--color-surface); border-radius: var(--radius-md);
    padding: var(--space-sm) var(--space-md); margin-bottom: var(--space-md);
  }
  .bj-toc__label { font-weight: 560; font-size: var(--size-label); letter-spacing: 0.04em; text-transform: uppercase; color: var(--color-muted); margin: 0 0 var(--space-xs); }
  .bj-toc ol { list-style: decimal; margin: 0; padding-left: 1.2em; }
  .bj-toc li + li { margin-top: 4px; }
  .bj-toc a { color: var(--color-primary); text-decoration: none; }
  .bj-toc a:hover { text-decoration: underline; }

  .bj-share { display: flex; align-items: center; gap: var(--space-xs); margin-top: var(--space-md); }
  .bj-share__label { font-size: 0.8125rem; color: var(--color-muted); margin-right: 4px; }
  .bj-share__btn {
    display: inline-flex; align-items: center; justify-content: center;
    width: 36px; height: 36px; border-radius: 50%;
    background: var(--color-surface); color: var(--color-ink);
    border: 1px solid var(--color-hairline); cursor: pointer;
    transition: background var(--duration-hover) var(--ease-editorial), color var(--duration-hover) var(--ease-editorial);
  }
  .bj-share__btn:hover { background: var(--color-primary); color: var(--color-paper); border-color: var(--color-primary); }

  .bj-article__faq { padding-top: var(--space-lg); }
  .bj-article__faq .bj-accordion { margin-top: var(--space-sm); }

  .bj-article__related-products, .bj-article__related-articles { padding-block: var(--space-lg); }
/* END_SECTION:main-article */

/* START_SECTION:main-blog (INDEX:58) */
.bj-journal { padding-block: var(--space-md) var(--space-xl); }
  .bj-journal__empty {
    text-align: center; padding: var(--space-xl) 0; max-width: 480px; margin-inline: auto;
    display: flex; flex-direction: column; align-items: center; gap: var(--space-sm);
  }
  .bj-journal__empty-copy { color: var(--color-muted); }
/* END_SECTION:main-blog */

/* START_SECTION:main-collection (INDEX:61) */
.bj-collection-header { padding-block: var(--space-xl) var(--space-md); }
  .bj-collection-header__inner { max-width: 720px; }
  .bj-collection-header__eyebrow { margin-bottom: var(--space-sm); }
  .bj-collection-header__description { color: var(--color-muted); margin-top: var(--space-sm); max-width: 60ch; }
  .bj-collection-header__description p { margin: 0; }

  .bj-collection-pills { display: flex; flex-wrap: wrap; gap: var(--space-xs); margin-top: var(--space-md); }
  .bj-collection-pill {
    font-family: var(--font-body); font-weight: 560; font-size: var(--size-label);
    color: var(--color-ink); text-decoration: none;
    padding: 10px 18px; border: 1px solid var(--color-hairline); border-radius: var(--radius-sm);
    transition: border-color var(--duration-hover) var(--ease-editorial), background var(--duration-hover) var(--ease-editorial);
  }
  .bj-collection-pill:hover { border-color: var(--color-primary); }
  .bj-collection-pill--active { background: var(--color-primary); border-color: var(--color-primary); color: var(--color-paper); }

  .bj-collection { padding-block: var(--space-md) var(--space-xl); }
  .bj-collection__controls {
    display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: var(--space-sm);
    padding-bottom: var(--space-md); margin-bottom: var(--space-md); border-bottom: 1px solid var(--color-hairline);
  }
  .bj-collection__count { color: var(--color-muted); font-size: 0.9375rem; }
  .bj-collection__controls-right { display: flex; align-items: center; gap: var(--space-md); flex-wrap: wrap; }
  .bj-collection__filter-check { display: flex; align-items: center; gap: 8px; font-size: 0.9375rem; color: var(--color-ink); cursor: pointer; }
  .bj-collection__sort .bj-input { padding: 10px 14px; width: auto; }

  .bj-collection__empty { text-align: center; padding: var(--space-xl) 0; display: flex; flex-direction: column; align-items: center; gap: var(--space-sm); color: var(--color-muted); }

  .bj-pagination { display: flex; align-items: center; justify-content: center; gap: var(--space-md); margin-top: var(--space-lg); }
  .bj-pagination__status { color: var(--color-muted); font-size: 0.9375rem; }
/* END_SECTION:main-collection */

/* START_SECTION:main-product (INDEX:65) */
.bj-pdp { padding-block: var(--space-lg) var(--space-xl); }
  .bj-pdp__layout { display: grid; gap: var(--space-lg); grid-template-columns: 1fr; }
  @media (min-width: 1024px) { .bj-pdp__layout { grid-template-columns: 1.1fr 1fr; } }

  .bj-pdp__gallery-main { aspect-ratio: 4/5; border-radius: var(--radius-md); overflow: hidden; background: var(--color-surface); }
  .bj-pdp__gallery-main img {
    width: 100%; height: 100%; object-fit: cover;
    opacity: 1; transition: opacity var(--duration-fast) var(--ease-editorial);
  }
  .bj-pdp__gallery-main img.is-swapping { opacity: 0; }
  @media (prefers-reduced-motion: reduce) {
    .bj-pdp__gallery-main img { transition: none; }
  }
  .bj-pdp__thumbs { display: flex; gap: var(--space-xs); margin-top: var(--space-xs); overflow-x: auto; }
  .bj-pdp__thumb { border: 2px solid transparent; border-radius: var(--radius-sm); overflow: hidden; padding: 0; background: none; cursor: pointer; flex-shrink: 0; }
  .bj-pdp__thumb--active { border-color: var(--color-primary); }
  .bj-pdp__thumb img { width: 56px; height: 70px; object-fit: cover; }

  .bj-pdp__title { margin-top: var(--space-xs); }
  .bj-pdp__rating { display: flex; align-items: center; gap: var(--space-xs); margin-top: var(--space-xs); }
  .bj-pdp__rating-count { color: var(--color-muted); font-size: 0.875rem; text-decoration: underline; }
  .bj-pdp__price { font-family: var(--font-display); font-size: 1.75rem; margin-top: var(--space-sm); color: var(--color-ink); }
  .bj-pdp__price .bj-price--compare { font-size: 1.125rem; }
  .bj-pdp__description { color: var(--color-muted); margin-top: var(--space-sm); }
  .bj-pdp__tags { display: flex; flex-wrap: wrap; gap: var(--space-xs); margin-top: var(--space-sm); }

  .bj-pdp__form { margin-top: var(--space-md); display: flex; flex-direction: column; gap: var(--space-xs); }
  .bj-pdp__variant-label { display: block; margin-bottom: 4px; }
  .bj-pdp__purchase-row { display: flex; gap: var(--space-xs); align-items: stretch; }
  .bj-qty { display: flex; align-items: center; border: 1px solid var(--color-hairline); border-radius: var(--radius-md); }
  .bj-qty button { width: 40px; background: none; border: none; font-size: 1.125rem; cursor: pointer; color: var(--color-ink); }
  .bj-qty input { width: 40px; border: none; text-align: center; font-family: var(--font-body); font-size: 1rem; -moz-appearance: textfield; }
  .bj-qty input::-webkit-outer-spin-button, .bj-qty input::-webkit-inner-spin-button { -webkit-appearance: none; margin: 0; }
  .bj-pdp__atc { flex: 1; }
  .bj-pdp__dynamic-checkout { margin-top: var(--space-xs); }
  .bj-pdp__restock-note { color: var(--color-muted); font-size: 0.9375rem; margin-top: var(--space-xs); }
  .bj-pdp__restock-note a { color: var(--color-primary); text-decoration: underline; }

  .bj-pdp__trust { list-style: none; margin: var(--space-md) 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: var(--space-xs); }

  .bj-pdp__accordions { margin-top: var(--space-md); border-top: 1px solid var(--color-hairline); }

  .bj-sticky-atc {
    position: fixed; bottom: 0; left: 0; right: 0;
    background: var(--color-paper); box-shadow: var(--shadow-ambient-float);
    padding: var(--space-xs) 0; z-index: var(--z-sticky);
    transform: translateY(100%); transition: transform var(--duration-reveal) var(--ease-editorial);
  }
  .bj-sticky-atc.is-visible { transform: translateY(0); }
  .bj-sticky-atc__inner { display: flex; align-items: center; gap: var(--space-sm); }
  .bj-sticky-atc__title { display: none; }
  @media (min-width: 480px) { .bj-sticky-atc__title { display: block; flex: 1; } }
  .bj-sticky-atc__price { color: var(--color-muted); }
  .bj-sticky-atc .bj-btn { margin-left: auto; padding: 12px 28px; }
  @media (min-width: 1024px) { .bj-sticky-atc { display: none; } }
/* END_SECTION:main-product */

/* START_SECTION:newsletter (INDEX:70) */
.bj-newsletter { background: var(--color-primary); padding-block: var(--space-lg); }
  .bj-newsletter__inner { display: flex; flex-direction: column; gap: var(--space-md); align-items: flex-start; }
  @media (min-width: 1024px) { .bj-newsletter__inner { flex-direction: row; align-items: center; justify-content: space-between; } }
  .bj-newsletter__copy h2, .bj-newsletter__copy p { color: var(--color-paper); }
  .bj-newsletter__copy p { margin-top: var(--space-xs); }
  .bj-newsletter__form {
    display: flex; gap: var(--space-xs); flex-wrap: wrap; min-width: min(420px, 100%);
    padding: var(--space-xs); border-radius: var(--radius-md);
  }
  .bj-newsletter__form .bj-input { flex: 1; min-width: 220px; border-color: transparent; }
  .bj-newsletter__form .bj-input:focus { border-color: var(--color-paper); }
  .bj-newsletter__success { color: var(--color-paper); width: 100%; margin-top: var(--space-xs); padding: 0 var(--space-xs); }
/* END_SECTION:newsletter */

/* START_SECTION:page-header (INDEX:73) */
.bj-page-header { padding-block: var(--space-xl) var(--space-lg); }
  .bj-page-header__inner { max-width: 720px; }
  .bj-page-header__eyebrow { margin-bottom: var(--space-sm); }
  .bj-page-header__subheading { color: var(--color-muted); margin-top: var(--space-sm); max-width: 56ch; }

  .bj-page-header--image { padding-block: 0; position: relative; }
  .bj-page-header--image .bj-page-header__media { height: clamp(320px, 42vh, 480px); position: relative; }
  .bj-page-header--image .bj-page-header__media img { width: 100%; height: 100%; object-fit: cover; }
  .bj-page-header--image .bj-page-header__media::after {
    content: ''; position: absolute; inset: 0;
    background: linear-gradient(0deg, oklch(0.17 0.02 240.4 / 0.55) 0%, oklch(0.17 0.02 240.4 / 0.05) 45%, transparent 65%);
  }
  .bj-page-header--image .bj-page-header__inner {
    position: absolute; bottom: var(--space-lg); left: 50%; transform: translateX(-50%);
    width: 100%; max-width: var(--container-max); padding-inline: var(--space-sm);
  }
  @media (min-width: 768px) { .bj-page-header--image .bj-page-header__inner { padding-inline: var(--space-md); } }
  .bj-page-header--image .bj-page-header__heading,
  .bj-page-header--image .bj-page-header__subheading { color: var(--color-paper); }
  .bj-page-header--image .bj-page-header__eyebrow { border-color: var(--color-paper); color: var(--color-paper); }
/* END_SECTION:page-header */

/* START_SECTION:product-reviews (INDEX:89) */
.bj-reviews__head { display: flex; flex-direction: column; gap: var(--space-xs); margin-bottom: var(--space-md); }
  .bj-reviews__summary { display: flex; align-items: center; gap: var(--space-xs); }
  .bj-reviews__count { color: var(--color-muted); font-size: 0.9375rem; }
  .bj-reviews__app-block { grid-column: 1 / -1; }
/* END_SECTION:product-reviews */

/* START_SECTION:reviews-index (INDEX:100) */
.bj-reviews-index { padding-block: var(--space-lg) var(--space-xl); }
  .bj-reviews-index__summary {
    display: flex; flex-wrap: wrap; gap: var(--space-lg); align-items: center;
    padding-bottom: var(--space-lg); margin-bottom: var(--space-md); border-bottom: 1px solid var(--color-hairline);
  }
  .bj-reviews-index__score { display: flex; align-items: center; gap: var(--space-md); }
  .bj-reviews-index__number { color: var(--color-ink); }
  .bj-reviews-index__count { color: var(--color-muted); margin-top: 4px; }
  .bj-reviews-index__breakdown { display: flex; flex-direction: column; gap: 6px; min-width: 240px; flex: 1; }
  .bj-reviews-index__bar-row { display: grid; grid-template-columns: 44px 1fr 36px; align-items: center; gap: var(--space-xs); font-size: 0.8125rem; color: var(--color-muted); }
  .bj-reviews-index__bar-track { height: 6px; background: var(--color-hairline); border-radius: 3px; overflow: hidden; }
  .bj-reviews-index__bar-fill { display: block; height: 100%; background: var(--color-accent); }

  .bj-reviews-index__filters { display: flex; flex-wrap: wrap; gap: var(--space-xs); margin-bottom: var(--space-md); }
  .bj-reviews-index__filters button { cursor: pointer; font-family: inherit; }
  .bj-reviews-index__filters button:not(.bj-collection-pill--active) { background: none; }

  .bj-reviews-index__empty { text-align: center; color: var(--color-muted); padding: var(--space-lg) 0; }
  .bj-reviews-index__empty-state { text-align: center; padding: var(--space-xl) 0; display: flex; flex-direction: column; align-items: center; gap: var(--space-xs); }
  .bj-reviews-index__empty-state .bj-body { color: var(--color-muted); max-width: 46ch; }
  .bj-reviews-index__app-block { grid-column: 1 / -1; }
/* END_SECTION:reviews-index */

/* START_SECTION:testimonials (INDEX:112) */
.bj-testimonials { background: var(--color-surface-warm); padding-block: var(--space-xl); }
  .bj-testimonials__head { max-width: 56ch; margin-bottom: var(--space-md); }
/* END_SECTION:testimonials */