/** Shopify CDN: Minification failed

Line 52:4 Unexpected "{"
Line 52:5 Expected identifier but found "%"
Line 53:13 Expected identifier but found whitespace
Line 54:36 Expected identifier but found whitespace
Line 55:5 Expected identifier but found "%"

**/
/* SHOPIFY_STYLESHEETS_VERSION: 1.0 */


/* CSS from section stylesheet tags */
/* START_SECTION:api-add-to-cart-notification (INDEX:2) */
.cart-notification-position {
    top: calc(var(--header-bottom, 0px) + 16px);
  }

  .cart-notification-enter {
    transition-duration: var(--notification-enter-duration), calc(var(--notification-enter-duration) * 0.75);

    &.start {
      transform: translateY(-20px) translateX(10px) scale(0.9);
      opacity: 0;
    }

    &.end {
      transform: translateY(0) translateX(0) scale(1);
      opacity: 1;
    }
  }

  .cart-notification-leave {
    transition-duration: var(--notification-exit-duration), calc(var(--notification-exit-duration) * 0.75);

    &.start {
      transform: translateY(0) translateX(0) scale(1);
      opacity: 1;
    }

    &.end {
      transform: translateY(-20px) translateX(10px) scale(0.9);
      opacity: 0;
    }
  }
/* END_SECTION:api-add-to-cart-notification */

/* START_SECTION:header-menu (INDEX:16) */
.header-menu-grid {
    display: grid;
    grid-template-areas: 'left center right';
    {% comment %}
      Mobile: symmetric outer columns so the centered logo stays centered regardless of the
      desktop menu position setting. Desktop layout is applied at the md breakpoint below.
    {% endcomment %}
    grid-template-columns:
      minmax(0, 1fr)
      minmax(max-content, auto)
      minmax(0, 1fr);
    column-gap: var(--header-row-gap-x);
    align-items: stretch;
  }

  @media (min-width: 768px) {
    .header-menu-grid {
      grid-template-columns:
        var(--left-column-width-md, minmax(max-content, 1fr))
        var(--center-column-width-md, minmax(max-content, auto))
        var(--right-column-width-md, minmax(max-content, 1fr));
    }
  }

  .header-menu-area-left {
    grid-area: left;
  }

  .header-menu-area-center {
    grid-area: center;
  }

  .header-menu-area-right {
    grid-area: right;
  }
/* END_SECTION:header-menu */

/* CSS from block stylesheet tags */
/* START_BLOCK:_product-stock-status (INDEX:137) */
/* Default: plain 8px solid dot (used for out-of-stock and when pulse is off) */
  .stockout-dot {
    display: inline-block;
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: var(--dot-color);
  }

  /* In-stock + Low-stock (pulse enabled): 5px wrapper with halo + double radar ring */
  .stockout-dot--in,
  .stockout-dot--low {
    position: relative;
    width: 5px;
    height: 5px;
    background: transparent;
    box-shadow: 0 0 0 3px color-mix(in oklch, var(--dot-color) 20%, transparent);
    transform-origin: center;
  }

  /* Compress dot + halo briefly before each radar ping, as a wind-up */
  .stockout-dot--in {
    animation: stockout-anticipate 3.5s linear infinite;
  }
  .stockout-dot--low {
    animation: stockout-anticipate 7s linear infinite;
  }

  @keyframes stockout-anticipate {
    0%,
    80% {
      transform: scale(1);
      animation-timing-function: ease-in;
    }
    97% {
      transform: scale(0.82);
      animation-timing-function: cubic-bezier(0.2, 0, 0.3, 1);
    }
    100% {
      transform: scale(1);
    }
  }

  /* Solid full-opacity center dot inside in/low wrappers */
  .stockout-dot-core {
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: var(--dot-color);
    z-index: 1;
  }

  /* Staggered double radar ring — two spans pulse out of phase.
     Soft low-opacity fill. */
  .stockout-dot-ring {
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: color-mix(in oklch, var(--dot-color) 20%, transparent);
    animation: stockout-pulse-ring 7s cubic-bezier(0, 0, 0.2, 1) infinite;
    pointer-events: none;
  }

  @keyframes stockout-pulse-ring {
    0% {
      transform: scale(1);
      opacity: 1;
    }
    25% {
      transform: scale(5);
      opacity: 0;
    }
    100% {
      transform: scale(5);
      opacity: 0;
    }
  }

  /* In-stock: second ring at half-cycle offset for a slow continuous wave */
  .stockout-dot--in .stockout-dot-ring--delayed {
    animation-delay: 3.5s;
  }

  /* Low-stock: second ring just behind the first for quick layered urgency */
  .stockout-dot--low .stockout-dot-ring--delayed {
    animation-delay: 200ms;
  }

  @media (prefers-reduced-motion: reduce) {
    .stockout-dot--in,
    .stockout-dot--low,
    .stockout-dot-ring {
      animation: none;
    }
  }
/* END_BLOCK:_product-stock-status */

/* CSS from snippet stylesheet tags */
/* START_SNIPPET:collection-toolbar (INDEX:233) */
@media not all and (min-width: 768px) {
    .collection-toolbar-mobile-sticky {
      position: sticky;
      top: var(--header-bottom);
      z-index: 30;
    }
  }
/* END_SNIPPET:collection-toolbar */

/* START_SNIPPET:header-section (INDEX:322) */
:root {
    --header-bg-opacity: 1;
    --header-auto-border: 1;
    --header-blur-amount: 0px;
    --header-transparent-white-logo-opacity: 0;

    /* Default approximate values until JS kicks in and sets the correct values */

    /* Sum of all of the header rows */
    --header-height: 50px;

    /* Distance from viewport top to bottom of the header */
    --header-bottom: 50px;

    /* Height of the currently sticky rows. 0px when at the top of the page or when no rows are sticky. */
    --header-sticky-offset: 0px;
  }

  /* Default dark header logo opacity */
  header:has([data-header-menu-style='dark']):is(
      [data-header-stuck],
      :hover,
      :focus-within,
      :has([aria-expanded='true']),
      :has(:popover-open),
      :has([data-megamenu-visible])
    ) {
    /* Transparent header selector when stuck, hover, focus, etc */
    --header-transparent-white-logo-opacity: 1;
  }
  header:has([data-header-menu-style='dark']):not([data-overlay-header]) {
    /* Non-transparent header selector - default */
    --header-transparent-white-logo-opacity: 1;
  }

  /* Hover devices */
  @media (hover: hover) {
    /* Blur/solid when header is stuck */
    header[data-header-stuck]:not(
        :has(:hover),
        :focus-within,
        :has([aria-expanded='true']),
        :has(:popover-open),
        :has([data-megamenu-visible])
      )
      [data-sticky-blur] {
      --header-bg-opacity: 0.75;
      --header-blur-amount: 10px;
      --header-auto-border: 1;
    }
  }

  /* Touch devices */
  @media (pointer: coarse) and (hover: none) {
    /* Blur/solid when header is stuck */
    header[data-header-stuck] [data-sticky-blur] {
      --header-bg-opacity: 0.6;
      --header-blur-amount: 10px;
      --header-auto-border: 1;
    }
  }
/* END_SNIPPET:header-section */

/* START_SNIPPET:product-media-thumbnail-picker (INDEX:372) */
.product-media-thumbnail::after {
    content: '';
    position: absolute;
    inset: 0;
    z-index: 20;
    pointer-events: none;
    border-radius: inherit;
    box-shadow:
      inset 0 0 0 0 oklch(var(--content-oklch) / var(--btn-stroke-border-opacity)),
      inset 0 0 0 0 var(--canvas);
    transition: box-shadow 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  }

  .product-media-thumbnail[aria-current='true']::after {
    box-shadow:
      inset 0 0 0 var(--btn-stroke-border-width) oklch(var(--content-oklch) / var(--btn-stroke-border-opacity)),
      inset 0 0 0 calc(var(--btn-stroke-border-width) + 1px) var(--canvas);
  }
/* END_SNIPPET:product-media-thumbnail-picker */