/** Shopify CDN: Minification failed

Line 9:12 Expected identifier but found whitespace
Line 9:13 Unexpected "60"

**/
/* [xo-pfs] {
  --pfs-min: 10; /* default */
  --pfs-max: 60; /* default */
  --min-viewport: 40; /* default */
  --max-viewport: 120; /* default */
  /* calculator */
  --m: (var(--pfs-max) - var(--pfs-min)) /
    (var(--max-viewport) - var(--min-viewport));
  --size: clamp(
    calc(var(--pfs-min) * 1rem),
    calc(
      var(--m) * 100vw + var(--pfs-min) * 1rem - var(--m) * var(--min-viewport) *
        1rem
    ),
    calc(var(--pfs-max) * 1rem)
  );
} */

/* section-announcement-bar */
/* .shopify-section-group-header-group {
  z-index: 99999;
  position: relative;
}

.xo-announcement-bar {
  height: 100%;
  transition: all 0.5s;
}
.xo-announcement-bar .xo-section {
  background-color: color-mix(in srgb, rgba(var(--color-accent)) calc(1 * 100%), transparent);
  
}

.xo-announcement-bar.hidden {
  opacity: 0;
  height: 0;
}

.xo-announcement-bar__body {
  position: relative;
}

.xo-announcement-bar__container {
  height: 100%;
}

.xo-announcement-bar__button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
[dir=ltr] .xo-announcement-bar__button {
  right: 2.4rem;
}
[dir=rtl] .xo-announcement-bar__button {
  left: 2.4rem;
}
@media (min-width: 768px) {
  .xo-announcement-bar__button {
    display: block;
  }
}
.xo-announcement-bar__button:hover .xo-announcement-bar__icon {
  transform: rotate(90deg);
  transition: all 0.3s;
}

.xo-announcement-bar__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  will-change: transform;
}

.xo-announcement-bar__inner {
  width: 100%;
  display: flex;
  justify-content: center;
}
@media (min-width: 768px) {
  .xo-announcement-bar__inner {
    width: var(--carousel-width);
  }
}

.xo-announcement-bar__carousel {
  width: 100%;
}
.xo-announcement-bar__carousel .xo-announcement-text__item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.xo-announcement-bar__carousel-inner {
  margin: 0 3rem;
}

.xo-announcement-bar__prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
}
[dir=ltr] .xo-announcement-bar__prev {
  left: 0;
}
[dir=rtl] .xo-announcement-bar__prev {
  right: 0;
}

.xo-announcement-bar__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
}
[dir=ltr] .xo-announcement-bar__next {
  right: 0;
}
[dir=rtl] .xo-announcement-bar__next {
  left: 0;
}

.xo-announcement-bar__item {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.xo-announcement-bar__item .xo-btn--secondary {
  background-color: color-mix(in srgb, rgba(var(--color-secondary-button)) calc(1 * 100%), transparent);
  color: color-mix(in srgb, rgba(var(--color-secondary-button-text)) calc(1 * 100%), transparent);
}

.xo-announcement-text__item {
  height: 100%;
}

.xo-announcement-bar__marquee .xo-announcement-text__item {
  padding-inline-end: 1.8rem;
}

.xo-announcement-bar__inline {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 1.2rem;
}
@media (min-width: 768px) {
  .xo-announcement-bar__inline {
    flex-direction: row;
    gap: 2rem;
  }
} */


/* ==============stickiness============ */
/* =========================================================
   STICKY HEADER GROUP — full group sticks together
========================================================= */

/* =========================================================
   ALL 3 STICK TOGETHER
========================================================= */
/* #shopify-section-sections--21699797778489__announcement-bar,
#shopify-section-sections--21699797778489__province_announcement_bar_mm8M7h {
  position: sticky;
  top: 0;
  z-index: 99999;
} */

/* Province bar hides on scroll */
/* #shopify-section-sections--21699797778489__province_announcement_bar_mm8M7h {
  transition: max-height 0.4s ease, opacity 0.4s ease;
  overflow: hidden;
  max-height: 60px;
}

body.is-scrolled #shopify-section-sections--21699797778489__province_announcement_bar_mm8M7h {
  max-height: 0;
  opacity: 0;
  pointer-events: none;
} */

/* Warning bar shrinks on scroll */
/* body.is-scrolled #xo-announcement-bar .xo-section {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

body.is-scrolled #xo-announcement-bar .xo-announcement-bar__carousel-inner {
  height: 20px !important;
  overflow: hidden;
} */
 /* TO */
/* body.is-shrunk #xo-announcement-bar .xo-section {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

body.is-shrunk #xo-announcement-bar .xo-announcement-bar__carousel-inner {
  height: 20px !important;
  overflow: hidden;
}
#xo-root {
  overflow-x: clip !important;
  overflow-y: visible !important;
}
body.is-scrolled #xo-announcement-bar .xo-announcement-bar__body {
  font-size: 13px !important;
  line-height: 1.4 !important;
} */

/* =========================================================
   WARNING BAR — shrinks on scroll
========================================================= */
/* #xo-announcement-bar {
  transition: all 0.4s cubic-bezier(0.31, 0.41, 0.38, 0.96);
  overflow: hidden;
}

#xo-announcement-bar .xo-section {
  transition: padding 0.4s cubic-bezier(0.31, 0.41, 0.38, 0.96);
} */

/* body.is-scrolled #xo-announcement-bar .xo-section {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

body.is-scrolled #xo-announcement-bar .xo-announcement-bar__carousel-inner {
  height: 20px !important;
  overflow: hidden;
} */
 /* TO */
/* body.is-shrunk #xo-announcement-bar .xo-section {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

body.is-shrunk #xo-announcement-bar .xo-announcement-bar__carousel-inner {
  height: 20px !important;
  overflow: hidden;
}

body.is-scrolled #xo-announcement-bar .xo-announcement-bar__body {
  font-size: 11px;
} */

/* =========================================================
   PROVINCE BAR — hides on scroll
========================================================= */
/* #xo-province-announcement-bar {
  transition: max-height 0.4s cubic-bezier(0.31, 0.41, 0.38, 0.96),
              opacity 0.4s ease;
  overflow: hidden;
  max-height: 60px;
  opacity: 1;
}

body.is-scrolled #xo-province-announcement-bar {
  max-height: 0 !important;
  opacity: 0;
  pointer-events: none;
} */

/* Warning bar shrinks on scroll */
/* #xo-announcement-bar {
  transition: all 0.4s cubic-bezier(0.31, 0.41, 0.38, 0.96);
} */
/* 
body.is-scrolled #xo-announcement-bar .xo-section {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
} */

/* TO */
/* body.is-shrunk #xo-announcement-bar .xo-announcement-bar__body {
  font-size: 48px !important;
} */

/* body.is-shrunk #xo-announcement-bar .xo-announcement-text__message p {
  font-size: 26px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
} */

/* body.is-shrunk #xo-announcement-bar .xo-announcement-bar__inline {
  gap: 0 !important;
} */
/* #shopify-section-sections--21699797778489__header {
  z-index: 99997 !important;
}

#xo-main-content {
  position: relative;
  z-index: 1;
}
.xo-header--style-1 xo-sticky[xo-is-sticky]:not([xo-is-sticky=false]) .xo-header__container {
  margin-top: 48px;
} */

/* =========================================================
   MOBILE < 430px — just sticky, no shrink
========================================================= */
/* @media (max-width: 480px) {
  body.is-shrunk #xo-announcement-bar .xo-section {
    padding-top: unset !important;
    padding-bottom: unset !important;
  }

  body.is-shrunk #xo-announcement-bar .xo-announcement-text__message p {
    font-size: unset !important;
    white-space: unset !important;
    overflow: unset !important;
    text-overflow: unset !important;
  }

  body.is-shrunk #xo-announcement-bar .xo-announcement-bar__inline {
    gap: unset !important;
  }
} */

/* =========================================================
   SMOOTH SHRINK — scroll threshold increase
========================================================= */
/* #xo-announcement-bar .xo-section {
  transition: padding 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}

#xo-announcement-bar .xo-announcement-text__message p {
  transition: font-size 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
} */
/* Always nowrap — no jump */
/* #xo-announcement-bar .xo-announcement-text__message p {
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  transition: font-size 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
} */

/* When NOT shrunk — show full text */
/* body:not(.is-shrunk) #xo-announcement-bar .xo-announcement-text__message p {
  white-space: normal !important;
  overflow: visible !important;
  font-size: inherit !important;
  transition: font-size 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94) !important;
}
@media (min-width: 481px) and (max-width: 1024px) {
  body.is-shrunk #xo-announcement-bar .xo-announcement-text__message p {
    white-space: normal !important;
    overflow: visible !important;
    text-overflow: unset !important;
    font-size: calc(var(--font-body-scale) * 1.4rem) !important;
  }
} */







[xo-pfs] {
  --pfs-min: 10; /* default */
  --pfs-max: 60; /* default */
  --min-viewport: 40; /* default */
  --max-viewport: 120; /* default */
  /* calculator */
  --m: (var(--pfs-max) - var(--pfs-min)) /
    (var(--max-viewport) - var(--min-viewport));
  --size: clamp(
    calc(var(--pfs-min) * 1rem),
    calc(
      var(--m) * 100vw + var(--pfs-min) * 1rem - var(--m) * var(--min-viewport) *
        1rem
    ),
    calc(var(--pfs-max) * 1rem)
  );
}

/* section-announcement-bar */
.shopify-section-group-header-group {
  z-index: 99999;
  position: relative;
}

.xo-announcement-bar {
  height: 100%;
}
.xo-announcement-bar .xo-section {
  background-color: color-mix(in srgb, rgba(var(--color-accent)) calc(1 * 100%), transparent);
}

.xo-announcement-bar.hidden {
  opacity: 0;
  height: 0;
}

.xo-announcement-bar__body {
  position: relative;
}

.xo-announcement-bar__container {
  height: 100%;
}

.xo-announcement-bar__button {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: none;
}
[dir=ltr] .xo-announcement-bar__button {
  right: 2.4rem;
}
[dir=rtl] .xo-announcement-bar__button {
  left: 2.4rem;
}
@media (min-width: 768px) {
  .xo-announcement-bar__button {
    display: block;
  }
}
.xo-announcement-bar__button:hover .xo-announcement-bar__icon {
  transform: rotate(90deg);
  transition: all 0.3s;
}

.xo-announcement-bar__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  will-change: transform;
}

.xo-announcement-bar__inner {
  width: 100%;
  display: flex;
  justify-content: center;
}
@media (min-width: 768px) {
  .xo-announcement-bar__inner {
    width: var(--carousel-width);
  }
}

.xo-announcement-bar__carousel {
  width: 100%;
}
.xo-announcement-bar__carousel .xo-announcement-text__item {
  display: flex;
  align-items: center;
  justify-content: center;
}

.xo-announcement-bar__carousel-inner {
  margin: 0 3rem;
}

.xo-announcement-bar__prev {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
}
[dir=ltr] .xo-announcement-bar__prev {
  left: 0;
}
[dir=rtl] .xo-announcement-bar__prev {
  right: 0;
}

.xo-announcement-bar__next {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  display: flex;
  align-items: center;
}
[dir=ltr] .xo-announcement-bar__next {
  right: 0;
}
[dir=rtl] .xo-announcement-bar__next {
  left: 0;
}

.xo-announcement-bar__item {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.xo-announcement-bar__item .xo-btn--secondary {
  background-color: color-mix(in srgb, rgba(var(--color-secondary-button)) calc(1 * 100%), transparent);
  color: color-mix(in srgb, rgba(var(--color-secondary-button-text)) calc(1 * 100%), transparent);
}

.xo-announcement-text__item {
  height: 100%;
}

.xo-announcement-bar__marquee .xo-announcement-text__item {
  padding-inline-end: 1.8rem;
}

.xo-announcement-bar__inline {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  flex-wrap: wrap;
  gap: 1.2rem;
}
@media (min-width: 768px) {
  .xo-announcement-bar__inline {
    flex-direction: row;
    gap: 2rem;
  }
}

/* =========================================================
   STICKY HEADER GROUP — full group sticks together
========================================================= */
#shopify-section-sections--21699797778489__announcement-bar,
#shopify-section-sections--21699797778489__province_announcement_bar_mm8M7h {
  position: sticky;
  top: 0;
  z-index: 99999;
}

#xo-root {
  overflow-x: clip !important;
  overflow-y: visible !important;
}

#shopify-section-sections--21699797778489__header {
  z-index: 99997 !important;
}

#xo-main-content {
  position: relative;
  z-index: 1;
}

.xo-header--style-1 xo-sticky[xo-is-sticky]:not([xo-is-sticky=false]) .xo-header__container {
  margin-top: 48px;
}

/* =========================================================
   WARNING BAR — always compact (no shrink animation)
========================================================= */
#xo-announcement-bar .xo-section {
  padding-top: 4px !important;
  padding-bottom: 4px !important;
}

#xo-announcement-bar .xo-announcement-bar__carousel-inner {
  height: 20px !important;
  overflow: hidden;
}

/* =========================================================
   PROVINCE BAR — hides on scroll (unchanged)
========================================================= */
#xo-province-announcement-bar {
  transition: max-height 0.4s cubic-bezier(0.31, 0.41, 0.38, 0.96),
              opacity 0.4s ease;
  overflow: hidden;
  max-height: 60px;
  opacity: 1;
}

body.is-scrolled #xo-province-announcement-bar {
  max-height: 0 !important;
  opacity: 0;
  pointer-events: none;
}

body.is-scrolled #shopify-section-sections--21699797778489__province_announcement_bar_mm8M7h {
  max-height: 0;
  opacity: 0;
  pointer-events: none;
}

#shopify-section-sections--21699797778489__province_announcement_bar_mm8M7h {
  transition: max-height 0.4s ease, opacity 0.4s ease;
  overflow: hidden;
  max-height: 60px;
}


