/** Shopify CDN: Minification failed

Line 2498:2 Expected identifier but found "*"
Line 9906:2 Expected identifier but found "*"
Line 9920:2 Expected identifier but found "*"
Line 22938:0 Unexpected "}"
Line 23252:18 Unexpected "{"
Line 23252:27 Expected ":"
Line 23252:34 Unexpected "{"
Line 23265:18 Unexpected "{"
Line 23265:27 Expected ":"
Line 23273:18 Unexpected "{"
... and 1 more hidden warnings

**/
@charset "UTF-8";
/*! ============================================================================
  Broadcast Theme | (c) Invisible Themes
============================================================================== */
/* ============================================================================
  This file is included for advanced development by
  Shopify Agencies.  Modified versions of the theme
  code are not supported by Shopify or Groupthought.

  In order to use this file you will need to change
  theme.css to theme.dev.css in /templates/theme.liquid
============================================================================== */
/*================ TOOLS ================*/
/**
 * Mixins
 */
/*============================================================================
  Prefix mixin for generating vendor prefixes.
  Based on https://github.com/thoughtbot/bourbon/blob/v4-stable/app/assets/stylesheets/addons/_prefixer.scss

  Usage:
    // Input:
    .element {
      @include prefix(transform, scale(1), ms webkit spec);
    }

    // Output:
    .element {
      -ms-transform: scale(1);
      -webkit-transform: scale(1);
      transform: scale(1);
    }
==============================================================================*/
/*================ Media Query Mixin ================*/
/*================ Responsive Show/Hide Helper ================*/
/*================ Responsive Text Alignment Helper ================*/
/*================ REM Function https://github.com/pierreburel/sass-rem MIT License ================*/
/*================ VARIABLES ================*/
/* ============================================================================
  #Colors

  --STATIC vars have uppercase letters
  --dynamic vars have lowercase letters

  A static var is set in theme settings and doesn't change in any context
  A dynamic var is context dependent and can be overwritten by its wrapper

  This file is primarily concerned with setting the values of dynamic color
  variables depending on which container the text or background is inside.
============================================================================== */
:root {
  --bg: var(--COLOR-BG);
  --bg-accent: var(--COLOR-BG-SECONDARY);
  --bg-accent-lighten: var(--COLOR-BG-SECONDARY-LIGHTEN);
  --text-dark: var(--COLOR-TEXT-DARK);
  --text: var(--COLOR-TEXT);
  --text-light: var(--COLOR-TEXT-LIGHT);
  --text-a35: var(--COLOR-A35);
  --text-a70: var(--COLOR-A70);
  --text-a75: var(--COLOR-A75);
  --text-black: #000;
  --text-white: #FFF;
  --link: var(--COLOR-LINK);
  --link-hover: var(--COLOR-LINK-HOVER);
  --border: var(--COLOR-BORDER);
  --hairline: var(--COLOR-BORDER-HAIRLINE);
  --sale-bg: var(--COLOR-SALE-BG);
  --sale-text: var(--COLOR-SALE-TEXT);
  --sale-text-secondary: var(--COLOR-SALE-TEXT-SECONDARY);
  --contrast: #000;
  --primary: var(--COLOR-PRIMARY);
  --primary-hover: var(--COLOR-PRIMARY-HOVER);
  --primary-fade: var(--COLOR-PRIMARY-FADE);
  --primary-light: var(--COLOR-PRIMARY-LIGHT);
  --primary-opposite: var(--COLOR-PRIMARY-OPPOSITE);
  --success: #56AD6A;
  --success-bg: rgba(86, 173, 106, 0.2);
  --error: var(--COLOR-ERROR);
  --error-bg: var(--COLOR-ERROR-BG);
  --header-overlay-color: transparent;
}

.palette--contrast {
  --text: #000;
  --text-light: #000;
  --text-dark: #000;
  --bg: #FFF;
}

.palette--primary {
  --text: var(--COLOR-PRIMARY);
  --text-light: var(--COLOR-PRIMARY);
  --text-dark: var(--COLOR-PRIMARY);
  --bg: var(--COLOR-PRIMARY-OPPOSITE);
}

.palette--contrast--dark {
  --text: #FFF;
  --text-light: #FFF;
  --text-dark: #F7F7F7;
  --bg: #000;
}

/*============================================================================
  Grid Breakpoints and Class Names
    - Do not change the variable names
==============================================================================*/
/*============================================================================
  Generate breakpoint-specific column widths and push classes
    - Default column widths: $breakpoint-has-widths: ($small, $medium-up);
    - Default is no push classes
    - Will not work if `styles/global/grid.scss` is removed
==============================================================================*/
/*============================================================================
  Generate breakpoint-specific column widths and push classes
    - Default column widths: $breakpoint-has-widths: ($small, $medium-up);
    - Default is no push classes
    - Will not work if `styles/global/grid.scss` is removed
==============================================================================*/
/*================ VENDOR ================*/
/*! Flickity v3.0.0
https://flickity.metafizzy.co
---------------------------------------------- */
.flickity-enabled {
  position: relative;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.is-initialized .flickity-viewport {
  transition: height 0.3s;
}

.flickity-slider {
  position: absolute;
  left: 0;
  width: 100%;
  height: 100%;
  touch-action: pan-y;
  -webkit-user-select: none;
  -webkit-user-drag: none;
}

.flickity-slider > .flickity-cell {
  position: absolute;
}

/* -- Fixes slide effects with iOS 13+ -- */
.flickity-viewport {
  touch-action: pan-y;
}

.flickity-cell {
  position: absolute;
  left: 0;
}

/* draggable */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  border: none;
  background: none;
  color: inherit;
}

.flickity-button-hide .flickity-button {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.flickity-button:hover {
  cursor: pointer;
}

body:not(.is-focused) .flickity-button:focus {
  outline: none;
}

.flickity-button:active {
  opacity: 1;
}

.flickity-button:disabled {
  opacity: 0;
  cursor: auto;
  visibility: hidden;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  --icon-size: 28px;
  --btn-size: 40px;
  top: 50%;
  width: var(--btn-size);
  height: var(--btn-size);
  padding: 0;
  background-color: var(--COLOR-BG);
  border-radius: var(--RADIUS);
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.04), 0 2px 2px rgba(0, 0, 0, 0.02);
  /* vertically center */
  margin-top: calc(var(--btn-size) / -2);
}
@media only screen and (max-width: 749px) {
  .flickity-prev-next-button {
    display: none;
  }
}

.flickity-prev-next-button:after {
  content: "";
  position: absolute;
  top: 0;
  left: -60px;
  z-index: -1;
  width: calc(100% + 120px);
  height: 100%;
  background-color: var(--COLOR-BG-BRIGHTER);
  opacity: 1;
  transform: translate3d(-100%, 0, 0) skew(30deg);
  transition: transform 0.5s cubic-bezier(0.33, 0, 0, 1);
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

@media (hover: hover) {
  .flickity-prev-next-button {
    opacity: 0;
    transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out, visibility 0.2s;
  }

  .flickity-prev-next-button.previous {
    transform: translateX(-100%);
  }

  .flickity-prev-next-button.next {
    transform: translateX(100%);
  }

  .flickity-prev-next-button:hover:after {
    transform: translateZ(0);
  }

  .flickity-enabled:hover .flickity-prev-next-button.previous:not(:disabled),
.flickity-enabled:hover .flickity-prev-next-button.next:not(:disabled),
.is-focused .flickity-prev-next-button.previous:not(:disabled):focus,
.is-focused .flickity-prev-next-button.next:not(:disabled):focus {
    opacity: 1;
    transform: translateZ(0);
  }
}
.flickity-prev-next-button:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: var(--icon-size);
  height: var(--icon-size);
  background: var(--COLOR-TEXT);
  -webkit-mask-size: var(--icon-size);
          mask-size: var(--icon-size);
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
  max-width: 100%;
  max-height: 100%;
  border-radius: var(--RADIUS);
}

.flickity-prev-next-button {
  overflow: hidden;
}

.flickity-prev-next-button.previous:before {
  -webkit-mask-image: var(--ICON-ARROW-LEFT);
          mask-image: var(--ICON-ARROW-LEFT);
}

.flickity-prev-next-button.next:before {
  -webkit-mask-image: var(--ICON-ARROW-RIGHT);
          mask-image: var(--ICON-ARROW-RIGHT);
}

.flickity-button-icon {
  display: none;
}

.flickity-prev-next-button.previous {
  left: max(var(--outer), calc(var(--btn-size) / 2));
}

.flickity-prev-next-button.next {
  right: max(var(--outer), calc(var(--btn-size) / 2));
}

.is-focused .flickity-prev-next-button {
  transition: opacity 0.2s ease-in-out;
}

/* right to left */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: max(var(--outer), calc(var(--btn-size) / 2));
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: max(var(--outer), calc(var(--btn-size) / 2));
}

/* ---- page dots ---- */
.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  justify-content: var(--alignment-text-align, center);
  line-height: 1;
  display: flex;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dot {
  display: block;
  width: 10px;
  height: 10px;
  padding: 0;
  margin: 0 5px;
  border: 1px solid var(--text);
  border-radius: 50%;
  font-size: 0;
  line-height: 0;
  text-indent: -100%;
  font-style: normal;
  overflow: hidden;
  cursor: pointer;
}

.flickity-page-dot:first-child {
  margin-left: 0;
}

.flickity-page-dot:last-child {
  margin-right: 0;
}

.flickity-page-dot:only-child {
  display: none;
}

.flickity-page-dot.is-selected {
  background: var(--text);
}

[data-dots=line] .flickity-page-dot {
  width: 40px;
  height: 2px;
  border-radius: initial;
  opacity: 0.25;
  background: currentColor;
}

[data-dots=line] .flickity-page-dot.is-selected {
  opacity: 1;
}

[data-dots=hidden] .flickity-page-dot {
  display: none;
}

/* flickity-fade */
.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

/* Flickity Resize */
.flickity-resize .flickity-slider > * {
  min-height: 100%;
}

.flickity-resizing .flickity-slider > * {
  min-height: 0;
}

/* Flickty overwrite */
.is-fade .flickity-cell {
  opacity: 0 !important;
  visibility: hidden;
  transition: opacity 0.8s ease, visibility 0.8s;
  will-change: transform, opacity;
}

.is-fade .flickity-cell.is-selected {
  opacity: 1 !important;
  visibility: visible;
}

@media only screen and (min-width: 750px) {
  [data-slider-desktop]:after {
    content: "flickity";
    display: none;
  }

  [data-slider]:not([data-slider-fullwidth]):not(.flickity-enabled) {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  [data-slider]:not([data-slider-fullwidth]):not(.flickity-enabled)::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }

  .grid-outer [data-slider]:not([data-slider-fullwidth]):not(.flickity-enabled) {
    padding-left: var(--outer);
    padding-right: var(--outer);
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
  }
}
.aos-initialized [data-aos][data-aos][data-aos-duration="50"], .aos-initialized body[data-aos-duration="50"] [data-aos] {
  transition-duration: 50ms;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="50"], .aos-initialized body[data-aos-delay="50"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="50"].aos-animate, .aos-initialized body[data-aos-delay="50"] [data-aos].aos-animate {
  transition-delay: 50ms;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="100"], .aos-initialized body[data-aos-duration="100"] [data-aos] {
  transition-duration: 0.1s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="100"], .aos-initialized body[data-aos-delay="100"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="100"].aos-animate, .aos-initialized body[data-aos-delay="100"] [data-aos].aos-animate {
  transition-delay: 0.1s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="150"], .aos-initialized body[data-aos-duration="150"] [data-aos] {
  transition-duration: 0.15s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="150"], .aos-initialized body[data-aos-delay="150"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="150"].aos-animate, .aos-initialized body[data-aos-delay="150"] [data-aos].aos-animate {
  transition-delay: 0.15s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="200"], .aos-initialized body[data-aos-duration="200"] [data-aos] {
  transition-duration: 0.2s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="200"], .aos-initialized body[data-aos-delay="200"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="200"].aos-animate, .aos-initialized body[data-aos-delay="200"] [data-aos].aos-animate {
  transition-delay: 0.2s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="250"], .aos-initialized body[data-aos-duration="250"] [data-aos] {
  transition-duration: 0.25s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="250"], .aos-initialized body[data-aos-delay="250"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="250"].aos-animate, .aos-initialized body[data-aos-delay="250"] [data-aos].aos-animate {
  transition-delay: 0.25s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="300"], .aos-initialized body[data-aos-duration="300"] [data-aos] {
  transition-duration: 0.3s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="300"], .aos-initialized body[data-aos-delay="300"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="300"].aos-animate, .aos-initialized body[data-aos-delay="300"] [data-aos].aos-animate {
  transition-delay: 0.3s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="350"], .aos-initialized body[data-aos-duration="350"] [data-aos] {
  transition-duration: 0.35s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="350"], .aos-initialized body[data-aos-delay="350"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="350"].aos-animate, .aos-initialized body[data-aos-delay="350"] [data-aos].aos-animate {
  transition-delay: 0.35s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="400"], .aos-initialized body[data-aos-duration="400"] [data-aos] {
  transition-duration: 0.4s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="400"], .aos-initialized body[data-aos-delay="400"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="400"].aos-animate, .aos-initialized body[data-aos-delay="400"] [data-aos].aos-animate {
  transition-delay: 0.4s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="450"], .aos-initialized body[data-aos-duration="450"] [data-aos] {
  transition-duration: 0.45s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="450"], .aos-initialized body[data-aos-delay="450"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="450"].aos-animate, .aos-initialized body[data-aos-delay="450"] [data-aos].aos-animate {
  transition-delay: 0.45s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="500"], .aos-initialized body[data-aos-duration="500"] [data-aos] {
  transition-duration: 0.5s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="500"], .aos-initialized body[data-aos-delay="500"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="500"].aos-animate, .aos-initialized body[data-aos-delay="500"] [data-aos].aos-animate {
  transition-delay: 0.5s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="550"], .aos-initialized body[data-aos-duration="550"] [data-aos] {
  transition-duration: 0.55s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="550"], .aos-initialized body[data-aos-delay="550"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="550"].aos-animate, .aos-initialized body[data-aos-delay="550"] [data-aos].aos-animate {
  transition-delay: 0.55s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="600"], .aos-initialized body[data-aos-duration="600"] [data-aos] {
  transition-duration: 0.6s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="600"], .aos-initialized body[data-aos-delay="600"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="600"].aos-animate, .aos-initialized body[data-aos-delay="600"] [data-aos].aos-animate {
  transition-delay: 0.6s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="650"], .aos-initialized body[data-aos-duration="650"] [data-aos] {
  transition-duration: 0.65s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="650"], .aos-initialized body[data-aos-delay="650"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="650"].aos-animate, .aos-initialized body[data-aos-delay="650"] [data-aos].aos-animate {
  transition-delay: 0.65s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="700"], .aos-initialized body[data-aos-duration="700"] [data-aos] {
  transition-duration: 0.7s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="700"], .aos-initialized body[data-aos-delay="700"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="700"].aos-animate, .aos-initialized body[data-aos-delay="700"] [data-aos].aos-animate {
  transition-delay: 0.7s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="750"], .aos-initialized body[data-aos-duration="750"] [data-aos] {
  transition-duration: 0.75s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="750"], .aos-initialized body[data-aos-delay="750"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="750"].aos-animate, .aos-initialized body[data-aos-delay="750"] [data-aos].aos-animate {
  transition-delay: 0.75s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="800"], .aos-initialized body[data-aos-duration="800"] [data-aos] {
  transition-duration: 0.8s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="800"], .aos-initialized body[data-aos-delay="800"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="800"].aos-animate, .aos-initialized body[data-aos-delay="800"] [data-aos].aos-animate {
  transition-delay: 0.8s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="850"], .aos-initialized body[data-aos-duration="850"] [data-aos] {
  transition-duration: 0.85s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="850"], .aos-initialized body[data-aos-delay="850"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="850"].aos-animate, .aos-initialized body[data-aos-delay="850"] [data-aos].aos-animate {
  transition-delay: 0.85s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="900"], .aos-initialized body[data-aos-duration="900"] [data-aos] {
  transition-duration: 0.9s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="900"], .aos-initialized body[data-aos-delay="900"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="900"].aos-animate, .aos-initialized body[data-aos-delay="900"] [data-aos].aos-animate {
  transition-delay: 0.9s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="950"], .aos-initialized body[data-aos-duration="950"] [data-aos] {
  transition-duration: 0.95s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="950"], .aos-initialized body[data-aos-delay="950"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="950"].aos-animate, .aos-initialized body[data-aos-delay="950"] [data-aos].aos-animate {
  transition-delay: 0.95s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1000"], .aos-initialized body[data-aos-duration="1000"] [data-aos] {
  transition-duration: 1s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1000"], .aos-initialized body[data-aos-delay="1000"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1000"].aos-animate, .aos-initialized body[data-aos-delay="1000"] [data-aos].aos-animate {
  transition-delay: 1s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1050"], .aos-initialized body[data-aos-duration="1050"] [data-aos] {
  transition-duration: 1.05s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1050"], .aos-initialized body[data-aos-delay="1050"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1050"].aos-animate, .aos-initialized body[data-aos-delay="1050"] [data-aos].aos-animate {
  transition-delay: 1.05s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1100"], .aos-initialized body[data-aos-duration="1100"] [data-aos] {
  transition-duration: 1.1s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1100"], .aos-initialized body[data-aos-delay="1100"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1100"].aos-animate, .aos-initialized body[data-aos-delay="1100"] [data-aos].aos-animate {
  transition-delay: 1.1s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1150"], .aos-initialized body[data-aos-duration="1150"] [data-aos] {
  transition-duration: 1.15s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1150"], .aos-initialized body[data-aos-delay="1150"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1150"].aos-animate, .aos-initialized body[data-aos-delay="1150"] [data-aos].aos-animate {
  transition-delay: 1.15s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1200"], .aos-initialized body[data-aos-duration="1200"] [data-aos] {
  transition-duration: 1.2s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1200"], .aos-initialized body[data-aos-delay="1200"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1200"].aos-animate, .aos-initialized body[data-aos-delay="1200"] [data-aos].aos-animate {
  transition-delay: 1.2s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1250"], .aos-initialized body[data-aos-duration="1250"] [data-aos] {
  transition-duration: 1.25s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1250"], .aos-initialized body[data-aos-delay="1250"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1250"].aos-animate, .aos-initialized body[data-aos-delay="1250"] [data-aos].aos-animate {
  transition-delay: 1.25s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1300"], .aos-initialized body[data-aos-duration="1300"] [data-aos] {
  transition-duration: 1.3s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1300"], .aos-initialized body[data-aos-delay="1300"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1300"].aos-animate, .aos-initialized body[data-aos-delay="1300"] [data-aos].aos-animate {
  transition-delay: 1.3s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1350"], .aos-initialized body[data-aos-duration="1350"] [data-aos] {
  transition-duration: 1.35s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1350"], .aos-initialized body[data-aos-delay="1350"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1350"].aos-animate, .aos-initialized body[data-aos-delay="1350"] [data-aos].aos-animate {
  transition-delay: 1.35s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1400"], .aos-initialized body[data-aos-duration="1400"] [data-aos] {
  transition-duration: 1.4s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1400"], .aos-initialized body[data-aos-delay="1400"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1400"].aos-animate, .aos-initialized body[data-aos-delay="1400"] [data-aos].aos-animate {
  transition-delay: 1.4s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1450"], .aos-initialized body[data-aos-duration="1450"] [data-aos] {
  transition-duration: 1.45s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1450"], .aos-initialized body[data-aos-delay="1450"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1450"].aos-animate, .aos-initialized body[data-aos-delay="1450"] [data-aos].aos-animate {
  transition-delay: 1.45s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1500"], .aos-initialized body[data-aos-duration="1500"] [data-aos] {
  transition-duration: 1.5s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1500"], .aos-initialized body[data-aos-delay="1500"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1500"].aos-animate, .aos-initialized body[data-aos-delay="1500"] [data-aos].aos-animate {
  transition-delay: 1.5s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1550"], .aos-initialized body[data-aos-duration="1550"] [data-aos] {
  transition-duration: 1.55s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1550"], .aos-initialized body[data-aos-delay="1550"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1550"].aos-animate, .aos-initialized body[data-aos-delay="1550"] [data-aos].aos-animate {
  transition-delay: 1.55s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1600"], .aos-initialized body[data-aos-duration="1600"] [data-aos] {
  transition-duration: 1.6s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1600"], .aos-initialized body[data-aos-delay="1600"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1600"].aos-animate, .aos-initialized body[data-aos-delay="1600"] [data-aos].aos-animate {
  transition-delay: 1.6s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1650"], .aos-initialized body[data-aos-duration="1650"] [data-aos] {
  transition-duration: 1.65s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1650"], .aos-initialized body[data-aos-delay="1650"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1650"].aos-animate, .aos-initialized body[data-aos-delay="1650"] [data-aos].aos-animate {
  transition-delay: 1.65s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1700"], .aos-initialized body[data-aos-duration="1700"] [data-aos] {
  transition-duration: 1.7s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1700"], .aos-initialized body[data-aos-delay="1700"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1700"].aos-animate, .aos-initialized body[data-aos-delay="1700"] [data-aos].aos-animate {
  transition-delay: 1.7s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1750"], .aos-initialized body[data-aos-duration="1750"] [data-aos] {
  transition-duration: 1.75s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1750"], .aos-initialized body[data-aos-delay="1750"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1750"].aos-animate, .aos-initialized body[data-aos-delay="1750"] [data-aos].aos-animate {
  transition-delay: 1.75s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1800"], .aos-initialized body[data-aos-duration="1800"] [data-aos] {
  transition-duration: 1.8s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1800"], .aos-initialized body[data-aos-delay="1800"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1800"].aos-animate, .aos-initialized body[data-aos-delay="1800"] [data-aos].aos-animate {
  transition-delay: 1.8s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1850"], .aos-initialized body[data-aos-duration="1850"] [data-aos] {
  transition-duration: 1.85s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1850"], .aos-initialized body[data-aos-delay="1850"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1850"].aos-animate, .aos-initialized body[data-aos-delay="1850"] [data-aos].aos-animate {
  transition-delay: 1.85s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1900"], .aos-initialized body[data-aos-duration="1900"] [data-aos] {
  transition-duration: 1.9s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1900"], .aos-initialized body[data-aos-delay="1900"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1900"].aos-animate, .aos-initialized body[data-aos-delay="1900"] [data-aos].aos-animate {
  transition-delay: 1.9s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="1950"], .aos-initialized body[data-aos-duration="1950"] [data-aos] {
  transition-duration: 1.95s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1950"], .aos-initialized body[data-aos-delay="1950"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="1950"].aos-animate, .aos-initialized body[data-aos-delay="1950"] [data-aos].aos-animate {
  transition-delay: 1.95s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2000"], .aos-initialized body[data-aos-duration="2000"] [data-aos] {
  transition-duration: 2s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2000"], .aos-initialized body[data-aos-delay="2000"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2000"].aos-animate, .aos-initialized body[data-aos-delay="2000"] [data-aos].aos-animate {
  transition-delay: 2s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2050"], .aos-initialized body[data-aos-duration="2050"] [data-aos] {
  transition-duration: 2.05s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2050"], .aos-initialized body[data-aos-delay="2050"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2050"].aos-animate, .aos-initialized body[data-aos-delay="2050"] [data-aos].aos-animate {
  transition-delay: 2.05s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2100"], .aos-initialized body[data-aos-duration="2100"] [data-aos] {
  transition-duration: 2.1s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2100"], .aos-initialized body[data-aos-delay="2100"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2100"].aos-animate, .aos-initialized body[data-aos-delay="2100"] [data-aos].aos-animate {
  transition-delay: 2.1s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2150"], .aos-initialized body[data-aos-duration="2150"] [data-aos] {
  transition-duration: 2.15s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2150"], .aos-initialized body[data-aos-delay="2150"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2150"].aos-animate, .aos-initialized body[data-aos-delay="2150"] [data-aos].aos-animate {
  transition-delay: 2.15s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2200"], .aos-initialized body[data-aos-duration="2200"] [data-aos] {
  transition-duration: 2.2s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2200"], .aos-initialized body[data-aos-delay="2200"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2200"].aos-animate, .aos-initialized body[data-aos-delay="2200"] [data-aos].aos-animate {
  transition-delay: 2.2s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2250"], .aos-initialized body[data-aos-duration="2250"] [data-aos] {
  transition-duration: 2.25s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2250"], .aos-initialized body[data-aos-delay="2250"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2250"].aos-animate, .aos-initialized body[data-aos-delay="2250"] [data-aos].aos-animate {
  transition-delay: 2.25s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2300"], .aos-initialized body[data-aos-duration="2300"] [data-aos] {
  transition-duration: 2.3s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2300"], .aos-initialized body[data-aos-delay="2300"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2300"].aos-animate, .aos-initialized body[data-aos-delay="2300"] [data-aos].aos-animate {
  transition-delay: 2.3s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2350"], .aos-initialized body[data-aos-duration="2350"] [data-aos] {
  transition-duration: 2.35s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2350"], .aos-initialized body[data-aos-delay="2350"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2350"].aos-animate, .aos-initialized body[data-aos-delay="2350"] [data-aos].aos-animate {
  transition-delay: 2.35s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2400"], .aos-initialized body[data-aos-duration="2400"] [data-aos] {
  transition-duration: 2.4s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2400"], .aos-initialized body[data-aos-delay="2400"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2400"].aos-animate, .aos-initialized body[data-aos-delay="2400"] [data-aos].aos-animate {
  transition-delay: 2.4s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2450"], .aos-initialized body[data-aos-duration="2450"] [data-aos] {
  transition-duration: 2.45s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2450"], .aos-initialized body[data-aos-delay="2450"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2450"].aos-animate, .aos-initialized body[data-aos-delay="2450"] [data-aos].aos-animate {
  transition-delay: 2.45s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2500"], .aos-initialized body[data-aos-duration="2500"] [data-aos] {
  transition-duration: 2.5s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2500"], .aos-initialized body[data-aos-delay="2500"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2500"].aos-animate, .aos-initialized body[data-aos-delay="2500"] [data-aos].aos-animate {
  transition-delay: 2.5s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2550"], .aos-initialized body[data-aos-duration="2550"] [data-aos] {
  transition-duration: 2.55s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2550"], .aos-initialized body[data-aos-delay="2550"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2550"].aos-animate, .aos-initialized body[data-aos-delay="2550"] [data-aos].aos-animate {
  transition-delay: 2.55s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2600"], .aos-initialized body[data-aos-duration="2600"] [data-aos] {
  transition-duration: 2.6s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2600"], .aos-initialized body[data-aos-delay="2600"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2600"].aos-animate, .aos-initialized body[data-aos-delay="2600"] [data-aos].aos-animate {
  transition-delay: 2.6s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2650"], .aos-initialized body[data-aos-duration="2650"] [data-aos] {
  transition-duration: 2.65s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2650"], .aos-initialized body[data-aos-delay="2650"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2650"].aos-animate, .aos-initialized body[data-aos-delay="2650"] [data-aos].aos-animate {
  transition-delay: 2.65s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2700"], .aos-initialized body[data-aos-duration="2700"] [data-aos] {
  transition-duration: 2.7s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2700"], .aos-initialized body[data-aos-delay="2700"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2700"].aos-animate, .aos-initialized body[data-aos-delay="2700"] [data-aos].aos-animate {
  transition-delay: 2.7s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2750"], .aos-initialized body[data-aos-duration="2750"] [data-aos] {
  transition-duration: 2.75s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2750"], .aos-initialized body[data-aos-delay="2750"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2750"].aos-animate, .aos-initialized body[data-aos-delay="2750"] [data-aos].aos-animate {
  transition-delay: 2.75s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2800"], .aos-initialized body[data-aos-duration="2800"] [data-aos] {
  transition-duration: 2.8s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2800"], .aos-initialized body[data-aos-delay="2800"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2800"].aos-animate, .aos-initialized body[data-aos-delay="2800"] [data-aos].aos-animate {
  transition-delay: 2.8s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2850"], .aos-initialized body[data-aos-duration="2850"] [data-aos] {
  transition-duration: 2.85s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2850"], .aos-initialized body[data-aos-delay="2850"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2850"].aos-animate, .aos-initialized body[data-aos-delay="2850"] [data-aos].aos-animate {
  transition-delay: 2.85s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2900"], .aos-initialized body[data-aos-duration="2900"] [data-aos] {
  transition-duration: 2.9s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2900"], .aos-initialized body[data-aos-delay="2900"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2900"].aos-animate, .aos-initialized body[data-aos-delay="2900"] [data-aos].aos-animate {
  transition-delay: 2.9s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="2950"], .aos-initialized body[data-aos-duration="2950"] [data-aos] {
  transition-duration: 2.95s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2950"], .aos-initialized body[data-aos-delay="2950"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="2950"].aos-animate, .aos-initialized body[data-aos-delay="2950"] [data-aos].aos-animate {
  transition-delay: 2.95s;
}
.aos-initialized [data-aos][data-aos][data-aos-duration="3000"], .aos-initialized body[data-aos-duration="3000"] [data-aos] {
  transition-duration: 3s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="3000"], .aos-initialized body[data-aos-delay="3000"] [data-aos] {
  transition-delay: 0s;
}
.aos-initialized [data-aos][data-aos][data-aos-delay="3000"].aos-animate, .aos-initialized body[data-aos-delay="3000"] [data-aos].aos-animate {
  transition-delay: 3s;
}
.aos-initialized [data-aos][data-aos][data-aos-easing=linear], .aos-initialized body[data-aos-easing=linear] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease], .aos-initialized body[data-aos-easing=ease] [data-aos] {
  transition-timing-function: ease;
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in], .aos-initialized body[data-aos-easing=ease-in] [data-aos] {
  transition-timing-function: ease-in;
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out], .aos-initialized body[data-aos-easing=ease-out] [data-aos] {
  transition-timing-function: ease-out;
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out], .aos-initialized body[data-aos-easing=ease-in-out] [data-aos] {
  transition-timing-function: ease-in-out;
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-back], .aos-initialized body[data-aos-easing=ease-in-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-back], .aos-initialized body[data-aos-easing=ease-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-back], .aos-initialized body[data-aos-easing=ease-in-out-back] [data-aos] {
  transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-sine], .aos-initialized body[data-aos-easing=ease-in-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-sine], .aos-initialized body[data-aos-easing=ease-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-sine], .aos-initialized body[data-aos-easing=ease-in-out-sine] [data-aos] {
  transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-quad], .aos-initialized body[data-aos-easing=ease-in-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-quad], .aos-initialized body[data-aos-easing=ease-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-quad], .aos-initialized body[data-aos-easing=ease-in-out-quad] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-cubic], .aos-initialized body[data-aos-easing=ease-in-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-cubic], .aos-initialized body[data-aos-easing=ease-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-cubic], .aos-initialized body[data-aos-easing=ease-in-out-cubic] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-quart], .aos-initialized body[data-aos-easing=ease-in-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-out-quart], .aos-initialized body[data-aos-easing=ease-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}
.aos-initialized [data-aos][data-aos][data-aos-easing=ease-in-out-quart], .aos-initialized body[data-aos-easing=ease-in-out-quart] [data-aos] {
  transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.aos-initialized [data-aos^=fade][data-aos^=fade] {
  opacity: 0;
  transition-property: opacity, transform;
}
.aos-initialized [data-aos^=fade][data-aos^=fade].aos-animate {
  opacity: 1;
  transform: translateZ(0);
}
.aos-initialized [data-aos=fade-up] {
  transform: translateY(50px);
}
.aos-initialized [data-aos=fade-down] {
  transform: translateY(-50px);
}
.aos-initialized [data-aos=fade-right] {
  transform: translate(-50px);
}
.aos-initialized [data-aos=fade-left] {
  transform: translate(50px);
}
.aos-initialized [data-aos=fade-up-right] {
  transform: translate(-50px, 50px);
}
.aos-initialized [data-aos=fade-up-left] {
  transform: translate(50px, 50px);
}
.aos-initialized [data-aos=fade-down-right] {
  transform: translate(-50px, -50px);
}
.aos-initialized [data-aos=fade-down-left] {
  transform: translate(50px, -50px);
}
.aos-initialized [data-aos^=zoom][data-aos^=zoom] {
  opacity: 0;
  transition-property: opacity, transform;
}
.aos-initialized [data-aos^=zoom][data-aos^=zoom].aos-animate {
  opacity: 1;
  transform: translateZ(0) scale(1);
}
.aos-initialized [data-aos=zoom-in] {
  transform: scale(0.6);
}
.aos-initialized [data-aos=zoom-in-up] {
  transform: translateY(50px) scale(0.6);
}
.aos-initialized [data-aos=zoom-in-down] {
  transform: translateY(-50px) scale(0.6);
}
.aos-initialized [data-aos=zoom-in-right] {
  transform: translate(-50px) scale(0.6);
}
.aos-initialized [data-aos=zoom-in-left] {
  transform: translate(50px) scale(0.6);
}
.aos-initialized [data-aos=zoom-out] {
  transform: scale(1.2);
}
.aos-initialized [data-aos=zoom-out-up] {
  transform: translateY(50px) scale(1.2);
}
.aos-initialized [data-aos=zoom-out-down] {
  transform: translateY(-50px) scale(1.2);
}
.aos-initialized [data-aos=zoom-out-right] {
  transform: translate(-50px) scale(1.2);
}
.aos-initialized [data-aos=zoom-out-left] {
  transform: translate(50px) scale(1.2);
}
.aos-initialized [data-aos^=slide][data-aos^=slide] {
  transition-property: transform;
}
.aos-initialized [data-aos^=slide][data-aos^=slide].aos-animate {
  transform: translateZ(0);
}
.aos-initialized [data-aos=slide-up] {
  transform: translateY(100%);
}
.aos-initialized [data-aos=slide-down] {
  transform: translateY(-100%);
}
.aos-initialized [data-aos=slide-right] {
  transform: translateX(-100%);
}
.aos-initialized [data-aos=slide-left] {
  transform: translateX(100%);
}
.aos-initialized [data-aos^=flip][data-aos^=flip] {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition-property: transform;
}
.aos-initialized [data-aos=flip-left] {
  transform: perspective(2500px) rotateY(-100deg);
}
.aos-initialized [data-aos=flip-left].aos-animate {
  transform: perspective(2500px) rotateY(0);
}
.aos-initialized [data-aos=flip-right] {
  transform: perspective(2500px) rotateY(100deg);
}
.aos-initialized [data-aos=flip-right].aos-animate {
  transform: perspective(2500px) rotateY(0);
}
.aos-initialized [data-aos=flip-up] {
  transform: perspective(2500px) rotateX(-100deg);
}
.aos-initialized [data-aos=flip-up].aos-animate {
  transform: perspective(2500px) rotateX(0);
}
.aos-initialized [data-aos=flip-down] {
  transform: perspective(2500px) rotateX(100deg);
}
.aos-initialized [data-aos=flip-down].aos-animate {
  transform: perspective(2500px) rotateX(0);
}
.aos-initialized [data-aos=img-in] {
  opacity: 0;
  transform: scale(1.06);
  transition-duration: 0.5s;
  transition-property: transform, opacity;
}
.aos-initialized [data-aos=img-in].lazy-image.is-loading {
  opacity: 1;
}
.aos-initialized [data-aos=img-in].aos-animate {
  opacity: 1;
  transform: translateZ(0);
}
.aos-initialized [data-aos=fade] {
  opacity: 0;
  transition-property: opacity;
}
.aos-initialized [data-aos=fade].aos-animate {
  opacity: 1;
}
.aos-initialized [data-aos][data-aos][data-aos-order="1"] {
  animation-delay: 0ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="2"] {
  animation-delay: 150ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="3"] {
  animation-delay: 300ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="4"] {
  animation-delay: 450ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="5"] {
  animation-delay: 600ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="6"] {
  animation-delay: 750ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="7"] {
  animation-delay: 900ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="8"] {
  animation-delay: 1050ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="9"] {
  animation-delay: 1200ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="10"] {
  animation-delay: 1350ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="11"] {
  animation-delay: 1500ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="12"] {
  animation-delay: 1650ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="13"] {
  animation-delay: 1800ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="14"] {
  animation-delay: 1950ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="15"] {
  animation-delay: 2100ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="16"] {
  animation-delay: 2250ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="17"] {
  animation-delay: 2400ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="18"] {
  animation-delay: 2550ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="19"] {
  animation-delay: 2700ms;
}
.aos-initialized [data-aos][data-aos][data-aos-order="20"] {
  animation-delay: 2850ms;
}
.aos-initialized [data-aos=hero] {
  opacity: 0;
  will-change: transform, opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform: translateZ(0);
}
.no-js .aos-initialized [data-aos=hero] {
  opacity: 1;
}
.aos-initialized [data-aos=hero].aos-animate {
  animation-name: heroFade;
  animation-duration: 1s;
  animation-fill-mode: both;
}
.aos-initialized .aos-no-transition {
  transition: none !important;
}

@keyframes heroFade {
  from {
    opacity: 0;
    transform: translate3d(0, 15px, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 0, 0);
  }
}
@keyframes dash {
  from {
    stroke-dashoffset: 100;
  }
  to {
    stroke-dashoffset: 0;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    opacity: 0;
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 1;
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    transform: translate3d(0, 0, 0);
  }
  to {
    transform: translate3d(0, 100%, 0);
  }
}
@media only screen and (max-width: 749px) {
  html.iframe [data-aos]:not([data-aos=hero]) {
    opacity: 1 !important;
    transform: none !important;
  }
}

/*===== Custom theme animations =====*/
.aos-initialized [data-animation-delay] {
  animation-delay: calc(0ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="50"] {
  animation-delay: calc(50ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="100"] {
  animation-delay: calc(100ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="150"] {
  animation-delay: calc(150ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="200"] {
  animation-delay: calc(200ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="250"] {
  animation-delay: calc(250ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="300"] {
  animation-delay: calc(300ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="350"] {
  animation-delay: calc(350ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="400"] {
  animation-delay: calc(400ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="450"] {
  animation-delay: calc(450ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="500"] {
  animation-delay: calc(500ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="550"] {
  animation-delay: calc(550ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="600"] {
  animation-delay: calc(600ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="650"] {
  animation-delay: calc(650ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="700"] {
  animation-delay: calc(700ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="750"] {
  animation-delay: calc(750ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="800"] {
  animation-delay: calc(800ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="850"] {
  animation-delay: calc(850ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="900"] {
  animation-delay: calc(900ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="950"] {
  animation-delay: calc(950ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1000"] {
  animation-delay: calc(1000ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1050"] {
  animation-delay: calc(1050ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1100"] {
  animation-delay: calc(1100ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1150"] {
  animation-delay: calc(1150ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1200"] {
  animation-delay: calc(1200ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1250"] {
  animation-delay: calc(1250ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1300"] {
  animation-delay: calc(1300ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1350"] {
  animation-delay: calc(1350ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1400"] {
  animation-delay: calc(1400ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1450"] {
  animation-delay: calc(1450ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-delay="1500"] {
  animation-delay: calc(1500ms + var(--base-animation-delay));
}
.aos-initialized [data-animation-duration] {
  animation-duration: 500ms;
}
.aos-initialized [data-animation-duration="100"] {
  animation-duration: 100ms;
}
.aos-initialized [data-animation-duration="200"] {
  animation-duration: 200ms;
}
.aos-initialized [data-animation-duration="300"] {
  animation-duration: 300ms;
}
.aos-initialized [data-animation-duration="400"] {
  animation-duration: 400ms;
}
.aos-initialized [data-animation-duration="500"] {
  animation-duration: 500ms;
}
.aos-initialized [data-animation-duration="600"] {
  animation-duration: 600ms;
}
.aos-initialized [data-animation-duration="700"] {
  animation-duration: 700ms;
}
.aos-initialized [data-animation-duration="800"] {
  animation-duration: 800ms;
}
.aos-initialized [data-animation-duration="900"] {
  animation-duration: 900ms;
}
.aos-initialized [data-animation-duration="1000"] {
  animation-duration: 1000ms;
}
.aos-initialized [data-animation-duration="1100"] {
  animation-duration: 1100ms;
}
.aos-initialized [data-animation-duration="1200"] {
  animation-duration: 1200ms;
}
.aos-initialized [data-animation-duration="1300"] {
  animation-duration: 1300ms;
}
.aos-initialized [data-animation-duration="1400"] {
  animation-duration: 1400ms;
}
.aos-initialized [data-animation-duration="1500"] {
  animation-duration: 1500ms;
}
.aos-initialized .is-updated [data-animation-delay] {
  animation-delay: 0ms;
}
.aos-initialized .is-updated [data-animation-delay="50"] {
  animation-delay: 50ms;
}
.aos-initialized .is-updated [data-animation-delay="100"] {
  animation-delay: 100ms;
}
.aos-initialized .is-updated [data-animation-delay="150"] {
  animation-delay: 150ms;
}
.aos-initialized .is-updated [data-animation-delay="200"] {
  animation-delay: 200ms;
}
.aos-initialized .is-updated [data-animation-delay="250"] {
  animation-delay: 250ms;
}
.aos-initialized .is-updated [data-animation-delay="300"] {
  animation-delay: 300ms;
}
.aos-initialized .is-updated [data-animation-delay="350"] {
  animation-delay: 350ms;
}
.aos-initialized .is-updated [data-animation-delay="400"] {
  animation-delay: 400ms;
}
.aos-initialized .is-updated [data-animation-delay="450"] {
  animation-delay: 450ms;
}
.aos-initialized .is-updated [data-animation-delay="500"] {
  animation-delay: 500ms;
}
.aos-initialized .is-updated [data-animation-delay="550"] {
  animation-delay: 550ms;
}
.aos-initialized .is-updated [data-animation-delay="600"] {
  animation-delay: 600ms;
}
.aos-initialized .is-updated [data-animation-delay="650"] {
  animation-delay: 650ms;
}
.aos-initialized .is-updated [data-animation-delay="700"] {
  animation-delay: 700ms;
}
.aos-initialized .is-updated [data-animation-delay="750"] {
  animation-delay: 750ms;
}
.aos-initialized .is-updated [data-animation-delay="800"] {
  animation-delay: 800ms;
}
.aos-initialized .is-updated [data-animation-delay="850"] {
  animation-delay: 850ms;
}
.aos-initialized .is-updated [data-animation-delay="900"] {
  animation-delay: 900ms;
}
.aos-initialized .is-updated [data-animation-delay="950"] {
  animation-delay: 950ms;
}
.aos-initialized .is-updated [data-animation-delay="1000"] {
  animation-delay: 1000ms;
}
.aos-initialized .is-updated [data-animation-delay="1050"] {
  animation-delay: 1050ms;
}
.aos-initialized .is-updated [data-animation-delay="1100"] {
  animation-delay: 1100ms;
}
.aos-initialized .is-updated [data-animation-delay="1150"] {
  animation-delay: 1150ms;
}
.aos-initialized .is-updated [data-animation-delay="1200"] {
  animation-delay: 1200ms;
}
.aos-initialized .is-updated [data-animation-delay="1250"] {
  animation-delay: 1250ms;
}
.aos-initialized .is-updated [data-animation-delay="1300"] {
  animation-delay: 1300ms;
}
.aos-initialized .is-updated [data-animation-delay="1350"] {
  animation-delay: 1350ms;
}
.aos-initialized .is-updated [data-animation-delay="1400"] {
  animation-delay: 1400ms;
}
.aos-initialized .is-updated [data-animation-delay="1450"] {
  animation-delay: 1450ms;
}
.aos-initialized .is-updated [data-animation-delay="1500"] {
  animation-delay: 1500ms;
}
.aos-initialized [data-animation=drawer-images-fade] {
  opacity: 0;
  will-change: transform, opacity;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.aos-initialized [data-animation=drawer-images-fade].is-animated {
  animation-name: cartDrawerItemsFadeIn;
}
.aos-initialized [data-animation=drawer-images-fade].is-hiding {
  animation-name: cartDrawerItemsFadeOut;
  animation-delay: 0s;
}
.aos-initialized [data-animation=drawer-items-fade],
.aos-initialized .drawer [data-animation=cart-items-fade] {
  opacity: 0;
  will-change: transform, opacity;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.aos-initialized [data-animation=drawer-items-fade].is-animated,
.aos-initialized .drawer [data-animation=cart-items-fade].is-animated {
  animation-name: cartDrawerItemsFadeInLeft;
}
.aos-initialized [data-animation=drawer-items-fade].is-hiding,
.aos-initialized .drawer [data-animation=cart-items-fade].is-hiding {
  animation-name: cartDrawerItemsFadeOutRight;
  animation-delay: 0s;
}
.aos-initialized [data-animation=drawer-items-fade].is-removed,
.aos-initialized .drawer [data-animation=cart-items-fade].is-removed {
  animation-name: cartItemRemoved;
  animation-delay: 0s;
  animation-duration: 0.5s;
  animation-fill-mode: both;
}
@media only screen and (max-width: 749px) {
  .aos-initialized .product-quick-add [data-animation=drawer-items-fade] {
    opacity: 0;
    animation-fill-mode: both;
  }
  .aos-initialized .product-quick-add [data-animation=drawer-items-fade].is-animated {
    animation-name: cartDrawerItemsFadeIn;
  }
  .aos-initialized .product-quick-add [data-animation=drawer-items-fade].is-hiding {
    animation-name: cartDrawerItemsFadeOut;
    animation-delay: 0s;
  }
  .no-js .aos-initialized .product-quick-add [data-animation=drawer-items-fade] {
    opacity: unset;
  }
}
.aos-initialized .cart [data-animation=cart-items-fade] {
  opacity: 0;
  will-change: transform, opacity;
  animation-fill-mode: both;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.aos-initialized .cart [data-animation=cart-items-fade].is-animated {
  animation-name: cartItemsFadeIn;
}
.aos-initialized .cart [data-animation=cart-items-fade].is-removed {
  animation-name: cartItemRemoved;
  animation-delay: 0s;
  animation-duration: 0.5s;
  animation-fill-mode: both;
}
.no-js .aos-initialized .cart [data-animation=cart-items-fade] {
  opacity: unset;
}
.aos-initialized [data-animation].is-hidden,
.aos-initialized [data-animation].is-hidden.is-animated {
  animation-name: slideUp;
  animation-fill-mode: forwards;
  animation-delay: 0s;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.aos-initialized .drawer--animated [data-animation=drawer-items-fade] {
  animation-name: cartDrawerItemsFadeInRight;
}
.aos-initialized .drawer--animated [data-sliderule-pane="0"] [data-animates="0"],
.aos-initialized .drawer--animated [data-sliderule-pane="1"] [data-animates="1"],
.aos-initialized .drawer--animated [data-sliderule-pane="2"] [data-animates="2"] {
  animation-name: cartDrawerItemsFadeInRight;
}
.aos-initialized .drawer--animated [data-sliderule-pane="0"] [data-animates="1"],
.aos-initialized .drawer--animated [data-sliderule-pane="0"] [data-animates="2"],
.aos-initialized .drawer--animated [data-sliderule-pane="1"] [data-animates="2"] {
  animation-name: cartDrawerItemsFadeOutRight;
}
.aos-initialized .drawer--animated [data-animation=drawer-items-fade].is-hiding {
  --base-animation-delay: -0.2s;
  animation-name: cartDrawerItemsFadeOutRight;
  animation-duration: 0.25s;
  animation-fill-mode: both;
}
.aos-initialized .drawer--animated [data-animation=drawer-items-fade].is-hidden {
  transition: none;
  animation: none;
  opacity: 0;
  visibility: hidden;
}

@keyframes cartDrawerItemsFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes cartDrawerItemsFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes cartDrawerItemsFadeInLeft {
  from {
    opacity: 0;
    transform: translateX(15px);
  }
  to {
    opacity: 1;
    transform: translateZ(0);
  }
}
@keyframes cartDrawerItemsFadeOutLeft {
  from {
    opacity: 1;
    transform: translateX(0);
  }
  to {
    opacity: 0;
    transform: translateX(-15px);
  }
}
@keyframes cartDrawerItemsFadeInRight {
  from {
    opacity: 0;
    transform: translateX(-15px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
@keyframes cartDrawerItemsFadeOutRight {
  from {
    opacity: 1;
    transform: translateZ(0);
  }
  to {
    opacity: 0;
    transform: translateX(15px);
  }
}
@keyframes cartItemsFadeIn {
  from {
    opacity: 0;
    transform: translateY(15px);
  }
  to {
    opacity: 1;
    transform: translateZ(0);
  }
}
@keyframes cartItemRemoved {
  0% {
    opacity: 1;
    max-height: 300px;
  }
  100% {
    opacity: 0;
    max-height: 0;
    padding-top: 0;
    padding-bottom: 0;
  }
}
@keyframes slideUp {
  from {
    opacity: 1;
    max-height: 1000px;
  }
  to {
    opacity: 0;
    max-height: 0px;
  }
}
@keyframes imageFadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes imageFadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.shopify-model-viewer-ui {
  position: relative;
  display: inline-block;
  cursor: pointer;
}

.shopify-model-viewer-ui model-viewer {
  transform: translateZ(0);
  z-index: 1;
}

.shopify-model-viewer-ui model-viewer.shopify-model-viewer-ui__disabled {
  pointer-events: none;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen model-viewer {
  position: relative;
  width: 100vw;
  height: 100vh;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--exit-fullscreen {
  display: block;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--enter-fullscreen {
  display: none;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--desktop:hover .shopify-model-viewer-ui__controls-area, .shopify-model-viewer-ui.shopify-model-viewer-ui--desktop.shopify-model-viewer-ui--child-focused .shopify-model-viewer-ui__controls-area {
  opacity: 1;
}

.shopify-model-viewer-ui:not(.shopify-model-viewer-ui--desktop) .shopify-model-viewer-ui__controls-area {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  display: flex;
  flex-direction: column;
  background: #FFF;
  opacity: 0;
  border: 1px solid rgba(0, 0, 0, 0.05);
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 1;
  transition: opacity 0.1s linear;
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area:focus-within {
  opacity: 1;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area:not(.shopify-model-viewer-ui__controls-area--playing) {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: #3A3A3A;
  border-radius: 0;
  border: none;
  margin: 0px;
  cursor: pointer;
}

body:not(.is-focused) .shopify-model-viewer-ui .shopify-model-viewer-ui__button:not(.focus-visible) {
  outline: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control {
  padding: 0px;
  height: 44px;
  width: 44px;
  background: transparent;
  position: relative;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: rgba(0, 0, 0, 0.55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: rgba(0, 0, 0, 0.55);
  background: rgba(0, 0, 0, 0.05);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  position: absolute;
  content: "";
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
  width: 28px;
  bottom: 0px;
  right: 8px;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon {
  width: 44px;
  height: 44px;
  fill: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background: #FFF;
  position: absolute;
  border: 1px solid rgba(0, 0, 0, 0.05);
  top: 50%;
  left: 50%;
  padding: 0;
  transform: translate3d(-50%, -50%, 0);
  height: 62px;
  width: 62px;
  z-index: 1;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  color: rgba(0, 0, 0, 0.55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__poster-control-icon {
  width: 60px;
  height: 60px;
  z-index: 1;
  fill: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--exit-fullscreen {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--enter-fullscreen {
  display: block;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__spritesheet {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

/*! PhotoSwipe main CSS by Dmitry Semenov | photoswipe.com | MIT license */
/*
	Styles for basic PhotoSwipe functionality (sliding area, open/close transitions)
*/
/* pswp = photoswipe */
.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  touch-action: none;
  z-index: 1000;
  -webkit-text-size-adjust: 100%;
  /* create separate layer, to avoid paint on window.onscroll in webkit/blink */
  -webkit-backface-visibility: hidden;
  outline: none;
}

.pswp * {
  box-sizing: border-box;
}

.pswp img {
  max-width: none;
}

/* style is added when JS option showHideOpacity is set to true */
.pswp--animate_opacity {
  /* 0.001, because opacity:0 doesn't trigger Paint action, which causes lag at start of transition */
  opacity: 0.001;
  will-change: opacity;
  /* for open/close transition */
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  /* autoprefixer: off */
  cursor: zoom-in;
  cursor: -moz-zoom-in;
  cursor: -webkit-zoom-in;
  cursor: var(--ICON-ZOOM-IN), zoom-in;
}

.pswp--zoomed-in .pswp__img {
  /* autoprefixer: off */
  cursor: zoom-out;
  cursor: -moz-zoom-out;
  cursor: -webkit-zoom-out;
  cursor: var(--ICON-ZOOM-OUT), zoom-out;
}

.pswp--dragging .pswp__img {
  /* autoprefixer: off */
  cursor: grabbing;
  cursor: -moz-grabbing;
  cursor: -webkit-grabbing;
}

/*
	Background is added as a separate element.
	As animating opacity is much faster than animating rgba() background-color.
*/
.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--underlay-bg);
  opacity: 0;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
  will-change: opacity;
}

.pswp__scroll-wrap {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}

.pswp__container,
.pswp__zoom-wrap {
  touch-action: none;
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

/* Prevent selection and tap highlights */
.pswp__container,
.pswp__img {
  -webkit-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
  -webkit-touch-callout: none;
}

.pswp__zoom-wrap {
  position: absolute;
  width: 100%;
  transform-origin: left top;
  /* for open/close transition */
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  /* for open/close transition */
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--animated-in .pswp__bg,
.pswp--animated-in .pswp__zoom-wrap {
  transition: none;
}

.pswp__container,
.pswp__zoom-wrap {
  -webkit-backface-visibility: hidden;
}

.pswp__item {
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  overflow: hidden;
}

.pswp__img {
  position: absolute;
  width: auto;
  height: auto;
  top: 0;
  left: 0;
}

/*
	stretched thumbnail or div placeholder element (see below)
	style is added to avoid flickering in webkit/blink when layers overlap
*/
.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

/*
	div element that matches size of large image
	large image loads on top of it
*/
.pswp__img--placeholder--blank {
  background: #222;
}

.pswp--ie .pswp__img {
  width: 100% !important;
  height: auto !important;
  left: 0;
  top: 0;
}

/*
	Error message appears when image is not loaded
	(JS option errorMsg controls markup)
*/
.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
  line-height: 16px;
  margin-top: -8px;
  color: #CCC;
}

.pswp__error-msg a {
  color: #CCC;
  text-decoration: underline;
}

/*================ GLOBAL ================*/
/**
 * Reset
 */
html,
body,
div,
span,
object,
iframe,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
img,
ins,
kbd,
q,
samp,
small,
sub,
sup,
var,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
summary,
time,
mark,
audio,
video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section {
  display: block;
}

summary::marker,
summary::-webkit-details-marker {
  display: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: none;
}

ins {
  background-color: var(--COLOR-LINK);
  color: var(--COLOR-LINK-OPPOSITE);
  text-decoration: none;
}

mark {
  background-color: var(--COLOR-LINK);
  color: var(--COLOR-LINK-OPPOSITE);
  font-style: var(--FONT-STYLE-BODY-ITALIC);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

del {
  text-decoration: line-through;
}

abbr[title],
dfn[title] {
  border-bottom: 1px dotted;
  cursor: help;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid var(--COLOR-BORDER);
  margin: 1em 0;
  padding: 0;
}

ol {
  list-style-type: decimal;
}

p {
  margin: 0 0 1em 0;
}

nav ul,
nav li {
  margin: 0;
  list-style: none;
  list-style-image: none;
}

small {
  font-size: 85%;
}

strong,
th {
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

td {
  vertical-align: top;
}

sub sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

input[type=search]::-ms-clear {
  display: none;
  width: 0;
  height: 0;
}

input[type=search]::-ms-reveal {
  display: none;
  width: 0;
  height: 0;
}

input[type=search]::-webkit-search-decoration,
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-results-button,
input[type=search]::-webkit-search-results-decoration {
  display: none;
}

pre {
  white-space: pre;
  white-space: pre-wrap;
  word-wrap: break-word;
  padding: 15px;
}

textarea {
  overflow: auto;
}

input[type=radio] {
  vertical-align: text-bottom;
}

input[type=checkbox] {
  vertical-align: bottom;
}

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

button,
input,
select,
.popout__toggle,
textarea {
  margin: 0;
}

input[type=text].error,
input[type=email].error,
input[type=password].error {
  border-color: var(--COLOR-ERROR-BORDER);
}

input[type=text],
input[type=password],
input[type=email],
input[type=tel] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

button {
  border: none;
  background: none;
  font-family: inherit;
  font-size: 100%;
  margin: 0;
  text-transform: none;
  line-height: 1;
  color: currentColor;
}

.loader {
  position: relative;
  height: 4px;
  display: block;
  background-color: var(--primary-fade);
  border-radius: 2px;
  overflow: hidden;
  width: 150px;
  margin: 30px auto;
}

.loader--top {
  visibility: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  margin: 0;
  opacity: 0;
  transition: opacity 0.3s, visibility 0.3s;
}

.loader-indeterminate {
  background-color: var(--primary);
}
.loader-indeterminate::before {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: -35%;
  width: 100%;
  bottom: 0;
  will-change: transform;
  animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}
.loader-indeterminate::after {
  content: "";
  position: absolute;
  background-color: inherit;
  top: 0;
  left: -200%;
  width: 100%;
  bottom: 0;
  will-change: transform;
  animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
  animation-delay: 1.15s;
}

@keyframes indeterminate {
  0% {
    transform: translateX(0) scale(0.35, 1);
  }
  60% {
    transform: translateX(50%) scale(0.9, 1);
  }
  100% {
    transform: translateX(100%) scale(0.9, 1);
  }
}
@keyframes indeterminate-short {
  0% {
    transform: translateX(0) scale(2, 1);
  }
  60% {
    transform: translateX(460px) scale(0.01, 1);
  }
  100% {
    transform: translateX(460px) scale(0.01, 1);
  }
}
/**
 * Helpers
 */
.clearfix {
  *zoom: 1;
}
.clearfix::after {
  content: "";
  display: table;
  clear: both;
}

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

.js-focus-hidden:focus {
  outline: none;
}

.label-hidden {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.no-placeholder .label-hidden {
  position: inherit !important;
  overflow: auto;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

.visually-shown {
  position: inherit !important;
  overflow: auto;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

.no-js:not(html) {
  display: none;
}
.no-js .no-js:not(html) {
  display: block;
}
.no-js .no-js:not(html).is-hidden {
  visibility: visible;
  max-height: none;
  opacity: 1;
}

.no-js .js {
  display: none;
}

.supports-no-cookies:not(html) {
  display: none;
}
html.supports-no-cookies .supports-no-cookies:not(html) {
  display: block;
}

html.supports-no-cookies .supports-cookies {
  display: none;
}

/*================ Responsive Show/Hide Helper ================*/
/*================ Responsive Text Alignment Helper ================*/
/*============================================================================
  Skip to content button
    - Overrides .visually-hidden when focused
==============================================================================*/
.skip-link:focus {
  position: absolute !important;
  overflow: auto;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: var(--COLOR-LINK);
  background-color: var(--COLOR-BG);
  padding: 20px;
  z-index: 15000;
  transition: none;
}

body.is-focused .sidebar__item input:focus ~ label,
body.is-focused .checkbox input:focus ~ label:before,
.no-touch body.is-focused .double__image .product-link:focus .product-item__bg__under,
.no-touch body.is-focused .double__image.is-visible .product-link:focus .product-item__bg__inner.is-visible,
body.is-focused a.product-link:focus > .product-item__bg,
body.is-focused .look__dot__button:focus .look__dot,
body.is-focused .product__thumb__link:focus img,
body.is-focused .article__image-link:focus img,
body.is-focused .article__image-link:focus .image-wrapper,
body.is-focused .product__slides:focus,
body.is-focused a.frame__item:focus img,
body.is-focused .slideshow__slider:focus img {
  outline-color: var(--COLOR-PRIMARY) !important;
  outline-offset: -2px !important;
  outline-style: auto !important;
  outline-width: 5px !important;
}

body.is-focused *:focus {
  outline-color: var(--COLOR-PRIMARY);
}

body.is-focused .checkbox input:focus ~ label:before,
body.is-focused .filter-group__heading:focus,
body.is-focused a.collection-item__image:focus,
body.is-focused .product-upsell__image a,
body.is-focused div.product__slides.product-single__photos:focus,
body.is-focused .inline-image__link:focus,
body.is-focused .search-popdown .product-link:focus {
  outline-offset: 2px !important;
}

body.is-focused .look__slider:focus,
body.is-focused .grid:focus {
  outline: none !important;
}

html:not(.no-js) body:not(.is-focused) *:focus,
body.is-focused .product__thumb__link:focus {
  outline: none;
}

body.is-focused .swatch input[type=radio]:focus + label:after {
  border-width: 3px;
}

body.is-focused .variant-input:focus + .variant__button-label {
  box-shadow: 0 0 0 4px var(--COLOR-PRIMARY);
}

body.is-focused .deferred-media__poster:focus .deferred-media__poster-button,
body.is-focused .deferred-media__poster.focus-visible .deferred-media__poster-button {
  outline-color: var(--COLOR-PRIMARY);
  outline-offset: 2px;
  outline-style: auto;
  outline-width: 5px;
}

body.is-focused .highlights__item:focus {
  outline-offset: 2px !important;
}

[data-scroll-locked] .js__header__stuck,
[data-scroll-locked] .theme__header,
[data-scroll-locked] .collection__nav,
[data-scroll-locked] .announcement__wrapper,
[data-scroll-locked] .announcement__bar-outer,
[data-scroll-locked] .search__popdown__outer,
[data-scroll-locked] .toolbar {
  width: 100vw;
}
[data-scroll-locked] .js__header__stuck,
[data-scroll-locked] .theme__header,
[data-scroll-locked] .collection__nav,
[data-scroll-locked] .announcement__bar,
[data-scroll-locked] .search__popdown__outer,
[data-scroll-locked] .cart-bar,
[data-scroll-locked] .toolbar {
  padding-right: var(--scrollbar-width);
}
[data-scroll-locked] .announcement__wrapper .flickity-prev-next-button.next {
  margin-right: var(--scrollbar-width);
}

#challenge .shopify-section-popups {
  display: none;
}

#challenge .shopify-challenge__container,
#challenge .shopify-challenge__button.btn,
#challenge .shopify-challenge__button {
  margin: 60px auto;
}

#challenge .shopify-challenge__button {
  --btn-border: var(--BTN-PRIMARY-BG-COLOR);
  --btn-bg: var(--BTN-PRIMARY-BG-COLOR);
  --btn-text: var(--BTN-PRIMARY-TEXT-COLOR);
  --btn-border-hover: var(--BTN-PRIMARY-BG-COLOR-BRIGHTER);
  --btn-bg-hover: var(--BTN-PRIMARY-BG-COLOR-BRIGHTER);
  --btn-text-hover: var(--BTN-PRIMARY-TEXT-COLOR);
}
@media (hover: hover) {
  #challenge .shopify-challenge__button:hover {
    background: var(--btn-bg-hover);
  }
}

#challenge .shopify-challenge__button.btn, #challenge .shopify-challenge__button {
  display: block;
}

/**
 * UTILS
 */
.ir {
  display: block;
  text-indent: -999em;
  overflow: hidden;
  background-repeat: no-repeat;
  text-align: left;
  direction: ltr;
}

.hidden {
  display: none;
  visibility: hidden;
}

.clearfix:before,
.clearfix:after {
  content: " ";
  display: block;
  height: 0;
  overflow: hidden;
}

.clearfix {
  zoom: 1;
}
.clearfix:after {
  clear: both;
}

.left {
  float: left;
}

.right {
  float: right;
}

.center {
  text-align: center;
}

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

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

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

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

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

.fade-toggle {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.is-hidden {
  visibility: hidden;
  max-height: 0;
  overflow: hidden;
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media only screen and (min-width: 750px) {
  .mobile {
    display: none;
  }
}
@media only screen and (max-width: 749px) {
  .desktop {
    display: none;
  }
}
/*================ SVG Placeholder ================*/
.svg-placeholder {
  color: #AAA;
  background-color: #F7F7F7;
  height: 100%;
  position: relative;
  width: 100%;
  fill: currentColor;
}
.svg-placeholder svg {
  max-height: 100%;
  max-width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

/*================ Divider ================*/
.divider-section {
  background: var(--bg);
}

.divider {
  margin: 0;
  border-color: var(--border);
}

.divider-holder {
  overflow: hidden;
  margin-top: var(--block-padding-top, 0px);
  margin-bottom: var(--block-padding-bottom, 16px);
}

/*================ Flex ================*/
.flex-align-top {
  align-items: flex-start;
}

.flex-align-center {
  align-items: center;
}

.underlay {
  position: fixed;
  visibility: hidden;
  top: 0;
  left: 0;
  height: 100vh;
  width: 100%;
  opacity: 0;
  background: var(--underlay-bg);
  transition: opacity 0.3s ease 0.1s, visibility 0s linear 0.4s;
}

.expanded ~ .underlay,
.no-js details[open] .underlay,
details[open=true] .underlay,
.is-open .underlay,
.underlay--visible {
  visibility: visible;
  opacity: var(--underlay-opacity);
  transition-duration: 0.3s, 0s;
  transition-delay: 0.1s, 0s;
}

dialog {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 6000;
  width: 100vw;
  height: 100%;
  max-width: 100vw;
  max-height: 100%;
  padding: 0;
  background: none;
  border: 0;
  margin: 0;
  overflow: hidden;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--underlay-bg);
}
dialog::-webkit-backdrop {
  background: transparent;
}
dialog::backdrop {
  background: transparent;
}
dialog:not([open]) {
  pointer-events: none;
  display: none;
}
dialog[open=true] {
  animation: fadeIn 0.5s ease forwards;
}
dialog[closing] {
  animation: fadeOut 0.5s ease forwards;
}

/**
 * Grid
 */
.grid {
  display: grid;
  gap: var(--gap);
  grid-template-columns: repeat(var(--columns), minmax(0, 1fr));
}
body.has-line-design.grid-compact .grid {
  padding-top: 1px;
  padding-right: 1px;
}
@media only screen and (min-width: 990px) {
  .grid {
    --columns: var(--COLUMNS);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .grid {
    --columns: var(--COLUMNS-MEDIUM);
  }
}
@media only screen and (max-width: 749px) {
  .grid {
    --columns: var(--COLUMNS-SMALL);
  }
}
@media only screen and (max-width: 479px) {
  .grid {
    --columns: var(--COLUMNS-MOBILE);
  }
}

.grid--1 {
  --columns: 1;
}

.grid--2 {
  --columns: 2;
}

.grid--3 {
  --columns: 3;
}
@media only screen and (max-width: 749px) {
  .grid--3 {
    --columns: 1;
  }
}
@media only screen and (max-width: 479px) {
  .grid--3 {
    --columns: 1;
  }
}

.grid-outer {
  position: relative;
  flex-grow: 1;
  padding: 0 var(--outer);
}
body.grid-compact .grid-outer {
  --outer: 0px;
  --outer-offset: 0px;
  --gutter: 0px;
  --gap: 0px;
}
.collection-list .grid-outer {
  padding-top: var(--outer);
  padding-bottom: var(--outer);
}

body.has-line-design .grid-item {
  border: 1px solid var(--COLOR-BORDER);
}

body.has-line-design.grid-compact .grid-item {
  margin-top: -1px;
  margin-right: -1px;
}
@media only screen and (min-width: 750px) {
  body.has-line-design.grid-compact .grid--slider .grid-item {
    margin-top: 0;
  }
  body.has-line-design.grid-compact .grid--slider {
    padding-right: 1px;
  }
}
@media only screen and (max-width: 749px) {
  body.has-line-design.grid-compact .grid--mobile-slider .grid-item {
    margin-top: 0;
  }
  body.has-line-design.grid-compact .grid--mobile-slider {
    padding-right: 1px;
  }
}

@media only screen and (min-width: 750px) {
  .grid--account {
    grid-template-columns: 1fr 3fr;
    align-items: start;
  }
}
@media only screen and (max-width: 749px) {
  .grid--account {
    grid-template-columns: auto;
  }
}

@media only screen and (min-width: 750px) {
  .grid--article {
    grid-template-columns: auto minmax(300px, 360px);
    align-items: start;
  }
}
@media only screen and (max-width: 749px) {
  .grid--article {
    grid-template-columns: auto;
  }
}

.grid--slider .flickity-viewport {
  overflow: visible;
}

@media only screen and (min-width: 750px) {
  .grid--slider {
    display: flex;
    flex-flow: row nowrap;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    margin: 0 var(--outer-offset);
    padding-left: var(--outer);
    padding-right: var(--outer);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  body.has-line-design.grid-compact .grid--slider {
    padding-top: 1px;
    padding-bottom: 1px;
  }
  .grid--slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .grid--slider:after {
    content: "flickity";
    display: none;
  }
  .grid--slider.flickity-enabled {
    overflow: hidden;
  }
  .grid--slider.flickity-enabled .flickity-viewport {
    flex: 1;
  }
  .grid--slider.flickity-enabled .grid-item, .grid--slider:not(.grid--slider-alt) .grid-item {
    flex: 0 0 auto;
    margin-right: var(--gap);
  }
  .grid--slider:not(.flickity-enabled) .grid-item:last-child {
    margin-right: 0;
  }
  .grid--slider.grid--slider-alt:not(.flickity-enabled) {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(0, calc((100% - var(--gap) * (var(--column-count) - 1)) / var(--column-count))));
    grid-column-gap: var(--gap);
    justify-content: center;
    padding-right: var(--gap);
  }
  .grid--slider.grid--slider-alt:not(.flickity-enabled) .grid-item {
    width: auto;
  }
}

@media only screen and (min-width: 990px) {
  .grid--slider.flickity-enabled .grid-item,
.grid--slider:not(.grid--slider-alt) .grid-item {
    width: calc((100vw - var(--scrollbar-width) - var(--outer) * 2) * 0.28);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .grid--slider.flickity-enabled .grid-item,
.grid--slider:not(.grid--slider-alt) .grid-item {
    width: calc((100vw - var(--scrollbar-width) - var(--outer) * 2) * 0.38);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .grid--slider:not(.flickity-enabled) {
    padding: 0;
  }
}

@media only screen and (max-width: 749px) {
  .grid--mobile-slider {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 0;
    margin: 0 var(--outer-offset);
    padding-left: var(--outer);
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .grid--mobile-slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  body.grid-compact.has-line-design .grid--mobile-slider {
    padding-left: 1px;
  }
  body.grid-classic.has-line-design .grid--mobile-slider {
    padding-left: var(--outer);
  }
  .grid--mobile-slider:after {
    content: "";
    min-height: 1px;
    display: block;
    position: relative;
    padding-right: var(--outer);
  }
  .grid--mobile-slider .grid-item {
    flex: 0 0 auto;
    width: calc(100% - 50px);
    margin-right: var(--gap);
    scroll-snap-align: start;
  }
  .grid--mobile-slider .grid-item:last-child {
    margin-right: 0;
  }
  .grid--mobile-slider .grid-item:only-child {
    flex: 0 1 100%;
  }
}

.grid__loader {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 4;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}
.grid-outer.is-loading .grid__loader {
  opacity: 1;
  visibility: visible;
}
@media only screen and (max-width: 749px) {
  .grid__loader {
    z-index: 201;
  }
}

.grid__loader-line {
  position: sticky;
  top: var(--collection-nav-height);
  width: 100%;
  margin: 0;
}

.has-header-sticky .grid__loader-line {
  top: calc(var(--collection-nav-height) + var(--header-height));
}

/* ================ Heights ================ */
:root {
  --full-height: 100vh;
  --full-screen: var(--full-height);
  --three-quarters: 75vh;
  --two-thirds: 66vh;
  --one-half: 50vh;
  --one-third: 33vh;
  --header-height: 80px;
  --header-sticky-height: 0px;
  --footer-height: 500px;
  --announcement-height: 0px;
  --content-full: 90vh;
  --content-min: calc(100vh - var(--header-height) - var(--announcement-height));
}
@media only screen and (min-width: 990px) {
  :root {
    --header-height: var(--HEADER-HEIGHT, 0px);
  }
}
@media only screen and (min-width: 750px) {
  :root {
    --announcement-height: var(--ANNOUNCEMENT-HEIGHT-DESKTOP, 0px);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  :root {
    --header-height: var(--HEADER-HEIGHT-MEDIUM, 0px);
  }
}
@media only screen and (max-width: 749px) {
  :root {
    --header-height: var(--HEADER-HEIGHT-MOBILE, 0px);
    --announcement-height: var(--ANNOUNCEMENT-HEIGHT-MOBILE, 0px);
  }
}

.main-content > .shopify-section:first-of-type {
  --full-screen: calc(var(--full-height) - var(--header-height) - var(--announcement-height));
}

body:has([data-header-sticky]) .main-content > .shopify-section {
  --full-screen: calc(var(--full-height) - var(--header-height));
}

body:has([data-header-sticky]) .main-content > .shopify-section:first-of-type {
  --full-screen: calc(var(--full-height) - var(--header-height) - var(--announcement-height));
}

body:has([data-header-transparent]) .main-content > .shopify-section:first-of-type {
  --full-screen: calc(var(--full-height) - var(--announcement-height));
}

body.has-header-sticky .main-content > .shopify-section {
  --full-screen: calc(var(--full-height) - var(--header-height));
}

body.has-header-sticky .main-content > .shopify-section:first-of-type {
  --full-screen: calc(var(--full-height) - var(--header-height) - var(--announcement-height));
}

body.has-header-transparent .main-content > .shopify-section:first-of-type {
  --full-screen: calc(var(--full-height) - var(--announcement-height));
}

.has-header-sticky {
  --header-sticky-height: var(--header-height);
}

@media only screen and (min-width: 750px) {
  .screen-height-full {
    min-height: var(--full-screen);
  }

  .screen-height-three-quarters {
    min-height: var(--three-quarters);
  }

  .screen-height-two-thirds {
    min-height: var(--two-thirds);
  }

  .screen-height-one-half {
    min-height: var(--one-half);
  }

  .screen-height-one-third {
    min-height: var(--one-third);
  }

  .seven-fifty-height-hero {
    min-height: 750px;
  }

  .sixty-fifty-height-hero {
    min-height: 650px;
  }

  .five-fifty-height-hero {
    min-height: 550px;
  }

  .four-fifty-height-hero {
    min-height: 450px;
  }

  .three-fifty-height-hero {
    min-height: 350px;
  }

  .two-fifty-height-hero {
    min-height: 250px;
  }
}
@media only screen and (max-width: 749px) {
  .screen-height-full--mobile {
    min-height: var(--full-screen);
  }

  .screen-height-three-quarters--mobile {
    min-height: var(--three-quarters);
  }

  .screen-height-two-thirds--mobile {
    min-height: var(--two-thirds);
  }

  .screen-height-one-half--mobile {
    min-height: var(--one-half);
  }

  .screen-height-one-third--mobile {
    min-height: var(--one-third);
  }

  .seven-fifty-height-hero--mobile {
    min-height: 750px;
  }

  .sixty-fifty-height-hero--mobile {
    min-height: 650px;
  }

  .five-fifty-height-hero--mobile {
    min-height: 550px;
  }

  .four-fifty-height-hero--mobile {
    min-height: 450px;
  }

  .three-fifty-height-hero--mobile {
    min-height: 350px;
  }

  .two-fifty-height-hero--mobile {
    min-height: 250px;
  }
}
/**
 * Layout
 */
:root {
  --outer: var(--LAYOUT-OUTER);
  --gutter: var(--LAYOUT-GUTTER);
  --gap: var(--gutter);
  --outer-offset: calc(var(--outer) * -1);
  --gutter-offset: calc(var(--gutter) * -1);
  --inner: 20px;
  --base: 16px;
  --line: 1rem;
  --line-offset: calc(var(--line) * -1);
  --content-max: 1100px;
  --sidebar-width: var(--SIDEBAR-WIDTH);
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  :root {
    --outer: calc(var(--LAYOUT-OUTER-MEDIUM));
    --gutter: calc(var(--LAYOUT-GUTTER-MEDIUM));
    --inner: 18px;
    --base: 15px;
    --sidebar-width: var(--SIDEBAR-WIDTH-MEDIUM);
  }
}
@media only screen and (max-width: 749px) {
  :root {
    --outer: calc(var(--LAYOUT-OUTER-SMALL));
    --gutter: calc(var(--LAYOUT-GUTTER-SMALL));
    --inner: 16px;
    --base: 14px;
    --line: 0.66rem;
  }
}
@media only screen and (min-width: 1400px) {
  :root {
    --content-max: 80vw;
  }
}

html,
body {
  min-height: 100%;
}

* {
  box-sizing: border-box;
}

html {
  font-size: var(--base);
  scroll-behavior: smooth;
  --scroll-behavior: smooth;
}

body {
  position: relative;
  min-width: 320px;
  color: var(--COLOR-TEXT);
  background-color: var(--COLOR-BG);
  font-size: var(--FONT-SIZE-BASE);
  -webkit-text-size-adjust: 100%;
}
body * {
  -webkit-font-smoothing: antialiased;
}

.container {
  margin: 0;
  padding: 0;
  display: block;
  width: 100%;
  min-height: 100%;
  background-color: var(--COLOR-BG);
}

/**
 * CONTENT WRAPPER
 */
.main-content {
  margin: 0;
  padding: 0;
  min-width: 100%;
  display: block;
  min-height: var(--content-min);
}

.wrapper {
  max-width: var(--content-max);
  margin: 0 auto;
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.wrapper--narrow {
  max-width: 670px;
  margin: 0 auto;
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.wrapper--full-padded {
  max-width: none;
  margin: 0 auto;
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.wrapper--full {
  max-width: none;
  margin: 0 auto;
}

.section-padding {
  --padding-top: var(--PT);
  --padding-bottom: var(--PB);
  padding-top: var(--padding-top);
  padding-bottom: var(--padding-bottom);
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .section-padding {
    --padding-top: calc(var(--PT) * 0.8);
    --padding-bottom: calc(var(--PB) * 0.8);
  }
}
@media only screen and (max-width: 749px) {
  .section-padding {
    --padding-top: calc(var(--PT) * 0.6);
    --padding-bottom: calc(var(--PB) * 0.6);
    padding-top: var(--PT-MOBILE, var(--padding-top));
  }
}

/**
 * TABLES
 */
table {
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid var(--COLOR-BORDER);
  margin: 1em 0;
}

table tr > th,
table tr > td {
  border-bottom: 1px solid var(--COLOR-BORDER);
  border-right: 1px solid var(--COLOR-BORDER);
  padding: 10px;
  line-height: 1.3;
  vertical-align: middle;
}

.table {
  display: table;
  width: 100%;
  height: 100%;
}

dl {
  margin-bottom: 1.5em;
}

dt,
dd {
  line-height: 1.5em;
}

dt {
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

dd {
  margin-left: 0.8em;
}

.main-content > .shopify-section:first-of-type .backdrop--linear:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc(var(--header-height) * 1.5);
  background: linear-gradient(to bottom, var(--header-overlay-color) 0%, var(--TRANSPARENT) 100%);
  opacity: var(--header-overlay-opacity);
}

[data-collapsible-trigger] {
  position: relative;
  cursor: pointer;
  list-style: none;
}
[data-collapsible-trigger] .icon {
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;
}
[data-collapsible-trigger] .icon-minus {
  visibility: hidden;
  opacity: 0;
}

[data-collapsible-body] {
  position: relative;
  height: 0;
  overflow: hidden;
  will-change: height;
  transition: height 0.3s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

[data-collapsible-content] {
  display: grid;
  grid-template-columns: 100%;
  will-change: transform, opacity;
  transition: transform 0.3s ease-in, opacity 0.3s ease-out;
  opacity: 0;
  transform: translate3d(0, -20px, 0);
}

.no-js [data-collapsible][open] [data-collapsible-trigger] .icon-minus,
[data-collapsible][open=true] [data-collapsible-trigger] .icon-minus {
  visibility: visible;
  opacity: 1;
}
.no-js [data-collapsible][open] [data-collapsible-trigger] .icon-plus,
[data-collapsible][open=true] [data-collapsible-trigger] .icon-plus {
  visibility: hidden;
  opacity: 0;
  transform: translateY(-50%) rotate(90deg);
}
.no-js [data-collapsible][open] [data-collapsible-content],
[data-collapsible][open=true] [data-collapsible-content] {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: transform 0.3s ease-out, opacity 0.3s ease-in;
}

.no-js [data-collapsible][open] [data-collapsible-body] {
  height: auto;
}

/**
 * Typography
 * https://type-scale.com/
 */
:root {
  --font-15: 55px;
  --font-14: 52px;
  --font-13: 50px;
  --font-12: 47px;
  --font-11: 43px;
  --font-10: 40px;
  --font-9: 37px;
  --font-8: 32px;
  --font-7: 27px;
  --font-6: 23px;
  --font-5: 19px;
  --font-4: 16px;
  --font-3: 14px;
  --font-2: 12px;
  --font-1: 10px;
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  :root {
    --font-15: 60px;
    --font-14: 55px;
    --font-13: 50px;
    --font-12: 52px;
    --font-11: 48px;
    --font-10: 45px;
    --font-9: 41px;
    --font-8: 35px;
    --font-7: 29px;
    --font-6: 25px;
    --font-5: 21px;
    --font-4: 18px;
    --font-3: 15px;
    --font-2: 13px;
    --font-1: 11px;
  }
}
@media only screen and (min-width: 990px) {
  :root {
    --font-15: 82px;
    --font-14: 75px;
    --font-13: 69px;
    --font-12: 62px;
    --font-11: 56px;
    --font-10: 53px;
    --font-9: 45px;
    --font-8: 38px;
    --font-7: 32px;
    --font-6: 27px;
    --font-5: 23px;
    --font-4: 19px;
    --font-3: 16px;
    --font-2: 14px;
    --font-1: 12px;
  }
}

h1, .h1 {
  font-size: calc(var(--font-9) * var(--FONT-ADJUST-HEADING));
}

h2, .h2 {
  font-size: calc(var(--font-8) * var(--FONT-ADJUST-HEADING));
}

h3, .h3 {
  font-size: calc(var(--font-7) * var(--FONT-ADJUST-HEADING));
}

h4, .h4 {
  font-size: calc(var(--font-6) * var(--FONT-ADJUST-HEADING));
}

h5, .h5 {
  font-size: calc(var(--font-5) * var(--FONT-ADJUST-HEADING));
}

h6, .article__author-bio h3, .blog-section .article__image .article__tags, .h6 {
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-HEADING));
}

.h1, .h2, .h3, .h4, .h5, .h6,
h1, h2, h3, h4, h5, h6, .article__author-bio h3, .blog-section .article__image .article__tags {
  font-family: var(--FONT-STACK-HEADING);
  font-style: var(--FONT-STYLE-HEADING);
  font-weight: var(--FONT-WEIGHT-HEADING);
  line-height: 1.2;
  margin: 0.5em 0;
  text-transform: var(--FONT-UPPERCASE-HEADING, none);
}
.h1 .strong, .h1.strong,
.h1 strong, .h2 .strong, .h2.strong,
.h2 strong, .h3 .strong, .h3.strong,
.h3 strong, .h4 .strong, .h4.strong,
.h4 strong, .h5 .strong, .h5.strong,
.h5 strong, .h6 .strong, .h6.strong,
.h6 strong,
h1 .strong,
h1.strong,
h1 strong, h2 .strong, h2.strong,
h2 strong, h3 .strong, h3.strong,
h3 strong, h4 .strong, h4.strong,
h4 strong, h5 .strong, h5.strong,
h5 strong, h6 .strong, .blog-section .article__image .article__tags .strong, h6.strong, .blog-section .article__image .strong.article__tags,
h6 strong,
.article__author-bio h3 strong,
.blog-section .article__image .article__tags strong {
  font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
}

/*================ Headings with body font ================*/
body {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
}

.h1--body,
.h2--body,
.h3--body,
.h4--body,
.h5--body,
.h6--body {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  text-transform: none;
  letter-spacing: 0px;
  margin: 0.5em 0;
  line-height: 1.2;
}
.h1--body a,
.h2--body a,
.h3--body a,
.h4--body a,
.h5--body a,
.h6--body a {
  text-decoration: none;
  font-weight: inherit;
}

.h1--body {
  font-size: calc(var(--font-9) * var(--FONT-ADJUST-BODY));
}

.h2--body {
  font-size: calc(var(--font-8) * var(--FONT-ADJUST-BODY));
}

.h3--body {
  font-size: calc(var(--font-7) * var(--FONT-ADJUST-BODY));
}

.h4--body {
  font-size: calc(var(--font-6) * var(--FONT-ADJUST-BODY));
}

.h5--body {
  font-size: calc(var(--font-5) * var(--FONT-ADJUST-BODY));
}

.h6--body {
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-BODY));
}

p .p {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
}

small,
.small,
p small {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.xs {
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
}

.font-body {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
}

.font-heading {
  font-family: var(--FONT-STACK-HEADING);
  font-weight: var(--FONT-WEIGHT-HEADING);
  font-style: var(--FONT-STYLE-HEADING);
}

.heading-size-1 {
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-HEADING));
}

.heading-size-2 {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-HEADING));
}

.heading-size-3 {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-HEADING));
}

.heading-size-4 {
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-HEADING));
}

.heading-size-5 {
  font-size: calc(var(--font-5) * var(--FONT-ADJUST-HEADING));
}

.heading-size-6 {
  font-size: calc(var(--font-6) * var(--FONT-ADJUST-HEADING));
}

.heading-size-7 {
  font-size: calc(var(--font-7) * var(--FONT-ADJUST-HEADING));
}

.heading-size-8 {
  font-size: calc(var(--font-8) * var(--FONT-ADJUST-HEADING));
}

.heading-size-9 {
  font-size: calc(var(--font-9) * var(--FONT-ADJUST-HEADING));
}

.heading-size-10 {
  font-size: calc(var(--font-10) * var(--FONT-ADJUST-HEADING));
}

.heading-size-11 {
  font-size: calc(var(--font-11) * var(--FONT-ADJUST-HEADING));
}

.heading-size-12 {
  font-size: calc(var(--font-12) * var(--FONT-ADJUST-HEADING));
}

.heading-size-13 {
  font-size: calc(var(--font-13) * var(--FONT-ADJUST-HEADING));
}

.heading-size-14 {
  font-size: calc(var(--font-14) * var(--FONT-ADJUST-HEADING));
}

.heading-size-15 {
  font-size: calc(var(--font-15) * var(--FONT-ADJUST-HEADING));
}

.body-size-1 {
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
}

.body-size-2 {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.body-size-3 {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
}

.body-size-4 {
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-BODY));
}

.body-size-5 {
  font-size: calc(var(--font-5) * var(--FONT-ADJUST-BODY));
}

.body-size-6 {
  font-size: calc(var(--font-6) * var(--FONT-ADJUST-BODY));
}

.body-size-7 {
  font-size: calc(var(--font-7) * var(--FONT-ADJUST-BODY));
}

.body-size-8 {
  font-size: calc(var(--font-8) * var(--FONT-ADJUST-BODY));
}

.body-size-9 {
  font-size: calc(var(--font-9) * var(--FONT-ADJUST-BODY));
}

.body-size-10 {
  font-size: calc(var(--font-10) * var(--FONT-ADJUST-BODY));
}

.body-size-11 {
  font-size: calc(var(--font-11) * var(--FONT-ADJUST-BODY));
}

.body-size-12 {
  font-size: calc(var(--font-12) * var(--FONT-ADJUST-BODY));
}

.body-size-13 {
  font-size: calc(var(--font-13) * var(--FONT-ADJUST-BODY));
}

.body-size-14 {
  font-size: calc(var(--font-14) * var(--FONT-ADJUST-BODY));
}

.body-size-15 {
  font-size: calc(var(--font-15) * var(--FONT-ADJUST-BODY));
}

@media only screen and (min-width: 750px) {
  .heading-desktop-size-1 {
    font-size: calc(var(--font-1) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-2 {
    font-size: calc(var(--font-2) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-3 {
    font-size: calc(var(--font-3) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-4 {
    font-size: calc(var(--font-4) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-5 {
    font-size: calc(var(--font-5) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-6 {
    font-size: calc(var(--font-6) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-7 {
    font-size: calc(var(--font-7) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-8 {
    font-size: calc(var(--font-8) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-9 {
    font-size: calc(var(--font-9) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-10 {
    font-size: calc(var(--font-10) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-11 {
    font-size: calc(var(--font-11) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-12 {
    font-size: calc(var(--font-12) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-13 {
    font-size: calc(var(--font-13) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-14 {
    font-size: calc(var(--font-14) * var(--FONT-ADJUST-HEADING));
  }

  .heading-desktop-size-15 {
    font-size: calc(var(--font-15) * var(--FONT-ADJUST-HEADING));
  }

  .body-desktop-size-1 {
    font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-2 {
    font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-3 {
    font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-4 {
    font-size: calc(var(--font-4) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-5 {
    font-size: calc(var(--font-5) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-6 {
    font-size: calc(var(--font-6) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-7 {
    font-size: calc(var(--font-7) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-8 {
    font-size: calc(var(--font-8) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-9 {
    font-size: calc(var(--font-9) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-10 {
    font-size: calc(var(--font-10) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-11 {
    font-size: calc(var(--font-11) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-12 {
    font-size: calc(var(--font-12) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-13 {
    font-size: calc(var(--font-13) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-14 {
    font-size: calc(var(--font-14) * var(--FONT-ADJUST-BODY));
  }

  .body-desktop-size-15 {
    font-size: calc(var(--font-15) * var(--FONT-ADJUST-BODY));
  }
}
@media only screen and (max-width: 749px) {
  .heading-mobile-size-1 {
    font-size: calc(var(--font-1) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-2 {
    font-size: calc(var(--font-2) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-3 {
    font-size: calc(var(--font-3) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-4 {
    font-size: calc(var(--font-4) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-5 {
    font-size: calc(var(--font-5) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-6 {
    font-size: calc(var(--font-6) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-7 {
    font-size: calc(var(--font-7) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-8 {
    font-size: calc(var(--font-8) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-9 {
    font-size: calc(var(--font-9) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-10 {
    font-size: calc(var(--font-10) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-11 {
    font-size: calc(var(--font-11) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-12 {
    font-size: calc(var(--font-12) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-13 {
    font-size: calc(var(--font-13) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-14 {
    font-size: calc(var(--font-14) * var(--FONT-ADJUST-HEADING));
  }

  .heading-mobile-size-15 {
    font-size: calc(var(--font-15) * var(--FONT-ADJUST-HEADING));
  }

  .body-mobile-size-1 {
    font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-2 {
    font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-3 {
    font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-4 {
    font-size: calc(var(--font-4) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-5 {
    font-size: calc(var(--font-5) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-6 {
    font-size: calc(var(--font-6) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-7 {
    font-size: calc(var(--font-7) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-8 {
    font-size: calc(var(--font-8) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-9 {
    font-size: calc(var(--font-9) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-10 {
    font-size: calc(var(--font-10) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-11 {
    font-size: calc(var(--font-11) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-12 {
    font-size: calc(var(--font-12) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-13 {
    font-size: calc(var(--font-13) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-14 {
    font-size: calc(var(--font-14) * var(--FONT-ADJUST-BODY));
  }

  .body-mobile-size-15 {
    font-size: calc(var(--font-15) * var(--FONT-ADJUST-BODY));
  }
}
/*================ Standard elements ================*/
p,
.p {
  margin: 0.5em 0;
}

.strong,
strong {
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

a {
  text-decoration: none;
  color: var(--link);
  transition: color 0.25s ease;
}

@media (hover: hover) {
  a:hover {
    color: var(--link-hover);
  }
}
blockquote {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  padding-left: 1.5em;
  border-left: 5px solid var(--text);
  margin: 0 0 1.5em 1.25em;
}

ul,
ol {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  margin: 0 0 1.5em 1.3em;
}
ul.unstyled,
ol.unstyled {
  list-style-type: none;
  margin-left: 0;
}
ul.inline-list li,
ol.inline-list li {
  display: inline-block;
  margin-bottom: 0;
}

li {
  margin: 0 0 0.25em 0;
}

hr,
.hr {
  clear: both;
  border-top: solid var(--COLOR-BORDER);
  border-width: 1px 0 0;
  margin: 1.25rem 0;
  height: 0;
}
hr.hr--small,
.hr.hr--small {
  margin: 0.625rem 0;
}
hr.hr--tall,
.hr.hr--tall {
  margin: 2.5rem 0;
}
hr.hr--clear,
.hr.hr--clear {
  border-top-color: transparent;
}
hr.hr--dash,
.hr.hr--dash {
  margin: var(--gutter) auto;
  width: 40px;
}
hr.hr--thick,
.hr.hr--thick {
  border-width: 2px 0 0;
}
hr.hr--underline,
.hr.hr--underline {
  margin-top: 10px;
  margin-bottom: 20px;
}
hr.hr--no-margin,
.hr.hr--no-margin {
  margin: 0;
}
hr.hr--color,
.hr.hr--color {
  border-top-color: var(--text-a35);
}

.page__heading {
  text-align: center;
  position: relative;
  z-index: 11;
}

.caps, .blog-section .article__image .article__tags, .popout__toggle, .sale-box,
.preorder-box,
.badge-box, .search-submit {
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(11px * var(--FONT-ADJUST-BODY));
}

.caps--link {
  text-transform: var(--BTN-UPPERCASE);
  font-family: var(--BTN-FONT-STACK);
  font-size: var(--BTN-FONT-SIZE);
  font-style: var(--BTN-FONT-STYLE);
  font-weight: var(--BTN-FONT-WEIGHT);
  letter-spacing: var(--BTN-LETTER-SPACING);
  padding-left: 0;
  padding-right: 0;
}
.caps--link span {
  padding: 0 0 5px;
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 0% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
}
@media (hover: hover) {
  .caps--link span:hover {
    background-size: 100% 1px;
  }
}
@media (hover: hover) {
  .caps--link .icon-arrow-right {
    transition: transform 0.5s ease;
    transform: translateZ(0);
  }
  .caps--link:hover .icon-arrow-right {
    transform: translate3d(5px, 0, 0);
  }
}

/**
 * Icons
 */
.icon {
  display: inline-block;
  width: var(--icon-size, 20px);
  height: var(--icon-size, 20px);
  vertical-align: middle;
  fill: none;
  stroke: currentColor;
  stroke-width: var(--ICON-STROKE-WIDTH);
}
.icon path {
  stroke-width: inherit;
}
.no-svg .icon {
  display: none;
}
.icon circle,
.icon ellipse,
.icon g,
.icon line,
.icon path,
.icon polygon,
.icon polyline,
.icon rect {
  fill: inherit;
  stroke: inherit;
}

.icon-arrow-right {
  transition: transform 0.25s ease-out;
}

.icon-media-video path,
.icon-media-model path {
  fill: none;
  stroke: none;
}

.icon-media-video .icon-media-video-outline,
.icon-media-model .icon-media-model-outline {
  fill: var(--bg);
  opacity: 0.6;
}

.icon-media-video .icon-media-video-element,
.icon-media-model .icon-media-model-element {
  fill: currentColor;
}

.icon-cancel {
  pointer-events: none;
}

/*============================================================================
  A generic way to visually hide content while
  remaining accessible to screen readers (h5bp.com)
==============================================================================*/
.icon-fallback-text {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.no-svg .icon-fallback-text {
  position: static !important;
  overflow: auto;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
}

/*================ Payment Icons ================*/
.payment-icons {
  -webkit-user-select: none;
  user-select: none;
  cursor: default;
}

/**
 * Rich Text Editor
 */
.rte img {
  max-width: 100%;
  height: auto;
  margin: 10px 0;
}
.rte a {
  display: inline-block;
}
.rte table {
  table-layout: fixed;
}
.rte ul,
.rte ol {
  margin: 0 0 calc(var(--gutter) / 2) var(--gutter);
}
.rte ul {
  list-style: disc outside;
}
.rte ul ul {
  list-style: circle outside;
}
.rte ul ul ul {
  list-style: square outside;
}

.text-center.rte ul,
.text-center.rte ol,
.text-center .rte ul,
.text-center .rte ol {
  margin-left: 0;
  list-style-position: inside;
}

.rte-table {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.rte__video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto;
}
.rte__video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.rte__table-wrapper {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

/**
 * Responsive tables
 * defined with .responsive-table on table element.
 */
@media only screen and (max-width: 749px) {
  .responsive-table {
    width: 100%;
  }
  .responsive-table thead {
    display: none;
  }
  .responsive-table tr {
    display: block;
  }
  .responsive-table tr,
.responsive-table td {
    float: left;
    clear: both;
    width: 100%;
  }
  .responsive-table th,
.responsive-table td {
    display: block;
    text-align: right;
    padding: calc(var(--gutter) / 2);
    margin: 0;
  }
  .responsive-table td::before {
    content: attr(data-label);
    float: left;
    text-align: center;
    padding-right: 10px;
  }

  .responsive-table-row + .responsive-table-row,
tfoot > .responsive-table-row:first-child {
    position: relative;
    margin-top: 10px;
    padding-top: calc(var(--gutter) / 2);
  }
  .responsive-table-row + .responsive-table-row::after,
tfoot > .responsive-table-row:first-child::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: calc(var(--gutter) / 2);
    right: calc(var(--gutter) / 2);
    border-bottom: 1px solid var(--COLOR-BORDER);
  }
}
/**
 * Links & Buttons
 */
:root {
  --radius: var(--RADIUS);
  --btn-radius: var(--RADIUS);
  --btn-top: 10px;
  --btn-left: 18px;
}
@media only screen and (max-width: 749px) {
  :root {
    --btn-top: 8px;
    --btn-left: 16px;
  }
}

button {
  width: auto;
  overflow: visible;
}

/*=== Button ====*/
.btn, .shopify-payment-button .shopify-payment-button__button--unbranded, #shopify-product-reviews .spr-button-primary, #challenge .shopify-challenge__button {
  -webkit-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: auto;
  padding: var(--btn-top) var(--btn-left);
  border: 1px solid var(--btn-border);
  border-radius: var(--btn-radius);
  background-color: var(--btn-bg);
  font-family: var(--BTN-FONT-STACK);
  font-size: var(--BTN-FONT-SIZE);
  line-height: var(--line-height-normal);
  color: var(--btn-text);
  font-style: var(--BTN-FONT-STYLE);
  font-weight: var(--BTN-FONT-WEIGHT);
  letter-spacing: var(--BTN-LETTER-SPACING);
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  text-transform: var(--BTN-UPPERCASE);
  transition: 0.25s ease-out;
  transition-property: color, background, border;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.btn span, .shopify-payment-button .shopify-payment-button__button--unbranded span, #shopify-product-reviews .spr-button-primary span, #challenge .shopify-challenge__button span {
  position: relative;
  vertical-align: middle;
}
.btn span.btn__added, .shopify-payment-button .shopify-payment-button__button--unbranded span.btn__added, #shopify-product-reviews .spr-button-primary span.btn__added, #challenge .shopify-challenge__button span.btn__added,
.btn span.btn__plus,
.shopify-payment-button .shopify-payment-button__button--unbranded span.btn__plus,
#shopify-product-reviews .spr-button-primary span.btn__plus,
#challenge .shopify-challenge__button span.btn__plus,
.btn span.btn__loader,
.shopify-payment-button .shopify-payment-button__button--unbranded span.btn__loader,
#shopify-product-reviews .spr-button-primary span.btn__loader,
#challenge .shopify-challenge__button span.btn__loader,
.btn span.btn__error,
.shopify-payment-button .shopify-payment-button__button--unbranded span.btn__error,
#shopify-product-reviews .spr-button-primary span.btn__error,
#challenge .shopify-challenge__button span.btn__error {
  top: 50%;
  left: 50%;
  position: absolute;
}
.btn[disabled], .shopify-payment-button [disabled].shopify-payment-button__button--unbranded, #shopify-product-reviews [disabled].spr-button-primary, #challenge [disabled].shopify-challenge__button {
  cursor: default;
  opacity: 0.5;
}
.btn[disabled]:after, .shopify-payment-button [disabled].shopify-payment-button__button--unbranded:after, #shopify-product-reviews [disabled].spr-button-primary:after, #challenge [disabled].shopify-challenge__button:after {
  content: none;
}

@media (hover: hover) {
  .btn:hover, .shopify-payment-button .shopify-payment-button__button--unbranded:hover, #shopify-product-reviews .spr-button-primary:hover, #challenge .shopify-challenge__button:hover {
    border-color: var(--btn-border-hover);
    color: var(--btn-text-hover);
  }
}
.btn:not(.btn--text) span:not([class]), .shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--text) span:not([class]), #shopify-product-reviews .spr-button-primary:not(.btn--text) span:not([class]), #challenge .shopify-challenge__button:not(.btn--text) span:not([class]),
.btn:not(.btn--text) span.btn__text,
.shopify-payment-button .shopify-payment-button__button--unbranded:not(.btn--text) span.btn__text,
#shopify-product-reviews .spr-button-primary:not(.btn--text) span.btn__text,
#challenge .shopify-challenge__button:not(.btn--text) span.btn__text {
  display: block;
  height: 100%;
  transform: translateZ(0);
}

/*=== Button with arrow icon ====*/
.btn .icon-arrow-right, .shopify-payment-button .shopify-payment-button__button--unbranded .icon-arrow-right, #shopify-product-reviews .spr-button-primary .icon-arrow-right, #challenge .shopify-challenge__button .icon-arrow-right {
  display: inline-block;
  margin: -2px 0 -2px 4px;
  will-change: transform;
  flex-basis: 0 0 var(--icon-size, 20px);
}

.btn--text span:not([class]), .product__reviews .spr-summary-actions-newreview span:not([class]),
.btn--text span.btn__text,
.product__reviews .spr-summary-actions-newreview span.btn__text,
.btn--text .icon-arrow-right,
.product__reviews .spr-summary-actions-newreview .icon-arrow-right {
  height: calc(var(--BTN-FONT-SIZE) * 2 + 10px);
}
.btn--text .icon-arrow-right, .product__reviews .spr-summary-actions-newreview .icon-arrow-right {
  margin: 0 0 0 4px;
}

@media (hover: hover) {
  .btn .icon-arrow-right, .shopify-payment-button .shopify-payment-button__button--unbranded .icon-arrow-right, #shopify-product-reviews .spr-button-primary .icon-arrow-right, #challenge .shopify-challenge__button .icon-arrow-right {
    transition: transform 0.5s ease;
    transform: translateZ(0);
  }

  .btn:hover .icon-arrow-right, .shopify-payment-button .shopify-payment-button__button--unbranded:hover .icon-arrow-right, #shopify-product-reviews .spr-button-primary:hover .icon-arrow-right, #challenge .shopify-challenge__button:hover .icon-arrow-right {
    transform: translate3d(5px, 0, 0);
  }
}
/*=== Button with bag icon ====*/
.btn .icon-bag, .shopify-payment-button .shopify-payment-button__button--unbranded .icon-bag, #shopify-product-reviews .spr-button-primary .icon-bag, #challenge .shopify-challenge__button .icon-bag {
  flex: 0 0 auto;
  margin: 0 10px 0 0;
  --icon-size: calc(20px * var(--FONT-ADJUST-BODY));
}

/*=== Button Primary ====*/
.btn--primary, .shopify-payment-button .shopify-payment-button__button, #shopify-product-reviews .spr-button-primary, .shopify-payment-button__button--unbranded {
  --btn-border: var(--BTN-PRIMARY-BORDER-COLOR);
  --btn-bg: var(--BTN-PRIMARY-BG-COLOR);
  --btn-text: var(--BTN-PRIMARY-TEXT-COLOR);
}

.btn--primary.btn--solid, .shopify-payment-button .shopify-payment-button__button, #shopify-product-reviews .spr-button-primary, .shopify-payment-button__button--unbranded {
  --btn-border: var(--BTN-PRIMARY-BG-COLOR);
  --btn-bg: var(--BTN-PRIMARY-BG-COLOR);
  --btn-text: var(--BTN-PRIMARY-TEXT-COLOR);
  --btn-border-hover: var(--BTN-PRIMARY-BG-COLOR-BRIGHTER);
  --btn-bg-hover: var(--BTN-PRIMARY-BG-COLOR-BRIGHTER);
  --btn-text-hover: var(--BTN-PRIMARY-TEXT-COLOR);
}

.btn--primary.btn--outline, .shopify-payment-button .btn--outline.shopify-payment-button__button, #shopify-product-reviews .btn--outline.spr-button-primary, .btn--outline.shopify-payment-button__button--unbranded {
  --btn-border: var(--BTN-PRIMARY-BORDER-COLOR);
  --btn-bg: transparent;
  --btn-text: var(--BTN-PRIMARY-BORDER-COLOR);
  --btn-border-hover: var(--BTN-PRIMARY-BORDER-COLOR);
  --btn-bg-hover: transparent;
  --btn-text-hover: var(--BTN-PRIMARY-BORDER-COLOR);
}

.btn--primary.btn--text, .shopify-payment-button .btn--text.shopify-payment-button__button, #shopify-product-reviews .btn--text.spr-button-primary, .product__reviews .btn--primary.spr-summary-actions-newreview, .product__reviews .shopify-payment-button .spr-summary-actions-newreview.shopify-payment-button__button, .shopify-payment-button .product__reviews .spr-summary-actions-newreview.shopify-payment-button__button, .product__reviews #shopify-product-reviews .spr-summary-actions-newreview.spr-button-primary, #shopify-product-reviews .product__reviews .spr-summary-actions-newreview.spr-button-primary, .btn--text.shopify-payment-button__button--unbranded, .product__reviews .shopify-payment-button__button--unbranded.spr-summary-actions-newreview {
  --btn-text: var(--BTN-PRIMARY-BORDER-COLOR);
  --btn-text-hover: var(--BTN-PRIMARY-BORDER-COLOR);
}

/*=== Button Secondary ====*/
.btn--secondary {
  --btn-border: var(--BTN-SECONDARY-BORDER-COLOR);
  --btn-bg: var(--BTN-SECONDARY-BG-COLOR);
  --btn-text: var(--BTN-SECONDARY-TEXT-COLOR);
}

.btn--secondary.btn--solid, .shopify-payment-button .btn--secondary.shopify-payment-button__button, #shopify-product-reviews .btn--secondary.spr-button-primary, .btn--secondary.shopify-payment-button__button--unbranded {
  --btn-border: var(--BTN-SECONDARY-BG-COLOR);
  --btn-bg: var(--BTN-SECONDARY-BG-COLOR);
  --btn-text: var(--BTN-SECONDARY-TEXT-COLOR);
  --btn-border-hover: var(--BTN-SECONDARY-BG-COLOR-BRIGHTER);
  --btn-bg-hover: var(--BTN-SECONDARY-BG-COLOR-BRIGHTER);
  --btn-text-hover: var(--BTN-SECONDARY-TEXT-COLOR);
}

.btn--secondary.btn--outline {
  --btn-border: var(--BTN-SECONDARY-BORDER-COLOR);
  --btn-bg: transparent;
  --btn-text: var(--BTN-SECONDARY-BORDER-COLOR);
  --btn-border-hover: var(--BTN-SECONDARY-BORDER-COLOR);
  --btn-bg-hover: transparent;
  --btn-text-hover: var(--BTN-SECONDARY-BORDER-COLOR);
}

.btn--secondary.btn--text, .product__reviews .btn--secondary.spr-summary-actions-newreview {
  --btn-text: var(--BTN-SECONDARY-BORDER-COLOR);
  --btn-text-hover: var(--BTN-SECONDARY-BORDER-COLOR);
}

/*=== Button White ====*/
.btn--white {
  --btn-border: var(--TEXT-BTN-BORDER-WHITE);
  --btn-bg: var(--TEXT-BTN-BG-WHITE);
  --btn-text: var(--TEXT-BTN-WHITE);
}

.btn--white.btn--solid, .shopify-payment-button .btn--white.shopify-payment-button__button, #shopify-product-reviews .btn--white.spr-button-primary, .btn--white.shopify-payment-button__button--unbranded {
  --btn-border: #FFF;
  --btn-bg: #FFF;
  --btn-text: #000;
  --btn-border-hover: var(--TEXT-BTN-BG-WHITE-BRIGHTER);
  --btn-bg-hover: var(--TEXT-BTN-BG-WHITE-BRIGHTER);
  --btn-text-hover: #000;
}

.btn--white.btn--outline {
  --btn-border: #FFF;
  --btn-bg: transparent;
  --btn-text: #FFF;
  --btn-border-hover: #FFF;
  --btn-bg-hover: transparent;
  --btn-text-hover: #FFF;
}

.btn--white.btn--text, .product__reviews .btn--white.spr-summary-actions-newreview {
  --btn-text: #FFF;
  --btn-text-hover: #FFF;
}

/*=== Button Black ====*/
.btn--black {
  --btn-border: var(--TEXT-BTN-BORDER-BLACK);
  --btn-bg: var(--TEXT-BTN-BG-BLACK);
  --btn-text: var(--TEXT-BTN-BLACK);
}

.btn--black.btn--solid, .shopify-payment-button .btn--black.shopify-payment-button__button, #shopify-product-reviews .btn--black.spr-button-primary, .btn--black.shopify-payment-button__button--unbranded {
  --btn-border: #000;
  --btn-bg: #000;
  --btn-text: #FFF;
  --btn-border-hover: var(--TEXT-BTN-BG-BLACK-BRIGHTER);
  --btn-bg-hover: var(--TEXT-BTN-BG-BLACK-BRIGHTER);
  --btn-text-hover: #FFF;
}

.btn--black.btn--outline {
  --btn-border: #000;
  --btn-bg: transparent;
  --btn-text: #000;
  --btn-border-hover: #000;
  --btn-bg-hover: transparent;
  --btn-text-hover: #000;
}

.btn--black.btn--text, .product__reviews .btn--black.spr-summary-actions-newreview {
  --btn-text: #000;
  --btn-text-hover: #000;
}

/*=== Button Sizes ====*/
.btn--large {
  width: 100%;
  max-width: 260px;
  --btn-top: 16px;
  --btn-left: 22px;
}
@media only screen and (max-width: 749px) {
  .btn--large {
    --btn-top: 12px;
    --btn-left: 18px;
  }
}

.btn--small {
  --btn-top: 7px;
  --btn-left: 12px;
}
.btn--small .icon-arrow-right {
  --icon-size: 16px;
}

/*=== Button Text ====*/
.btn--text, .product__reviews .spr-summary-actions-newreview {
  --btn-top: 0;
  --btn-left: 0;
  --btn-radius: 0;
  --btn-border: transparent;
  --btn-border-hover: transparent;
  --btn-bg: transparent;
  width: auto;
  max-width: none;
  display: inline-block;
}
.btn--text span, .product__reviews .spr-summary-actions-newreview span {
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 100% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
  line-height: 2;
  padding: 5px 0;
}
@media (hover: hover) {
  .btn--text span:hover, .product__reviews .spr-summary-actions-newreview span:hover {
    background-size: 0% 1px;
  }
}

.btn--text-no-underline span {
  background: none;
}

/*=== Button Outline and Button Solid ====*/
.btn--outline,
.btn--solid,
.shopify-payment-button .shopify-payment-button__button,
#shopify-product-reviews .spr-button-primary,
.shopify-payment-button__button--unbranded {
  overflow: hidden;
  z-index: 1;
}

.btn--outline:after,
.btn--solid:after,
.shopify-payment-button .shopify-payment-button__button:after,
#shopify-product-reviews .spr-button-primary:after,
.shopify-payment-button__button--unbranded:after {
  content: "";
  position: absolute;
  top: 0;
  left: -60px;
  z-index: -1;
  width: calc(100% + 120px);
  height: 100%;
  background-color: currentColor;
  opacity: 0.1;
  transform: translate3d(-100%, 0, 0) skew(30deg);
  transition: transform 0.5s cubic-bezier(0.33, 0, 0, 1);
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.btn--solid:after, .shopify-payment-button .shopify-payment-button__button:after, #shopify-product-reviews .spr-button-primary:after, .shopify-payment-button__button--unbranded:after {
  background-color: var(--btn-bg-hover);
  opacity: 1;
}

@media (hover: hover) {
  .btn--outline:hover:after,
.btn--solid:hover:after,
.shopify-payment-button .shopify-payment-button__button:hover:after,
#shopify-product-reviews .spr-button-primary:hover:after,
.shopify-payment-button__button--unbranded:hover:after {
    transform: translateZ(0);
  }
}
.btn--half {
  margin: 0;
  min-width: 50%;
}
@media only screen and (max-width: 749px) {
  .btn--half {
    width: 100%;
  }
}

.btn--full {
  width: 100%;
  min-width: 100%;
  max-width: 100%;
}

/*=== Scroll to top button ==*/
.btn--scroll-top {
  --icon-size: 28px;
  --btn-size: 40px;
  position: fixed;
  right: var(--outer);
  bottom: var(--outer);
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
  width: var(--btn-size);
  height: var(--btn-size);
  padding: 0;
  overflow: hidden;
  padding-left: 0;
  padding-right: 0;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  opacity: 0;
  visibility: hidden;
  transform: translateY(100%);
  transition: opacity 0.3s ease, box-shadow 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
}
.btn--scroll-top:after {
  left: -30%;
}
.btn--scroll-top .icon {
  stroke: currentColor;
}
.btn--scroll-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
  transition-delay: 0s;
}
@media only screen and (max-width: 749px) {
  .btn--scroll-top {
    right: 16px;
    bottom: 16px;
  }
}

.inline-nav {
  list-style: none;
  list-style-type: none;
  text-align: center;
  padding: 0;
  margin: 30px 0 30px 0;
}
.inline-nav li {
  display: inline-block;
  padding: 5px 0;
  margin: 5px 20px;
}
@media only screen and (max-width: 749px) {
  .inline-nav li {
    margin: 5px 15px 5px 0;
  }
}
.inline-nav li a {
  color: var(--COLOR-LINK);
  position: relative;
}
.inline-nav li a:after {
  content: "";
  margin: auto;
  width: 10%;
  height: 2px;
  position: absolute;
  bottom: -4px;
  left: 0;
  opacity: 0;
  background: var(--COLOR-LINK-HOVER);
  transition: 0.25s ease-out;
  transition-property: color, background, border;
}
.inline-nav li.inline-nav--active a,
.inline-nav li a:hover {
  color: var(--COLOR-LINK);
}
.inline-nav li.inline-nav--active a:after,
.inline-nav li a:hover:after {
  color: var(--COLOR-LINK);
  opacity: 1;
  width: 100%;
}

.blog__title + .inline-nav {
  margin-top: 0;
}

.aos-initialized a[data-aos][data-aos][data-aos-delay="200"].aos-animate,
.aos-initialized a[data-aos][data-aos][data-aos-delay="500"].aos-animate {
  transition: 0.25s ease-out;
  transition-property: color, background, border;
}

.btn__added {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 8px;
  border-left: 1px solid var(--btn-text);
  border-bottom: 1px solid var(--btn-text);
  margin-top: -2px;
  transform: translate(-50%, -50%) rotate(-45deg);
  opacity: 0;
}

.btn__added,
.btn__loader {
  opacity: 0;
}

.btn__error {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  min-height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: inherit;
  color: var(--COLOR-ERROR);
  background-color: var(--COLOR-ERROR-BG);
  opacity: 0;
  visibility: hidden;
}

.btn__plus {
  --icon-size: 24px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: var(--icon-size);
  height: var(--icon-size);
  margin: auto;
  background: currentColor;
  -webkit-mask-image: var(--icon-add-cart);
          mask-image: var(--icon-add-cart);
  -webkit-mask-size: cover;
          mask-size: cover;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: center center;
          mask-position: center center;
}

.btn__plus,
.btn__text,
.btn__loader,
.btn__added,
.btn__error {
  transition: opacity 0.5s, visibility 0.5s;
}

.is-loading.btn, .shopify-payment-button .is-loading.shopify-payment-button__button--unbranded, #shopify-product-reviews .is-loading.spr-button-primary, #challenge .is-loading.shopify-challenge__button {
  --btn-text: var(--primary);
  --btn-text-hover: var(--primary);
  --btn-border: var(--primary);
  --btn-border-hover: var(--primary);
  --btn-bg: transparent;
  --btn-bg-hover: transparent;
}

.is-loading > .btn__text,
.is-loading > .btn__plus,
.is-loading > .btn__added {
  opacity: 0;
}

.is-loading > .btn__loader {
  opacity: 1;
}

.is-loading > .btn__loader circle ~ circle {
  animation-play-state: running;
}

.is-loading.btn, .shopify-payment-button .is-loading.shopify-payment-button__button--unbranded, #shopify-product-reviews .is-loading.spr-button-primary, #challenge .is-loading.shopify-challenge__button,
.is-loading.btn[data-add-to-cart],
.is-loading.btn[data-add-to-cart-bar] {
  background: transparent;
}

.is-added.btn, .shopify-payment-button .is-added.shopify-payment-button__button--unbranded, #shopify-product-reviews .is-added.spr-button-primary, #challenge .is-added.shopify-challenge__button,
.is-added.btn[data-add-to-cart],
.is-added.btn[data-add-to-cart-bar] {
  --btn-text: var(--primary);
  --btn-text-hover: var(--primary);
  --btn-border: var(--primary);
  --btn-border-hover: var(--primary);
  --btn-bg: transparent;
  --btn-bg-hover: transparent;
  opacity: 1;
  background: transparent !important;
}
.is-added.btn:after, .shopify-payment-button .is-added.shopify-payment-button__button--unbranded:after, #shopify-product-reviews .is-added.spr-button-primary:after, #challenge .is-added.shopify-challenge__button:after,
.is-added.btn[data-add-to-cart]:after,
.is-added.btn[data-add-to-cart-bar]:after {
  content: none;
}

.is-added > .btn__added {
  opacity: 1;
}

.is-added > .btn__plus,
.is-added > .btn__text,
.is-added > .btn__loader {
  opacity: 0;
}

.is-added.btn:after, .shopify-payment-button .is-added.shopify-payment-button__button--unbranded:after, #shopify-product-reviews .is-added.spr-button-primary:after, #challenge .is-added.shopify-challenge__button:after {
  content: none;
}

.has-error .btn__loader,
.has-error .btn__text,
.has-error .btn__plus {
  opacity: 0;
  visibility: hidden;
}

.has-error.btn:after, .shopify-payment-button .has-error.shopify-payment-button__button--unbranded:after, #shopify-product-reviews .has-error.spr-button-primary:after, #challenge .has-error.shopify-challenge__button:after {
  content: none;
}

.has-error .btn__error {
  opacity: 1;
  visibility: visible;
}

/*================ SVG Loader ================*/
.svg-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.svg-loader circle {
  stroke-width: 1;
  stroke: var(--primary-fade);
  fill: none;
}
.svg-loader circle ~ circle {
  stroke: var(--primary);
  stroke-dashoffset: 88;
  animation: animate-svg 1s linear infinite;
  animation-play-state: paused;
}

@keyframes animate-svg {
  0% {
    stroke-dashoffset: 88;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
.badge {
  border: none;
  padding: 3px 6px;
  background-color: var(--COLOR-BORDER-LIGHT);
  color: var(--COLOR-TEXT);
  border-radius: 3px;
}

.grecaptcha-badge {
  visibility: hidden;
}

/**
 * Forms
 */
input,
textarea,
select,
.popout__toggle,
.input-group {
  border: 1px solid var(--COLOR-BORDER);
  font-size: var(--FONT-SIZE-BASE);
  border-radius: var(--RADIUS-SELECT);
  max-width: 100%;
  padding: 9px 16px;
  margin: 7px 0;
  background: var(--TRANSPARENT);
  color: var(--COLOR-TEXT);
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
}
@media only screen and (max-width: 749px) {
  input,
textarea,
select,
.popout__toggle,
.input-group {
    padding: 9px 10px;
    font-size: 1rem;
  }
}
input:focus,
textarea:focus,
select:focus,
.popout__toggle:focus,
.input-group:focus {
  border: 1px solid var(--COLOR-BORDER);
}
input[disabled],
textarea[disabled],
select[disabled],
[disabled].popout__toggle,
.input-group[disabled] {
  cursor: default;
  background-color: var(--COLOR-BORDER);
  border-color: var(--COLOR-BORDER-DARK);
}
input:-webkit-autofill, input:-webkit-autofill:hover, input:-webkit-autofill:focus, input:-webkit-autofill:active,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
textarea:-webkit-autofill:active,
select:-webkit-autofill,
.popout__toggle:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus,
select:-webkit-autofill:active,
.input-group:-webkit-autofill,
.input-group:-webkit-autofill:hover,
.input-group:-webkit-autofill:focus,
.input-group:-webkit-autofill:active {
  -webkit-transition: background-color 5000s ease-in-out 0s, border-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s, border-color 5000s ease-in-out 0s;
  -webkit-text-fill-color: var(--COLOR-TEXT) !important;
}

textarea {
  min-height: 100px;
  padding: 16px;
}
@media only screen and (max-width: 749px) {
  textarea {
    padding: 9px 10px;
  }
}

.form-field {
  width: 100%;
  max-width: 400px;
  margin: 0 auto 20px;
  line-height: 1;
  text-align: left;
  position: relative;
}

.form-field label {
  background: var(--bg);
  color: var(--text);
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY) );
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  left: 9px;
  opacity: 0;
  padding: 0 0.5em;
  position: absolute;
  top: 2em;
  transition: 0.25s ease-out;
  transition-property: color, background, border;
  z-index: -1;
}
.form-field label.label--float {
  opacity: 1;
  top: -0.8em;
  z-index: 1;
}

.form-field select, .form-field .popout__toggle,
.form-field input[type=text],
.form-field input[type=password],
.form-field input[type=email],
.form-field input[type=number],
.form-field input[type=tel],
.form-field textarea {
  display: block;
  width: 100%;
}

input[type=text],
input[type=password],
input[type=email],
input[type=number],
input[type=tel],
textarea {
  -webkit-appearance: none;
}

input[type=checkbox] {
  margin: 4px 3px 4px 0;
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  -o-appearance: checkbox;
  appearance: checkbox;
}

input[type=radio] {
  margin: 11px 3px 4px 0px;
  -webkit-appearance: radio;
  -moz-appearance: radio;
  -o-appearance: radio;
  appearance: radio;
}

legend {
  padding-bottom: 6px;
}

.label--block {
  display: block;
}

/*================ Checkbox ================*/
.checkbox {
  position: relative;
}

.checkbox input[type=checkbox] {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 0;
  padding: 0;
  margin: 0;
  opacity: 0;
}

.checkbox input[type=checkbox] + label {
  display: flex;
  align-items: center;
  cursor: pointer;
}

.checkbox input[type=checkbox] + label:before {
  content: "";
  align-self: flex-start;
  flex: 0 0 auto;
  display: inline-block;
  width: 1.2em;
  height: 1.2em;
  border: 1px solid var(--text-light);
  margin-right: 10px;
  background: var(--bg);
}

.checkbox input[type=checkbox]:checked + label:before {
  background: var(--COLOR-PRIMARY);
  box-shadow: inset 0 0 0 2px var(--bg);
}

/*================ Input Group ================*/
.input-group {
  background-color: var(--TRANSPARENT);
  position: relative;
  display: table;
  border-collapse: separate;
  padding: 0;
}
.input-group .btn, .input-group .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .input-group .shopify-payment-button__button--unbranded, .input-group #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .input-group .spr-button-primary, .input-group #challenge .shopify-challenge__button, #challenge .input-group .shopify-challenge__button {
  box-shadow: none;
}
.input-group input,
.input-group input:focus,
.input-group input:active {
  background-color: var(--TRANSPARENT);
  border: none;
  box-shadow: none;
  margin: 0;
}
.input-group input::-moz-focus-inner,
.input-group input:focus::-moz-focus-inner,
.input-group input:active::-moz-focus-inner {
  border: 0;
  padding: 0;
  margin-top: -1px;
  margin-bottom: -1px;
}

.input-group-field,
.input-group-btn {
  display: table-cell;
  vertical-align: middle;
  margin: 0;
}

.input-group .input-group-field {
  width: 100%;
  margin-bottom: 0;
}

.input-group-btn {
  position: relative;
  white-space: nowrap;
  width: 1%;
  padding: 0;
  margin: 0;
}

.form__legal {
  max-width: none;
  line-height: 1;
  text-align: left;
}
.form__legal p {
  font-style: var(--FONT-STYLE-BODY-ITALIC);
  color: var(--text-a70);
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY) );
}
.form__legal p a {
  padding-bottom: 0;
  background: none;
}

.small-newsletter .form__legal,
.modal--newsletter .form__legal,
.account--login .form__legal {
  margin-top: 15px;
}
.small-newsletter .form__legal p,
.modal--newsletter .form__legal p,
.account--login .form__legal p {
  margin: 0;
}

/*================ Custom select style ================*/
select, .popout__toggle {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-image: var(--ICON-SELECT);
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-color: transparent;
  background-size: 18px auto;
  padding-right: 28px;
  text-indent: 0.01px;
  text-overflow: unset;
  cursor: pointer;
}

select::-ms-expand, .popout__toggle::-ms-expand {
  display: none;
}

/*================ Error styles ================*/
input.input-error,
select.input-error,
.input-error.popout__toggle,
textarea.input-error {
  border-color: var(--COLOR-ERROR-BORDER);
  background-color: var(--COLOR-ERROR-BG);
  color: var(--COLOR-ERROR);
}

form .errors,
.form-errors {
  padding: var(--inner);
  border: 1px solid var(--COLOR-ERROR-BORDER);
  border-radius: var(--RADIUS-SELECT);
  background-color: var(--COLOR-ERROR-BG);
  color: var(--COLOR-ERROR);
}
form .errors ul,
.form-errors ul {
  list-style-type: none;
  margin: 10px 20px;
  padding: 0;
  color: inherit;
}

.form-success {
  border: 1px solid var(--COLOR-BORDER);
  border-radius: var(--RADIUS-SELECT);
  margin: 0 0 1.875rem 0;
  padding: var(--inner);
  color: var(--COLOR-TEXT);
  box-shadow: 0 1px 3px var(--hairline), 0 1px 2px var(--hairline);
}

.contact-form .form-success {
  max-width: 400px;
  margin: 30px auto;
}

/*================ Field ================*/
.field {
  --border: var(--text-a35, var(--text));
  display: block;
  width: 100%;
  border: 0;
  border-bottom: 1px solid var(--border);
  padding: 1em 0;
  border-radius: 0;
  color: var(--text);
}

.field:focus {
  border: 0;
  border-bottom: 1px solid var(--border);
}

.field::placeholder,
.field:-webkit-autofill,
.field:-webkit-autofill:hover,
.field:-webkit-autofill:focus,
.field:-webkit-autofill:active {
  -webkit-text-fill-color: var(--text-a75);
}

.template- .main-content > *:not(.shopify-policy__container) {
  margin-top: 60px;
}

/**
 * Blank States
 */
.placeholder-svg {
  display: block;
  fill: var(--COLOR-TEXT-LIGHT);
  background-color: var(--COLOR-BG-SECONDARY);
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  border: 1px solid var(--COLOR-BG-SECONDARY);
}

.placeholder-noblocks {
  position: relative;
  z-index: 11;
  width: 100%;
  padding: 40px;
  text-align: center;
}

.placeholder-background {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.placeholder-background .icon {
  border: 0;
}

.lazy-image {
  display: block;
}

.lazy-image--backfill::after {
  content: none;
  display: none;
}

.lazy-image--backfill.is-loading {
  position: relative;
  overflow: hidden;
  background: var(--bg-accent);
  z-index: 1;
}
.lazy-image--backfill.is-loading::after {
  content: "";
  display: block;
  position: absolute;
  top: -10%;
  left: -10%;
  right: -10%;
  bottom: -10%;
  z-index: -1;
  animation-duration: 1.6s;
  animation-fill-mode: forwards;
  animation-iteration-count: infinite;
  animation-name: shimmer;
  animation-timing-function: linear;
  background: linear-gradient(98deg, var(--bg-accent) 16%, var(--bg-accent-lighten) 32%, var(--bg-accent) 48%);
  transform: translateX(-100%);
}

.no-js .lazy-image--backfill.is-loading::after {
  content: none;
}

.no-js .lazy-image img.is-loading {
  opacity: 1;
}

@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
.lazy-image img {
  transition: opacity 1s ease;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.lazy-image img.is-loading {
  opacity: 0;
}

/* === snippets/image-hero.liquid === */
.image__fill {
  position: relative;
  overflow: hidden;
  width: 100%;
}
.image__fill img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  image-rendering: auto;
}

/* === snippets/image.liquid === */
.image-wrapper {
  display: block;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: calc(1 / var(--aspect-ratio) * 100%);
}
.image-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  image-rendering: auto;
}
.image-wrapper .svg-placeholder {
  position: absolute;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 750px) {
  .image-wrapper.mobile {
    display: none;
  }
}
@media only screen and (max-width: 749px) {
  .image-wrapper.desktop {
    display: none;
  }
}

.image-wrapper--cover {
  height: 100%;
  padding-top: 0;
}
.image-wrapper--cover img {
  object-fit: cover;
}

img.fit-cover {
  object-fit: cover;
}

/* === snippets/hero.liquid === */
.image__hero__frame {
  flex: 1;
  position: relative;
  overflow: hidden;
  height: 100%;
}

@media only screen and (min-width: 750px) {
  .image__hero__frame.image-height {
    padding-top: calc(1 / var(--aspect-ratio) * 100%);
    min-height: 100%;
    height: auto;
  }
}

@media only screen and (max-width: 749px) {
  .image__hero__frame.image-height--mobile {
    padding-top: calc(1 / var(--aspect-ratio) * 100%);
    min-height: 100%;
    height: auto;
  }
}

.image__hero__pane {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  min-height: inherit;
}

.image__hero__scale {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  min-height: inherit;
}

.image--empty {
  background: var(--bg-accent);
}

[data-parallax-wrapper] .image__hero__pane {
  display: flex;
  align-items: center;
}

[data-parallax-wrapper] .image__hero__scale {
  min-height: var(--PARALLAX-STRENGTH-MIN);
  max-height: var(--PARALLAX-STRENGTH-MAX);
}

/* == Link that fills a position: relative image wrapper == */
.link-over-image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 20;
  will-change: opacity;
}
.link-over-image .image-wrapper {
  transition: transform 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  transform: scale(1);
}
.link-over-image:hover .image-wrapper {
  transform: scale(1.06);
}

.image-overlay-bottom {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  opacity: 0.5;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.3) 100%);
}

/* === image load animations === */
.fade-in-image .image__hero__scale > img {
  opacity: 0;
  transition: opacity 0.5s ease-in;
}

.no-js .fade-in-image .image__hero__scale > img,
.fade-in-image .image__hero__scale > img.is-loaded {
  opacity: 1;
}

.fade-in-image-zoom .image__hero__scale > img {
  opacity: 0;
  transform: scale(1.06);
  transition: opacity 0.65s cubic-bezier(0.215, 0.61, 0.355, 1), transform 2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.no-js .fade-in-image-zoom .image__hero__scale > img,
.fade-in-image-zoom .image__hero__scale > img.is-loaded {
  opacity: 1;
  transform: scale(1);
}

.no-js .image__hero__scale {
  padding-top: 0 !important;
}
.no-js .fade-in-image .image__hero__scale > img {
  opacity: 1;
}
.no-js .fade-in-image-zoom .image__hero__scale > img {
  opacity: 1;
  transform: scale(1);
}
.no-js [data-aos] {
  opacity: 1 !important;
  transform: none !important;
}

.inline-image {
  --image-width: 200px;
  display: inline-block;
  width: var(--image-width);
  margin: 2px 0;
  vertical-align: middle;
}
@media only screen and (max-width: 749px) {
  .inline-image {
    width: var(--image-width-mobile, var(--image-width));
  }
}

.inline-image__inner {
  overflow: hidden;
}

.inline-image__image {
  transition: transform 2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.inline-image__link:hover .inline-image__image {
  transform: scale(1.08);
}

/* Tooltip Default */
.tooltip-default {
  position: absolute;
  z-index: 7000;
  top: var(--tooltip-top, 0px);
  left: 0;
  right: 0;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.2s ease-out;
  overflow: hidden;
  padding-bottom: 20px;
}

.tooltip-default__inner {
  position: relative;
  display: inline-block;
  max-width: 100%;
}

.tooltip-default__arrow {
  position: absolute;
  top: 8px;
  left: 0;
  z-index: 1;
  margin-top: 3px;
  transition: top 0.2s ease-out;
}
.tooltip-default__arrow:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 12px;
  height: 12px;
  margin-left: -6px;
  background: var(--bg);
  border: 1px solid var(--border);
  -webkit-clip-path: polygon(0% 0%, 100% 100%, 0 100%);
          clip-path: polygon(0% 0%, 100% 100%, 0 100%);
  transform: rotate(135deg);
  content: "";
}

.tooltip-default__text {
  position: relative;
  top: 8px;
  margin-top: 10px;
  background: var(--bg);
  color: var(--text-dark);
  padding: 3px 10px;
  border-radius: 0;
  box-shadow: 0 0 0 1px var(--border);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  text-align: center;
  transition: top 0.2s ease-out;
}

.tooltip-default.is-hiding {
  opacity: 1;
}

.tooltip-default.is-hiding .tooltip-default__arrow,
.tooltip-default.is-hiding .tooltip-default__text {
  top: 0;
}

.tooltip-default.is-visible {
  transition: none;
  animation: tooltip-opacity 0.2s ease-out;
  animation-fill-mode: forwards;
}

.tooltip-default.is-visible .tooltip-default__arrow,
.tooltip-default.is-visible .tooltip-default__text {
  transition: none;
  animation: tooltip-top 0.2s ease-out;
  animation-fill-mode: forwards;
}

@keyframes tooltip-top {
  from {
    top: 8px;
  }
  to {
    top: 0;
  }
}
@keyframes tooltip-opacity {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
/*================ MODULES ================*/
/*====== Cart Dropdown ======*/
.drawer {
  --inner: 15px;
  --inner-offset: -15px;
}
.drawer.is-open .drawer__inner {
  visibility: visible;
  opacity: 1;
  transition-delay: 0s;
  transform: translate3d(-100%, 0, 0);
}
.drawer .cart__checkout {
  margin: 0 0 var(--inner);
}
.drawer .cart__acceptance__input ~ .cart__buttons {
  margin-top: var(--inner);
}
.drawer .is-hidden a,
.drawer .is-hidden button,
.drawer .is-hidden input,
.drawer .is-hidden textarea,
.drawer .is-hidden select,
.drawer .is-hidden .popout__toggle {
  visibility: hidden;
}

.cart__view {
  width: 100%;
  margin-bottom: var(--inner);
}

.drawer__inner {
  visibility: hidden;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  position: fixed;
  top: 0;
  left: 100vw;
  z-index: 6001;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  border-left: 1px solid var(--border);
  background-color: var(--bg);
  opacity: 0;
  transition: opacity 0.6s ease, transform 0.6s ease, visibility 0s linear 0.6s;
  transform: translate3d(0, 0, 0);
}
@media only screen and (min-width: 480px) {
  .drawer__inner {
    max-width: var(--DRAWER-WIDTH);
  }
}
@media only screen and (max-width: 749px) {
  .drawer__inner {
    border-left: none;
  }
}

.drawer__underlay {
  z-index: 6000;
}

.drawer .cart__widget + .cart__form {
  margin-top: -1px;
}
.drawer .cart__widget + .cart__foot__inner {
  border-top: 0;
}
.drawer .cart__foot__inner {
  padding: calc(var(--inner) - 2px) var(--inner);
}
.drawer .cart__note {
  margin: 0;
}
.drawer .cart__widget__title {
  padding-left: var(--inner);
}
.drawer .cart__widget__content__inner {
  padding-left: var(--inner);
  padding-right: var(--inner);
}
.drawer .product-upsell__errors .errors {
  margin-top: 0;
}

.drawer__head {
  position: relative;
  width: 100%;
  padding: var(--inner);
  border-bottom: 1px solid var(--border);
}
.drawer__head h3 {
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(11px * var(--FONT-ADJUST-BODY));
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-style: var(--FONT-STYLE-BODY);
  font-size: max(1em * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  margin: 0;
  line-height: 1;
  margin-bottom: -3px;
}
@media only screen and (max-width: 749px) {
  .drawer__head h3 {
    font-size: max(1em * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  }
}

.drawer__close {
  --icon-size: 24px;
  position: absolute;
  top: 50%;
  right: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  color: var(--link);
  background: transparent;
  border-radius: var(--RADIUS);
  font-size: 0;
  text-decoration: none;
  transform: translate3d(0, -50%, 0);
  transition: color 0.3s ease;
}
.drawer__close .icon {
  display: block;
  fill: currentColor;
  transition: transform 0.3s;
  pointer-events: none;
}
@media (hover: hover) {
  .drawer__close:hover {
    color: var(--link-hover);
  }
  .drawer__close:hover .icon {
    transform: rotate(90deg);
  }
}

.drawer__body {
  flex: 1;
  width: 100%;
  min-height: 250px;
  display: flex;
  flex-direction: column;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.drawer__empty:not(.is-hidden) {
  display: flex;
}

.drawer__empty {
  flex-grow: 1;
  max-height: 100%;
  width: 100%;
  padding: var(--inner);
}

.drawer__empty__inner {
  flex: 0 1 100%;
  margin: auto 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: var(--inner);
}

.drawer__foot {
  width: 100%;
  margin-top: auto;
}

.drawer__message {
  padding: 12px var(--inner);
}

.drawer__message--custom {
  min-height: 45px;
  color: var(--text);
  background: var(--COLOR-BG-SECONDARY);
  text-align: left;
  font-size: max(0.6875rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
}
.drawer__message--custom p {
  margin: 0;
}

.drawer__empty__message {
  text-align: center;
  transition: all 0.3s;
  margin: 0 auto;
}
.is-hidden .drawer__empty__message {
  padding: 0;
}

.drawer__empty__buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--inner);
  justify-items: center;
  margin: var(--inner) 0;
}

.drawer__empty__item {
  width: 100%;
}

.drawer__empty__item--odd--last {
  grid-column: 2 span/3;
  max-width: 100%;
}

.drawer__empty__item .btn, .drawer__empty__item .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .drawer__empty__item .shopify-payment-button__button--unbranded, .drawer__empty__item #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .drawer__empty__item .spr-button-primary, .drawer__empty__item #challenge .shopify-challenge__button, #challenge .drawer__empty__item .shopify-challenge__button {
  min-height: 100%;
}

.drawer__errors {
  position: sticky;
  top: 0;
  z-index: 9;
  border-left: none;
  border-right: none;
}

.drawer__errors .cart__errors__inner {
  padding: calc(var(--inner) / 2) var(--inner);
  margin: 0;
  border-left: none;
  border-right: none;
  border-radius: 0;
}

/*====== Cart Item ======*/
.cart__item {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: flex-start;
  padding: var(--inner);
  border-bottom: 1px solid var(--border);
}

.cart__item--no-border {
  border-bottom: none;
}

.cart__item.is-removed {
  overflow: hidden;
  animation: cartItemRemoved 0.5s ease;
  animation-fill-mode: forwards;
}

.cart__item__image {
  font-size: 0;
}
.cart__item__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.cart__item__image a {
  display: block;
  width: 90px;
  height: 90px;
  background-color: var(--bg);
  filter: brightness(var(--filter-bg));
  text-decoration: none;
  transition: opacity 0.3s;
}
.cart__item__image .lazy-image {
  height: 100%;
}
@media (hover: hover) {
  .cart__item__image a:hover {
    opacity: 0.75;
  }
}
.cart__item__image.image--empty a {
  background: transparent;
}

.cart__item__content {
  width: calc(100% - 90px);
  padding-left: 30px;
}

.cart__item__title {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  margin-bottom: 5px;
  line-height: 1.35;
  font-size: max(1rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .cart__item__title {
    font-size: max(1em * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  }
}

.cart__item__title a {
  transition: color 0.3s ease;
}

.cart__quantity-counter {
  display: flex;
  align-items: center;
}

.cart__item__remove {
  display: inline-block;
  margin-left: 10px;
  font-size: calc(0.6875rem * var(--FONT-ADJUST-BODY));
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

.cart__item__meta {
  margin-bottom: 10px;
}

.cart__item__selling-plan {
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  font-style: var(--FONT-STYLE-BODY-ITALIC);
}
.cart__item__selling-plan span {
  display: block;
  margin: 5px 0;
}
@media only screen and (max-width: 749px) {
  .cart__item__selling-plan {
    font-size: max(0.75em * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  }
}

.item__title .cart__item__selling-plan span {
  margin-bottom: 0px;
  margin-top: 10px;
}

.cart__item__selected-options,
.cart__item__property {
  margin: 2px 0 0;
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.3;
}
@media only screen and (max-width: 749px) {
  .cart__item__selected-options,
.cart__item__property {
    font-size: max(0.75em * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  }
}

/* ============================================================================
  #Site Header
============================================================================== */
.header-sections {
  display: flex;
  flex-direction: column;
}
.header-sections .page-announcement {
  order: -1;
}

.header__wrapper {
  --bg: var(--COLOR-MENU-BG);
  --text: var(--COLOR-MENU-LINK);
  --link: var(--COLOR-MENU-LINK);
  --link-hover: var(--COLOR-MENU-LINK-HOVER);
  --text-dark: var(--COLOR-MENU-LINK);
  --text-light: var(--COLOR-MENU-LINK);
  --text-transparent: var(--COLOR-MENU-TRANSPARENT);
  --text-transparent-hover: var(--COLOR-MENU-TRANSPARENT-HOVER);
  --highlight: var(--text);
  position: relative;
  transition: top 0.2s linear;
}

.header__desktop__upper {
  --bg: var(--COLOR-HEADER-BG);
  --text: var(--COLOR-HEADER-LINK);
  --link: var(--COLOR-HEADER-LINK);
  --link-hover: var(--COLOR-HEADER-LINK-HOVER);
  color: var(--text);
}

.header__desktop__lower {
  color: var(--text);
}

.has-line-design .header__desktop__lower {
  border-top: 1px solid var(--border);
}

.theme__header {
  position: absolute;
  z-index: 2300;
  width: 100%;
  color: var(--text);
}
.theme__header.has-border::before {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 10;
  pointer-events: none;
  transition: border-color 0.2s ease;
  border-bottom: 1px solid var(--text);
  opacity: var(--header-border-opacity, 1);
}

.header__mobile {
  --bg: var(--COLOR-HEADER-BG);
  --text: var(--COLOR-HEADER-LINK);
  --link: var(--COLOR-HEADER-LINK);
  --link-hover: var(--COLOR-HEADER-LINK-HOVER);
  color: var(--text);
  display: grid;
  min-height: 42px;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}

.header__mobile__bottom {
  --bg: var(--COLOR-MENU-BG);
  --text: var(--COLOR-MENU-LINK);
  --link: var(--COLOR-MENU-LINK);
  --link-hover: var(--COLOR-MENU-LINK-HOVER);
  grid-column: span 3;
  margin: 0 var(--outer-offset);
  background-color: var(--bg);
  color: var(--text);
}
@media only screen and (min-width: 750px) {
  .header__mobile__bottom {
    display: none;
  }
}

.has-line-design .header__mobile__bottom {
  border-top: 1px solid var(--border);
}

.header__mobile__nav {
  position: relative;
  transition: opacity 0.2s ease 0.1s, visibility 0.3s;
}

.header__mobile__nav::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -5;
  transition: opacity 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0.2s;
  opacity: 0;
  visibility: hidden;
  background: var(--bg);
}

.header__mobile__nav::before {
  content: "";
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  bottom: 0;
  width: calc(var(--outer) * 1.5);
  pointer-events: none;
  background: linear-gradient(to right, var(--bg-transparent) 0%, var(--bg) 90%);
  transition: opacity 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0.2s;
  opacity: 0;
  visibility: hidden;
}

.header__mobile__nav__scroller {
  display: flex;
  justify-content: space-between;
  overflow: hidden;
  overflow-x: auto;
  scroll-behavior: smooth;
  scroll-snap-type: x mandatory;
  scroll-padding: calc(var(--outer) - var(--inner));
  padding-left: calc(var(--outer) - var(--inner));
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.header__mobile__nav__scroller::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}

.header__mobile__nav .navlink {
  display: block;
  scroll-snap-align: start;
  white-space: nowrap;
  padding: var(--inner);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
}

.header__backfill {
  visibility: hidden;
  z-index: -1;
  position: relative;
  height: var(--header-height);
}

.header__logo {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
}

.header__logo__link {
  --logo-width: var(--logo-width-mobile);
  --link: var(--text);
  --link-hover: var(--text);
  width: var(--logo-width);
  display: block;
  text-decoration: none;
  position: relative;
  max-width: calc(100vw - 240px - var(--scrollbar-width));
}
@media only screen and (min-width: 750px) {
  .header__logo__link {
    --logo-width: var(--logo-width-desktop);
  }
}

.header__logo__link::before,
.js__header__stuck .header__logo__link::before,
.meganav--visible .header__logo__link::before {
  padding-bottom: var(--logo-padding);
}

.header__logo--image .header__logo__link::before {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  font-size: 0;
}

.header__logo__text {
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-NAV));
  height: 50px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  padding: 1em 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
}
.header__logo__text span {
  max-width: calc(50vw - 1em);
  text-align: center;
  line-height: 1;
  height: auto;
}

.header__logo__text--long {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-NAV));
}

@media only screen and (max-width: 749px) {
  .header__logo__text--break {
    word-break: break-all;
  }
}

.header__mobile__left,
.header__mobile__right {
  display: flex;
  min-height: inherit;
}

.header__mobile__right {
  margin-right: -9px;
}
@media only screen and (min-width: 750px) {
  .header__mobile__right {
    margin-right: -11px;
  }
}

.header__mobile__left,
.header__mobile__left .header__mobile__button .navlink {
  justify-content: flex-start;
}

.header__mobile__right,
.header__mobile__right .header__mobile__button .navlink {
  justify-content: flex-end;
}

.header__mobile__right,
.header__mobile__right .header__mobile__button {
  transform-style: preserve-3d;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.header__mobile__button {
  height: 100%;
}

@media only screen and (max-width: 989px) {
  .header__mobile__button--desktop {
    display: none;
  }
}

.header__mobile__button .navlink {
  height: 100%;
  display: flex;
  align-items: center;
  transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media only screen and (max-width: 749px) {
  .header__mobile__button .navtext {
    display: none;
  }
}

@media only screen and (max-width: 749px) {
  .header__mobile__button.navlink--toplevel::after {
    content: none;
  }
}

.header__mobile__button:last-child .header__mobile__hamburger,
.header__mobile__button:last-child .navlink {
  margin-right: 0;
}

.header__desktop__upper,
.header__desktop__lower,
.header__mobile {
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.header__desktop__upper,
.header__desktop__lower {
  display: flex;
  width: 100%;
  justify-content: space-around;
  align-items: center;
  flex-wrap: nowrap;
}

.header__desktop__bar__l,
.header__desktop__bar__c,
.header__desktop__bar__r {
  display: flex;
  align-self: stretch;
}

.header__desktop__bar__l {
  flex: 1 0 0;
  justify-content: flex-start;
}
.header__desktop__upper--reverse .header__desktop__bar__l {
  justify-content: center;
}

.header__desktop__bar__c {
  flex-grow: 0;
}
.header__desktop__upper--reverse .header__desktop__bar__c {
  order: -1;
  min-width: 33.33%;
}

.header__desktop__buttons {
  display: flex;
  align-items: center;
}
.header__desktop__buttons .socials {
  margin-right: 3px;
}

.navlink--toplevel,
.header__desktop__button .navlink {
  align-items: center;
  display: flex;
  height: 100%;
}

.header__mobile__button .navlink:not(.navlink--toplevel),
.header__desktop__button .navlink:not(.navlink--toplevel) {
  padding: 5px 9px;
  transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media only screen and (min-width: 750px) {
  .header__mobile__button .navlink:not(.navlink--toplevel),
.header__desktop__button .navlink:not(.navlink--toplevel) {
    padding-left: 11px;
    padding-right: 11px;
  }
}

.header__mobile__button .popout-header,
.header__desktop__button .popout-header {
  margin: 0;
}

.header__desktop {
  width: 100%;
}

.navlink {
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV);
  line-height: 1.2;
  padding: 5px 0;
  position: relative;
  transition: none;
}
.navlink .icon {
  --icon-size: 24px;
  fill: none;
}

.navlink--search {
  cursor: pointer;
  color: var(--text);
}
.navlink--search:hover {
  color: var(--link-hover);
}
.navlink--search .icon-cancel {
  display: none;
}

.navlink--child,
.navlink--grandchild {
  --link: var(--text-light);
  transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.navlink--child:hover,
.navlink--grandchild:hover {
  color: var(--link-hover);
}

.navlink--toplevel {
  --link-padding: 15px;
  --link-hover: var(--link);
  position: relative;
  padding: 5px 9px;
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  z-index: 6;
}
@media only screen and (min-width: 750px) {
  .navlink--toplevel {
    padding: var(--link-padding);
  }
  .navlink--toplevel::after {
    content: "";
    position: absolute;
    left: var(--link-padding);
    right: var(--link-padding);
    bottom: 0;
    height: 1px;
    background-color: var(--link-hover);
    transform: scaleX(0);
    will-change: transform;
    transition: transform 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
@media (hover: hover) {
  .navlink--toplevel:hover::after {
    transform: scaleX(1);
  }
}

.navlink--highlight {
  --link: var(--highlight);
  --link-hover: var(--highlight);
}
.navlink--highlight::after {
  background-color: var(--highlight);
}

.navlink--highlight:not(.navlink--toplevel) .navtext {
  padding: 0 0 5px;
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 0% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
}
@media (hover: hover) {
  .navlink--highlight:not(.navlink--toplevel) .navtext:hover {
    background-size: 100% 1px;
  }
}
@media (hover: hover) {
  .navlink--highlight:not(.navlink--toplevel):hover .navtext {
    background-size: 100% 1px;
  }
}

.navtext {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-NAV));
  display: block;
}

.navtext,
.header__mobile__hamburger,
.header__logo__link {
  color: var(--link);
  transition: color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.navlink:hover > .navtext,
.header__mobile__hamburger:hover,
.header__logo__link:hover {
  color: var(--link-hover);
}

.header__desktop__bar__r {
  flex: 1 0 0;
  justify-content: flex-end;
}

.header__desktop__bar__r .header__menu {
  margin-right: -15px;
}

.header__desktop__bar__r .header__desktop__buttons--text {
  margin-right: -15px;
}

.header__desktop__bar__r .header__desktop__buttons--icons {
  margin-right: -11px;
}

.header__desktop__upper--reverse .header__menu {
  margin-left: -15px;
}

/* ================ Header Social Links ================ */
.theme__header .socials {
  flex-wrap: nowrap;
}

.theme__header .popout__toggle {
  font-size: inherit;
  letter-spacing: inherit;
}

/* ================ Sticky header ================ */
.js__header__stuck {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 5600;
}

.js__header__stuck .theme__header::after,
.js__header__stuck .header__mobile__nav::after,
.js__header__stuck .header__mobile__nav::before {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}

.theme__header::after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  z-index: -5;
  transition: opacity 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0s 0.2s;
  opacity: 0;
  visibility: hidden;
  background: var(--bg);
}

.header__wrapper:not([data-header-transparent]) .theme__header::after,
.meganav--visible .theme__header::after {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
}

/* ================ Transparent header ================ */
.logo__img {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100%;
  height: 100%;
}

.logo__img--transparent {
  position: absolute;
  top: 0;
  opacity: 0;
}

body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck),
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop__upper,
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop__lower,
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__mobile {
  --text: var(--text-transparent);
  --link: var(--text-transparent);
  --link-hover: var(--text-transparent-hover);
  --text-dark: var(--text-transparent);
  --text-light: var(--text-transparent);
}
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop__lower {
  border-top: 1px solid var(--TRANSPARENT);
}
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .parent .navlink--toplevel::after {
  content: none;
}
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__logo--has-transparent .logo__img--color {
  opacity: 0;
}
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__logo--has-transparent .logo__img--transparent {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
body:has(.main-content > .shopify-section.section-overlay-header:first-of-type) [data-header-transparent]:not(.meganav--visible) .navlink--cart--icon .header__cart__status {
  --bg: var(--text);
}

body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck),
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop__upper,
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop__lower,
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__mobile {
  --text: var(--text-transparent);
  --link: var(--text-transparent);
  --link-hover: var(--text-transparent-hover);
  --text-dark: var(--text-transparent);
  --text-light: var(--text-transparent);
}
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__desktop__lower {
  border-top: 1px solid var(--TRANSPARENT);
}
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .parent .navlink--toplevel::after {
  content: none;
}
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__logo--has-transparent .logo__img--color {
  opacity: 0;
}
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible):not(.js__header__stuck) .header__logo--has-transparent .logo__img--transparent {
  opacity: 1;
  transition: opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
body.has-first-section-overlay-header [data-header-transparent]:not(.meganav--visible) .navlink--cart--icon .header__cart__status {
  --bg: var(--text);
}

.header__menu {
  z-index: 5;
  display: flex;
  height: 100%;
}

.header__menu.caps, .blog-section .article__image .header__menu.article__tags, .header__menu.popout__toggle, .header__menu.sale-box,
.header__menu.preorder-box,
.header__menu.badge-box, .header__menu.search-submit {
  letter-spacing: 0.1em;
}

/* ================ Large / Small Display Logic ================ */
@media only screen and (max-width: 479px) {
  .header__mobile {
    display: grid;
  }

  .header__desktop {
    position: relative;
    overflow: hidden;
    max-height: 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
  }
}
@media only screen and (min-width: 480px) {
  .header__desktop {
    position: static;
  }

  .header__mobile {
    display: none;
  }
}
.js__header__clone {
  position: absolute;
  transform: translateY(-5000px);
  width: 1400px;
  visibility: hidden;
}

.js__show__mobile .header__mobile,
[data-header-style=drawer] .header__mobile {
  display: grid;
}
.js__show__mobile .header__desktop,
[data-header-style=drawer] .header__desktop {
  position: relative;
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

/* ============================================================================
  #Site Nav and Dropdowns
============================================================================== */
.header__dropdown {
  --bg: var(--COLOR-SUBMENU-BG);
  --text: var(--COLOR-SUBMENU-LINK);
  --text-dark: var(--COLOR-SUBMENU-LINK);
  --text-light: var(--COLOR-SUBMENU-LINK);
  --link-hover: var(--COLOR-SUBMENU-LINK-HOVER);
  color: var(--COLOR-SUBMENU-LINK);
  position: absolute;
  top: 100%;
  opacity: 0;
  background-color: var(--bg);
  border-bottom: 1px solid transparent;
  border-top: 1px solid transparent;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s cubic-bezier(0.215, 0.61, 0.355, 1), visibility 0s 0.2s;
}
.header__dropdown::before {
  content: "";
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  height: var(--padding-bottom);
  background: transparent;
}

body:not(.has-line-design) .header__dropdown {
  border-bottom: none;
}

.has-line-design .header__dropdown {
  border-bottom-color: var(--border);
  border-top-color: var(--border);
}

.header__dropdown__wrapper {
  max-height: calc(100vh - var(--header-height) - var(--announcement-height));
  overflow-y: auto;
}
.js__header__stuck .header__dropdown__wrapper {
  max-height: calc(100vh - var(--header-height));
}

.menu__item.parent:not(.is-visible):not(:hover) .navlink--child {
  transition-delay: 0s !important;
}

.menu__item:not(.parent):not(.grandparent) {
  white-space: nowrap;
}

.menu__item.parent:hover > .header__dropdown,
.header__dropdown.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.dropdown__family {
  padding: 30px 0;
  display: flex;
  flex-direction: column;
}

.dropdown__family .navlink--child {
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
}

.header__dropdown__image {
  position: relative;
  overflow: hidden;
  color: var(--text);
  opacity: 0;
  transition: opacity 0.75s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.no-js .header__dropdown__image {
  opacity: 1;
}
.header__dropdown__image .hero__content {
  padding: 14px;
  margin: 0;
  max-width: none;
}

/* ============================================================================
  #Large Meganav
============================================================================== */
.grandparent .header__dropdown {
  width: 100%;
  left: 0;
  max-width: 100vw;
}
.grandparent .header__dropdown__inner {
  display: flex;
  justify-content: space-between;
}
.grandparent .header__grandparent__links {
  flex: 3;
  display: grid;
  grid-row-gap: 1.5em;
  position: relative;
}
.grandparent .dropdown__family {
  padding-left: var(--outer);
  padding-right: var(--outer);
}
.grandparent .menu__blocks {
  display: flex;
  flex: var(--images-space, 1);
}
body.grid-classic .grandparent .menu__blocks .menu__block {
  padding: var(--gap) calc(var(--gap) / 2);
}
body.grid-classic .grandparent .menu__blocks:not(:first-child) .menu__block:first-child {
  padding-left: 0;
}
body.grid-classic .grandparent .menu__blocks:first-child .menu__block:first-child {
  padding-left: var(--outer);
}
body.grid-classic .grandparent .menu__blocks:not(:last-child) .menu__block:last-child {
  padding-right: 0;
}
body.grid-classic .grandparent .menu__blocks:last-child .menu__block:last-child {
  padding-right: var(--outer);
}
.grandparent .menu__block--narrow {
  flex: 1;
}
.grandparent .menu__block--wide {
  flex: 3;
}
.grandparent .navlink--child,
.grandparent .navlink--grandchild {
  display: inline-block;
  will-change: transform;
  margin-right: auto;
  padding-right: 5px;
}
.grandparent .navlink--child {
  margin-bottom: 20px;
}
.meganav--is-transitioning .grandparent.is-visible::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: var(--header-height);
  background: rgba(0, 0, 0, 0);
  z-index: 5;
}

.has-line-design .grandparent .header__grandparent__links::before {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  border-left: 1px solid var(--bg);
}

.has-line-design .grandparent .header__grandparent__links .dropdown__family::before {
  position: absolute;
  top: 0;
  bottom: 0;
  z-index: 1;
  border-left: 1px solid var(--border);
  margin-left: var(--outer-offset);
  content: "";
}

.grandparent.kids-1 .header__grandparent__links {
  grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grandparent.kids-2 .header__grandparent__links {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grandparent.kids-3 .header__grandparent__links {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grandparent.kids-4 .header__grandparent__links {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grandparent.kids-5 .header__grandparent__links {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.grandparent.kids-6 .header__grandparent__links {
  grid-template-columns: repeat(6, minmax(0, 1fr));
}

.grandparent.kids-7 .header__grandparent__links {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grandparent.kids-8 .header__grandparent__links {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grandparent.kids-9 .header__grandparent__links {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grandparent.kids-10 .header__grandparent__links,
.grandparent.kids-11 .header__grandparent__links,
.grandparent.kids-12 .header__grandparent__links,
.grandparent.kids-13 .header__grandparent__links,
.grandparent.kids-14 .header__grandparent__links,
.grandparent.kids-15 .header__grandparent__links,
.grandparent.kids-16 .header__grandparent__links,
.grandparent.kids-17 .header__grandparent__links,
.grandparent.kids-18 .header__grandparent__links,
.grandparent.kids-19 .header__grandparent__links,
.grandparent.kids-20 .header__grandparent__links {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

[class*=images-].grandparent.kids-4 .header__grandparent__links {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

[class*=images-].grandparent.kids-5 .header__grandparent__links,
[class*=images-].grandparent.kids-6 .header__grandparent__links,
[class*=images-].grandparent.kids-7 .header__grandparent__links,
[class*=images-].grandparent.kids-8 .header__grandparent__links,
[class*=images-].grandparent.kids-10 .header__grandparent__links,
[class*=images-].grandparent.kids-11 .header__grandparent__links,
[class*=images-].grandparent.kids-12 .header__grandparent__links,
[class*=images-].grandparent.kids-13 .header__grandparent__links,
[class*=images-].grandparent.kids-14 .header__grandparent__links,
[class*=images-].grandparent.kids-15 .header__grandparent__links,
[class*=images-].grandparent.kids-16 .header__grandparent__links,
[class*=images-].grandparent.kids-17 .header__grandparent__links,
[class*=images-].grandparent.kids-18 .header__grandparent__links,
[class*=images-].grandparent.kids-19 .header__grandparent__links,
[class*=images-].grandparent.kids-20 .header__grandparent__links {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grandparent.kids-2.images-1 .header__grandparent__links {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grandparent.kids-3.images-1 .header__grandparent__links,
.grandparent.kids-4.images-1 .header__grandparent__links,
.grandparent.kids-5.images-1 .header__grandparent__links,
.grandparent.kids-6.images-1 .header__grandparent__links,
.grandparent.kids-7.images-1 .header__grandparent__links,
.grandparent.kids-8.images-1 .header__grandparent__links,
.grandparent.kids-9.images-1 .header__grandparent__links,
.grandparent.kids-10.images-1 .header__grandparent__links,
.grandparent.kids-11.images-1 .header__grandparent__links,
.grandparent.kids-12.images-1 .header__grandparent__links,
.grandparent.kids-13.images-1 .header__grandparent__links,
.grandparent.kids-14.images-1 .header__grandparent__links,
.grandparent.kids-15.images-1 .header__grandparent__links,
.grandparent.kids-16.images-1 .header__grandparent__links,
.grandparent.kids-17.images-1 .header__grandparent__links,
.grandparent.kids-18.images-1 .header__grandparent__links,
.grandparent.kids-19.images-1 .header__grandparent__links,
.grandparent.kids-20.images-1 .header__grandparent__links {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grandparent.images-2 .header__grandparent__links,
.grandparent.images-2 .menu__block--wide {
  flex: 2;
}

.grandparent.grandparent--all-images .header__grandparent__links {
  flex: 0;
}

.grandparent.grandparent--all-images.images-1 .menu__block--narrow {
  flex-grow: 0;
  flex-basis: 50%;
}

/* ================ Hover animations ================ */
/* Basic Dropdown */
.menu__item.parent .navlink--child {
  opacity: 0;
  transform: translateY(-5px);
  transition: transform 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.35s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform, opacity;
}
.menu__item.parent:hover .navlink--child,
.menu__item.parent .is-visible .navlink--child {
  opacity: 1;
  transform: translateY(0);
}

/* Basic Meganav */
.menu__item.grandparent .navlink--child {
  opacity: 0;
  transition: none;
}
.menu__item.grandparent .navlink--grandchild {
  opacity: 0;
  transform: translateY(-5px);
  transition: none;
}
.menu__item.grandparent .is-visible .navlink--child,
.menu__item.grandparent .is-visible .navlink--grandchild {
  opacity: 1;
  transform: translateY(0);
  transition: transform 0.15s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.35s cubic-bezier(0.215, 0.61, 0.355, 1), color 0.25s cubic-bezier(0.215, 0.61, 0.355, 1);
}

/* Image Meganav */
.header__dropdown:not(.is-visible) .header__dropdown__image,
.header__dropdown:not(.is-visible) .image-wrapper {
  transition-delay: 0s !important;
}

.header__dropdown__image .image-wrapper {
  transform: scale(1.06);
  transform-origin: bottom center;
  transition: transform 0.75s cubic-bezier(0.215, 0.61, 0.355, 1);
  will-change: transform;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

.is-visible .header__dropdown__image {
  opacity: 1;
}

.is-visible .header__dropdown__image .image-wrapper {
  transform: scale(1);
  transition: transform 1.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.is-visible .header__dropdown__image > div,
.is-visible .header__dropdown__image .image-wrapper {
  transition-delay: inherit;
}

/* Match hover state of button */
.header__dropdown__image:hover .btn--white {
  background-color: #FFF;
  color: var(--COLOR-TEXT);
  border: 1px solid #FFF;
  box-shadow: none;
}

.menu__item:not(.grandparent):hover > .header__dropdown,
.header__dropdown.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition-delay: 0s;
}

/* ================ Hover animations ================ */
.parent .header__dropdown {
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  border-bottom: 1px solid transparent;
  background: var(--bg);
}
.parent .header__dropdown__wrapper {
  padding: 15px;
}
.parent .header__dropdown__inner {
  display: flex;
  flex-direction: column;
}
.parent .navlink--child {
  padding: 5px 0;
  display: inline-block;
  margin-right: auto;
}

.has-line-design .parent .header__dropdown {
  border-left-color: var(--border);
  border-right-color: var(--border);
  border-bottom-color: var(--border);
}

.navlink[href="#"] {
  cursor: default;
}

/* ================ Header cart status ================ */
.navlink__cart__content {
  position: relative;
  display: flex;
  align-items: center;
  font-size: 0;
}

.header__cart__status__holder {
  position: relative;
  display: flex;
  align-items: center;
}

/*
  These circle icons have 1px offset in order to match the account icon
  That's why we need margin-right: -1px to make them align horizontally with the wrapper
*/
.navlink--cart--circle {
  --icon-size: 21px;
}

.navlink--cart--circle .navlink__cart__content {
  margin-right: -1px;
}

.navlink--cart--circle .header__cart__status {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  color: currentcolor;
  font-size: calc(0.627rem * var(--FONT-ADJUST-NAV));
}

.navlink--cart--circle .header__cart__status__holder {
  width: var(--icon-size);
  height: var(--icon-size);
}

.navlink--cart--circle .navtext {
  margin-right: 8px;
}

.navlink--cart--circle .header__cart__status::before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--icon-size);
  height: var(--icon-size);
  border-radius: 50%;
  border: var(--ICON-STROKE-WIDTH) solid currentcolor;
  transform: translate(-50%, -50%);
  box-sizing: border-box;
}

.navlink--cart--icon .header__cart__status {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -2px;
  right: -8px;
  min-width: 17px;
  height: 17px;
  border-radius: 15px;
  padding: 2px;
  background: var(--primary);
  color: var(--bg);
  font-size: calc(0.627rem * var(--FONT-ADJUST-NAV));
  line-height: calc(1rem * var(--FONT-ADJUST-NAV));
}

.navlink--cart--icon .header__cart__status[data-cart-count="0"],
.navlink--cart--text .header__cart__status[data-cart-count="0"] {
  display: none;
}

@media only screen and (min-width: 750px) {
  .navlink--cart--text .navtext {
    display: inline;
    white-space: nowrap;
  }
}

@media only screen and (min-width: 750px) {
  .navlink--cart--text .header__cart__status::before {
    content: attr(data-status-separator);
  }
}

@media only screen and (max-width: 749px) {
  .navlink--cart--text .header__cart__status {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    top: -2px;
    right: -8px;
    min-width: 17px;
    height: 17px;
    border-radius: 15px;
    padding: 2px;
    background: var(--primary);
    color: var(--bg);
    font-size: calc(0.627rem * var(--FONT-ADJUST-NAV));
    line-height: calc(1rem * var(--FONT-ADJUST-NAV));
  }
}

/* ================ Icon sizes ================ */
.theme__header [data-glyph=cart] {
  font-size: calc(1.1875rem * var(--FONT-ADJUST-NAV));
}

.theme__header [data-glyph=magnifying-glass] {
  font-size: calc(1rem * var(--FONT-ADJUST-NAV));
}

/* ================ No JS ================ */
.no-js .header__dropdown {
  background-color: var(--bg) !important;
}
.no-js .menu__item.parent:focus-within .header__dropdown,
.no-js .menu__item.parent:focus-within .navlink,
.no-js .menu__item.grandparent:focus-within .header__dropdown,
.no-js .menu__item.grandparent:focus-within .navlink,
.no-js .menu__item.parent:hover .header__dropdown,
.no-js .menu__item.parent:hover .navlink,
.no-js .menu__item.grandparent:hover .header__dropdown,
.no-js .menu__item.grandparent:hover .navlink {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto;
}
.no-js .navlink--toplevel:focus + .header__dropdown {
  opacity: 1 !important;
  visibility: visible !important;
}
.no-js .navlink--toplevel:focus + .header__dropdown .navlink {
  opacity: 1 !important;
  visibility: visible !important;
}

announcement-bar {
  --padding: var(--padding-scrolling, var(--outer));
  display: block;
}

.announcement__wrapper {
  --icon-offset: 0.2;
  --icon-size: max(calc(var(--text-size) * var(--FONT-ADJUST-BODY)) * 0.8, 18px);
  --btn-size: var(--icon-size);
  position: relative;
  overflow: hidden;
  background: var(--bg);
  line-height: var(--line-height-normal);
}
.announcement__wrapper .free-shipping__graph svg {
  width: var(--icon-size);
  height: var(--icon-size);
}

.announcement__wrapper--top {
  z-index: 5500;
}

.js .announcement__bar-holder--slider div:not(.flickity-enabled) .announcement__slide + .announcement__slide {
  opacity: 0;
}

@keyframes ticker-rtl {
  0% {
    transform: translate3d(0, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes ticker-ltr {
  0% {
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  100% {
    transform: translate3d(0, 0, 0);
  }
}
.announcement__bar .flickity-slider {
  display: flex;
  align-items: center;
}

.announcement__slide {
  color: var(--text);
  padding: 0 var(--padding);
  width: 100%;
}

.announcement__slide.announcement__bar {
  padding: 0 var(--outer);
}

.announcement__slide > div {
  display: flex;
  min-height: var(--announcement-height);
  align-items: center;
  justify-content: var(--justify-content, center);
}

.announcement__bg-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.announcement__slide:not(.announcement__bar) {
  white-space: nowrap;
}

.announcement__slide:not(.announcement__bar) > * {
  width: 100%;
}

.announcement__bar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  text-align: center;
  color: var(--text);
}

.announcement__bar:not(.desktop):not(.mobile) {
  width: 100%;
}

.announcement__bar.desktop {
  width: 100%;
}
@media only screen and (max-width: 749px) {
  .announcement__bar.desktop {
    display: none;
  }
}

@media only screen and (min-width: 750px) {
  .announcement__bar.mobile {
    display: none;
    width: 0;
  }
}
@media only screen and (max-width: 749px) {
  .announcement__bar.mobile {
    width: 100%;
  }
}

.announcement__bar .icon {
  fill: currentColor;
}

.announcement__bar--error {
  display: none;
}

.announcement__main {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-style: var(--FONT-STYLE-BODY);
}

.announcement__text {
  display: flex;
  flex-flow: row nowrap;
  align-items: center;
  white-space: nowrap;
  min-height: var(--announcement-height);
  transition: padding 0.3s ease;
}

.announcement__text.ticker--animated {
  padding: 0 var(--padding);
}

.announcement__text.ticker--animated > .announcement__slide:first-child {
  padding-left: 0;
}

.announcement__text.ticker--animated > .announcement__slide:last-child {
  padding-right: 0;
}

.announcement__text p {
  font-size: inherit;
  line-height: inherit;
  margin: 0;
}

.announcement__text > div {
  display: inline-flex;
  align-items: center;
}

@media only screen and (min-width: 750px) {
  .announcement__text > .mobile {
    display: none;
  }
}

@media only screen and (max-width: 749px) {
  .announcement__text > .desktop {
    display: none;
  }
}

.announcement__text a {
  position: relative;
  display: inline-flex;
}

.announcement__text .free-shipping {
  padding: 0;
  border: none;
  font-size: inherit;
  line-height: inherit;
  flex-wrap: nowrap;
  position: relative;
}

.announcement__text .free-shipping circle + circle {
  stroke: currentColor;
}

.announcement__divider {
  margin-left: 10px;
  padding-right: 10px;
  width: 0;
  border-left: 1px solid currentColor;
  height: 10%;
}

.announcement__message {
  width: 100%;
  text-align: var(--text-align, center);
  font-size: 0;
}

.announcement__scale {
  display: inline-flex;
  transition: opacity 0.5s linear;
}

.announcement__scale.ticker--unloaded {
  width: max-content;
}

.announcement__bar-holder--slider > div {
  justify-content: var(--justify-content, center);
}

.announcement__bar-holder--slider.flickity-enabled .announcement__scale.ticker--unloaded {
  position: static;
}

.announcement__image {
  display: block;
  margin: 0 auto;
}
.announcement__image.svg-placeholder {
  background-color: transparent;
}

html:not(.js) .announcement__scale.ticker--unloaded {
  opacity: 1;
  position: static;
  width: auto;
}

.ticker--animated {
  animation-iteration-count: infinite;
  animation-timing-function: linear;
  animation-name: var(--ticker-direction);
  animation-duration: var(--animation-time);
  animation-play-state: paused;
  display: inline-flex;
  align-items: center;
  width: max-content;
  will-change: transform, padding, width;
}
.ticker--animated:hover {
  animation-play-state: paused;
}

.announcement__slide:not(.is-selected) .ticker--animated {
  animation-play-state: paused;
}

.announcement__bar-holder {
  position: relative;
  background-color: var(--bg);
}
.announcement__bar-holder .flickity-slider {
  display: flex;
  align-items: center;
}

.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) {
  --arrow-space: var(--icon-size);
  --arrow-space-offset: calc(var(--arrow-space) * -1);
  margin-left: calc(var(--outer) + var(--icon-size));
  margin-right: calc(var(--outer) + var(--icon-size));
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .announcement__slide.announcement__bar {
  padding: 0 20px;
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::before, .announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 0;
  bottom: 0;
  width: calc(var(--arrow-space) + 20px);
  pointer-events: none;
  transition: transform 0.2s ease-in-out;
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::before {
  left: var(--arrow-space-offset);
  background: linear-gradient(90deg, var(--bg) 80%, var(--bg-transparent, rgba(255, 255, 255, 0)) 100%);
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-viewport::after {
  right: var(--arrow-space-offset);
  background: linear-gradient(-90deg, var(--bg) 80%, var(--bg-transparent, rgba(255, 255, 255, 0)) 100%);
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button {
  --icon-size: inherit;
  --btn-size: inherit;
  display: block;
  background-color: transparent;
  overflow: unset;
  box-shadow: none;
  z-index: 2;
  opacity: 1;
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button:after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 40px;
  height: 40px;
  transform: translate(-50%, -50%);
  background: transparent;
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button::before {
  background-color: var(--text);
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button.previous {
  transform: none;
  left: var(--arrow-space-offset);
}
.announcement__bar-holder--arrows .announcement__slider:not(.single-slide) .flickity-prev-next-button.next {
  transform: none;
  right: var(--arrow-space-offset);
}

.no-js .announcement__bar-holder--slider .announcement__bar {
  top: 0;
  transform: none;
}

.announcement__bar-holder > .announcement__bar:hover .ticker--animated,
.announcement__bar:hover .ticker--animated,
.announcement__bar-holder > .announcement__bar [data-stop] .ticker--animated {
  animation-play-state: paused;
}

.announcement__bar-holder > .announcement__bar .ticker--animated,
.is-selected .ticker--animated,
.announcement__slide:only-child .ticker--animated:not(:hover) {
  animation-play-state: running;
}

.ticker__comparitor {
  position: absolute;
  transform: translatey(-5000px);
  visibility: hidden;
}

.ie .announcement__bar--error {
  display: block;
  height: auto;
  padding: 15px;
}

.drawer--header {
  --bg: var(--COLOR-SUBMENU-BG);
  --text: var(--COLOR-SUBMENU-LINK);
  --text-dark: var(--COLOR-SUBMENU-LINK);
  --text-light: var(--COLOR-SUBMENU-LINK);
  --link-hover: var(--COLOR-SUBMENU-LINK-HOVER);
  position: relative;
  z-index: 5600;
  color: var(--text);
}
.drawer--header.caps, .blog-section .article__image .drawer--header.article__tags, .drawer--header.popout__toggle, .drawer--header.sale-box,
.drawer--header.preorder-box,
.drawer--header.badge-box, .drawer--header.search-submit {
  letter-spacing: 0.1em;
}
.drawer--header .drawer__inner {
  transform: translate3d(0, 0, 0);
  left: auto;
  right: 100%;
  border-left: 0;
  border-right: 1px solid var(--border);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06), 0 3px 12px rgba(0, 0, 0, 0.02);
}
@media only screen and (max-width: 749px) {
  .drawer--header .drawer__inner {
    border-right: none;
  }
}
.drawer--header.is-open .drawer__inner {
  visibility: visible;
  opacity: 1;
  transform: translate3d(100%, 0, 0);
}
.drawer--header .drawer__head {
  border: 0;
}
.drawer--header .drawer__close {
  --icon-size: 24px;
  position: relative;
  left: -10px;
  right: auto;
}
.drawer--header .drawer__underlay {
  z-index: 2400;
}
.drawer--header .drawer__content {
  --item-height: 50px;
  position: relative;
  flex: 1;
  display: flex;
  min-height: var(--item-height);
  width: 100%;
  overflow: hidden;
}
.drawer--header .drawer__bottom__row {
  --min-height: 30px;
  flex: 0 1 100%;
  width: 100%;
  min-height: var(--min-height);
}
.drawer--header .drawer__bottom__row > *:only-child {
  flex-wrap: wrap;
  min-height: var(--min-height);
  height: auto;
}
.drawer--header .drawer__search {
  border-bottom: 1px solid var(--border);
}
.drawer--header .drawer__bottom {
  position: relative;
  z-index: 11;
  width: 100%;
  min-height: 51px;
  padding: var(--inner);
  margin-top: auto;
}
.drawer--header .drawer__bottom:before {
  content: "";
  pointer-events: none;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 100%;
  height: 20px;
  background: linear-gradient(to bottom, transparent, var(--bg));
}
.drawer--header .popout-header {
  margin-bottom: 8px;
}
.has-line-design .drawer--header .drawer__content {
  margin-bottom: -1px;
}
.has-line-design .drawer--header .drawer__bottom {
  border-top: 1px solid var(--border);
}

/* ============================================================================
  #Search popdown
============================================================================== */
header-search-popdown {
  display: block;
  height: 100%;
}

header-search-popdown > details {
  height: 100%;
}

.search-popdown {
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV);
  --bg: var(--COLOR-MENU-BG);
  --border: var(--COLOR-BORDER);
  --text: var(--COLOR-MENU-LINK);
  --link-hover: var(--COLOR-MENU-LINK-HOVER);
  --text-dark: var(--COLOR-MENU-LINK);
  --text-light: var(--COLOR-MENU-LINK);
  --text-transparent: var(--COLOR-MENU-TRANSPARENT);
  position: absolute;
  z-index: 6001;
  top: 0;
  right: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, transform 0.5s ease, visibility 0s linear 0.5s;
  transform: translate3d(0, -100%, 0);
  box-shadow: 0 5px 10px rgba(0, 0, 0, 0.1);
  background: var(--bg);
}
.search-popdown .search-form {
  position: static;
}
.search-popdown input[type=search] {
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  width: 100%;
  border: none;
  margin: 0;
  text-align: left;
  color: var(--text);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-NAV));
}
.search-popdown input[type=search]::placeholder {
  color: var(--text);
}
.search-popdown input[type=search]:focus, .search-popdown input[type=search]:active {
  box-shadow: none;
}

.no-js .search-popdown {
  transition: none;
}

.no-js details[open] .search-popdown,
.no-js details[open] .predictive-search,
details[open=true] .search-popdown,
details[open=true] .predictive-search {
  width: 100vw;
  padding-right: var(--scrollbar-width);
}
.no-js details[open] .search-popdown,
details[open=true] .search-popdown {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
  transform: translate3d(0, 0, 0);
  max-height: calc(100vh - var(--announcement-height));
}

.no-js details[open] .search-popdown__close__button {
  display: none;
}
.no-js details[open] .navlink--search {
  position: absolute;
  z-index: 6002;
}
.no-js details[open] .navlink--search .icon-search {
  display: none;
}
.no-js details[open] .navlink--search .icon-cancel {
  display: block;
}

.search-popdown__main {
  width: 100%;
  height: var(--header-height);
  display: flex;
  justify-content: space-between;
  align-items: center;
  color: var(--text);
  background: var(--bg);
  transition: transform 0.5s ease;
}

.search-popdown__close {
  position: relative;
  width: 80px;
  height: 100%;
  display: flex;
}
@media only screen and (max-width: 749px) {
  .search-popdown__close {
    width: 20px;
  }
}

.search-popdown__close__button {
  --icon-size: 24px;
  position: absolute;
  top: 50%;
  right: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  color: var(--link);
  background: transparent;
  border-radius: var(--RADIUS);
  font-size: 0;
  text-decoration: none;
  transform: translate3d(0, -50%, 0);
  transition: color 0.3s ease;
  --icon-size: 24px;
  font-size: calc(1rem * var(--FONT-ADJUST-NAV));
  cursor: pointer;
  width: 34px;
  padding: 20px 5px;
  height: 100%;
  right: -11px;
}
.search-popdown__close__button .icon {
  display: block;
  fill: currentColor;
  transition: transform 0.3s;
  pointer-events: none;
}
@media (hover: hover) {
  .search-popdown__close__button:hover {
    color: var(--link-hover);
  }
  .search-popdown__close__button:hover .icon {
    transform: rotate(90deg);
  }
}

.search-popdown__submit {
  --icon-size: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  margin-left: -8px;
  padding: 0;
}

.drawer--header {
  --link: var(--text);
  --link-hover: var(--text);
}

.drawer__menu {
  overflow: hidden;
  width: 100%;
  height: 100%;
  flex: 0 1 100%;
  display: flex;
  flex-direction: column;
}

.sliderule__panel {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  opacity: 0;
  overflow: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.sliderule__panel::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}

[data-sliderule-pane].is-scrolling,
[data-sliderule].is-scrolling,
[data-sliderule-pane="0"],
[data-sliderule-pane="1"] [data-sliderule="1"].is-visible,
[data-sliderule-pane="2"] [data-sliderule="2"].is-visible {
  overflow-y: auto;
  overflow-x: hidden;
}

[data-sliderule].is-hiding,
[data-sliderule-pane="2"] [data-sliderule].is-visible,
[data-sliderule-pane="1"] [data-sliderule="1"].is-visible {
  z-index: 10;
  visibility: visible;
  opacity: 1;
}

[data-sliderule-pane] [data-animates].is-visible {
  opacity: 1;
}

.sliderule__wrapper {
  width: 100%;
}

.sliderow__links {
  padding-top: var(--item-height);
  overflow: hidden;
}

.sliderow--back {
  top: 0;
  position: absolute;
  z-index: 40;
  background: var(--bg);
}

.has-line-design .sliderow--back {
  border-top: 1px solid var(--border);
}

.sliderow--back .sliderow__title {
  justify-content: center;
}

.sliderule__wrapper--secondary {
  padding-top: 24px;
  margin-top: auto;
}
.sliderule__wrapper--secondary:last-child {
  margin-bottom: 10px;
}
.sliderule__wrapper--secondary .sliderow,
.sliderule__wrapper--secondary .sliderow__title {
  height: calc(var(--item-height) - 21px);
}
.sliderule__wrapper--secondary + .sliderule__wrapper--secondary {
  padding-top: 0;
  margin-top: 0;
}

.sliderow {
  width: 100%;
  min-height: var(--item-height);
  display: flex;
  align-items: center;
  justify-content: flex-start;
  background-color: var(--bg);
  padding: 0;
  z-index: 10;
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-NAV));
  text-transform: inherit;
}

.has-line-design .sliderow {
  border-bottom: 1px solid var(--border);
}

.has-line-design .sliderule__wrapper--secondary > .sliderow,
.has-line-design .sliderule__wrapper:first-child > .sliderow {
  border-top: 1px solid var(--border);
}

.has-line-design .sliderule__wrapper--secondary ~ .sliderule__wrapper--secondary > .sliderow {
  border-top: none;
}

.has-line-design .sliderule__wrapper--secondary:not(:last-child) > .sliderow {
  border-bottom: none;
}

.sliderow__title {
  min-height: var(--item-height);
  width: 100%;
  padding: 0 var(--inner);
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  text-align: left;
  transition: color 0.4s cubic-bezier(0.215, 0.61, 0.355, 1), background 0.4s cubic-bezier(0.215, 0.61, 0.355, 1);
}

@media (hover: hover) {
  .sliderow:hover .sliderow__title {
    background: var(--bg-accent);
  }
}
.sliderow__title--highlight {
  --link: var(--highlight);
  --link-hover: var(--highlight);
}

.drawer__menu > .sliderule__wrapper > .sliderow > .sliderow__title {
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
}

.drawer__menu > .sliderule__wrapper > .sliderow > .sliderow__title--secondary {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-NAV));
  font-weight: var(--FONT-WEIGHT-NAV);
}

.sliderow:not(.sliderow__back) .sliderow__title:after {
  bottom: 0;
}

.drawer__menu:after {
  top: 0;
  left: var(--outer);
  z-index: 1;
}

.sliderule__chevron--right {
  align-self: stretch;
  width: 40px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

@media (hover: hover) {
  .sliderow:hover .sliderule__chevron--right .icon {
    transform: translateX(5px);
  }
}
.sliderule__chevron--left,
.sliderule__chevron--right {
  --icon-size: 24px;
  position: relative;
}
.sliderule__chevron--left .icon,
.sliderule__chevron--right .icon {
  fill: none;
  will-change: transform;
  transition: transform 0.3s;
}

.sliderule__panel .sliderow {
  padding-left: 0;
}

.sliderow__back-button + .sliderow__title {
  cursor: pointer;
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  padding: 0 calc(var(--inner) + 30px);
}

@media (hover: hover) {
  .sliderow__back-button + .sliderow__title:hover {
    color: var(--link-hover);
  }
}
.sliderow__back-button {
  position: absolute;
  top: 0;
  left: 0;
  padding-left: var(--inner);
  color: var(--text);
  height: 100%;
  z-index: 5;
}

@media (hover: hover) {
  .sliderow__back-button:hover .icon {
    transform: translateX(-5px);
  }
}
.sliderule__chevron--left {
  align-self: stretch;
  height: 100%;
  width: calc(var(--outer) * 1.5);
  min-width: 60px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
}

.sliderule__chevron--left .icon {
  margin-left: -4px;
}

@media only screen and (max-width: 479px) {
  .js-grid[data-grid-small="1"] {
    grid-template-columns: repeat(1, 1fr);
  }

  .js-grid[data-grid-small="2"] {
    grid-template-columns: repeat(2, 1fr);
  }

  [data-toggle-grid="3"],
[data-toggle-grid="4"],
[data-toggle-grid="5"],
[data-toggle-grid="6"] {
    display: none;
  }
}
.sliderule-grid .hero__content {
  max-width: 100%;
  padding: 30px;
  margin: 0;
}
@media only screen and (max-width: 479px) {
  .sliderule-grid .hero__content {
    padding: 5px;
  }
}

.sliderule-grid .menu__block {
  padding: var(--inner);
}

.has-line-design .sliderule-grid .menu__block {
  border-bottom: 1px solid var(--border);
}

body:not(.has-line-design) .sliderule-grid .menu__block:not(:first-child) {
  padding-top: 0;
}

.header__mobile__hamburger {
  position: relative;
  width: 40px;
  height: 100%;
  left: 0;
  padding: 0 5px;
  margin-left: -10px;
  margin-right: 2px;
  cursor: pointer;
}

@media only screen and (min-width: 750px) {
  .header__mobile__hamburger.navlink {
    width: auto;
    padding: 15px;
    margin-left: -15px;
    margin-right: 0;
  }
}
@media only screen and (max-width: 749px) {
  .header__mobile__hamburger.navlink {
    display: block;
  }
}

.header__mobile__hamburger .icon {
  --icon-size: 24px;
  stroke: currentColor;
}

@media only screen and (max-width: 749px) {
  .header__mobile__button .navlink__cart__content > .navtext {
    display: none;
  }
}

@media only screen and (min-width: 750px) {
  .header__desktop__button .navlink--toplevel .icon,
.header__mobile__button .navlink--toplevel .icon {
    display: none;
  }
}

/*====== Header toolbar ======*/
ticker-bar {
  display: block;
}
@media only screen and (min-width: 750px) {
  ticker-bar {
    width: 100%;
  }
}

ticker-bar[paused] .ticker--animated {
  --padding: 0px;
  animation-play-state: paused;
}

.toolbar {
  --link: var(--text);
  --link-hover: var(--text);
  position: relative;
  z-index: 2400;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-NAV));
  color: var(--text);
  background: var(--bg);
}

.toolbar__inner {
  min-height: calc(36px * var(--FONT-ADJUST-NAV));
}
@media only screen and (min-width: 750px) {
  .toolbar__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.toolbar__text {
  position: relative;
  overflow: hidden;
  margin-left: var(--outer-offset);
  margin-right: var(--outer-offset);
  padding-left: var(--outer);
  padding-right: var(--outer);
  line-height: 1.2;
}
.toolbar__text:only-child {
  text-align: center;
}
@media only screen and (max-width: 749px) {
  .toolbar__text {
    display: flex;
    align-items: center;
    min-height: inherit;
    text-align: center;
  }
}

.toolbar__text__frame {
  --ticker-direction: ticker-rtl;
  --padding: var(--inner);
  display: flex;
  width: 100%;
}
.toolbar__text__frame .ticker--animated {
  animation-play-state: running;
}
.toolbar__text__frame:hover .ticker--animated {
  animation-play-state: paused;
}
.toolbar__text__frame .announcement__text {
  min-height: 0;
}

.toolbar__text + .toolbar__menu {
  margin-left: 22px;
}

.toolbar__menu {
  display: flex;
  flex-wrap: nowrap;
}
.toolbar__menu .navlink--toplevel {
  --link-padding: 0;
  padding: 5px 0;
  margin-right: 22px;
}

.toolbar__utilities {
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  position: relative;
  margin-right: -22px;
  margin-left: var(--outer);
}
@media only screen and (min-width: 750px) {
  .toolbar__utilities {
    display: flex;
    position: relative;
    align-items: center;
    float: right;
  }
  .toolbar__utilities:only-child {
    margin-left: auto;
  }
  .toolbar__utilities:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    right: 100%;
    width: var(--gap);
    pointer-events: none;
    background: linear-gradient(-90deg, var(--bg) 50%, var(--bg-transparent, rgba(255, 255, 255, 0)) 100%);
  }
}
.toolbar__utilities .social__links {
  margin-right: -8px;
}

.toolbar__utility {
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  margin-right: 22px;
}
.drawer .toolbar__utility {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.gift-card-link {
  display: inline-block;
  flex: 0 0 auto;
  white-space: nowrap;
}

.breadcrumbs {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
  padding: 0 var(--outer);
  margin: 30px 0;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  color: var(--link);
}
@media only screen and (max-width: 749px) {
  .breadcrumbs {
    padding: 0 15px;
  }
}
.breadcrumbs a {
  display: inline-block;
  vertical-align: middle;
  color: inherit;
  transition: color 0.3s linear;
}
.breadcrumbs a:hover {
  color: var(--link-hover);
}

.breadcrumbs--no-padding {
  padding: 0;
}

.breadcrumbs__arrow {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  margin: 0 10px;
  background-color: var(--COLOR-TEXT);
  opacity: 0.4;
}
.breadcrumbs__arrow svg {
  width: 5px;
  height: 10px;
}

/**
 * Home page spacing
 */
/*=============== Backgrounds ===============*/
.homepage-columns,
.index-collections-list,
.index-product,
.index-products,
.index-tab-collections,
.index-newsletter,
.index-page,
.index-contact,
.index-rte,
.index-blog,
.index-text-products,
.index-image-text,
.custom-code {
  background-color: var(--bg);
}

/*=============== Text Colors ===============*/
.index-product,
.index-products,
.index-collections-list,
.index-rte,
.index-newsletter,
.index-hero,
.index-contact,
.index-text-products,
.index-image-text,
.custom-code {
  color: var(--text);
}

/*=============== Sections Helpers ===============*/
.rte--homepage {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  margin-bottom: 0;
}

.index-rte .hero__subheading {
  margin-top: 0;
}

.wide-image {
  overflow: hidden;
  position: relative;
  background-color: transparent;
}

@media only screen and (min-width: 990px) {
  .index-rte .columns--2 p,
.index-rte .columns--3 p {
    margin-bottom: 0;
  }
}
@media only screen and (max-width: 989px) {
  .index-rte .columns--2,
.index-rte .columns--3 {
    columns: initial;
  }
}
.index-rte .hero__content__wrapper {
  overflow: unset;
}

/*=============== Overlays ===============*/
.image-overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 10;
  background-color: var(--overlay-bg);
  opacity: var(--overlay-opacity);
}

/*=============== Alignment ===============*/
[class*=align--] {
  --alignment-align-items: flex-start;
  --alignment-justify-content: flex-start;
  --alignment-text-align: left;
  align-items: var(--alignment-align-items);
  justify-content: var(--alignment-justify-content);
  text-align: var(--alignment-text-align);
}

.align--top-left {
  --alignment-align-items: flex-start;
  --alignment-justify-content: flex-start;
  --alignment-text-align: left;
}

.align--top-center {
  --alignment-align-items: flex-start;
  --alignment-justify-content: center;
  --alignment-text-align: center;
}

.align--top-right {
  --alignment-align-items: flex-start;
  --alignment-justify-content: flex-end;
  --alignment-text-align: right;
}

.align--middle-left {
  --alignment-align-items: center;
  --alignment-justify-content: flex-start;
  --alignment-text-align: left;
}

.align--middle-center {
  --alignment-align-items: center;
  --alignment-justify-content: center;
  --alignment-text-align: center;
}

.align--middle-right {
  --alignment-align-items: center;
  --alignment-justify-content: flex-end;
  --alignment-text-align: right;
}

.align--bottom-left {
  --alignment-align-items: flex-end;
  --alignment-justify-content: flex-start;
  --alignment-text-align: left;
}

.align--bottom-center {
  --alignment-align-items: flex-end;
  --alignment-justify-content: center;
  --alignment-text-align: center;
}

.align--bottom-right {
  --alignment-align-items: flex-end;
  --alignment-justify-content: flex-end;
  --alignment-text-align: right;
}

@media only screen and (min-width: 750px) {
  .align--top-left-desktop {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
  }

  .align--top-center-desktop {
    --alignment-align-items: flex-start;
    --alignment-justify-content: center;
    --alignment-text-align: center;
  }

  .align--top-right-desktop {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
  }

  .align--middle-left-desktop {
    --alignment-align-items: center;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
  }

  .align--middle-center-desktop {
    --alignment-align-items: center;
    --alignment-justify-content: center;
    --alignment-text-align: center;
  }

  .align--middle-right-desktop {
    --alignment-align-items: center;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
  }

  .align--bottom-left-desktop {
    --alignment-align-items: flex-end;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
  }

  .align--bottom-center-desktop {
    --alignment-align-items: flex-end;
    --alignment-justify-content: center;
    --alignment-text-align: center;
  }

  .align--bottom-right-desktop {
    --alignment-align-items: flex-end;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
  }
}
@media only screen and (max-width: 749px) {
  .align--top-left-mobile {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
  }

  .align--top-center-mobile {
    --alignment-align-items: flex-start;
    --alignment-justify-content: center;
    --alignment-text-align: center;
  }

  .align--top-right-mobile {
    --alignment-align-items: flex-start;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
  }

  .align--middle-left-mobile {
    --alignment-align-items: center;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
  }

  .align--middle-center-mobile {
    --alignment-align-items: center;
    --alignment-justify-content: center;
    --alignment-text-align: center;
  }

  .align--middle-right-mobile {
    --alignment-align-items: center;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
  }

  .align--bottom-left-mobile {
    --alignment-align-items: flex-end;
    --alignment-justify-content: flex-start;
    --alignment-text-align: left;
  }

  .align--bottom-center-mobile {
    --alignment-align-items: flex-end;
    --alignment-justify-content: center;
    --alignment-text-align: center;
  }

  .align--bottom-right-mobile {
    --alignment-align-items: flex-end;
    --alignment-justify-content: flex-end;
    --alignment-text-align: right;
  }
}
/*=== Hero Section Layout ==*/
.hero__content__wrapper {
  position: relative;
  display: flex;
  overflow: hidden;
  width: 100%;
  min-height: 100%;
}
.hero__content__wrapper.frame__item {
  z-index: 20;
}

a + .hero__content__wrapper {
  pointer-events: none;
}
a + .hero__content__wrapper a {
  pointer-events: auto;
}

.hero__content__wrapper.text-center {
  justify-content: center;
}

.hero__images,
.hero__video {
  position: relative;
  display: flex;
}

.hero__split-image {
  flex: 1;
}

.hero__split-image .image__hero__frame,
.column__block .image__hero__frame {
  height: 100%;
}

@media only screen and (min-width: 990px) {
  .index-hero .hero__content {
    max-width: 50%;
  }
}
body:has([data-header-transparent]) .section-overlay-header .hero__content__wrapper {
  padding-top: var(--header-height);
}

body:has([data-header-transparent]):has(.main-content > .shopify-section.section-overlay-header:first-of-type) .header__backfill {
  display: none;
}

body.has-header-transparent .section-overlay-header .hero__content__wrapper {
  padding-top: var(--header-height);
}

body.has-header-transparent.has-first-section-overlay-header .header__backfill {
  display: none;
}

.hero__slide {
  width: 100%;
}

.hero__content {
  display: flex;
  flex-direction: column;
  padding: var(--outer) var(--outer) calc(var(--outer) - var(--line));
  color: var(--text);
  background-color: var(--bg);
  overflow-wrap: break-word;
  word-break: break-word;
}
.hero__content .accordion:first-of-type {
  margin-top: var(--inner);
}

.hero__content.flickity-enabled {
  width: 100%;
  padding: 0;
}
@media only screen and (min-width: 750px) {
  .hero__content.flickity-enabled .hero__slide {
    opacity: 0;
    transition: opacity 0.5s ease;
  }
  .hero__content.flickity-enabled .hero__slide.is-selected {
    opacity: 1;
  }
  .hero__content.flickity-enabled .flickity-page-dots {
    bottom: 0;
    padding: 0 var(--outer);
  }
  .text-left .hero__content.flickity-enabled .flickity-page-dots {
    justify-content: flex-start;
    padding: 0;
  }
  .hero__content.flickity-enabled[data-dots=line], .hero__content.flickity-enabled[data-dots=circle] {
    padding-bottom: 20px;
  }
}

@media only screen and (max-width: 749px) {
  .hero__content.grid--mobile-slider {
    flex-direction: row;
  }
  .hero__content.grid--mobile-slider .hero__slide {
    padding: 0 var(--outer);
  }
}

.hero__content--transparent {
  background-color: var(--TRANSPARENT);
  box-shadow: none;
}

.hero__content--compact {
  padding: 0;
  margin-bottom: var(--line-offset);
}

.hero__title,
.hero__subheading,
.hero__rte,
.hero__description,
.hero__button {
  margin: 0 0 var(--line);
}

.hero__rte p:first-child {
  margin-top: 0;
}

.hero__rte p:last-child {
  margin-bottom: 0;
}

.hero__image {
  display: flex;
}

/*=== Text sections ===*/
.text-link,
.rte a,
.hero__rte a,
p a {
  --link: currentColor;
  --link-hover: currentColor;
  display: inline;
  text-decoration: none;
  cursor: pointer;
  padding: 0 0 5px;
  color: var(--link);
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 100% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
}
@media (hover: hover) {
  .text-link:hover,
.rte a:hover,
.hero__rte a:hover,
p a:hover {
    background-size: 0% 1px;
  }
}

.hero__button-group {
  margin: 0 -8px calc(var(--line) - 8px);
  display: flex;
  flex-flow: row wrap;
  justify-content: var(--alignment-justify-content, center);
}
.text-left .hero__button-group {
  justify-content: flex-start;
}
.text-right .hero__button-group {
  justify-content: flex-end;
}
.hero__button-group .hero__button {
  margin: 8px;
}

.hero__button {
  display: flex;
  align-items: center;
  justify-content: var(--alignment-justify-content, flex-start);
  margin-top: 8px;
}
.text-center .hero__button {
  justify-content: center;
}
.text-right .hero__button {
  justify-content: flex-end;
}

.columns--2 {
  columns: 2 180px;
  column-gap: var(--gutter);
}

.columns--3 {
  columns: 3 180px;
  column-gap: var(--gutter);
}

.columns--4 {
  columns: 4 180px;
  column-gap: var(--gutter);
}

.backdrop--radial {
  --backdrop-size: 200%;
  position: relative;
}
.backdrop--radial::before {
  content: "";
  position: absolute;
  z-index: -1;
  top: 50%;
  left: 50%;
  width: var(--backdrop-size);
  height: var(--backdrop-size);
  border-radius: 50%;
  background: radial-gradient(ellipse at center, var(--overlay-bg) 0%, rgba(255, 255, 255, 0) 70%);
  opacity: var(--overlay-opacity);
  transform: translate(-50%, -50%);
}
.backdrop--radial:empty::before {
  display: none;
}

/* Grid Container */
@media only screen and (min-width: 750px) {
  .grid-container--inline {
    display: flex;
    padding: 0 var(--outer);
  }
  .grid-container--inline .grid-outer {
    padding-left: 0;
    overflow: hidden;
  }
  .grid-container--inline .grid-outer:only-child {
    max-width: none;
  }
  .grid-container--inline .grid__items-holder {
    flex: 1 0 auto;
    margin-right: var(--outer-offset);
    max-width: calc(100% - var(--content-width));
  }
  .grid-container--inline .grid__heading-holder {
    margin: 0;
    align-self: center;
    flex: 0 0 var(--content-width);
    margin-right: var(--outer);
    padding: 0;
  }
  .grid-container--inline .grid__heading-holder--sticky {
    align-self: flex-start;
    position: sticky;
    top: calc(var(--outer) + var(--header-sticky-height));
  }
  .grid-container--inline .grid__heading-holder--sticky .grid__heading-text:only-child {
    margin-bottom: var(--outer);
  }
  .grid-container--inline .grid__heading-text {
    width: auto;
  }
  .grid-container--inline .grid--slider .grid-item {
    width: var(--item-width);
  }
}
@media only screen and (min-width: 990px) {
  .grid-container--inline {
    --content-width: 28%;
    --item-width: 38% !important;
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .grid-container--inline {
    --content-width: 28%;
    --item-width: 72% !important;
  }
}

/* Grid Heading */
.grid__heading {
  margin: 0;
}

.grid__heading-holder {
  position: relative;
  display: block;
  word-break: break-word;
  padding: 0 var(--outer);
  margin: 0 0 var(--gutter);
  color: var(--text);
}

.grid__description:first-child > *:first-child {
  margin-top: 0;
}

.grid__description > *:last-child {
  margin-bottom: 0;
}

.grid__heading-text:not(:last-child) {
  margin-bottom: 1em;
}

.wrapper .grid__heading-holder,
.wrapper--full-padded .grid__heading-holder {
  padding-left: 0;
  padding-right: 0;
}
.wrapper .grid__items-holder,
.wrapper--full-padded .grid__items-holder {
  margin-left: var(--outer-offset);
  margin-right: var(--outer-offset);
}
@media only screen and (min-width: 750px) {
  .wrapper.grid-container--inline .grid__items-holder,
.wrapper--full-padded.grid-container--inline .grid__items-holder {
    margin-left: 0;
  }
}

@media only screen and (min-width: 750px) {
  .grid__heading-holder--inline {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }

  .grid__heading-holder--inline .grid__heading-text {
    margin: 0;
    padding: 0;
    width: auto;
    flex: 0 1 60%;
  }

  .grid__heading-holder--inline .grid__heading-actions {
    flex: 0 1 auto;
    position: relative;
    max-width: 50%;
  }

  .grid__heading-holder--inline .grid__heading-actions:only-child {
    flex: 1;
    max-width: none;
  }
}
@media only screen and (min-width: 990px) {
  .grid__heading-text {
    width: 60%;
    margin: 0 auto;
  }

  .text-left .grid__heading-text {
    margin-left: 0;
  }

  .text-right .grid__heading-text {
    margin-right: 0;
  }

  .grid__heading-holder--inline .grid__heading-actions .btn, .grid__heading-holder--inline .grid__heading-actions .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .grid__heading-holder--inline .grid__heading-actions .shopify-payment-button__button--unbranded, .grid__heading-holder--inline .grid__heading-actions #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .grid__heading-holder--inline .grid__heading-actions .spr-button-primary, .grid__heading-holder--inline .grid__heading-actions #challenge .shopify-challenge__button, #challenge .grid__heading-holder--inline .grid__heading-actions .shopify-challenge__button {
    width: auto;
  }
}
.template-index .container {
  background-color: var(--TRANSPARENT);
}

.index-newsletter .hero__content__wrapper {
  z-index: 11;
}

.no-js .popout__toggle {
  display: none;
}
.no-js .grid__heading-image img {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.frame {
  display: grid;
  grid-template-columns: 1fr;
}

.frame__item {
  grid-row-start: 1;
  grid-column-start: 1;
  width: 100%;
}
.no-js .frame__item {
  grid-row-start: unset;
  grid-column-start: unset;
}

/*=============== Section Columns ===============*/
.section-columns {
  color: var(--text);
  background-color: var(--bg);
}

.section-columns .grid__heading-holder {
  padding-left: 0;
  padding-right: 0;
}

.column__grid__item {
  flex: 0 0 auto;
}
@media only screen and (min-width: 750px) {
  .column__grid__item {
    padding: 0 calc(var(--gap) / 2) 0;
  }
}
@media only screen and (max-width: 749px) {
  .column__grid__item {
    width: calc(100% - 50px);
    padding: 0;
    margin-right: var(--gap);
    scroll-snap-align: start;
  }
  .column__grid__item:last-child {
    margin-right: 0;
  }
}
@media only screen and (max-width: 749px) {
  .column__grid__item:only-child {
    width: 100%;
  }
}

.columns {
  margin: var(--gutter-offset) calc(var(--gutter-offset) / 2);
}
@media only screen and (min-width: 750px) {
  .columns {
    display: flex;
    flex-flow: row wrap;
  }
}

@media only screen and (max-width: 749px) {
  .columns--mobile-slider {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 0;
    margin: 0 var(--outer-offset);
    padding-left: var(--outer);
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .columns--mobile-slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .columns--mobile-slider:after {
    content: "";
    min-height: 1px;
    display: block;
    position: relative;
    padding-right: var(--outer);
  }
  .columns--mobile-slider .column {
    padding: 0;
    flex: 0 0 auto;
    width: calc(100% - 50px);
    margin: 0 var(--gap) 0 0;
    scroll-snap-align: start;
  }
  .columns--mobile-slider .column:last-child {
    margin-right: 0;
  }
  .columns--mobile-slider .column:only-child {
    flex: 0 1 100%;
  }
}

@media only screen and (max-width: 749px) {
  .columns--mobile-grid {
    align-items: flex-start;
  }
  .columns--mobile-grid .column {
    width: 100%;
  }
}

.column {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 0 0 100%;
  padding: var(--gap) calc(var(--gap) / 2);
}
@media only screen and (min-width: 750px) {
  .column {
    flex: 0 0 var(--desktop-width);
  }
}

@media only screen and (min-width: 750px) {
  .columns--slider {
    --desktop-width: 100%;
    display: block;
    margin: 0 var(--outer-offset);
    padding-left: var(--outer);
    padding-right: var(--outer);
    overflow: hidden;
  }
  .columns--slider:after {
    content: "flickity";
    display: none;
  }
  .columns--slider .flickity-viewport {
    overflow: unset;
  }
  .columns--slider .column {
    width: calc((100% - var(--gap) * 2) / 3);
    padding: 0;
    margin-right: var(--gap);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .columns--slider .column {
    width: calc((100% - var(--gap)) / 2);
  }
}

.text-center .icon__animated {
  margin: 0 auto var(--inner);
}

.text-center .icon--left {
  justify-content: center;
}

.icon__animated {
  display: flex;
  align-items: center;
  margin-bottom: var(--inner);
  width: var(--icon-size);
  height: var(--icon-size);
  min-height: var(--icon-line-height);
  color: var(--text);
}

.icon__animated--image {
  height: auto;
}

.icon--left {
  display: flex;
  align-items: flex-start;
}
.icon--left .icon__animated {
  margin: 0 20px 0 0;
  flex: 0 0 var(--icon-size);
}
.icon--left .column__content {
  flex: 1 1 auto;
}

.column__heading {
  margin-top: 0;
  margin-bottom: 7px;
}

.column__text p {
  margin-top: 10px;
  line-height: 1.5;
}

.column__heading:last-child,
.column__text p:last-child {
  margin-bottom: 0;
}

.column__btn {
  margin: var(--inner) 0 0;
}

.column__links {
  margin-bottom: -0.5em;
}

.column__links__item {
  margin-bottom: 0.5em;
}

.column__links__item a {
  transition: color 0.25s ease;
}

.column__image {
  overflow: hidden;
  margin-bottom: var(--inner);
}

.column__image--circle {
  border-radius: 50%;
}

.column__image--rounded {
  border-radius: 5%;
}

.column__image--blob {
  --radius-blob: 53% 47% 34% 66% / 63% 46% 54% 37%;
  --radius-blob-hover: 63% 37% 37% 63% / 43% 37% 63% 57%;
  border-radius: var(--radius-blob);
  transition: border-radius 1s ease-in-out;
}
.column__image--blob:hover {
  border-radius: var(--radius-blob-hover);
}

/**
 * General modal styles
 */
@media only screen and (max-width: 749px) {
  .modal-section {
    height: auto;
  }
}

.modal-wrapper {
  display: flex;
  align-items: stretch;
  height: 100%;
}
@media only screen and (max-width: 749px) {
  .modal-wrapper {
    flex-direction: column;
    height: auto;
  }
}
.image-height .modal-wrapper {
  height: auto;
  align-items: center;
}
.modal-wrapper .input-group {
  border-color: var(--text);
}

.modal-wrapper--reverse {
  flex-direction: row-reverse;
}
@media only screen and (max-width: 749px) {
  .modal-wrapper--reverse {
    flex-direction: column;
  }
}

.modal__inner {
  max-width: 600px;
  margin: 0 auto;
  padding: 50px;
}

.modal__text {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: 1 0 50%;
  height: 100%;
  text-align: center;
}

.modal__text {
  color: var(--text);
  flex-direction: column;
}
.modal__text .contact-form {
  margin-top: var(--inner);
}

.modal__image {
  width: 100%;
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .modal__image {
    flex: 0 1 50%;
  }
}

.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background: transparent;
  z-index: 4000;
  display: none;
}

.modal__wrapper {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  flex-direction: column;
}

.modal__body {
  z-index: 100;
}

.modal__underlay {
  background: var(--modal-underlay-color, rgba(255, 255, 255, 0.5));
}

.modal__outer {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  z-index: 901;
}
.modal__outer a.close,
.modal__outer button.close {
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 20;
  padding: 0;
  cursor: pointer;
  transition: transform 0.3s;
}
.modal__outer a.close:hover,
.modal__outer button.close:hover {
  transform: rotate(90deg);
}
.modal__outer a.close .icon,
.modal__outer button.close .icon {
  fill: var(--text);
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.modal__outer a.more {
  text-decoration: none;
}
.modal__outer a.prev,
.modal__outer a.next {
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  top: 20px;
  z-index: 20;
  margin: 0;
  opacity: 1;
}
.modal__outer a.prev .icon,
.modal__outer a.next .icon {
  stroke: #B1B1B1;
  width: 100%;
  height: 100%;
  pointer-events: none;
}
.modal__outer a.prev:hover .icon,
.modal__outer a.next:hover .icon {
  stroke: #D8D8D8;
}
.modal__outer a.prev {
  right: 100px;
  left: auto;
}
.modal__outer a.next {
  right: 60px;
}

/**
 * Home Modal
 */
.modal--default {
  overflow-y: auto;
  background-color: var(--bg);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  position: relative;
  max-width: 1000px;
  max-height: 90vh;
  width: 50vw;
}
.modal--default.modal-wrapper--has-image {
  width: 75vw;
}
.modal--default a.close {
  top: 15px;
  right: 15px;
  width: 22px;
  height: 22px;
}
.modal--default .modal__text {
  height: auto;
}
.modal--default .modal-wrapper--no-image {
  justify-content: center;
}
.modal--default .modal-wrapper--no-image .modal__text {
  width: 100%;
}
.modal--default .modal__title {
  font-size: calc(var(--font-6) * var(--FONT-ADJUST-HEADING));
}
.modal--default .modal__subtitle {
  margin-top: -30px;
  margin-bottom: 30px;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  font-size: 0.7rem;
}
.modal--default .newsletter-form {
  margin: 0 auto;
}

.modal__overlay--password {
  --modal-underlay-color: rgba(0, 0, 0, 0.4);
}

.modal--password .modal__inner {
  width: 100%;
}

@media only screen and (max-width: 749px) {
  .modal--newsletter {
    overflow-y: visible;
  }

  .modal__overlay.modal__overlay--newsletter,
.modal__overlay--newsletter .modal__outer {
    position: fixed;
    top: initial;
    left: initial;
    right: initial;
    bottom: 0;
    width: auto;
    height: auto;
    background: transparent;
    z-index: 4000;
    padding: 0;
  }

  .modal__overlay--default .modal__outer,
.modal__overlay--default .modal--default {
    width: 100%;
    max-width: 100%;
  }
  .modal__overlay--default .modal__text {
    width: 100%;
    flex-shrink: 0;
    margin-top: -100px;
  }
  .modal__overlay--default .modal__inner {
    padding: 10px 25px 25px;
  }

  .modal__overlay--newsletter .modal-wrapper {
    flex-wrap: wrap;
    flex-direction: column-reverse;
    padding-top: 22px;
  }
  .modal__overlay--newsletter .modal-wrapper--no-image .modal__text {
    padding-left: 10px;
  }
  .modal__overlay--newsletter .modal__subtitle {
    margin-top: 0;
    margin-bottom: 10px;
  }
  .modal__overlay--newsletter .modal__title {
    font-size: calc(var(--font-5) * var(--FONT-ADJUST-HEADING));
  }
  .modal__overlay--newsletter .modal__description {
    font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  }
  .modal__overlay--newsletter .input-group-field {
    padding: 8px 12px;
  }
  .modal__overlay--newsletter .modal--newsletter a.close {
    padding: 3px;
    top: 10px;
    right: 10px;
    width: 22px;
    height: 22px;
  }
  .modal__overlay--newsletter .modal__image {
    flex-shrink: 0;
    height: calc(20vh + 20px);
    width: calc(20vh + 20px);
    border-radius: 50%;
    border-width: 8px;
    margin: auto;
    top: -100px;
    z-index: 0;
    border: 1px solid var(--bg);
  }

  .modal__overlay--password .modal__wrapper {
    justify-content: flex-end;
  }
  .modal__overlay--password .modal__body {
    transform: translateY(100%);
    transition: transform 0.5s;
  }
  .modal__overlay--password.is-open .modal__body {
    transform: translateY(0);
  }

  .modal-wrapper--reverse.modal-wrapper--no-image {
    padding-top: 100px;
  }
}
.search-form {
  position: relative;
  display: flex;
}
.search-form input[type=search] {
  width: 100%;
  margin: 0;
  padding: 15px;
  font-size: calc(1.0rem * var(--FONT-ADJUST-BODY));
  border: 0;
}
@supports (-webkit-touch-callout: none) {
  .search-form input[type=search] {
    font-size: max(calc(var(--font-2) * var(--FONT-ADJUST-NAV)), 16px);
  }
}
.search-form button[type=reset] {
  flex: 0 0 auto;
  height: 100%;
  padding: 15px;
  display: flex;
  align-items: center;
  font-size: calc(0.625rem * var(--FONT-ADJUST-BODY));
  text-transform: uppercase;
  letter-spacing: 0.12em;
}

.input-holder {
  position: relative;
  display: flex;
  flex: 1 1 auto;
}

.search-submit {
  --icon-size: 24px;
  margin: 0;
  border-radius: 0 var(--RADIUS) var(--RADIUS) 0;
}

.search-box {
  border-radius: var(--RADIUS) 0 0 var(--RADIUS);
}

main-search .input-holder {
  border: 1px solid var(--COLOR-BORDER);
  border-radius: var(--RADIUS) 0 0 var(--RADIUS);
}

.search-results-item__image {
  display: block;
  padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
  height: 0;
  position: relative;
  overflow: hidden;
  background-color: var(--COLOR-A5);
}
.search-results-item__image:only-child {
  border-bottom: none;
}
.is-focused .search-results-item__image {
  overflow: visible;
}
.search-results-item__image.is-visible {
  overflow: visible;
  z-index: 12;
}
.search-results-item__image .item-link {
  overflow: hidden;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.search-results-item__image .svg-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.has-line-design .search-results-item__image {
  border-bottom: 1px solid var(--COLOR-BORDER);
}

.search-results-item__bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  font-size: 0;
  line-height: 1;
  will-change: transform, opacity;
}

.item-link {
  display: block;
  padding: calc(var(--inner) / 2) var(--inner);
}
@media only screen and (max-width: 749px) {
  .item-link {
    padding: 12px;
  }
}

/**
 * Gift cards
 */
.template-giftcard,
.template-giftcard body {
  background: var(--bg);
}
.template-giftcard a,
.template-giftcard body a {
  text-decoration: none;
}

.template-gift_card #logo {
  margin-top: 40px;
  text-align: center;
}

.template-giftcard .wrapper {
  max-width: 588px;
}
.template-giftcard .wrapper img,
.template-giftcard .wrapper object,
.template-giftcard .wrapper iframe {
  max-width: 100%;
}

.giftcard-header {
  padding: 60px 0 0 0;
  font-size: 1em;
  text-align: center;
  animation: fadein 0.5s ease-in-out both 0.4s;
}
.giftcard-header .h1 {
  margin: 0;
}

.shop-url {
  display: none;
}

.giftcard {
  animation: slideup 0.8s ease-in-out;
}

.giftcard__border {
  background-color: var(--hairline);
  border-radius: 4px;
  border: 1px solid var(--border);
  padding: 1em;
  animation: container-slide 0.8s ease-in-out;
}

.giftcard__content {
  *zoom: 1;
  background-color: #FFF;
  color: var(--text);
  border: 1px solid var(--border);
  border-radius: 3px;
  animation: cardslide 0.8s ease-in-out;
}
.giftcard__content::after {
  content: "";
  display: table;
  clear: both;
}

.giftcard__header {
  *zoom: 1;
  border-bottom: 1px solid var(--border);
  padding: 15px;
}
.giftcard__header::after {
  content: "";
  display: table;
  clear: both;
}

.giftcard__title {
  float: left;
  margin-bottom: 0;
}

.giftcard__tag {
  display: block;
  float: right;
  background-color: var(--text-light);
  border: 1px solid transparent;
  color: #FFF;
  padding: 10px;
  border-radius: 4px;
  font-size: 0.75em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  line-height: 1;
}

.giftcard__tag--active {
  background: transparent;
  color: var(--text);
  border: 1px solid var(--border);
}

.giftcard__wrap {
  position: relative;
  margin: 15px 15px 30px;
}
.giftcard__wrap img {
  position: relative;
  display: block;
  border-radius: 10px;
  z-index: 2;
}
.giftcard__wrap:before, .giftcard__wrap:after {
  content: "";
  position: absolute;
  width: 47px;
  height: 47px;
  z-index: 3;
}
.giftcard__wrap:before {
  background: url("/cdn/s/assets/gift-card/corner-top-left-2ba3edcd9e97ba146cd01a8161365c5e.svg") 0 0 no-repeat;
  top: -1px;
  left: -1px;
}
.giftcard__wrap:after {
  background: url("/cdn/s/assets/gift-card/corner-bottom-right-1fb9bf49ff9564325e6b7c0fb0a7ff45.svg") 0 0 no-repeat;
  bottom: -1px;
  right: -1px;
}
.lt-ie9 .giftcard__wrap:before, .lt-ie9 .giftcard__wrap:after {
  display: none;
}

.giftcard__code {
  position: absolute;
  bottom: 30px;
  text-align: center;
  width: 100%;
  z-index: 50;
}

.giftcard__code--medium {
  font-size: 0.875em;
}

.giftcard__code--small {
  font-size: 0.75em;
}

.giftcard__code__inner {
  display: inline-block;
  vertical-align: baseline;
  background-color: #FFF;
  padding: 0.5em;
  border-radius: 4px;
  max-width: 450px;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
}
.giftcard__code--small .giftcard__code__inner {
  overflow: auto;
}

.giftcard__code__text {
  font-size: 1.875em;
  text-transform: uppercase;
  border-radius: 2px;
  border: 1px dashed var(--border);
  padding: 0.4em 0.5em;
  display: inline-block;
  vertical-align: baseline;
  color: #777;
  line-height: 1;
}
.disabled .giftcard__code__text {
  color: #999;
  text-decoration: line-through;
}

.giftcard__amount {
  position: absolute;
  top: 0;
  right: 0;
  color: #FFF;
  font-size: 2.75em;
  line-height: 1.2;
  padding: 15px;
  z-index: 50;
}
.giftcard__amount strong {
  display: block;
  text-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
}

.giftcard__amount--medium {
  font-size: 2em;
}

.tooltip {
  display: block;
  position: absolute;
  top: -50%;
  right: 50%;
  margin-top: 16px;
  z-index: 3;
  color: #FFF;
  text-align: center;
  white-space: nowrap;
  animation: popup 0.5s ease-in-out both 0.7s;
}
.tooltip:before {
  content: "";
  display: block;
  position: absolute;
  left: 100%;
  bottom: 0;
  width: 0;
  height: 0;
  margin-left: -5px;
  margin-bottom: -5px;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 5px solid #333;
  border-top: 5px solid rgba(51, 51, 51, 0.9);
}

.tooltip__label {
  display: block;
  position: relative;
  right: -50%;
  border: none;
  border-radius: 4px;
  background: #333;
  background: rgba(51, 51, 51, 0.9);
  min-height: 14px;
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  text-decoration: none;
  line-height: 16px;
  text-shadow: none;
  padding: 0.5em 0.75em;
  margin-left: 0.25em;
}
.tooltip__label small {
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #B3B3B3;
  font-size: 0.875em;
}

.giftcard__instructions {
  text-align: center;
  margin: 0 15px 30px;
}

.giftcard__actions {
  position: relative;
  border-top: 1px solid var(--border);
  padding: 30px 15px;
  text-align: center;
  overflow: hidden;
}

.action-link {
  position: absolute;
  left: 15px;
  top: 50%;
  font-size: 0.875em;
  display: block;
  text-transform: uppercase;
  letter-spacing: 0.2em;
  color: var(--text-light);
  margin-top: -10px;
}
.action-link:hover, .action-link:focus {
  color: var(--text);
}

.action-link__print {
  display: inline-block;
  vertical-align: baseline;
  width: 17px;
  height: 17px;
  vertical-align: middle;
  margin-right: 5px;
  opacity: 0.25;
  background-image: url("/cdn/s/assets/gift-card/icon-print-164daa1ae32d10d1f9b83ac21b6f2c70.png");
  background-repeat: no-repeat;
  background-position: 0 0;
}
.svg .action-link__print {
  background-image: url("/cdn/s/assets/gift-card/icon-print-6a10b2fb86d223b8c783c9696eaf4c31.svg");
}
.action-link:hover .action-link__print {
  opacity: var(--underlay-opacity);
}

.giftcard__footer {
  text-align: center;
  padding: 60px 0;
  animation: fadein 0.5s ease-in-out both 0.4s;
}

.giftcard__icon {
  width: 45px;
  display: inline-block;
  vertical-align: baseline;
}

#QrCode {
  text-align: center;
}
#QrCode img {
  padding: 30px;
  border: 1px solid var(--border);
  border-radius: 4px;
  margin: 0 auto 30px;
}

/*============================================================================
  #Media Queries
==============================================================================*/
/*================ Medium-down width ================*/
@media screen and (max-width: 580px) {
  .giftcard {
    font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  }

  .giftcard-header {
    padding: 30px 0;
  }

  .header-logo {
    font-size: 2em;
  }

  .giftcard__border,
.giftcard__actions {
    padding: 15px;
  }

  .giftcard__actions .btn, .giftcard__actions .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .giftcard__actions .shopify-payment-button__button--unbranded, .giftcard__actions #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .giftcard__actions .spr-button-primary, .giftcard__actions #challenge .shopify-challenge__button, #challenge .giftcard__actions .shopify-challenge__button {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .action-link {
    display: none;
  }
}
/*================ Small width ================*/
@media screen and (max-width: 400px) {
  .giftcard__amount strong {
    text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.1);
  }

  .giftcard__wrap:before,
.giftcard__wrap:after {
    display: none;
  }

  .giftcard__code {
    font-size: 0.75em;
  }

  .giftcard__code--medium {
    font-size: 0.65em;
  }

  .giftcard__code--small {
    font-size: 0.55em;
  }
}
/*================ Small height ================*/
@media screen and (max-height: 800px) {
  .header-logo img {
    max-height: 90px;
  }
}
/*============================================================================
  #Print Styles
==============================================================================*/
@media print {
  @page {
    margin: 0.5cm;
  }
  p,
h2,
h3 {
    orphans: 3;
    widows: 3;
  }

  h2,
h3 {
    page-break-after: avoid;
  }

  html,
body {
    background-color: #FFF;
  }

  .giftcard-header {
    padding: 10px 0;
  }

  .giftcard__content,
.giftcard__border {
    border: 0 none;
  }

  .giftcard__actions,
.giftcard__wrap:before,
.giftcard__wrap:after,
.tooltip,
.add-to-apple-wallet {
    display: none;
  }

  .giftcard__title {
    float: none;
    text-align: center;
  }

  .giftcard__code__text {
    color: #555;
  }

  .shop-url {
    display: block;
  }

  .logo {
    color: #58686F;
  }
}
/*============================================================================
  #Keyframe Animations
==============================================================================*/
@keyframes slideup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px) rotate(10deg);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }
  80% {
    -webkit-transform: translateY(10px);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0deg);
  }
}
@keyframes popup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(30px);
  }
  60% {
    opacity: 1;
    -webkit-transform: translateY(-10px);
  }
  80% {
    -webkit-transform: translateY(2px);
  }
  100% {
    -webkit-transform: translateY(0);
  }
}
@keyframes container-slide {
  0% {
    opacity: 0;
    -webkit-transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(0deg);
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 100;
  }
}
/**
 * NEWSLETTER
 */
.index-newsletter {
  position: relative;
}

.newsletter__blocks {
  display: grid;
  gap: var(--outer);
}
@media only screen and (min-width: 750px) {
  .newsletter__blocks {
    grid-template-columns: repeat(var(--item-count), minmax(0, 1fr));
  }
}

.newsletter__block__inner {
  padding: var(--inner) 0;
}

@media only screen and (min-width: 750px) {
  .wrapper--full .newsletter__block--image--left {
    margin-left: var(--outer-offset);
  }

  .wrapper--full .newsletter__block--image--right {
    margin-right: var(--outer-offset);
  }
}
@media only screen and (max-width: 749px) {
  .wrapper--full .newsletter__block--image {
    margin: 0 var(--outer-offset);
  }
}
.newsletter-form {
  --border: var(--text-a35);
  max-width: 440px;
}

.text-center .newsletter-form {
  margin: 0 auto;
}

.newsletter-form .input-row {
  margin-bottom: var(--line);
}

.newsletter-form .input-row:last-of-type {
  margin-bottom: 0;
}

.newsletter-form .input-group {
  position: relative;
  display: flex;
  margin: 0;
  border: 0;
  border-bottom: 1px solid var(--border);
  border-radius: 0;
}

.newsletter-form .input-group__field {
  flex: 1 1 auto;
  border: 0;
  padding: 1em 1em 1em 0;
  color: var(--text);
}

.newsletter-form .input-group__field::placeholder,
.newsletter-form .input-group__field:-webkit-autofill,
.newsletter-form .input-group__field:-webkit-autofill:hover,
.newsletter-form .input-group__field:-webkit-autofill:focus,
.newsletter-form .input-group__field:-webkit-autofill:active {
  -webkit-text-fill-color: var(--text-a75);
}

.newsletter-form .input-group__btn {
  flex: 0 0 auto;
  padding: 0 12px;
  color: var(--text);
}

.newsletter__message {
  display: none;
  line-height: 1.5;
  margin: var(--inner) 0;
  padding: var(--inner);
  background: var(--success-bg);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  font-style: var(--FONT-STYLE-BODY-ITALIC);
}

.has-success .newsletter__message--success {
  display: block;
}

.has-success .newsletter__message--success span,
.has-success .newsletter__message--success strong {
  padding: 0 5px;
  border: 1px dashed currentColor;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.has-error .newsletter__message--error {
  display: block;
}

.has-success .input-row,
.has-success .input-group {
  display: none;
}

.newsletter__outer {
  display: flex;
  align-items: flex-start;
  position: absolute;
  left: 0;
  top: calc(var(--header-height) + var(--announcement-height));
  width: 100%;
  height: calc(100% - var(--header-height) - var(--announcement-height));
  pointer-events: none !important;
}
@media only screen and (max-width: 479px) {
  .newsletter__outer {
    position: fixed;
    top: auto;
    bottom: var(--outer);
    right: var(--outer);
    left: var(--outer);
    width: auto;
    height: auto;
    z-index: inherit;
  }
}

.small-newsletter {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 4000;
  display: none;
  width: 350px;
  padding: 0 40px 0 16px;
  background-color: var(--bg);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  color: var(--text);
  pointer-events: auto;
}
@media only screen and (max-width: 989px) {
  .small-newsletter {
    width: 48%;
  }
}
@media only screen and (max-width: 479px) {
  .small-newsletter {
    position: relative;
    width: 100%;
  }
}
.small-newsletter .newsletter__message {
  padding: 0;
  margin: 0.5em 0;
  background: transparent;
}

.small-newsletter--top-left {
  margin-right: auto;
}

.small-newsletter--top-right {
  margin-left: auto;
}

.small-newsletter--bottom-left,
.small-newsletter--bottom-right {
  top: auto;
  bottom: 80px;
  transform: translateY(80px);
  transition: transform 0.3s ease;
}

.cart-bar-visible .small-newsletter--bottom-left,
.cart-bar-visible .small-newsletter--bottom-right {
  transition: transform 0.5s ease;
  transform: translateY(0px);
}

.small-newsletter--bottom-left {
  margin: auto auto 0 0;
}

.small-newsletter--bottom-right {
  margin: auto 0 0 auto;
}

.small-newsletter .input-group {
  position: static;
  border: 0;
}

.small-newsletter .input-group__field {
  width: 100%;
  padding: 10px 0;
  color: var(--text);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}
.small-newsletter .input-group__field::placeholder {
  color: var(--text);
}
.small-newsletter .input-group__field:-webkit-autofill, .small-newsletter .input-group__field:-webkit-autofill:hover, .small-newsletter .input-group__field:-webkit-autofill:focus, .small-newsletter .input-group__field:-webkit-autofill:active {
  -webkit-transition: background-color 5000s ease-in-out 0s, border-color 5000s ease-in-out 0s;
  transition: background-color 5000s ease-in-out 0s, border-color 5000s ease-in-out 0s;
  -webkit-text-fill-color: var(--text) !important;
}

.small-newsletter .btn--arrow {
  position: absolute;
  top: 50%;
  right: 12px;
  width: 20px;
  height: 20px;
  padding: 0;
  margin-top: -10px;
  color: inherit;
  border: none;
  background: none;
  font-size: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0.3s;
}

.small-newsletter.has-value .btn--arrow {
  opacity: 1;
  visibility: visible;
}

.has-header-sticky .small-newsletter {
  top: var(--header-height);
}
@media only screen and (max-width: 479px) {
  .has-header-sticky .small-newsletter {
    top: 0;
  }
}

[data-scroll-locked] .small-newsletter {
  visibility: hidden;
  z-index: -1;
  opacity: 0 !important;
  pointer-events: none;
  transition: z-index 0.3s, opacity 0.3s, visibility 0s 0.3s;
}

.newsletter__heading {
  padding: 10px 0;
  cursor: pointer;
}
.newsletter__heading p {
  margin: 0;
}
@media only screen and (max-width: 479px) {
  .newsletter__heading p {
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis;
  }
}

.newsletter__close {
  position: absolute;
  top: 50%;
  right: 10px;
  padding: 0;
  transform: translateY(-50%);
  transition: all 0.3s;
}
.newsletter__close:hover {
  transform: translateY(-50%) rotate(90deg);
}

.has-value .newsletter__close {
  visibility: hidden;
  opacity: 0;
}

.index-look {
  background-color: var(--bg);
  color: var(--text);
}
@media only screen and (min-width: 750px) {
  .index-look .look__aside {
    align-self: center;
    display: flex;
  }
  .index-look .look__content {
    flex: 1;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    justify-content: center;
  }
  .index-look .look__slider {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--gap);
    position: static;
    width: 100%;
  }
  .index-look .look__slider--grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .index-look .product-item {
    width: 100%;
    display: flex;
    flex-direction: column;
    flex: 0 0 auto;
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .index-look .look__aside {
    padding-top: 35px;
    padding-bottom: 35px;
  }
  .index-look .look__title {
    padding-bottom: 10px;
  }
}

@media only screen and (min-width: 750px) {
  .look {
    flex: 1;
    display: flex;
    align-items: flex-start;
  }
  .look.is-reversed {
    flex-direction: row-reverse;
  }
}

@media only screen and (min-width: 750px) {
  .look__slider {
    display: flex;
    flex-flow: row nowrap;
    gap: 0;
    overflow-x: auto;
    overflow-y: hidden;
    max-width: calc(25vw + 150px);
    padding-left: 75px;
    padding-right: 75px;
    margin-left: auto;
    margin-right: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .look__slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .look__slider.flickity-enabled {
    overflow: hidden;
  }
  .look__slider::after {
    content: "flickity";
    display: none;
  }
  .look__slider .look__slide {
    display: block;
  }
  .look__slider .flickity-viewport {
    flex: 1;
    width: 100%;
  }
  .look__slider .flickity-page-dots {
    left: 0;
  }
  .look__slider .flickity-prev-next-button.previous {
    left: 4px;
  }
  .look__slider .flickity-prev-next-button.next {
    right: 4px;
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .look__slider {
    max-width: calc(25vw + 100px);
    padding-left: 50px;
    padding-right: 50px;
  }
}
@media only screen and (max-width: 749px) {
  .look__slider {
    display: flex;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: auto;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    -webkit-overflow-scrolling: touch;
    padding: 0 0 var(--outer) var(--outer);
    margin: 0;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .look__slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .look__slider::after {
    content: "";
    min-height: 1px;
    display: block;
    position: relative;
    padding-right: var(--outer);
  }
  body.grid-compact.has-line-design .look__slider {
    padding-top: 1px;
  }
  .look__slider .product-item {
    width: 100%;
    min-height: 100%;
  }
}

@media only screen and (min-width: 990px) {
  .look__slider--grid {
    max-width: 50vw;
    padding: 0;
  }
}

@media only screen and (max-width: 749px) {
  .look__content .look__slider {
    margin: 0 var(--outer-offset);
  }
}

.look__slide {
  flex: 0 0 auto;
  width: 100%;
}
@media only screen and (max-width: 749px) {
  .look__slide {
    width: calc(100% - 50px);
    max-width: 80vh;
    margin-right: var(--gutter);
    scroll-snap-align: start;
  }
  .look__slide:last-child {
    margin-right: 0;
  }
  .look__slide:only-child {
    width: calc(100% - var(--gutter));
  }
}

.look__aside {
  flex: 1 1 50%;
  text-align: left;
  padding: 35px 0;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .look__aside {
    padding: 60px var(--outer);
  }
}
@media only screen and (min-width: 1400px) {
  .look__aside {
    padding: 104px var(--outer);
  }
}
@media only screen and (max-width: 749px) {
  .look__aside {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 5600;
    width: 100vw;
    height: 100%;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    /* Visually hide from the viewport to avoid popup showing up on window resize */
    overflow: hidden;
    transition: opacity 0.5s;
  }
  .look__aside.is-open {
    opacity: 1;
    pointer-events: initial;
  }
  .look__aside.is-open, .look__aside.is-animating {
    visibility: visible;
  }
}

@media only screen and (max-width: 749px) {
  .look__close {
    --icon-size: 24px;
    position: absolute;
    top: 50%;
    right: 4px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    color: var(--link);
    background: transparent;
    border-radius: var(--RADIUS);
    font-size: 0;
    text-decoration: none;
    transform: translate3d(0, -50%, 0);
    transition: color 0.3s ease;
    right: 8px;
    top: 22px;
    z-index: 2;
  }
  .look__close .icon {
    display: block;
    fill: currentColor;
    transition: transform 0.3s;
    pointer-events: none;
  }
}
@media only screen and (max-width: 749px) and (hover: hover) {
  .look__close:hover {
    color: var(--link-hover);
  }
  .look__close:hover .icon {
    transform: rotate(90deg);
  }
}

@media only screen and (max-width: 749px) {
  .look__content {
    position: absolute;
    right: 0;
    bottom: 0;
    top: auto;
    z-index: 2;
    overflow-x: hidden;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    padding: 0 var(--gutter);
    border-radius: 10px 10px 0 0;
    background-color: var(--COLOR-BG);
    color: var(--COLOR-TEXT);
    transform: translate3d(0, 100%, 0);
    will-change: transform;
    transition: transform 0.5s;
  }
}

@media only screen and (max-width: 749px) {
  .is-open > .look__content {
    transform: translate3d(0, 0, 0);
  }
}

.look__title {
  margin: 0;
  padding-bottom: var(--gutter);
  text-align: center;
}
@media only screen and (max-width: 749px) {
  .look__title {
    text-align: left;
    padding-top: var(--gutter);
  }
}

.look__image {
  --top: 0;
  width: 100%;
  position: relative;
}
@media only screen and (min-width: 750px) {
  .look__image {
    position: sticky;
    top: var(--top);
    flex: 0 0 50%;
    margin: 0 auto;
  }
}

.has-header-sticky .look__image {
  --top: var(--header-height);
}

.has-header-sticky .look__image--fullheight {
  --header-height-sticky: var(--header-height);
}

@media only screen and (min-width: 750px) {
  .look__image--fullheight {
    height: calc(100vh - var(--header-height-sticky, 0px));
    overflow: hidden;
  }
}

@media only screen and (min-width: 750px) {
  .look__image--fullheight .look__image-container {
    position: relative;
    min-width: 100%;
    min-height: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    aspect-ratio: var(--aspect-ratio);
  }
}

.look__image--fullheight .look__image-bg {
  --header-height-sticky: 0;
}
@media only screen and (min-width: 750px) {
  .look__image--fullheight .look__image-bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding-top: 0;
  }
}

.look__actions {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: var(--gutter);
}

.look__dots {
  position: absolute;
  top: 12px;
  left: 12px;
  bottom: 11px;
  right: 11px;
}

.look__dot__button {
  position: absolute;
  width: 23px;
  height: 23px;
  padding: 0;
  margin-top: -12px;
  margin-left: -12px;
  top: var(--dot-top);
  left: var(--dot-left);
  cursor: pointer;
}

@media (hover: hover) {
  .look__dot__button.is-selected .look__dot::before {
    animation: pulse 2.5s linear infinite;
  }

  .look__dot__button:hover .look__dot::after {
    animation: pulseHover 1.5s linear infinite;
  }
}
.look__dot {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
  width: 100%;
  height: 100%;
  background-color: var(--bg);
  border-radius: var(--radius);
  display: flex;
  align-items: center;
  justify-content: center;
}
.look__dot::after, .look__dot::before {
  content: "";
  width: 35px;
  height: 35px;
  background-color: inherit;
  border-radius: inherit;
  opacity: 0.3;
  position: absolute;
  top: -6px;
  left: -6px;
  will-change: transform;
}
.look__dot::before {
  opacity: 0;
}

.look__dot__icon {
  background-color: var(--primary);
  -webkit-mask-image: var(--icon-add-cart);
          mask-image: var(--icon-add-cart);
  -webkit-mask-size: contain;
          mask-size: contain;
  width: 75%;
  height: 75%;
  display: inline-block;
}

@keyframes pulse {
  0% {
    transform: scale(0);
    opacity: 0;
  }
  89% {
    transform: scale(0);
    opacity: 0;
  }
  90% {
    transform: scale(1);
    opacity: 0.2;
  }
  100% {
    transform: scale(5);
    opacity: 0;
  }
}
@keyframes pulseHover {
  0% {
    transform: scale(1);
    opacity: 0.3;
  }
  15% {
    transform: scale(1.2);
    opacity: 0.05;
  }
  50% {
    transform: scale(1);
    opacity: 0.3;
  }
  100% {
    transform: scale(1);
    opacity: 0.3;
  }
}
/**
 * List Collections Page
 */
.collection-block__wrapper {
  display: block;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.collection-block {
  display: flex;
  align-items: center;
  min-height: 50vw;
  background: var(--COLOR-BG-SECONDARY);
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .collection-block {
    min-height: 400px;
  }
}
@media only screen and (min-width: 990px) and (max-width: 1399px) {
  .collection-block {
    min-height: 500px;
  }
}
@media only screen and (min-width: 1400px) {
  .collection-block {
    min-height: 600px;
  }
}
@media only screen and (max-width: 749px) {
  .collection-block {
    flex-direction: column;
  }
}

.collection-block__content {
  height: 100%;
  width: 50%;
  text-align: left;
  padding: 104px;
}
@media only screen and (max-width: 1399px) {
  .collection-block__content {
    padding: 60px;
  }
}
@media only screen and (max-width: 749px) {
  .collection-block__content {
    width: 100%;
    padding: 40px;
  }
}

.collection-block__button {
  margin-top: 10px;
}

.collection-block__image {
  align-self: stretch;
  position: relative;
  width: 50%;
}
@media only screen and (max-width: 749px) {
  .collection-block__image {
    width: 100%;
    height: 50vw;
    margin: 30px auto 0 auto;
  }
}

.collection-block__image-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.collection-block__products {
  width: 50%;
}
@media only screen and (min-width: 750px) {
  .collection-block__products {
    display: flex;
  }
}
.collection-block__products .product-item {
  width: 50%;
}

.selector-wrapper select, .selector-wrapper .popout__toggle {
  width: 100%;
}
.selector-wrapper label {
  font-size: calc(12px * var(--FONT-ADJUST-BODY));
}

.no-js .product__selectors {
  display: none;
}

.product__selectors .select__fieldset,
.product__selectors .radio__fieldset {
  padding-top: calc(var(--form-margin) / 2);
  padding-bottom: calc(var(--form-margin) / 2);
}

.product__selectors > .selector-wrapper:last-child .radio__fieldset {
  margin-bottom: 0;
}

.product__block--lines {
  padding-top: calc(var(--form-margin) / 2);
  padding-bottom: calc(var(--form-margin) / 2);
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
}
.product__block--lines + .product__block--lines {
  border-top: 0;
  padding-top: 0;
}
.product__block--lines .selector-wrapper .select__fieldset,
.product__block--lines .selector-wrapper .radio__fieldset {
  border-bottom: 1px solid var(--border);
}
.product__block--lines .selector-wrapper:first-child .select__fieldset,
.product__block--lines .selector-wrapper:first-child .radio__fieldset {
  padding-top: 0;
}
.product__block--lines .selector-wrapper:last-child .select__fieldset,
.product__block--lines .selector-wrapper:last-child .radio__fieldset {
  padding-bottom: 0;
  border-bottom: 0;
}

.select__fieldset,
.radio__fieldset {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 7.5rem) minmax(0, 100%);
}

.select__fieldset .select__label {
  display: block;
  padding-right: 0;
  margin: 5px 0;
  align-self: center;
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}
.select__fieldset .select__label.is-hidden {
  display: none;
  margin: 0;
  padding: 0;
}

/* = both radio and swatch = */
.radio__legend {
  display: block;
  padding: 0;
  width: 100%;
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
}

.radio__legend__label {
  display: flex;
  flex-wrap: wrap;
  word-break: break-word;
  align-items: center;
}
@media only screen and (min-width: 750px) {
  .radio__legend__label {
    padding-top: 0;
  }
}

.radio__legend.is-hidden {
  display: none;
  padding: 0;
  margin: 0;
}

.radio__fieldset--single {
  display: block;
  padding: calc(var(--form-margin) / 2) 0;
}

.radio__fieldset--single .radio__legend__link {
  display: inline;
  color: var(--link);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
}

.radio__legend__link {
  display: flex;
  align-items: center;
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  font-weight: var(--FONT-WEIGHT-BODY);
  transition: color 0.3s ease, background 0.3s ease;
}

.radio__legend__option-name {
  flex-basis: auto;
  display: inline-block;
  vertical-align: middle;
  margin-right: 5px;
}

.btn-size-chart {
  --icon-size: calc(15px * var(--FONT-ADJUST-BODY));
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 2px;
  text-align: center;
  background: var(--bg-accent);
  border-radius: var(--RADIUS);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  min-width: calc(var(--font-2) * var(--FONT-ADJUST-BODY) * 1.375);
  line-height: 1.0715;
}

.radio__legend__dot {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  margin: 0 10px 0 0;
  background-color: var(--COLOR-TEXT);
  opacity: 0.4;
}

.radio__fieldset__label {
  display: block;
}

.radio__legend__label,
.radio__fieldset__label {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.product__block--classic .radio__legend__label--text {
  justify-content: space-between;
}

.radio__legend__value {
  flex-basis: 100%;
  display: block;
  padding-top: 4px;
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
}

.swatch__button label:hover,
.radio__button label:hover {
  cursor: pointer;
}

/* = radio button specific = */
.radio__button {
  position: relative;
  display: inline-block;
}

.radio__fieldset .radio__button label {
  display: block;
  font-family: var(--BTN-FONT-STACK);
  font-size: var(--BTN-FONT-SIZE);
  font-style: var(--BTN-FONT-STYLE);
  font-weight: var(--BTN-FONT-WEIGHT);
  line-height: var(--line-height-normal);
  letter-spacing: var(--BTN-LETTER-SPACING);
  text-transform: var(--BTN-UPPERCASE);
  position: relative;
  margin: 0;
  padding: var(--btn-top);
  min-width: calc(var(--BTN-FONT-SIZE) * var(--line-height-normal) + var(--btn-top) * 2 + 2px);
  text-align: center;
  color: inherit;
  background-color: transparent;
  border: 1px solid var(--COLOR-A20);
  border-radius: var(--RADIUS);
  transition: color 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), background 0.5s cubic-bezier(0.215, 0.61, 0.355, 1), border 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.radio__fieldset .radio__button label:hover, .radio__fieldset .radio__button label:active, .radio__fieldset .radio__button label:focus {
  border: 1px solid var(--primary);
}
.radio__fieldset .radio__button input:disabled + label,
.radio__fieldset .radio__button input.sold-out + label,
.radio__fieldset .radio__button input.unavailable + label {
  background-color: var(--COLOR-A5);
  color: var(--COLOR-A20);
}
.radio__fieldset .radio__button input:checked ~ label {
  border-color: var(--primary);
}

.radio__fieldset .radio__buttons {
  margin: -4px;
}

.radio__fieldset--swatches .radio__buttons {
  margin: 0 -2px;
}

.radio__fieldset--swatches .swatch__button,
.radio__button {
  padding: 4px;
  margin: 0;
  vertical-align: middle;
}

.radio__fieldset--swatches.is-visible {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}

.radio__fieldset--swatches.is-visible .swatch__button {
  animation: fadeIn 0.5s var(--animation-delay) both;
}

.radio__fieldset--swatches.is-visible + .product-item__swatches__count {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.radio__fieldset--pgi {
  display: block;
  padding: var(--form-margin) 0;
  visibility: hidden;
  opacity: 0;
  min-width: 0;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  padding: 0 calc(var(--inner) / 2);
  background-color: var(--COLOR-BG);
  transition: opacity 0.3s ease, visibility 0.3s;
}
.radio__fieldset--pgi .radio__button label {
  padding: 5px;
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  line-height: 26px;
}
.radio__fieldset--pgi .radio__legend__label {
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  padding-right: 0;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.1em;
}
.radio__fieldset--pgi .radio__legend__label p {
  text-align: center;
  width: 100%;
}
.radio__fieldset--pgi .swatch__button {
  --swatch-size: 26px;
  padding: 5px 0;
  margin: 0 5px;
  cursor: pointer;
}
.radio__fieldset--pgi .swatch__button input:checked ~ label {
  margin: 0;
}
.radio__fieldset--pgi .swatch__button input:checked + label:after {
  border-color: var(--border);
}
.radio__fieldset--pgi .swatch__button--square label {
  min-width: var(--swatch-size);
  min-height: calc(var(--swatch-size) / 2);
}
.radio__fieldset--pgi .radio__fieldset__arrow {
  pointer-events: initial;
}
.no-js .radio__fieldset--pgi {
  visibility: visible;
  opacity: 1;
}

.radio__fieldset__arrow {
  --icon-size: 24px;
  display: flex;
  align-items: center;
  position: relative;
  z-index: 1;
  width: 10px;
  height: var(--icon-size);
  min-height: inherit;
  margin: 0;
  padding: 0;
  border-radius: 0;
  box-shadow: none;
  color: var(--text);
  transition: opacity 0.2s ease;
  pointer-events: auto;
}
.radio__fieldset__arrow:before {
  content: "";
  position: absolute;
  top: 0;
  width: 12px;
  height: 100%;
}
.radio__fieldset__arrow .icon {
  position: relative;
  flex: 1 0 var(--icon-size);
}

.radio__fieldset__arrow--prev {
  left: 0;
  justify-content: flex-start;
}

.radio__fieldset__arrow--prev .icon {
  margin-left: -8px;
}

.radio__fieldset__arrow--prev:before {
  left: 3px;
  background: linear-gradient(to right, var(--COLOR-BG) 50%, var(--COLOR-BG-TRANSPARENT) 100%);
}

.radio__fieldset__arrow--next {
  right: 0;
  justify-content: flex-end;
}

.radio__fieldset__arrow--next .icon {
  margin-right: -8px;
}

.radio__fieldset__arrow--next:before {
  right: 3px;
  background: linear-gradient(to left, var(--COLOR-BG) 50%, var(--COLOR-BG-TRANSPARENT) 100%);
}

.selector-wrapper__actions {
  position: absolute;
  top: 50%;
  left: 0;
  right: 0;
  padding: 0;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-height: 36px;
  pointer-events: none;
}
.no-js .selector-wrapper__actions {
  position: relative;
  top: 0;
  left: 0;
  right: 0;
  height: 0;
  transform: none;
}

.selector-wrapper__scrollbar {
  position: relative;
  margin: -5px;
  padding: 5px;
  width: calc(100% + 10px);
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.selector-wrapper__scrollbar::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}

/* = swatch button specific = */
.swatches {
  --swatch-default: #CCC;
}

.swatch__button {
  --swatch-size: 32px;
  --swatch-outline-offset: 3px;
  display: inline-block;
  padding: 5px 0;
  margin: 0 10px 10px 0;
  position: relative;
  z-index: 0;
  pointer-events: initial;
}

.swatch__button.sale:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  margin-top: 4px;
  background-color: var(--COLOR-SALE);
  transform: translateX(-50%);
}

.swatch__button input,
.radio__button input {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  width: 0;
  height: 0;
  margin: 0;
  overflow: hidden;
  pointer-events: none;
  display: block;
}

.selector-wrapper fieldset label {
  margin-top: unset;
}

.swatch__button .sibling__link,
.swatch__button .swatch__link,
.swatch__button input ~ label {
  display: block;
  position: relative;
  margin: 0;
  background: var(--swatch, var(--swatch-default));
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
  overflow: hidden;
}

.swatch__button .sibling__link:after,
.swatch__button input ~ label:after {
  content: "";
  box-sizing: border-box;
  position: absolute;
  z-index: -1;
  background: var(--swatch, var(--swatch-default)) no-repeat center center/cover;
  overflow: initial;
  transition: opacity 0.3s ease, transform 0.3s ease;
  transform: scale(0.95);
}

.swatch__button .sibling__link:after,
.swatch__button input ~ label:after {
  opacity: 0;
}

.sibling__link--current {
  cursor: default;
  pointer-events: none;
}

.swatch__button .sibling__link--current,
.swatch__button input:checked ~ label {
  overflow: initial;
  box-shadow: 0 0 0 2px var(--bg);
}

.swatch__button .sibling__link--current .image-wrapper {
  box-shadow: 0 0 0 2px var(--bg);
}

.swatch__button .sibling__link--current:after,
.swatch__button input:checked ~ label:after {
  opacity: 1;
  transform: translateZ(0);
  overflow: hidden;
}

.swatch__button .sibling__link--sold-out:before,
.swatch__button input.sold-out ~ label:before,
.swatch__button input.unavailable ~ label:before,
.swatch__button input:disabled + label:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  width: 1px;
  background-color: var(--text-dark);
  transform-origin: left top;
}

/* Prevent tooltip showing up while product quick add drawer is in a loading state */
.is-loading .sibling__link,
.is-loading .swatch__button {
  pointer-events: none;
}

/*=== White/Black color swatches ===*/
.swatch-white input ~ label,
.swatch-white .sibling__link,
.swatch-white .swatch__link {
  --swatch: #FAFAFA;
  box-shadow: inset 0 0 0 1px var(--border);
}
.swatch-white input ~ label:after,
.swatch-white .sibling__link:after,
.swatch-white .swatch__link:after {
  border-color: var(--primary);
}

.swatch__button input.sold-out ~ label[data-swatch=black i]:before,
.swatch__button input.unavailable ~ label[data-swatch=black i]:before,
.swatch__button input:disabled ~ label[data-swatch=black i]:before {
  background-color: #FFF;
}

.swatch__button input.sold-out ~ label[data-swatch=white i]:before,
.swatch__button input.unavailable ~ label[data-swatch=white i]:before,
.swatch__button input:disabled ~ label[data-swatch=white i]:before {
  background-color: var(--border);
}

/*=== Circle swatch style ===*/
.swatch__button--circle .sibling__link,
.swatch__button--circle .swatch__link,
.swatch__button--circle input ~ label {
  width: var(--swatch-size);
  height: var(--swatch-size);
  border-radius: 50%;
  background: var(--swatch, var(--swatch-default));
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
}

.swatch__button--circle .sibling__link:after,
.swatch__button--circle input ~ label:after {
  top: calc(var(--swatch-outline-offset) * -1);
  left: calc(var(--swatch-outline-offset) * -1);
  width: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
  height: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
  border-radius: 50%;
}

.swatch__button--circle .sibling__link--sold-out:before,
.swatch__button--circle input.sold-out ~ label:before,
.swatch__button--circle input.unavailable ~ label:before,
.swatch__button--circle input:disabled + label:before {
  height: var(--swatch-size);
  transform: rotate(-45deg) translate(-50%, -50%);
}

/*=== Square swatch style ===*/
.swatch__button--square input ~ label,
.swatch__button--square .sibling__link,
.swatch__button--square .swatch__link {
  width: var(--swatch-size);
  height: var(--swatch-size);
}

.swatch__button--square .sibling__link:after,
.swatch__button--square input ~ label:after {
  top: calc(var(--swatch-outline-offset) * -1);
  left: calc(var(--swatch-outline-offset) * -1);
  width: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
}

.swatch__button--square input ~ label:after,
.swatch__button--square .sibling__link:after {
  height: calc(var(--swatch-size) + var(--swatch-outline-offset) * 2);
}

.swatch__button--square input:checked ~ label {
  margin: 0;
}

.swatch__button--square .sibling__link--current {
  height: calc(var(--swatch-size));
  width: var(--swatch-size);
  margin: 0;
}

.swatch__button--square .sibling__link--sold-out:before,
.swatch__button--square input.sold-out ~ label:before,
.swatch__button--square input.unavailable ~ label:before,
.swatch__button--square input:disabled + label:before {
  transform: rotate(-45deg) translate(-50%, -50%);
  height: calc(var(--swatch-size) * 1.375);
}

.is-focused .swatch__button:focus-within,
.is-focused .radio__button:focus-within {
  outline: 5px auto var(--COLOR-PRIMARY);
}

/**
 * Product grid
 */
.grid .no-results:first-child {
  grid-column: 1/-1;
}

.product-item {
  --text: var(--COLOR-TEXT);
  --text-dark: var(--COLOR-TEXT-DARK);
  --text-light: var(--COLOR-TEXT-LIGHT);
  position: relative;
  background: var(--COLOR-BG);
  scroll-snap-align: start;
}
.tabs-collections .product-item .grid__heading-holder {
  overflow: hidden;
}

.sale-box,
.preorder-box,
.badge-box {
  --left-spacing: 5px;
  --padding-vertical: 7px;
  position: absolute;
  left: var(--left-spacing);
  top: 5px;
  z-index: 3;
  text-align: center;
  padding: calc(var(--padding-vertical) * var(--FONT-ADJUST-BODY)) 15px;
  width: auto;
  max-width: calc(100% - (var(--left-spacing) * 2));
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}
@media only screen and (max-width: 749px) {
  .sale-box,
.preorder-box,
.badge-box {
    --padding-vertical: 6px;
  }
}

.sale-box {
  color: var(--sale-text);
  background: var(--sale-bg);
}

.preorder-box,
.badge-box {
  color: var(--COLOR-BADGE-TEXT);
  background: var(--COLOR-BADGE-BG);
}

@media only screen and (min-width: 750px) {
  .product-item--featured {
    min-height: 100%;
    align-self: stretch;
  }

  .product-item--featured .grid__heading-holder {
    width: 100%;
    min-height: 100%;
  }

  .product-item--full {
    display: flex;
  }

  .flickity-enabled .product-item--full,
.flickity-enabled .product-item--full .grid__heading-holder {
    min-height: 0;
    height: 100%;
  }
}
@media only screen and (max-width: 749px) {
  .product-item--featured .grid__heading-holder {
    min-height: 100%;
  }
}
@media only screen and (max-width: 479px) {
  .product-item--featured .grid__heading-holder {
    padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
  }
}
.product-item--featured .grid__heading-holder {
  color: var(--text);
  flex: 1 1 auto;
  margin-bottom: 0;
}

.product-item--featured .grid__content {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 11;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: var(--inner);
}

.product-item--featured .grid__heading-text {
  flex: 1;
  display: flex;
  align-items: flex-end;
  width: 100%;
}

.product-item--featured .grid__heading-actions {
  margin-top: auto;
}

.product-item--featured .grid__heading-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
}

.product-item--aligned {
  height: auto;
  align-self: flex-start;
}
.flickity-resize .flickity-slider > .product-item--aligned {
  min-height: 0;
}

.product-item--aligned .grid__heading-holder {
  padding: var(--PRODUCT-GRID-ASPECT-RATIO) 0 0;
  height: 0;
  min-height: 1px;
}

.no-js .product-item--featured .grid__heading-holder {
  padding-top: 100%;
}

.product-item__swatches__holder {
  --swatch-size: 26px;
  min-height: calc(var(--font-2) * var(--FONT-ADJUST-BODY) * 1.4 + 16px);
  position: relative;
  margin: 0 calc((var(--inner) / 2) * -1);
  padding: 0;
  font-size: 0;
}

.product-item__swatches__holder--square {
  --swatch-size: 12px;
}

.product-item__swatches__count {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  display: block;
  padding: 8px calc(var(--inner) / 2);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  color: var(--text-light);
  font-style: var(--FONT-STYLE-BODY-ITALIC);
  transition: opacity 0.3s ease, visibility 0.3s;
  cursor: pointer;
}
.no-js .product-item__swatches__count {
  position: relative;
}

.product-link {
  --link: var(--text-dark);
  --link-hover: var(--text-a70);
  display: block;
  height: 100%;
}
.no-js .product-link {
  height: auto;
}

.product-item__image {
  display: block;
  padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
  height: 0;
  position: relative;
  overflow: hidden;
  filter: brightness(var(--filter-bg));
}
.product-item__image:not(.image--empty) {
  background-color: var(--COLOR-BG);
}
@media only screen and (max-width: 749px) {
  .predictive-search .product-item__image {
    height: 100%;
  }
}
.product-item__image:only-child {
  border-bottom: none;
}
.is-focused .product-item__image {
  overflow: visible;
}
.product-item__image.is-visible {
  overflow: visible;
  z-index: 12;
}
.product-item__image .product-link {
  overflow: hidden;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}
.product-item--featured-image .product-item__image {
  padding: 0;
  height: 100%;
}
.has-line-design .product-item--featured-image .product-item__image {
  border-bottom: 0;
}
.product-item__image .svg-placeholder {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.product-item--overlay-text .product-item__image {
  border-bottom: 0;
}
.has-line-design .product-item__image {
  border-bottom: 1px solid var(--COLOR-BORDER);
}
@media only screen and (max-width: 749px) {
  .has-line-design .predictive-search .product-item__image {
    border-bottom: 0;
    border-right: 1px solid var(--COLOR-BORDER);
  }
}

.product-item__image-overlay {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;
}
.product-item__image-overlay::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}

.product-item__image-content {
  position: relative;
  text-align: center;
}

.product-item__image-content h3 {
  font-size: calc(1.75rem * var(--FONT-ADJUST-HEADING));
}
@media only screen and (max-width: 749px) {
  .product-item__image-content h3 {
    font-size: calc(1.5rem * var(--FONT-ADJUST-HEADING));
  }
}

.product-item__image-content .btn, .product-item__image-content .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .product-item__image-content .shopify-payment-button__button--unbranded, .product-item__image-content #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .product-item__image-content .spr-button-primary, .product-item__image-content #challenge .shopify-challenge__button, #challenge .product-item__image-content .shopify-challenge__button {
  color: inherit;
  margin-top: 1em;
}

.product-item__image-content .btn--solid, .product-item__image-content .shopify-payment-button .shopify-payment-button__button, .shopify-payment-button .product-item__image-content .shopify-payment-button__button, .product-item__image-content #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .product-item__image-content .spr-button-primary, .product-item__image-content .shopify-payment-button__button--unbranded,
.product-item__image-content .btn--outline {
  border-color: inherit;
}

.product-item__image-link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product-item__bg__inner,
.product-item__bg__sibling,
.product-item__bg {
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
  overflow: hidden;
  line-height: 0;
  will-change: transform, opacity;
}

.product-item__bg,
.product-item__bg__under {
  position: absolute;
  top: -1px;
  right: -1px;
  bottom: -1px;
  left: -1px;
  width: auto;
  height: auto;
}

.product-item__bg__under {
  z-index: 1;
  background-color: var(--bg);
  line-height: 0;
  overflow: hidden;
  transition: opacity 0.25s ease-in-out;
}
.product-item__bg__under iframe {
  pointer-events: none;
}

.product-item__bg__under.deferred-media {
  position: absolute;
}

.product-item__bg.is-fade {
  animation: fakeFade 0.25s ease-in-out;
  animation-fill-mode: forwards;
}

@keyframes fakeFade {
  0% {
    opacity: 1;
  }
  50% {
    opacity: 0.8;
  }
  100% {
    opacity: 1;
  }
}
.product-item__bg__inner {
  opacity: 0;
  background-color: var(--bg);
  transition: opacity 0.3s ease-in-out;
}

.product-item__bg__inner.is-visible,
.product-item__bg__sibling.is-visible {
  opacity: 1;
}

.product-item__bg__sibling {
  opacity: 0;
  transition: opacity 0.3s ease;
  background: var(--bg);
}

.product-item__bg__sibling.is-visible {
  opacity: 1;
}

.product-item__bg__sibling img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  object-fit: cover;
  animation: imageFadeOut 0.3s ease;
  animation-fill-mode: forwards;
  background-color: var(--bg);
  z-index: 1;
}

.product-item__bg__sibling img.is-fade {
  animation: imageFadeIn 0.3s ease;
  animation-fill-mode: forwards;
  z-index: 2;
}

.product-item--centered .product-information {
  text-align: center;
}

.product-item--centered .product-item__title {
  margin-bottom: 4px;
}

.product-item--centered .product-item__price__holder {
  justify-content: center;
}

.product-item--left .radio__fieldset--swatches .swatch__button {
  margin: 0 10px 0 0;
}

.product-item--left .radio__fieldset--swatches .swatch__button:last-child {
  margin-right: 0;
}

.product-item__price__holder {
  color: var(--text-light);
  overflow: hidden;
}

.product-item__price__holder.has-siblings {
  display: flex;
}

.product-item__sep {
  flex: 0 0 auto;
  margin: 0 4px;
}

.product-item__title {
  position: relative;
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(1rem * var(--FONT-ADJUST-BODY));
  color: inherit;
  margin: 0;
  transition: color 0.3s;
}
@media only screen and (max-width: 749px) {
  .product-item__title {
    margin: 0;
  }
}

.product-item__cutline,
.product-item__price,
.product-item__sep {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .product-item__cutline,
.product-item__price,
.product-item__sep {
    font-size: calc(0.9rem * var(--FONT-ADJUST-BODY));
  }
}

.product-item__cutline {
  display: block;
  margin-bottom: 4px;
}
.has-siblings .product-item__cutline {
  flex: 0 1 auto;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 0;
}

.product-item__cutline:empty,
.product-item__cutline:empty + .product-item__sep {
  display: none;
}

.product-item__cutline ~ .product-item__price .new-price small {
  display: none;
}

.product-item__price {
  flex: 0 1 auto;
}

.product-item__price .unit {
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
}

/* Start sibling animations */
.product-item.is-active .image--empty {
  transition: opacity 0.25s;
}

.product-item.is-active:hover .image--empty {
  opacity: 0;
}

/* End sibling animations */
.product-information {
  text-align: left;
  line-height: 1.4;
}
@media only screen and (max-width: 749px) {
  .product-information {
    line-height: 1.2;
  }
}

.product-item__info {
  padding: calc(var(--inner) / 2) var(--inner);
}
@media only screen and (max-width: 749px) {
  .product-item__info {
    padding: 12px;
  }
}

.product-item__info.no-events {
  pointer-events: none;
}
@media (hover: none) and (pointer: coarse) {
  .product-item__info.no-events {
    pointer-events: initial;
  }
}

.product-information .price {
  font-size: inherit;
  color: var(--text-light);
}
@media only screen and (max-width: 749px) {
  .product-information .price {
    margin-top: 5px;
  }
}

.product-information .price.sale {
  opacity: 1;
}

.product-information .price small {
  font-size: inherit;
}

.product-information .unit {
  color: var(--text-light);
}
@media only screen and (max-width: 749px) {
  .product-information .unit {
    font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  }
}

.product-information .item-type {
  color: var(--COLOR-TEXT);
}

.product-information .spr-icon {
  padding: 0 1px;
}

.product-information .spr-badge-starrating {
  display: block;
  margin: 3px 0 5px;
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  font-weight: var(--FONT-WEIGHT-BODY);
  color: var(--COLOR-LINK);
}

.product-information .spr-badge-caption {
  display: none;
}

.product-information .sold-out {
  color: var(--text-light);
}

.no-js .product-information {
  border-top: 1px solid var(--COLOR-BORDER);
}

.grid__rating {
  margin: 5px 0;
  font-size: 0;
}

.grid__rating__inner {
  position: relative;
  display: inline-block;
}

.grid__rating__stars {
  --icon-size: calc(0.9rem * var(--FONT-ADJUST-BODY));
  overflow: hidden;
  white-space: nowrap;
  margin: 0 -2px;
  color: var(--link);
}

.grid__rating__stars .icon {
  margin: 0 2px;
  fill: none;
}

.grid__rating__stars--solid {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.grid__rating__stars--solid .icon {
  fill: currentcolor;
}

.sale .new-price {
  color: var(--COLOR-SALE);
}

.new-price {
  margin-right: 6px;
}

.new-price:last-child {
  margin-right: 0;
}

.old-price {
  color: var(--COLOR-TEXT);
  text-decoration: line-through;
  color: var(--text-light);
}

.no-results {
  position: static !important;
  padding: var(--gutter) 30px;
  text-align: center;
  width: 100%;
}

.product-item--overlay-text .product-information {
  position: absolute;
  bottom: 0;
  left: 0;
  height: 100%;
  width: 100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-bottom: calc(var(--inner) / 2);
  overflow: hidden;
  pointer-events: none;
}
@media only screen and (max-width: 989px) {
  .product-item--overlay-text .product-information {
    padding-left: 42px;
    padding-right: 42px;
  }
}

.product-item--overlay-text .product-item__info {
  padding: 0 var(--inner);
  height: auto;
  pointer-events: all;
}

.product-item--overlay-text .product-item__swatches__holder,
.product-item--overlay-text .product-item__swatches__count,
.product-item--overlay-text .radio__fieldset--swatches {
  pointer-events: all;
}

.product-item--overlay-text .product-item__info .radio__fieldset--swatches {
  background: none;
}

.product-item--overlay-text .product-item__info .selector-wrapper__scrollbar {
  padding: 0;
}

.product-item--overlay-text .product-item__info .selector-wrapper__actions::before,
.product-item--overlay-text .product-item__info .selector-wrapper__actions::after {
  content: none;
}

.supports-touch .product-item--overlay-text .product-information {
  padding-left: 42px;
  padding-right: 42px;
}

.product-item--has-quickbuy.product-item--overlay-text .product-item__info {
  pointer-events: auto;
  transition: opacity 0.25s ease-in-out, visibility 0.25s;
}

.product-item--has-quickbuy.product-item--overlay-text .product-item__swatches__holder,
.product-item--has-quickbuy.product-item--overlay-text .product-item__swatches__count,
.product-item--has-quickbuy.product-item--overlay-text .radio__fieldset--swatches {
  pointer-events: none;
}

.product-item--has-quickbuy.product-item--overlay-text:hover .product-item__info {
  opacity: 0;
  visibility: hidden;
}

.no-touch .double__image .product-item__bg__under,
.no-touch .product-item--overlay-text .product-item__bg__under {
  opacity: 0;
}

.no-touch .double__image:hover .product-item__bg__under,
.no-touch .product-item--overlay-text:hover .product-item__bg__under {
  opacity: 1;
}

.no-touch .double__image.is-visible .product-item__bg__under {
  opacity: 1;
}

.no-touch .double__image.is-visible:hover .product-item__bg__under {
  opacity: 0;
}

.no-touch body.is-focused .double__image .product-link--image:focus .product-item__bg__under {
  opacity: 1;
}

.no-touch body.is-focused .double__image.is-visible .product-item__bg__under {
  opacity: 0;
}

.no-touch body.is-focused .double__image.is-visible .product-link--image:focus .product-item__bg__under {
  opacity: 1;
}

.supports-touch .product-item__bg__under {
  display: none;
}

/**
 * Product Page
 */
@media only screen and (min-width: 750px) {
  .product__page {
    display: grid;
    gap: var(--gap);
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .product__wrapper--small .product__page {
    grid-template-columns: 37.5% 50%;
    justify-content: flex-end;
  }

  .product__wrapper--stretch .product__page {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
.product__page .form__wrapper.is-sticky {
  position: sticky;
  top: var(--sticky-top, 0);
  z-index: 10;
}
@media only screen and (max-width: 749px) {
  .product__page .form__wrapper.is-sticky {
    position: static;
    top: 0;
  }
}

.product__wrapper {
  margin: 0 var(--outer);
}

.product__wrapper .select-popout__toggle:before {
  border-color: var(--text);
}

.product__wrapper__inner {
  max-width: 1400px;
  margin: 0 auto;
}

.product__wrapper--stretch .product__wrapper__inner {
  max-width: none;
}

@media only screen and (min-width: 750px) {
  .product__wrapper--stretch .product__thumbs {
    display: none;
  }
}

.product__images {
  --gap: 15px;
}
@media only screen and (max-width: 749px) {
  .product__images {
    margin-bottom: 1rem;
  }
}

@media only screen and (min-width: 750px) {
  .product__content {
    padding-left: var(--outer);
  }
}

@media only screen and (min-width: 750px) {
  .product__wrapper--stretch .product__images {
    margin-left: var(--outer-offset);
  }
}

@media only screen and (min-width: 990px) {
  .product__wrapper--grid-1 .product__slides,
.product__wrapper--grid-2 .product__slides {
    columns: 2;
    column-gap: var(--gap);
  }
}

@media only screen and (min-width: 750px) {
  .product__wrapper--grid-1 .product__slide,
.product__wrapper--grid-2 .product__slide,
.product__wrapper--stacked .product__slide {
    padding-bottom: var(--gap);
    break-inside: avoid;
    position: relative;
  }
  .product__wrapper--grid-1 .product__slide:last-child,
.product__wrapper--grid-2 .product__slide:last-child,
.product__wrapper--stacked .product__slide:last-child {
    padding-bottom: 0;
  }
}

@media only screen and (min-width: 750px) {
  .product__wrapper--grid-1 .product__thumbs,
.product__wrapper--grid-2 .product__thumbs,
.product__wrapper--stacked .product__thumbs {
    display: none;
  }
}

.product__wrapper--grid-1 .product__slide:first-child,
.product__wrapper--grid-2 .product__slide:only-child {
  column-span: all;
}

.product__slides {
  position: relative;
  font-size: 0;
  flex: 1 1 100%;
}

.product__slides .flickity-viewport {
  height: auto;
}

.product__slides .flickity-slider > .product__slide {
  width: 100%;
}

/* Prevent CLS on flickity init */
.js [data-tall-layout=false] .product__images--has-thumbs .product__slides:not(.flickity-enabled) .product__slide:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
}

@media only screen and (max-width: 749px) {
  .js .product__images--has-thumbs .media--hidden:not(.is-selected) figure {
    content-visibility: hidden;
    display: none;
  }
}

.product__thumbs {
  flex: 1 1 100%;
  margin-top: 10px;
}
@media only screen and (max-width: 749px) {
  .product__thumbs {
    min-height: 85px;
  }
}

.product__thumbs__holder {
  position: relative;
  list-style: none;
  display: flex;
  flex-flow: row nowrap;
  text-align: left;
  overflow-x: auto;
  overflow-y: hidden;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.product__thumbs__holder::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}
@media only screen and (max-width: 749px) {
  .product__thumbs__holder {
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
    padding-left: var(--outer);
    scroll-padding: var(--outer);
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
  }
  .product__thumbs__holder:after {
    content: "";
    display: block;
    position: relative;
    min-height: 1px;
    padding-right: var(--outer);
  }
}

@media only screen and (max-width: 749px) {
  .product__thumbs__holder .flickity-viewport {
    overflow: visible;
  }
}

@media only screen and (min-width: 750px) {
  .product__wrapper--thumbnails-left .product__images {
    display: flex;
    flex-direction: row;
  }
  .product__wrapper--thumbnails-left .product__thumbs__holder {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    padding-left: 10px;
    width: 100%;
    flex-flow: column;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .product__wrapper--thumbnails-left .product__thumbs {
    position: sticky;
    top: var(--header-sticky-height, 0px);
    overflow: hidden;
    order: -1;
    margin: 0 20px 0 0;
    flex: 0 0 85px;
    height: 100%;
    width: 85px;
  }
  .product__wrapper--thumbnails-left .product__thumb {
    margin: 0 0 20px;
    padding: 0;
    font-size: 0;
  }
  .product__wrapper--thumbnails-left .product__thumb:last-child {
    margin-bottom: 0;
  }
  .product__wrapper--thumbnails-left .product__thumb:after {
    position: absolute;
    top: 50%;
    left: -10px;
    width: 2px;
    height: 30px;
    max-height: 90%;
    margin: 0;
    background: var(--COLOR-BORDER-DARK);
    opacity: 0;
    pointer-events: none;
    transform: translateY(-50%);
    transition: opacity 0.2s;
  }
  .product__wrapper--thumbnails-left .product__slides {
    flex: 1 1 auto;
  }
}
@media only screen and (max-width: 749px) {
  .product__wrapper--thumbnails-left .product__thumbs__holder {
    position: relative;
    white-space: nowrap;
  }
  .product__wrapper--thumbnails-left .product__thumbs {
    position: static;
    float: none;
  }
}

.no-js .product__thumbs {
  display: none;
}

.product__thumb {
  position: relative;
  display: inline-block;
  margin: 0 10px 0 0;
  padding: 0 0 10px;
  cursor: pointer;
}
.product__thumb:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 100%;
  height: 2px;
  background-color: var(--COLOR-BORDER-DARK);
  opacity: 0;
  transition: opacity 0.2s;
}
@media only screen and (max-width: 749px) {
  .product__thumb {
    padding-bottom: 10px;
    margin: 0 10px 0 0;
    scroll-snap-align: start;
  }
  .product__thumb:last-child {
    margin-right: 0;
  }
}

.product__thumb.is-active:after {
  opacity: 1;
}

.product__thumb__link {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  width: 75px;
  height: 75px;
  font-size: 0;
  line-height: 0;
  text-align: center;
  background-color: var(--bg);
  filter: brightness(var(--filter-bg));
}

.product__thumb__link__image {
  display: inline-block;
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.product__thumbs__holder .icon {
  position: absolute;
  top: 2px;
  right: 2px;
  margin: 0;
  height: 20px;
  width: 20px;
  color: transparent;
  fill: var(--COLOR-BG);
  vertical-align: baseline;
}
.product__thumbs__holder .icon path {
  fill: inherit;
  stroke: inherit;
}
.product__thumbs__holder .icon path.icon-media-model-outline, .product__thumbs__holder .icon path.icon-media-video-outline {
  stroke: var(--hairline);
}
.product__thumbs__holder .icon path.icon-media-model-element, .product__thumbs__holder .icon path.icon-media-video-element {
  fill: var(--COLOR-TEXT);
}

.product__breadcrumbs {
  margin: 0 0 0.5em;
}

@media only screen and (min-width: 990px) {
  .form__width {
    max-width: 550px;
    margin: 0 auto;
  }
}

.product__rating {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.product__rating > * {
  margin: 4px 0 4px 4px;
}
.product__rating .rating {
  font-size: 0;
}
.product__rating .rating svg {
  margin-top: -1px;
  margin-right: 0;
  width: calc(16px*var(--FONT-ADJUST-HEADING));
  height: calc(16px*var(--FONT-ADJUST-HEADING));
  color: var(--primary);
}

.product__block {
  margin-top: var(--block-padding-top, 0px);
  margin-bottom: var(--block-padding-bottom, 16px);
}

.product__block:empty {
  display: none;
}

.product__complementary {
  margin-bottom: 0;
}

.product__complementary .complementary-products.is-loaded {
  display: block;
  margin-bottom: var(--block-padding-bottom, 16px);
}

.product__complementary .complementary-products__title {
  margin-top: 0;
}

.product__complementary quick-add-product + quick-add-product {
  display: block;
  margin-top: 16px;
}

.product__title__wrapper {
  position: relative;
  padding-right: 70px;
  padding-top: 0;
}

.product__title {
  margin-top: 0.5em;
  margin-bottom: 0;
}
.product__title a {
  color: var(--text);
}
@media only screen and (min-width: 750px) {
  .product__title {
    margin-top: 0;
  }
}

.product__subheading p:only-child {
  margin: 0;
}

.product__price__wrap {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.product__price {
  margin: 0;
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  line-height: var(--line-height-normal);
  align-items: flex-start;
  padding: calc(4px * var(--FONT-ADJUST-BODY)) 0;
}

.product__price--has-units {
  margin-bottom: calc(var(--font-2) * var(--FONT-ADJUST-BODY) * var(--line-height-normal));
}

.product__price--unit {
  color: var(--text-light);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  position: absolute;
}

.product__price--strike {
  color: var(--text-light);
}

.product__price--sale {
  margin-right: 10px;
  color: var(--COLOR-SALE);
}

.product__price--off {
  --padding-vertical: 7px;
  flex-shrink: 0;
  min-width: 0;
  background: var(--sale-bg);
  color: var(--sale-text);
  padding: calc(var(--padding-vertical) * var(--FONT-ADJUST-BODY)) 15px;
  margin-left: 1rem;
  border-radius: 3px;
  text-align: center;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(11px * var(--FONT-ADJUST-BODY));
}
.product__price--off em {
  opacity: 0.5;
  padding: 0 6px;
}
@media only screen and (max-width: 749px) {
  .product__price--off {
    --padding-vertical: 6px;
  }
}

.product__badge {
  position: absolute;
  top: 0;
  right: 0;
}
.product__badge:nth-child(3) {
  top: 0;
}

.product__badge a:not(.product__badge-link) {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
  margin-top: 4px;
}

.product__badge-link {
  cursor: default;
  transition: color 0.25s ease-out;
}

.product__badge .spr-badge:after {
  content: attr(data-rating);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.product__badge:nth-child(2) .spr-badge:after {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-HEADING));
  line-height: 2.4;
}

.product__badge svg {
  width: calc(16px * var(--FONT-ADJUST-BODY));
  height: calc(16px * var(--FONT-ADJUST-BODY));
  margin-right: 4px;
  margin-top: -1px;
  color: var(--primary);
}

.product__badge:nth-child(2) svg {
  width: calc(16px * var(--FONT-ADJUST-HEADING));
  height: calc(16px * var(--FONT-ADJUST-HEADING));
}

.product__badge .spr-badge:not([data-rating="0.0"]) ~ svg {
  display: inline-block;
}

.product__badge .spr-badge span {
  display: none;
}

script,
#recently-viewed-product-template,
[id*=recently-viewed-product-template] {
  display: none !important;
}

.recent__container {
  color: var(--text);
  background-color: var(--bg);
}

.recent__wrapper {
  overflow: hidden;
  display: none;
  opacity: 1;
}

.recent__wrapper.loading {
  opacity: 0;
}

.recent__content a {
  opacity: 1;
  width: auto;
  height: auto;
  display: block;
}

/*================ Reviews ================*/
@media only screen and (max-width: 479px) {
  .product__reviews .spr-summary-actions {
    display: block;
  }
}
.product__reviews .spr-summary-actions-newreview {
  margin: 12px 0;
}
.product__reviews .spr-container {
  border: none;
  padding: 0;
}

#shopify-product-reviews {
  margin: 0 !important;
  padding: 1em 0;
}
#shopify-product-reviews .spr-header-title,
#shopify-product-reviews .spr-summary {
  text-align: left;
}
#shopify-product-reviews .spr-header {
  margin-bottom: -12px;
}
#shopify-product-reviews .spr-summary-starrating,
#shopify-product-reviews .spr-summary-caption {
  margin-top: 12px;
  margin-bottom: 12px;
}
#shopify-product-reviews a.spr-icon {
  background: none;
}
@media only screen and (max-width: 749px) {
  #shopify-product-reviews .spr-starrating {
    margin-bottom: 12px;
  }
}
.product__form__errors {
  opacity: 0;
  max-height: 0;
  visibility: hidden;
  overflow: hidden;
  transition: opacity 0.5s ease-in-out, transform 0.3s ease-in-out 0.2s, max-height 0.5s cubic-bezier(0, 0.75, 0.25, 1), visibility 0.5s;
  text-align: center;
  transform: translate3d(0, -20px, 0);
}
.product__form__errors.is-visible {
  max-height: 500px;
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
  transition: opacity 0.5s ease, transform 0.5s ease, max-height 0.5s cubic-bezier(0, 0, 0.75, 0), visibility 0.5s;
}
@media only screen and (max-width: 479px) {
  .product__form__errors {
    max-width: calc(400px - 10px);
  }
}
.product__form__errors .errors {
  margin: 10px 0;
  text-align: left;
  padding: var(--btn-top) 30px var(--btn-top) var(--btn-left);
  line-height: var(--line-height-normal);
}
.product__form__errors .errors__close {
  top: -1px;
  min-height: var(--btn-height);
}

.errors {
  position: relative;
  max-width: 100%;
  margin: 0;
  padding: 24px 30px;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .errors {
    padding: 15px 30px 15px 15px;
  }
}

.errors__close {
  position: absolute;
  top: 0;
  right: 0;
  width: 32px;
  height: 32px;
  padding: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 20;
  cursor: pointer;
}

.errors__close .icon {
  transition: transform 0.3s ease;
}

.errors__close:hover .icon {
  transform: rotate(90deg);
}

.product__add__success {
  display: flex;
  align-items: stretch;
  background: var(--COLOR-BG);
  border-left: 1px solid var(--COLOR-BORDER);
  border-bottom: 1px solid var(--COLOR-BORDER);
}
@media only screen and (max-width: 749px) {
  .product__add__success {
    border-left: none;
  }
}

.product__add__success__image {
  width: 50%;
}
@media only screen and (max-width: 749px) {
  .product__add__success__image {
    display: none;
  }
}

.product__add__success__image-bg {
  height: 100%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
}

.product__add__success__content {
  width: 50%;
  padding: 50px;
}
@media only screen and (max-width: 749px) {
  .product__add__success__content {
    width: 100%;
    padding: 15px 20px;
  }
}

.product__add__success--hide {
  display: none;
}

.is-focused model-viewer:focus::after,
.is-focused video:focus::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  box-shadow: inset 0 0 2px 2px var(--COLOR-BORDER);
  box-sizing: border-box;
  pointer-events: none;
}

.product-modal__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  max-width: 600px;
  width: 100%;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  padding: 15px;
  opacity: 0;
  transform: translate3d(0, 15px, 0);
  will-change: opacity;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: opacity 0.5s ease, transform 0.5s ease;
}

dialog[open=true] .product-modal__inner {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  animation: heroFade 0.5s ease;
}
dialog[closing] .product-modal__inner {
  opacity: 0;
  transform: translate3d(0, 15px, 0);
}

.product-modal__content {
  overflow: hidden;
  position: relative;
  background-color: var(--bg);
  padding: 25px;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}
.product-modal__content .product-tabs {
  overflow-x: hidden;
  overflow-y: auto;
  max-height: calc(100vh - 140px);
  margin-top: 20px;
}

.product-modal__close {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 20;
  transition: transform 0.3s;
}

.product-modal__close:hover {
  transform: rotate(90deg);
}

.product__icon__row {
  display: flex;
  flex-flow: row wrap;
}

.product__icon__container--full {
  flex: 0 0 100%;
  max-width: 100%;
}

.product__icon__container--half {
  flex: 0 0 50%;
  max-width: 50%;
}

.product__icon__container--third {
  flex: 0 0 33%;
  max-width: 33%;
}
@media only screen and (max-width: 479px) {
  .product__icon__container--third {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

.product__icon__container--quarter {
  flex: 0 0 25%;
  max-width: 25%;
}
@media only screen and (max-width: 479px) {
  .product__icon__container--quarter {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

.product__icon__container {
  display: flex;
  align-items: center;
}

.product__icon {
  align-self: flex-start;
  flex: 0 0 var(--icon-size, 20px);
  margin: 0.5em 10px 0.5em 0;
  color: var(--text);
}

.product__icon__text {
  flex: 0 1 100%;
  word-break: break-word;
}

/* No thumbs on mobile */
@media only screen and (max-width: 749px) {
  .product__images--no-thumbs .product__thumbs {
    display: none;
  }

  .product__images--no-thumbs .product__slides {
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    gap: 0;
    margin: 0 var(--gutter-offset);
    padding-left: var(--gap);
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--gap);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
    align-items: flex-start;
  }
  .product__images--no-thumbs .product__slides::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }

  .product__images--no-thumbs .product__slides:after {
    content: "";
    display: block;
    position: relative;
    padding-right: var(--gap);
  }

  .product__images--no-thumbs .product__slide {
    flex: 0 0 auto;
    width: calc(100% - 50px);
    margin: 0 var(--gap) 0 0;
    scroll-snap-align: start;
  }

  .product__images--no-thumbs .product__slide:only-child {
    width: calc(100% - var(--gap));
  }

  .product__images--no-thumbs .product__slide:last-child {
    margin-right: 0;
  }
}
/*================ Product Media ================*/
.product__photo {
  position: relative;
  overflow: hidden;
  height: 0;
  padding-top: calc(1 / var(--aspect-ratio, 1) * 100%);
  background-color: var(--bg);
  filter: brightness(var(--filter-bg));
}
.product__photo .image-wrapper,
.product__photo .placeholder-svg {
  position: absolute;
  top: 0;
}

.product__photo--blank {
  background: var(--bg-accent);
  padding-top: 100%;
}

.product__photo img {
  pointer-events: none;
}

[data-image-zoom-enable] [data-zoom-wrapper].is-dragging {
  pointer-events: none;
}

[data-image-zoom-enable] [data-zoom-wrapper] {
  cursor: zoom-in;
  cursor: var(--ICON-ZOOM-IN), zoom-in;
}

body.is-focused .product__photo:focus:after, body.is-focused .product__photo.focus-visible:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 2px solid var(--COLOR-BORDER);
  pointer-events: none;
  box-sizing: border-box;
  z-index: 2;
}

.product__media iframe {
  display: block;
  width: 100%;
  height: 100%;
}

.video__contain,
.model__contain {
  margin: 0 auto;
  min-height: 1px;
  width: 100%;
  height: 0;
  position: relative;
}

.shopify-model-viewer-ui,
model-viewer,
.video__contain > video,
.video__contain > iframe {
  width: 100%;
  height: 100%;
  position: absolute !important;
  top: 0;
  left: 0;
  max-width: 100%;
  /* IE FIX */
  min-width: 100%;
  min-height: 100%;
}

.btn--ar {
  width: 100%;
  position: relative;
  margin-top: 4px;
  padding: 10px 15px;
}
.btn--ar[data-shopify-xr-hidden] {
  position: absolute;
  overflow: hidden;
  visibility: hidden;
  max-width: 0;
  max-height: 0;
  padding: 0;
  border: none;
  margin: 0;
  opacity: 0;
}
@media only screen and (min-width: 750px) {
  .btn--ar[data-shopify-xr-hidden] {
    display: none;
  }
}
.btn--ar:hover .product-single__view-in-space-text, .btn--ar:focus .product-single__view-in-space-text {
  border-bottom-color: var(--COLOR-TEXT);
}
.btn--ar .icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  color: transparent;
}
.btn--ar .icon path {
  fill: inherit;
  stroke: inherit;
}
.btn--ar .icon path.icon-media-model-outline {
  stroke: none;
}
.btn--ar .icon path.icon-media-model-element {
  fill: var(--COLOR-TEXT);
  opacity: 1;
}

.product-single__view-in-space-text {
  display: inline-block;
  vertical-align: middle;
}

.thumb__link--video,
.thumb__link--model {
  position: relative;
}

/*====== 3D Models ======*/
.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  background: var(--COLOR-BG);
  border-color: var(--hairline);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: var(--COLOR-A60);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: var(--COLOR-A55);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: var(--COLOR-A55);
  background: var(--hairline);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  border-color: var(--hairline);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background: var(--COLOR-BG);
  border-color: var(--hairline);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  color: var(--COLOR-A55);
}

.deferred-media {
  display: block;
  position: relative;
}
.deferred-media img,
.deferred-media video,
.deferred-media iframe,
.deferred-media model-viewer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.deferred-media img {
  object-fit: contain;
}
.deferred-media video {
  object-fit: cover;
}

.deferred-media:not([loaded]) template {
  z-index: -1;
}

.deferred-media[loaded] > .deferred-media__poster {
  display: none;
}

.deferred-media__poster {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: default;
  padding: 0;
  letter-spacing: normal;
  line-height: initial;
  background: transparent;
  border: 0;
  color: inherit;
  transition: none;
}
.no-touch .deferred-media__poster:hover {
  opacity: initial;
}

.deferred-media__poster-button {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -30px 0 0 -30px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  padding: 8px;
  background-color: var(--COLOR-BG);
  border: 1px solid var(--COLOR-A5);
  z-index: 1;
  cursor: pointer;
}
.deferred-media__poster-button .icon-media-video-outline,
.deferred-media__poster-button .icon-media-model-outline {
  stroke: none;
}

.deferred-media__poster-button .icon {
  width: 100%;
  height: 100%;
}

:root {
  --form-top: 10px;
  --form-left: 12px;
  --form-margin: 32px;
  --btn-height: calc(var(--btn-top) * 2 + var(--BTN-FONT-SIZE) * var(--line-height-normal) + 2px);
}

quantity-counter {
  display: block;
}

.quantity-selector,
.select-popout__toggle,
.select-popout__list,
.product__subs__option,
.radio__button {
  font-size: calc(var(--BTN-FONT-SIZE) * var(--FONT-ADJUST-BODY));
}

.is-sticky .select-popout__list {
  max-height: 175px;
}

.variant__labels--hide .radio__legend__option-name,
.variant__labels--hide .select__label {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}
.variant__labels--hide .radio__legend {
  display: none;
}
.variant__labels--hide .radio__legend--size {
  display: block;
}
.product__block--classic .variant__labels--hide .select__fieldset, .product__block--classic .variant__labels--hide .radio__fieldset {
  row-gap: 0;
}
.variant__labels--hide .radio__legend__link {
  margin-left: 0;
}
.variant__labels--hide .radio__buttons,
.variant__labels--hide .select-popout {
  grid-column: 1/-1;
}

.shop-pay-terms {
  --payment-terms-background-color: var(--bg);
  margin: 10px 0 0;
}

.shop-pay-terms + .radio__legend__link {
  margin-bottom: 15px;
}

.shop-pay-terms:empty,
.product__upsell:empty,
.product__siblings:empty {
  display: none;
}

#shopify-payment-terms-modal .modal-wrapper {
  display: unset;
}

.selector-wrapper {
  flex: 1 0 50%;
}
.selector-wrapper label {
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 479px) {
  .selector-wrapper {
    flex-basis: 100%;
  }
}

.selector-wrapper--fullwidth,
.selector-wrapper--color {
  flex-basis: 100%;
}

.selector-wrapper--size {
  flex-grow: 0;
}
.selector-wrapper--size .radio__legend__link {
  margin-left: 4px;
}
.selector-wrapper--size .radio__legend__link.text-link {
  margin-bottom: -5px;
}
.variant__labels--hide .selector-wrapper--size .radio__legend__link {
  margin-left: 0;
}

.variant-input-wrap {
  margin-left: -4px;
}

.variant-label {
  display: block;
  margin: 15px 0 var(--form-margin);
}

.variant-field {
  position: relative;
  display: inline-block;
}

input[type=radio].variant-input {
  top: 0;
  left: 0;
  opacity: 0;
  z-index: 2;
  width: 100%;
  height: 32px;
  margin: 0;
  clip: unset;
  cursor: pointer;
}

.variant-input:checked + .variant__button-label {
  box-shadow: 0 0 0 2px var(--COLOR-PRIMARY);
}

.variant__button-label {
  letter-spacing: 0.025em;
  line-height: 1.6;
  position: relative;
  display: inline-block;
  font-weight: var(--FONT-WEIGHT-BODY);
  padding: 7px 15px;
  border-radius: var(--RADIUS);
  background-color: #FFF;
  box-shadow: 0 0 0 1px #E8E8E1;
  margin: 0 4px 12px;
  cursor: pointer;
}
.variant__button-label.disabled {
  color: #E8E8E1;
}
.variant__button-label.disabled:after {
  position: absolute;
  content: "";
  left: 50%;
  top: 0;
  bottom: 0;
  border-left: 1px solid;
  border-color: #E8E8E1;
  transform: rotate(45deg);
}

.is-focused .variant-input:focus + .variant__button-label:before,
.is-focused .swatch input[type=radio]:focus + .variant__button-label--color:before {
  position: absolute;
  content: "";
  left: -2px;
  bottom: -8px;
  height: 2px;
  width: calc(100% + 4px);
  background: var(--COLOR-PRIMARY);
}

.quantity-selector {
  position: relative;
}
.quantity-selector input[type=number]::-webkit-outer-spin-button,
.quantity-selector input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.no-js .quantity-selector input[type=number]::-webkit-outer-spin-button,
.no-js .quantity-selector input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: auto;
}
.quantity-selector input[type=number] {
  -moz-appearance: textfield;
}
.no-js .quantity-selector input[type=number] {
  -moz-appearance: auto;
}
.no-js .quantity-selector {
  display: block;
}

.quantity__input,
.properties__input {
  display: block;
  width: 100%;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  line-height: var(--line-height-normal);
  color: var(--COLOR-TEXT);
}

.properties__input {
  padding-top: var(--form-top);
  padding-bottom: var(--form-top);
}

.quantity__input {
  padding: var(--form-top) 30px;
  text-align: center;
}

.quantity__plus {
  right: 0;
  justify-content: flex-end;
  padding-right: 15px;
}

.quantity__minus {
  left: 0;
  justify-content: flex-start;
  padding-left: 15px;
}

.quantity__plus,
.quantity__minus {
  position: absolute;
  top: 0;
  height: 100%;
  width: 40%;
  display: flex;
  align-items: center;
}
.quantity__plus *,
.quantity__minus * {
  pointer-events: none;
}
.quantity__plus .icon,
.quantity__minus .icon {
  color: var(--COLOR-TEXT);
}
.quantity__plus:active,
.quantity__minus:active {
  transform: translateY(1px);
}
.no-js .quantity__plus,
.no-js .quantity__minus {
  display: none;
}

.properties__checkbox {
  grid-column: 1/span 2;
}

/*================ Add to cart ================*/
.product__submit__add {
  position: relative;
  width: 100%;
}

.product__submit__add .svg-loader {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 18px;
  height: 18px;
  transform: translate(-50%, -50%);
  transition: opacity 0.3s;
}

.product__submit__add[disabled] {
  pointer-events: none;
}

.product__submit__add circle ~ circle {
  stroke: currentColor;
}

.product__submit__add span {
  transition: opacity 0.3s;
}

.product__submit__add .icon-nav-arrow-up {
  --icon-size: 20px;
  position: absolute;
  top: 50%;
  right: 10px;
  margin-top: calc(var(--icon-size) / -2);
}

.product__submit__buttons {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
}

.product__submit__buttons .btn, .product__submit__buttons .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .product__submit__buttons .shopify-payment-button__button--unbranded, .product__submit__buttons #challenge .shopify-challenge__button, #challenge .product__submit__buttons .shopify-challenge__button, .product__submit__buttons #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .product__submit__buttons .spr-button-primary {
  min-height: var(--btn-height);
}

@media only screen and (min-width: 480px) {
  .product__submit__buttons--inline {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

.product__submit__item {
  min-height: var(--btn-height);
}

.product__submit__item .btn, .product__submit__item .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .product__submit__item .shopify-payment-button__button--unbranded, .product__submit__item #challenge .shopify-challenge__button, #challenge .product__submit__item .shopify-challenge__button, .product__submit__item #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .product__submit__item .spr-button-primary {
  display: block;
  width: 100%;
}

.product__submit__item--inline {
  display: grid;
  gap: 10px;
  grid-template-columns: minmax(0, 7.5rem) minmax(0, 100%);
}

/* Make Quantity picker height to always match the Add to cart button height */
.product__submit__item--inline .select-popout__toggle {
  padding-top: 5px;
  padding-bottom: 5px;
  height: var(--btn-height);
}

/* Match quantity border color to adjacent button color */
.product__submit__item--inline .select-popout {
  --primary: var(--BTN-PRIMARY-BG-COLOR);
}

.product__submit--spb .product__submit__item--inline .select-popout {
  --primary: var(--BTN-PRIMARY-BORDER-COLOR);
}

.product__block--divider:empty {
  display: block;
}

.product__block--divider + .product__block:empty + .product__block--divider {
  display: none;
}

/*================ Smart Shopify Payment Buttons ================*/
.shopify-payment-button {
  width: 100%;
}

.shopify-payment-button .shopify-payment-button__button--branded {
  min-height: var(--btn-height);
}

.shopify-payment-button .shopify-payment-button__button--branded button {
  min-height: var(--btn-height) !important;
  padding: var(--btn-top) var(--btn-left) !important;
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY)) !important;
  line-height: var(--line-height-normal) !important;
}

.shopify-payment-button .shopify-payment-button__button--branded form {
  display: flex !important;
  flex-direction: column;
  flex: 1;
}

.shopify-payment-button .shopify-payment-button__button--unbranded {
  width: 100%;
  min-height: var(--btn-height);
}

.shopify-payment-button .shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background: var(--BTN-PRIMARY-BG-COLOR);
  border-color: var(--BTN-PRIMARY-BORDER-COLOR);
}

.shopify-payment-button .shopify-payment-button__more-options {
  display: none;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-size: calc(0.9rem * var(--FONT-ADJUST-BODY));
  color: var(--COLOR-TEXT);
}
.shopify-payment-button .shopify-payment-button__more-options:active {
  text-decoration: underline;
  transform: translateY(1px);
}
.shopify-payment-button .shopify-payment-button__more-options:hover, .shopify-payment-button .shopify-payment-button__more-options:focus {
  background-color: transparent;
  box-shadow: none;
}

/*================ Variant styles ================*/
.product__block--classic .select__fieldset,
.product__block--classic .radio__fieldset {
  display: block;
}

.product__block--classic .radio__legend {
  margin-bottom: 10px;
}

/*================ Variant states ================*/
.variant--soldout .shopify-payment-button,
.variant--soldout .product__price,
.variant--unavailable .shopify-payment-button,
.variant--unavailable .product__price {
  opacity: 0.3;
}
.variant--soldout .shopify-payment-button label,
.variant--soldout .shopify-payment-button input,
.variant--soldout .shopify-payment-button button,
.variant--soldout .product__price label,
.variant--soldout .product__price input,
.variant--soldout .product__price button,
.variant--unavailable .shopify-payment-button label,
.variant--unavailable .shopify-payment-button input,
.variant--unavailable .shopify-payment-button button,
.variant--unavailable .product__price label,
.variant--unavailable .product__price input,
.variant--unavailable .product__price button {
  cursor: default;
}
.variant--soldout .product__submit__add:not(.product__submit__add--default):active,
.variant--unavailable .product__submit__add:not(.product__submit__add--default):active {
  transform: translateY(0);
}
.variant--soldout .product__submit__add:not(.product__submit__add--default),
.variant--soldout .product__submit__add:not(.product__submit__add--default):hover,
.variant--unavailable .product__submit__add:not(.product__submit__add--default),
.variant--unavailable .product__submit__add:not(.product__submit__add--default):hover {
  border-color: transparent;
  background-color: var(--COLOR-A10);
  color: var(--COLOR-A40);
  cursor: not-allowed;
}
.variant--soldout .product__submit__add:not(.product__submit__add--default) > *,
.variant--soldout .product__submit__add:not(.product__submit__add--default):hover > *,
.variant--unavailable .product__submit__add:not(.product__submit__add--default) > *,
.variant--unavailable .product__submit__add:not(.product__submit__add--default):hover > * {
  pointer-events: none;
}
@media only screen and (max-width: 749px) {
  .variant--soldout .product__submit__add:not(.product__submit__add--default),
.variant--soldout .product__submit__add:not(.product__submit__add--default):hover,
.variant--unavailable .product__submit__add:not(.product__submit__add--default),
.variant--unavailable .product__submit__add:not(.product__submit__add--default):hover {
    transform: none;
    pointer-events: none;
  }
}
.variant--soldout .shopify-payment-button,
.variant--unavailable .shopify-payment-button {
  position: relative;
  pointer-events: none;
}
.variant--soldout .shopify-payment-button::after,
.variant--unavailable .shopify-payment-button::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0);
  z-index: 2;
}

.variant--unavailable .product__price {
  opacity: 0;
}

/* Variant Countdown */
.variant__countdown {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  display: grid;
  grid-template-columns: 1fr;
}

.variant__countdown > span {
  grid-row-start: 1;
  grid-column-start: 1;
  min-height: 100%;
}

.count-is-in .variant__countdown--in,
.count-is-low .variant__countdown--low,
.count-is-out .variant__countdown--out,
.count-is-unavailable .variant__countdown--unavailable {
  visibility: initial;
}

[data-remaining-show-notice=low-inventory].count-is-in .variant__countdown--in,
[data-remaining-show-notice=low-inventory].count-is-out .variant__countdown--out,
[data-remaining-show-notice=low-inventory].count-is-unavailable .variant__countdown--unavailable {
  visibility: hidden;
}

.form__wrapper--no-buttons .count-is-out .variant__countdown--out,
.form__wrapper--no-buttons .count-is-unavailable .variant__countdown--unavailable {
  visibility: initial;
}

.variant__countdown--in,
.variant__countdown--low,
.variant__countdown--out,
.variant__countdown--unavailable {
  visibility: hidden;
}

pickup-availability {
  display: block;
}

dialog[open=true] .drawer__inner {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
  transform: translateX(-100%);
  animation: slideInLeft 0.5s ease;
}
dialog[closing] .drawer__inner {
  opacity: 0;
  transform: translateX(0);
}

.pickup__preview {
  margin: 0;
}
.pickup__preview p {
  margin: 0 0 6px 0;
}

.pickup__info__timing,
.pickup__preview--primary button.pickup__button {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.pickup__preview--primary {
  display: flex;
  align-items: flex-start;
}
.pickup__preview--primary button.pickup__button:focus, .pickup__preview--primary button.pickup__button:active {
  transform: none;
}

.pickup__list__item .icon,
.pickup__preview .icon {
  --icon-size: 20px;
  margin: -1px 6px 0 -4px;
  height: calc(calc(0.875rem * var(--FONT-ADJUST-BODY) * 1.5));
}

.pickup__preview .icon path,
.pickup__list__item .icon path {
  fill: none;
}

.pickup__preview .icon-check,
.pickup__list__item .icon-check {
  color: var(--success);
}

.pickup__preview .icon-cancel,
.pickup__list__item .icon-cancel {
  color: var(--error);
}

.pickup__address {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  font-style: normal;
  margin: 8px 0 0 0;
}

.pickup__product__wrap {
  padding: var(--inner);
  border-bottom: 1px solid var(--border);
}

.pickup__product__title {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-BODY));
  margin: 0;
}

.pickup__variant {
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  margin: 12px 0 0 0;
}

.pickup__variant .text-light {
  color: var(--text-light);
}

.pickup__variant .divide {
  color: var(--text-light);
  opacity: 0.5;
  padding: 0 1px;
}

.pickup__variant .badge {
  display: inline-block;
  margin: 0 8px 8px 0;
}

.pickup__list {
  padding: var(--inner);
  margin: 0;
  list-style: none;
}

.pickup__list__item {
  margin-bottom: 32px;
}
.pickup__list__item p {
  margin: 2px 0;
}
.pickup__list__item p.small {
  margin-top: 8px;
}

.pickup__list__item + .pickup__list__item {
  margin-top: 32px;
  padding-top: 32px;
  border-top: 1px solid var(--bg-accent);
}

/**
 * Reviews
 * without image
 */
.reviews {
  position: relative;
  color: var(--text);
  background-color: var(--bg);
}
@media only screen and (max-width: 749px) {
  .reviews {
    overflow: hidden;
  }
}

/* Reviews section - with and without images */
.reviews--section {
  overflow: hidden;
}

.reviews--section .reviews__grid[data-slider] .flickity-viewport {
  overflow: visible;
}

.reviews--section .review__quote--open-negative {
  top: calc(var(--inner) / -2);
}

.reviews--section .review__quote--close-negative {
  bottom: calc(var(--inner) / -2);
}

@media only screen and (min-width: 750px) {
  .reviews--have-images .reviews__grid {
    padding-left: 0;
    padding-right: 0;
  }
  .reviews--have-images .reviews__grid-item {
    margin: 0;
    width: calc(100% / var(--columns));
  }
}
.reviews--have-images .review__content {
  margin-left: var(--inner);
  margin-right: var(--inner);
}
body.grid-compact .reviews--have-images {
  --outer: 0px;
  --outer-offset: 0px;
  --gutter: 0px;
  --gap: 0px;
}

body.has-line-design.grid-compact .reviews__grid {
  padding-top: var(--padding-top);
  padding-bottom: var(--padding-bottom);
  padding-right: var(--outer);
}
@media only screen and (min-width: 750px) {
  .reviews__grid.flickity-enabled {
    overflow: visible;
  }
}
@media only screen and (max-width: 749px) {
  .reviews__grid {
    padding-left: var(--outer);
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
    gap: 0;
    max-width: none;
    display: flex;
    flex-flow: row nowrap;
    justify-content: flex-start;
    align-items: stretch;
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .reviews__grid::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .reviews__grid:after {
    content: "";
    display: block;
    position: relative;
    min-height: 1px;
    padding-right: var(--outer);
  }
}

@media only screen and (min-width: 750px) {
  .js .reviews__grid[data-slider]:not(.flickity-enabled) {
    display: flex;
    overflow-x: auto;
  }
}

@media only screen and (min-width: 750px) {
  .no-js .reviews__grid[data-slider] {
    display: flex;
    flex-wrap: wrap;
  }
}

@media only screen and (min-width: 750px) {
  .reviews__grid[data-slider]:after {
    content: "flickity";
    display: none;
  }
}

.reviews__grid-item {
  --columns: var(--COLUMNS);
  flex: 0 0 auto;
  display: flex;
  width: calc(100% / var(--columns) - var(--gap) * (var(--columns) - 1) / var(--columns));
  margin-right: var(--gap);
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .reviews__grid-item {
    --columns: var(--COLUMNS-MEDIUM);
  }
}
@media only screen and (max-width: 749px) {
  .reviews__grid-item {
    width: calc(100% - 50px);
    scroll-snap-align: start;
  }
}
.reviews__grid-item:last-child {
  margin-right: 0;
}

@media only screen and (max-width: 749px) {
  .reviews__grid-item:only-child {
    width: 100%;
  }
}

/* Review */
.review {
  display: flex;
  align-items: stretch;
  width: 100%;
  background-color: var(--card-bg);
}
@media only screen and (max-width: 749px) {
  .review {
    position: relative;
    flex-direction: column;
  }
}

a.review {
  text-decoration: none;
  color: inherit;
  transition: color 0.4s;
}
@media (hover: hover) {
  a.review:hover {
    color: var(--link-hover);
  }
  a.review:hover .review__image img, a.review:hover .review__image svg {
    transform: scale(1.06);
  }
}

.review--block {
  padding: 40px 0;
  height: 100%;
}

.review--block .review__content {
  margin: 0;
}

.review--block .review__content blockquote {
  margin-bottom: 3em;
}
@media only screen and (max-width: 749px) {
  .review--block .review__content blockquote {
    margin-bottom: 2em;
  }
}

.review--block.review--has-quotes {
  padding-top: 25px;
}

.review--block.review--has-quotes blockquote:only-child {
  padding-bottom: 25px;
}

.review--block.review--has-quotes blockquote > p {
  padding-top: 2.4em;
}

/* Review elements */
.review__image {
  position: relative;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .review__image {
    flex: 0 0 50%;
    max-width: 50%;
  }
}

.review__image img,
.review__image svg {
  transition: transform 1s ease;
}

.review__image svg {
  position: absolute;
  top: 0;
  left: 0;
}

.review__image .image-wrapper {
  min-height: 100%;
}

.review__content {
  --inner: 30px;
  position: relative;
  padding: var(--inner) 0;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media only screen and (min-width: 750px) {
  .review__content {
    --inner: 40px;
  }
}

.review__content > :last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}

.review__content blockquote {
  font-family: var(--FONT-STACK-HEADING);
  font-style: var(--FONT-STYLE-HEADING);
  font-weight: var(--FONT-WEIGHT-HEADING);
  border: 0;
  margin: 0 0 2em;
  padding: 0;
  line-height: 1.24;
}
@media only screen and (max-width: 749px) {
  .review__content blockquote {
    margin-bottom: 1.5em;
  }
}

.review__content blockquote:only-child {
  margin: auto 0;
  justify-self: center;
}

.review__content blockquote:not([class*=body-size-]) {
  font-size: calc(1.125rem * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .review__content blockquote:not([class*=body-size-]) {
    font-size: calc(1rem * var(--FONT-ADJUST-BODY));
  }
}

.review__content blockquote p {
  font-size: inherit;
  line-height: inherit;
}

.review__content blockquote > p {
  margin-top: 0;
}

.review__content blockquote p:last-of-type {
  margin-bottom: 0;
}

.review__content blockquote svg {
  display: block;
  width: 41px;
  height: 31px;
  margin-bottom: 64px;
}
@media only screen and (max-width: 1399px) {
  .review__content blockquote svg {
    margin-bottom: 42px;
  }
}
@media only screen and (max-width: 749px) {
  .review__content blockquote svg {
    margin-bottom: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}

@media only screen and (min-width: 750px) {
  .review--has-image .review__content {
    flex-basis: 50%;
  }
}

.review__quote {
  position: absolute;
  z-index: 1;
  width: var(--inner);
  height: var(--inner);
  display: flex;
  align-items: center;
  justify-content: center;
  line-height: var(--inner);
  overflow: visible;
}

.review__quote--single {
  left: 0;
  width: auto;
  height: auto;
  display: inline-block;
}
@media only screen and (max-width: 749px) {
  .review__quote--single {
    margin-bottom: 30px;
  }
}

.text-center .review__quote--single {
  left: 50%;
  transform: translateX(-50%);
}

.review__quote--open {
  left: 0;
  top: 0;
}

.review__quote--close {
  right: 0;
  bottom: 0;
}

.review__quote--close .review__quote-inner {
  justify-content: flex-end;
}

.review__quote-inner {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  line-height: inherit;
}

.review__author {
  position: relative;
  display: flex;
  margin: auto 0 var(--inner);
  min-height: 34px;
}

.review__content > .review__author:only-child {
  justify-self: center;
  margin: auto 0;
}

.review__author__content {
  flex: 0 1 auto;
}

.review__author__name {
  font-size: calc(0.9rem * var(--FONT-ADJUST-BODY));
}

.review__author__subheading {
  margin-top: 3px;
  display: block;
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  text-transform: uppercase;
  letter-spacing: 0.2em;
}

.review__author__subheading:first-child {
  margin-top: 0;
}

.review__author__bio-image {
  --image-size: 34px;
  flex: 0 0 var(--image-size);
  width: var(--image-size);
  height: var(--image-size);
  margin-right: 8px;
  border-radius: 50%;
  object-fit: cover;
  overflow: hidden;
}

.text-center .review__author__bio-image {
  margin: 0 auto 4px;
}

.text-center .review__author {
  flex-direction: column;
  justify-content: center;
}

.review__tweet-url {
  font-size: calc(0.6875rem * var(--FONT-ADJUST-BODY));
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 30px;
}
@media only screen and (max-width: 1399px) {
  .review__tweet-url {
    margin-bottom: 15px;
  }
}

.review__foot {
  margin-top: auto;
}

.review__foot:only-child {
  justify-self: center;
  margin: auto 0;
}

.review__foot > :last-child {
  padding-bottom: 0;
  margin-bottom: 0;
}

.product__subs__group {
  display: block;
  border: 1px solid var(--border);
}

.product__subs__group + .product__subs__group {
  border-top: none;
}

.product__subs__plans {
  margin-left: 1.5rem;
}
.product__subs__plans .product__subs__option {
  padding-top: 0;
}

.no-js .product__subs__plans.hidden {
  display: block !important;
}

.product__subs__option {
  display: flex;
  width: 100%;
  padding: var(--form-top) var(--form-left);
  align-items: center;
  cursor: pointer;
}
.product__subs__option input[type=radio] {
  color: var(--text-dark);
  width: 1rem;
  height: 1rem;
  flex-shrink: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  position: relative;
  padding: 0;
  border: 0;
  margin: 0 0.5rem 0 0;
  cursor: pointer;
}
.product__subs__option input[type=radio]::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 1px solid var(--text-dark);
  box-sizing: border-box;
}
.product__subs__option input[type=radio]:checked::before {
  background-image: radial-gradient(var(--primary) 50%, var(--bg) 51%);
}

.product__subs__description {
  color: var(--text-light);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  background: var(--hairline);
  margin: 0;
  padding: 10px 20px;
  font-style: var(--FONT-STYLE-BODY-ITALIC);
}

.product__price--each {
  color: var(--text-light);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.product__subs__wrap {
  margin: var(--inner) 0;
}

[data-subscription-watch-price] {
  display: none;
}

/*====== Free shipping ======*/
.free-shipping {
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: center;
  padding-top: var(--inner);
  padding-bottom: var(--inner);
  border-bottom: 1px solid var(--border);
  margin: 0;
  font-size: max(0.6875rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.3;
  transition: max-height 0.3s, padding 0.3s, border 0.3s, opacity 0.3s, visibility 0.3s;
}

.free-shipping.is-hidden {
  overflow: hidden;
  visibility: hidden;
  max-height: 0;
  padding: 0 15px;
  border: none;
  opacity: 0;
}

.free-shipping__success-message {
  display: none;
}

.is-success .free-shipping__success-message {
  display: inline;
}

.is-success .free-shipping__success-message ~ .free-shipping__default-message {
  display: none;
}

/*====== Free Shipping Graph ======*/
.free-shipping__graph {
  --stroke-dashoffset: 87.96459430051421;
  position: relative;
  display: flex;
  margin-right: 8px;
  transform: scale(-1, 1);
}

.free-shipping__graph circle {
  transform-origin: 50% 50%;
  stroke-width: 2;
  stroke: var(--COLOR-A20);
  fill: none;
}

.free-shipping__graph-progress {
  position: absolute;
  top: 0;
  left: 0;
  max-width: 100%;
  max-height: 100%;
  stroke: var(--COLOR-A80);
  stroke-dashoffset: var(--stroke-dashoffset);
  transform: rotate(-90deg);
  transform-origin: 50% 50%;
  transition: stroke-dashoffset 1s ease-in-out;
}

/*====== Free Shipping Progress Bar ======*/
/* WEBKIT BROWSERS - CHROME, OPERA AND SAFARI */
.free-shipping__progress-bar {
  --progress-bg: transparent;
  --progress-value: var(--FREE-SHIPPING-GRADIENT);
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: block;
  width: 100%;
  height: 8px;
  background: var(--bg-accent);
  border-radius: 4px;
  margin-top: 5px;
  overflow: hidden;
}

.free-shipping__progress-bar::-webkit-progress-bar {
  width: 100%;
  background: var(--progress-bg);
  border-radius: 6px;
}

.free-shipping__progress-bar::-webkit-progress-value {
  background: var(--progress-value);
  border-radius: 4px;
  -webkit-transition: width 1s ease-in-out, transform 1s ease-in-out 0.5s;
  transition: width 1s ease-in-out, transform 1s ease-in-out 0.5s;
  transform-origin: center left;
}

.drawer__message .free-shipping__progress-bar::-webkit-progress-value {
  transform: scaleX(0);
}

.drawer__message.is-animated .free-shipping__progress-bar::-webkit-progress-value {
  transform: scaleX(1);
}

/* MOZILLA FIREFOX */
@-moz-document url-prefix() {
  .free-shipping__progress-bar::-moz-progress-bar {
    background: var(--progress-value);
    border-radius: 4px;
    -moz-transition: width 1s ease-in-out, transform 1s ease-in-out 0.5s;
    transition: width 1s ease-in-out, transform 1s ease-in-out 0.5s;
    transform-origin: center left;
  }

  .drawer__message .free-shipping__progress-bar::-moz-progress-bar {
    transform: scaleX(0);
  }

  .drawer__message.is-animated .free-shipping__progress-bar::-moz-progress-bar {
    transform: scaleX(1);
  }
}
/* Confetti animation on success */
.confetti {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 18px;
  height: 18px;
}

.confetti__dot {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transform: rotate(90deg);
}

.confetti__dot--2 {
  color: var(--COLOR-PRIMARY);
}

.confetti__dot--3 {
  color: var(--COLOR-SALE);
}

.confetti__dot--4 {
  color: var(--COLOR-BORDER);
}

.confetti__dot--5 {
  color: var(--COLOR-LINK);
}

.confetti__dot--6 {
  color: var(--COLOR-BG-SECONDARY);
}

.confetti__dot--4,
.confetti__dot--5,
.confetti__dot--6 {
  transform: rotate(205deg);
}

.confetti__dot:before,
.confetti__dot:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  pointer-events: none;
  background: currentColor;
  transform: scale(0);
}

.is-success .confetti__dot {
  transition: top 0.4s;
}
.is-success .confetti__dot:before,
.is-success .confetti__dot:after {
  transform: scale(1);
  opacity: 0;
  transition: top 1s, left 1s, transform 1s, opacity 0.6s 0.4s;
}
.is-success .confetti__dot--1:before {
  top: -35px;
  left: 65px;
}
.is-success .confetti__dot--4:after,
.is-success .confetti__dot--1:after {
  top: 5px;
  left: 45px;
}
.is-success .confetti__dot--2:before {
  top: 35px;
  left: 15px;
}
.is-success .confetti__dot--5:after,
.is-success .confetti__dot--2:after {
  top: 5px;
  left: -35px;
}
.is-success .confetti__dot--3:before {
  top: -25px;
  left: 5px;
}
.is-success .confetti__dot--6:after,
.is-success .confetti__dot--3:after {
  top: 45px;
  left: -45px;
}
.is-success .confetti__dot--4:before {
  top: -35px;
  left: 90px;
}
.is-success .confetti__dot--5:before {
  top: -70px;
  left: 15px;
}
.is-success .confetti__dot--6:before {
  top: -50px;
  left: 55px;
}

/*====== Cart bar ======*/
.cart-bar {
  position: fixed;
  left: 0;
  bottom: 0;
  z-index: 2001;
  width: 100%;
  height: 80px;
  overflow: hidden;
  background: var(--COLOR-BG);
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  opacity: 0;
  visibility: hidden;
  transform: translateY(100%);
  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
}
.cart-bar[data-position=top] {
  top: 0;
  bottom: auto;
  transform: translateY(-100%);
}
.cart-bar.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translateY(calc(var(--cookie-bar-height) * -1));
  transition: opacity 0.5s ease, transform 0.5s ease, visibility 0s linear 0s;
}
@media only screen and (max-width: 749px) {
  .cart-bar {
    display: flex;
    align-items: center;
    min-height: 120px;
    height: auto;
  }
  .cart-bar:after {
    min-height: inherit;
    font-size: 0;
    content: "";
  }
}

.cart-bar__form__wrapper {
  display: flex;
  align-items: center;
  height: 100%;
  padding: 0 var(--outer);
}
@media only screen and (max-width: 749px) {
  .cart-bar__form__wrapper {
    flex: 0 1 100%;
    flex-direction: column;
    align-items: stretch;
    padding: 10px var(--outer);
  }
}

.cart-bar__form,
.cart-bar__info {
  display: flex;
  align-items: center;
}

.cart-bar__form {
  max-width: 50%;
  margin-left: auto;
}
@media only screen and (max-width: 749px) {
  .cart-bar__form {
    display: block;
    max-width: none;
    margin: 0;
  }
}
.cart-bar__form .product__selectors {
  margin: 0;
  display: flex;
  align-items: stretch;
  flex-wrap: nowrap;
  height: 50px;
  padding: 0;
}
.cart-bar__form select, .cart-bar__form .popout__toggle {
  height: 100%;
  border: 0;
  margin: 0;
}
.cart-bar__form .selector-wrapper {
  height: 100%;
  min-width: 120px;
  padding-right: 5px;
  border-left: 1px solid var(--COLOR-BORDER);
}
.cart-bar__form .product__submit {
  min-width: 0;
  margin: 0;
}
.cart-bar__form .product__submit__buttons {
  display: inline-block;
  width: auto;
  margin: 0;
}
.cart-bar__form .product__submit__add {
  position: relative;
  overflow: hidden;
  min-height: 50px;
  min-width: 260px;
  padding-left: 35px;
  padding-right: 35px;
  margin: 0;
  line-height: 0;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.cart-bar__form .product__submit__add span.btn__text {
  display: flex;
  align-items: center;
  line-height: auto;
}
@media only screen and (max-width: 989px) {
  .cart-bar__form .product__submit__add {
    min-width: 200px;
  }
}
@media only screen and (max-width: 749px) {
  .cart-bar__form .product__submit__add {
    display: block;
    width: 100%;
    min-height: var(--btn-height, 42px);
  }
}

.cart-bar__info {
  justify-content: flex-start;
  position: relative;
  min-width: 0;
  padding-right: 10px;
}
@media only screen and (max-width: 749px) {
  .cart-bar__info {
    display: block;
    flex-wrap: wrap;
    justify-content: center;
    padding-right: 0;
    text-align: center;
  }
  .cart-bar__info:not(:last-child) {
    margin-bottom: 15px;
  }
}

.cart-bar__image {
  width: 50px;
  height: 50px;
  padding: 5px;
  margin: 0 10px 0 0;
}
.cart-bar__image img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.cart-bar__product__title {
  line-height: 25px;
  margin: 0;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  font-size: calc(1rem * var(--FONT-ADJUST-HEADING));
}
@media only screen and (max-width: 749px) {
  .cart-bar__product__title {
    display: inline;
    padding: 0 3px;
    white-space: normal;
    font-size: calc(0.75rem * var(--FONT-ADJUST-HEADING));
  }
}

.cart-bar__product__price {
  position: relative;
  display: flex;
  align-items: center;
  line-height: 25px;
  padding: 0 0 0 10px;
  margin: 0;
  font-size: calc(1rem * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .cart-bar__product__price {
    display: inline;
    padding: 0 3px;
    font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  }
}
.variant--unavailable .cart-bar__product__price {
  display: none;
}
.cart-bar__product__price:before {
  padding-right: 10px;
  content: "•";
}
@media only screen and (max-width: 749px) {
  .cart-bar__product__price:before {
    padding-right: 6px;
  }
}
@media only screen and (max-width: 749px) {
  .cart-bar__product__price .product__price--sale {
    padding-right: 6px;
    margin-right: 0;
  }
}

.cart-bar__submit {
  margin-right: 0;
}

/*====== Cart Template ======*/
.cart {
  --inner: 15px;
  width: auto;
  padding-left: 20px;
  padding-right: 20px;
  position: relative;
  margin: 0 auto;
  overflow: visible;
  display: block;
  text-align: left;
  max-width: 1250px;
}

.cart__empty {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  justify-items: center;
  gap: var(--inner);
  text-align: center;
  width: 100%;
  max-width: var(--DRAWER-WIDTH);
  margin: 0 auto;
}
.cart__empty p {
  margin: 0;
}
.cart__empty:not(.is-hidden) + .cart__form {
  display: none;
}
.cart__empty.is-hidden {
  content-visibility: hidden;
}
.cart__empty .cart__message {
  justify-content: center;
}
.cart__empty .cart__message,
.cart__empty .cart__empty__buttons,
.cart__empty .cart__empty__product {
  width: 100%;
}

.cart__empty__buttons {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--inner);
  margin: var(--inner) 0;
}

.cart__empty__item .btn, .cart__empty__item #challenge .shopify-challenge__button, #challenge .cart__empty__item .shopify-challenge__button, .cart__empty__item #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .cart__empty__item .spr-button-primary, .cart__empty__item .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .cart__empty__item .shopify-payment-button__button--unbranded {
  display: block;
}

.cart__inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
@media only screen and (max-width: 749px) {
  .cart__inner {
    display: block;
  }
}

.cart__content {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .cart__content {
    flex: 1 1 auto;
    margin-right: var(--outer);
  }
}
@media only screen and (max-width: 749px) {
  .cart__content {
    width: 100%;
    margin-bottom: 25px;
  }
}

.cart__title {
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(11px * var(--FONT-ADJUST-BODY));
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-style: var(--FONT-STYLE-BODY);
  margin-bottom: 0;
  line-height: 1.36;
  color: var(--text);
  font-size: calc(1rem * var(--FONT-ADJUST-BODY));
}

.cart__items {
  width: 100%;
  border-top: 1px solid var(--border);
  margin-top: var(--inner);
}
.cart__items .cart__item {
  padding: var(--inner) 0;
  border-bottom: 1px solid var(--border);
  align-items: stretch;
}
.cart__items .cart__item:last-child {
  border-bottom: 1px solid var(--border);
}
@media only screen and (max-width: 749px) {
  .cart__items .cart__item {
    padding-bottom: 40px;
    align-items: flex-start;
  }
}
.cart__items .cart__item__content {
  display: flex;
  flex-flow: row nowrap;
  justify-content: space-between;
  align-items: center;
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .cart__items .cart__item__content {
    padding-left: var(--inner);
  }
}
@media only screen and (max-width: 749px) {
  .cart__items .cart__item__content {
    display: block;
  }
}
.cart__items .cart__item__content-inner {
  width: 40%;
}
@media only screen and (max-width: 749px) {
  .cart__items .cart__item__content-inner {
    width: 100%;
  }
}
.cart__items .cart__price {
  width: calc(60% - 95px);
  padding: 0 10px;
  text-align: center;
}
.cart__items .cart__price ins,
.cart__items .cart__price del,
.cart__items .cart__price small {
  display: inline-block;
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .cart__items .cart__price ins,
.cart__items .cart__price del,
.cart__items .cart__price small {
    display: block;
    margin: 0;
  }
}
@media only screen and (max-width: 749px) {
  .cart__items .cart__price {
    width: 100%;
    padding: 0;
    text-align: left;
  }
}
.cart__items .cart__quantity-counter {
  position: relative;
}
@media only screen and (min-width: 750px) {
  .cart__items .cart__quantity-counter {
    justify-content: center;
  }
}
@media only screen and (min-width: 750px) {
  .cart__items .cart__item__remove {
    position: absolute;
    top: 100%;
    margin: 10px auto 0;
  }
}
.cart__items .cart__quantity {
  width: 95px;
}
.cart__items .cart__discount {
  margin: 10px 0 0 120px;
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .cart__items .cart__discount {
    margin-left: 105px;
  }
}

.cart__aside {
  position: sticky;
  top: 10px;
  flex: 0 0 300px;
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .cart__aside {
    flex-basis: 280px;
  }
}
@media only screen and (max-width: 749px) {
  .cart__aside {
    width: 100%;
    padding-top: 0;
  }
}

.cart__widget {
  position: relative;
  color: var(--text);
  display: block;
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.16;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  transition: color 0.3s ease;
}

.cart__widget__title {
  color: var(--text);
  position: relative;
  padding: calc(var(--inner) - 2px) calc(var(--inner) + 30px) calc(var(--inner) - 2px) 0;
  margin: 0;
  display: block;
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.16;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}
.cart__widget__title .icon {
  --icon-size: 16px;
  right: var(--inner);
}

.cart__widget label {
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.36;
  color: inherit;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.cart__widget .cart__field {
  display: block;
  width: 100%;
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.4;
}
@supports (-webkit-touch-callout: none) {
  .cart__widget .cart__field {
    font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 16px);
  }
}

.cart__widget .cart__field--textarea {
  height: 90px;
  resize: none;
}

.cart__widget select.cart__field, .cart__widget .cart__field.popout__toggle {
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  background-position: right center;
  background-image: var(--ICON-SELECT);
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-color: transparent;
  background-size: 16px auto;
  padding-right: 28px;
  text-indent: 0.01px;
  text-overflow: unset;
  cursor: pointer;
}

.cart__widget--products p.cart__widget__title {
  border-bottom: 1px solid var(--border);
  margin-bottom: var(--inner);
}

.cart__widget--products:has(.cart__widget__products:empty) {
  display: none;
}

.cart__widget__products {
  position: relative;
}
.cart__widget__products .btn__outer {
  position: relative;
  right: auto;
  bottom: auto;
  display: inline-grid;
}
.cart__widget__products .product-upsell__btn {
  justify-self: flex-start;
}

.cart__widget__content__inner {
  padding: calc(var(--inner) + 5px) 0;
}

.cart__foot__inner {
  padding: calc(var(--inner) - 2px) 0;
  border-top: 1px solid var(--border);
}

.cart__note {
  display: block;
  font-size: max(0.6875rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.36;
  margin: var(--inner) 0;
}

.cart__total {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: center;
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.33;
  margin: var(--inner) 0;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.cart__total.is-hidden {
  margin: 0;
}

.cart__price__loader {
  position: absolute;
  top: 0;
  right: 0;
  max-width: 50%;
  margin: calc(14px * var(--FONT-ADJUST-BODY)) 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, visibility 0.5s;
}

.cart__total__label {
  text-transform: uppercase;
  letter-spacing: 0.14em;
  padding-right: 10px;
}

.cart__total__price {
  font-size: calc(1.5rem * var(--FONT-ADJUST-BODY));
  transition: opacity 0.5s ease-in-out;
}

.is-loading .cart__total__price--animated {
  opacity: 0;
  transition-duration: 0.25s;
}
.is-loading .cart__price__loader {
  opacity: 1;
  visibility: visible;
}
.is-loading input:disabled,
.is-loading button:disabled,
.is-loading [disabled] {
  opacity: 0.7;
  pointer-events: none;
}

.cart__checkout {
  margin-top: var(--inner);
}

.no-js .cart__checkout ~ .cart__checkout {
  margin-top: var(--inner);
}

.cart__checkout .icon {
  flex: 0 0 auto;
  margin-right: 5px;
  fill: none;
  stroke: currentColor;
}

.cart__buttons-wrapper {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  width: 100%;
}

.cart__buttons {
  width: 100%;
}

.cart__buttons--disabled {
  position: relative;
}

.cart__buttons--disabled:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  cursor: default;
  background: var(--COLOR-BG-ALPHA-25);
  z-index: 1;
  cursor: default;
  transition: opacity 0.3s ease, visibility 0s linear 0s;
}

input.cart__acceptance__input {
  width: 13px;
  height: 13px;
  margin: calc(var(--font-2) * var(--FONT-ADJUST-BODY) - 5px) 7px 5px 0;
}

.cart__acceptance__label {
  cursor: pointer;
  flex: 1;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.cart__acceptance__input:checked ~ .cart__buttons--disabled:after {
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.cart__terms {
  width: 100%;
  margin: 0;
  color: var(--error);
  visibility: hidden;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.5s ease, margin 0.5s ease, max-height 0.5s cubic-bezier(0, 1, 0.5, 1), visibility 0.5s;
}
.cart__terms.is-expanded {
  opacity: 1;
  visibility: visible;
  max-height: 300px;
  margin: calc(var(--inner) / 2) 0;
  transition: opacity 0.5s ease, margin 0.5s ease, max-height 0.5s cubic-bezier(0, 0, 1, 0), visibility 0.5s;
}

.additional-checkout-buttons {
  display: flex;
  justify-content: center;
  margin-top: var(--inner);
  border-top: 1px solid var(--border);
}
.additional-checkout-buttons ul {
  justify-content: center;
}
.additional-checkout-buttons li {
  list-style: none outside none;
  border-radius: var(--RADIUS);
}
.additional-checkout-buttons .dynamic-checkout__content {
  width: 100%;
  padding: calc(var(--inner) - 8px) 0 var(--inner);
  min-height: 68px;
}
.additional-checkout-buttons .dynamic-checkout__content:empty {
  display: none;
}

/*====== Cart Quantity ======*/
.cart__quantity {
  position: relative;
  width: 95px;
  transition: opacity 0.4s;
}
@media only screen and (max-width: 479px) {
  .cart__quantity {
    width: 120px;
  }
}
.cart__quantity.read-only {
  opacity: 0.5;
  pointer-events: none;
}
.cart__quantity button {
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 100%;
  font-size: 0;
  line-height: 1;
  transform: translateY(-50%);
  transition: opacity 0.3s;
}
.no-js .cart__quantity button {
  display: none;
}
.cart__quantity button.is-disabled {
  pointer-events: none;
  opacity: 0.5;
}
.cart__quantity button:hover {
  opacity: 0.75;
}
.cart__quantity .icon {
  --icon-size: 16px;
}
.cart__quantity .cart__quantity-field {
  padding: 10px 30px;
  border-color: var(--border);
  margin: 0;
  background-color: transparent;
  font-size: max(0.6875rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.36;
  color: inherit;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  text-align: center;
}
.no-js .cart__quantity .cart__quantity-field {
  -moz-appearance: auto;
}
.no-js .cart__quantity .cart__quantity-field::-webkit-outer-spin-button, .no-js .cart__quantity .cart__quantity-field::-webkit-inner-spin-button {
  -webkit-appearance: auto;
}
.cart__quantity input[type=number] {
  -moz-appearance: textfield;
}
.cart__quantity input[type=number]::-webkit-outer-spin-button,
.cart__quantity input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
}
.cart__quantity .cart__quantity-minus {
  left: 0;
}
.cart__quantity .cart__quantity-plus {
  right: 0;
}

/*====== Cart Discount ======*/
.cart__discount {
  width: 100%;
  padding: 5px var(--inner);
  border-radius: 3px;
  margin-top: calc(var(--inner) - 2px);
  background-color: var(--primary-fade);
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  color: var(--primary);
}

.cart__discount .icon,
.cart__total__discount .icon {
  --icon-size: calc(14px * var(--FONT-ADJUST-BODY));
  fill: none;
  margin-right: 5px;
}

.cart__total__discount {
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  color: var(--primary);
}

.cart__total__discount .cart__total {
  margin: 0;
}

/*====== Cart Quantity ======*/
.cart__price {
  margin-bottom: 8px;
  font-size: calc(0.9rem * var(--FONT-ADJUST-BODY));
  line-height: 1.33;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}
.cart__price ins {
  background: none;
  margin-right: 10px;
  color: var(--COLOR-SALE);
}
.cart__price del {
  color: var(--text-light);
}
.cart__price .line__price {
  display: block;
  margin-top: 4px;
}

/*====== Shipping Calculator ======*/
.shipping-calculator ul {
  list-style: none;
  margin-left: 0;
  font-size: inherit;
}
.shipping-calculator li {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}

.shipping-calculator__province[data-aria-hidden=true] {
  display: none;
}

/*====== Cart Errors ======*/
.cart__errors {
  position: relative;
  width: 100%;
  flex: 0 0 auto;
  visibility: hidden;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.5s ease, max-height 0.5s cubic-bezier(0, 0.75, 0.25, 1), visibility 0.5s;
}
@media (hover: hover) {
  .cart__errors a:hover {
    opacity: 0.75;
  }
}

.cart__errors.is-expanded {
  opacity: 1;
  visibility: visible;
  max-height: 300px;
  transition-timing-function: cubic-bezier(0.5, 0.25, 0.75, 1);
}

.cart__errors__close {
  --icon-size: 16px;
  position: absolute;
  top: 0;
  right: 4px;
  width: 32px;
  height: 32px;
  padding: 5px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.cart__errors__close .icon {
  transition: transform 0.3s ease;
}

.cart__errors__close:hover .icon {
  transform: rotate(90deg);
}

.cart__errors__inner {
  position: relative;
  padding: calc(var(--inner) / 2) var(--inner);
  border: 1px solid var(--COLOR-ERROR-BORDER);
  background-color: var(--COLOR-ERROR-BG);
  color: var(--COLOR-ERROR);
  border-radius: var(--RADIUS-SELECT);
  margin: 15px auto;
}

.cart__errors__heading {
  margin: 0;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.cart__errors__content {
  flex: 1 0 auto;
  margin: 0;
  font-size: max(0.75rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
}

.is-loading:not(.is-removed) > .loader {
  visibility: visible;
  opacity: 1;
}

.is-loading .cart__quantity,
.is-disabled .cart__quantity {
  pointer-events: none;
  opacity: 0.6;
}

/*====== Cart Message ======*/
.cart__message {
  display: flex;
  flex-flow: wrap;
  justify-content: flex-start;
  align-items: center;
  margin: 0;
  font-size: max(0.6875rem * var(--FONT-ADJUST-BODY), 12px * var(--FONT-ADJUST-BODY));
  line-height: 1.3;
}

.cart__message--custom {
  flex-flow: row wrap;
  padding: var(--inner) 0;
  color: var(--text);
  background: var(--COLOR-BG-SECONDARY);
  text-align: center;
  padding: 15px;
  margin: 15px 0 0 0;
}
.cart__message--custom p {
  margin: 0 auto;
}

/*====== Upsell Products ======*/
.product-upsell__holder--cart .product-upsell,
.product-upsell__holder--cart .product-upsell__errors.is-visible {
  margin-bottom: 0;
}
.product-upsell__holder--cart .product-upsell__content {
  padding-right: 30px;
}
.product-upsell__holder--cart .product-upsell__image__link,
.product-upsell__holder--cart .product-upsell__image__thumb {
  height: 100%;
}
.product-upsell__holder--cart .product-upsell__image__thumb {
  background-color: var(--bg);
}
.product-upsell__holder--cart .product-upsell__skip {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 24px;
  height: 24px;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  padding: 0;
  font-size: 0;
  color: var(--link);
  transition: color 0.3s ease;
}
.product-upsell__holder--cart .product-upsell__skip .icon {
  --icon-size: 18px;
  display: block;
  transition: transform 0.3s ease;
}
.product-upsell__holder--cart .product-upsell__skip:hover {
  color: var(--link-hover);
}
.product-upsell__holder--cart .product-upsell__skip:hover .icon {
  transform: rotate(90deg);
}

/**
 * Pages
 */
.index-page {
  background-color: var(--bg);
  color: var(--text);
}

.page,
body .shopify-policy__container {
  position: relative;
  text-align: left;
  margin: 60px auto;
  max-width: 670px;
  padding: 0px 30px;
}

.page .giftcard__wrap img {
  margin: auto;
}

.page-fullwidth {
  max-width: 100%;
}

.page img,
.page iframe,
.shopify-policy__container img,
.shopify-policy__container iframe {
  max-width: 100%;
}

.page:not(.search-page) img,
.shopify-policy__container img {
  height: auto;
}

.page__title,
.shopify-policy__title h1 {
  font-size: calc(var(--font-7) * var(--FONT-ADJUST-HEADING));
  text-align: center;
  margin: 0 0 var(--gutter);
}

.gift-card-footer {
  text-align: center;
}

#QrCode {
  padding: 10px 0 20px;
}
#QrCode img {
  display: inline-block !important;
}

.search-page {
  margin: 0 auto;
  padding: var(--padding-top) 0 var(--padding-bottom);
  max-width: 100%;
}

.search-outer {
  max-width: 700px;
  padding: 0 var(--outer);
  margin: 0 auto var(--outer);
}

.search__caption {
  text-align: center;
  padding: 15px var(--outer);
  margin: 0 0 -1px;
  border-top: 1px solid var(--border);
  border-bottom: 1px solid var(--border);
  text-transform: none;
}

.shopify-challenge__errors ul.shopify-challenge__error {
  text-align: center;
  margin: 0;
}

/* ================ Newsletter double opt in  ================ */
body .shopify-email-marketing-confirmation__container {
  text-align: center;
}

body .shopify-email-marketing-confirmation__container h1 {
  font-size: calc(var(--font-8) * var(--FONT-ADJUST-HEADING));
  margin-bottom: 60px;
}

body .shopify-email-marketing-confirmation__container p {
  font-size: calc(var(--font-5) * var(--FONT-ADJUST-BODY));
}

body .shopify-email-marketing-confirmation__container a {
  display: block;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  text-decoration: underline;
  margin-top: 50px;
}

.contact__form__heading {
  font-size: calc(var(--font-5) * var(--FONT-ADJUST-HEADING));
  padding: 0;
  margin-top: 0;
  margin-bottom: var(--inner);
  text-align: center;
}

.contact-form {
  background-color: var(--bg);
  color: var(--text);
}

.contact-form .custom-form__block {
  margin-bottom: 20px;
}

popout-select {
  display: block;
}

.popout {
  --link: var(--text);
  --link-hover: var(--text);
  position: relative;
}

.popout__toggle {
  touch-action: manipulation;
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  margin: 10px 0;
  white-space: nowrap;
  padding: 14px 16px;
  background-image: none;
}

.popout__toggle__text {
  display: inline-flex;
  align-items: center;
}

.popout__toggle .icon-filter {
  --icon-size: 14px;
  margin: -5px 7px -5px 0;
  transition: transform 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.popout__toggle .icon-nav-arrow-down {
  --icon-size: 16px;
  transition: transform 0.3s ease;
  margin-left: 4px;
}

.popout__toggle span:not(.filter-count) {
  vertical-align: middle;
}

@media only screen and (min-width: 750px) {
  .popout__toggle[aria-expanded=true] .icon-nav-arrow-down {
    transform: rotateX(180deg);
  }

  .popout__toggleable-text {
    display: grid;
    grid-template-columns: 1fr;
    justify-items: start;
  }

  .popout__expanded-show,
.popout__expanded-hide {
    transition: opacity 0.25s ease-in-out, visibility 0.25s;
    grid-row-start: 1;
    grid-column-start: 1;
    min-height: 100%;
  }

  .popout__toggle[aria-expanded=true] .popout__expanded-show,
.popout__toggle[aria-expanded=false] .popout__expanded-hide {
    opacity: 0;
    visibility: hidden;
  }

  .popout__toggle[aria-expanded=false] .popout__expanded-show,
.popout__toggle[aria-expanded=true] .popout__expanded-hide {
    opacity: 1;
    visibility: visible;
  }
}
@media only screen and (max-width: 749px) {
  .popout__toggle--filters[aria-expanded=true] .popout__expanded-hide,
.popout__toggle--filters[aria-expanded=false] .popout__expanded-hide {
    display: none;
  }
}

@media only screen and (max-width: 749px) {
  .popout__toggle--filters .icon-nav-arrow-down {
    display: none;
  }
}

.popout-list {
  background-color: var(--COLOR-BG);
  border: 1px solid var(--COLOR-BORDER-HAIRLINE);
  bottom: 100%;
  position: absolute;
  opacity: 0;
  visibility: hidden;
  margin: 0;
  padding: 10px 0;
  width: auto;
  min-width: 100%;
  max-width: 0px;
  min-height: 30px;
  max-height: 300px;
  z-index: 100;
  overflow-y: auto;
  list-style-type: none;
  pointer-events: none;
  transition: max-width 0s 2s, opacity 0.2s ease, visibility 0.2s;
}

.popout-list--visible {
  max-width: var(--max-width, 90vw);
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: max-width 0s, opacity 0.4s ease, visibility 0.4s;
}

.popout-list__item {
  white-space: nowrap;
  padding: 0;
  margin: 0;
  text-align: left;
}

.popout-list__item a {
  color: var(--text);
}

.popout-list__option {
  padding: 8px 15px 8px 15px;
  width: 100%;
  display: flex;
  align-items: center;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.popout-list__option:hover {
  background-color: var(--hairline);
}

.popout-list__option--reset {
  display: none;
  margin-bottom: 10px;
  opacity: 0.7;
}

.popout-list__option--visible {
  display: block;
}

.popout-list__item.is-active .popout-list__option span {
  border-bottom: 1px solid var(--text-light, var(--COLOR-TEXT-LIGHT));
}

/* ================ Popout footer ================ */
.popout-footer {
  --hairline: var(--COLOR-FOOTER-BG-HAIRLINE);
  display: flex;
  margin: -10px 0;
}

.popout-footer .popout {
  margin-right: 10px;
}

.popout-footer .popout__toggle {
  color: var(--COLOR-FOOTER-TEXT);
  border-color: var(--COLOR-FOOTER-BORDER);
}

.popout-footer .popout-list {
  background-color: var(--COLOR-FOOTER-BG);
  border: 1px solid var(--COLOR-FOOTER-BORDER);
}

/* ================ Popout header ================ */
.popout-header {
  display: flex;
  align-items: center;
  height: 100%;
  width: 100%;
  margin: 0 -11px;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-NAV));
  font-family: var(--FONT-STACK-NAV);
  font-style: var(--FONT-STYLE-NAV);
  font-weight: var(--FONT-WEIGHT-NAV-BOLD);
  letter-spacing: inherit;
}

.popout-header .popout-list {
  --bg: var(--COLOR-SUBMENU-BG);
  --text: var(--COLOR-SUBMENU-LINK);
  --text-light: var(--COLOR-SUBMENU-TEXT-LIGHT);
  background-color: var(--bg);
  border: 1px solid var(--border);
  z-index: 1000;
  max-height: 80vh;
}
.header__desktop .popout-header .popout-list, .header__mobile .popout-header .popout-list, .toolbar__utility .popout-header .popout-list {
  top: 100%;
  bottom: auto;
  right: 0;
  left: auto;
}
@media only screen and (max-width: 749px) {
  .popout-header .popout-list {
    max-height: 60vh;
  }
}

.popout-header .popout-list__item.is-active .popout-list__option span {
  border-bottom-color: var(--text-light);
}

.popout-header .popout__toggle {
  display: flex;
  align-items: center;
  min-height: inherit;
  height: 100%;
  padding: 5px 11px;
  border: none;
  border-radius: 0;
  margin: 0;
  color: inherit;
  font-size: inherit;
  font-family: inherit;
  font-style: inherit;
  font-weight: inherit;
  text-transform: inherit;
  letter-spacing: inherit;
}

.popout-header .popout__toggle .icon {
  margin-left: 0;
}

.popout-header .popout-list__option {
  padding-left: 11px;
  padding-right: 11px;
}

.popout__flag {
  display: block;
  width: 20px;
  height: 15px;
  margin-right: 8px;
  aspect-ratio: 4/3;
  object-fit: cover;
}

/**
 * Account
 */
.account-header {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
  border-bottom: 1px solid var(--border);
  padding-bottom: 0.9375rem;
  margin-bottom: 1.875rem;
}
.account-header h1 {
  margin-bottom: 0;
}
.account-header button,
.account-header .btn,
.account-header #challenge .shopify-challenge__button,
#challenge .account-header .shopify-challenge__button,
.account-header #shopify-product-reviews .spr-button-primary,
#shopify-product-reviews .account-header .spr-button-primary,
.account-header .shopify-payment-button .shopify-payment-button__button--unbranded,
.shopify-payment-button .account-header .shopify-payment-button__button--unbranded {
  margin-bottom: 10px;
}

.account--login.just {
  text-align: justify;
}

.account--login.just h2.theme {
  text-align: left;
}

.account--login {
  text-align: center;
}
.no-js .account--login .is-hidden {
  visibility: visible;
  max-height: none;
  opacity: 1;
}

.account {
  margin: 40px auto;
}

.address-delete {
  margin-left: 20px;
}

.account form {
  padding: 20px 0;
}

.account input[type=hidden] + .form-message,
.account .form-message:first-child {
  margin-top: -20px;
}

.account .form-message {
  padding-bottom: 20px;
}

.account .form-field {
  max-width: none;
}

.account .forgot-password {
  display: flex;
  width: 100%;
  padding: 20px 0;
  justify-content: space-between;
  align-items: center;
}

.errors ul {
  text-align: left;
  color: #B00;
}

.action-bottom .note {
  margin: 0 10px;
}

.note > a {
  margin-left: 5px;
}

.account table {
  width: 100%;
}

.account table th {
  background: var(--COLOR-BG-SECONDARY);
  color: var(--COLOR-TEXT-LIGHT);
  border: 1px solid var(--COLOR-BG-SECONDARY);
  -webkit-backface-visibility: visible;
}

@media only screen and (min-width: 750px) {
  .account-sidebar {
    position: sticky;
    top: var(--header-sticky-height, 0px);
  }
}

.account-sidebar ul {
  list-style: none;
  margin: 0;
}

.account-sidebar li {
  margin: 8px 0;
}

.account-sidebar li.is-current a {
  color: var(--link-hover);
}

.account-main h2.theme,
.account h4.theme {
  text-align: left;
}

.account table.customer-address-table,
.account table.customer-address-table th,
.account table.customer-address-table td {
  border: 0;
  padding: 15px 0 0;
}

.account table.customer-address-table input[type=text] {
  width: 100%;
}

.address-tables {
  padding-top: 10px;
}

.address-actions {
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.account .edit-address table,
.account .edit-address form {
  margin: 0;
  padding: 0;
}

.account .edit-address table td {
  padding: 0 0 15px;
}

.account .edit-address select, .account .edit-address .popout__toggle {
  max-width: 150px;
}

.account .edit-address label {
  padding: 0 15px 0 0;
}

.order-address {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: var(--gap);
}
@media only screen and (max-width: 479px) {
  .order-address {
    grid-template-columns: auto;
  }
}

.order-info {
  width: 100%;
  grid-column: 1/-1;
}

.order-info span.status {
  font-style: var(--FONT-STYLE-BODY-ITALIC);
}

@media only screen and (max-width: 749px) {
  .account-sidebar,
.account-main {
    width: 100%;
    margin: 0 0 20px;
  }

  .account-sidebar__title {
    padding: 10px 15px;
  }

  .address-table {
    width: 100%;
  }

  .account-sidebar {
    margin: 0 0 20px;
    padding: 0;
    text-align: left;
    min-height: 0;
    position: relative;
    background: var(--COLOR-BG-SECONDARY);
  }

  .account-sidebar ul {
    background: var(--COLOR-BG-SECONDARY);
  }

  .account-sidebar li {
    margin: 0;
    display: block;
    border-top: 1px solid var(--COLOR-BORDER);
  }

  .account-sidebar a {
    display: block;
    padding: 15px;
  }
}
@media only screen and (max-width: 479px) {
  .account .edit-address table td {
    display: block;
    padding: 0 0 10px;
  }

  .account table .payment-status,
.account table .total {
    display: none;
  }

  .order-address .col {
    margin: 0 0 15px;
  }

  .order-details-m,
.order-details-m td {
    border: 0;
    vertical-align: top;
  }
  .order-details-m > img,
.order-details-m td > img {
    max-width: 90px;
  }

  .order-details-m p {
    margin: 0;
  }
}
.order__item__subscription {
  margin-top: 10px;
  margin-bottom: 0;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.order__item__savings {
  margin-top: 10px;
}

.order__item--original {
  color: var(--COLOR-A50);
  text-decoration: line-through;
}

.order-image {
  width: 90px;
}

/**
 * Blog
 */
.blog-section,
.featured-posts {
  color: var(--text);
  background-color: var(--bg);
}

.blog__title {
  margin: 0 0 var(--gutter);
  text-align: center;
}

.blog__title .icon {
  position: relative;
  top: -2px;
  width: 0.73em;
  height: 0.73em;
}

.blog__title a {
  color: inherit;
}

.blog__title + .blog__nav {
  padding-top: 0;
}

.blog__nav {
  padding-top: var(--gutter);
  padding-bottom: var(--gutter);
  margin: 0;
  text-align: center;
}

.blog__nav .icon {
  width: 1em;
  height: 1em;
  margin-left: 5px;
}

.blog-listing .flickity-prev-next-button.previous {
  left: var(--outer-offset);
}
.blog-listing .flickity-prev-next-button.next {
  right: var(--outer-offset);
}
.blog-listing .article {
  padding: 0;
}
.blog-listing .article__tags {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  padding: 15px 25px;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  text-transform: uppercase;
}
@media only screen and (max-width: 749px) {
  .blog-listing {
    margin: 0 20px;
  }
  .blog-listing:not(.flickity-enabled) {
    margin: 0;
  }
}

body.has-line-design .blog-listing .article__image {
  border-bottom: 1px solid var(--COLOR-BORDER);
}

.blog-listing-arrow {
  position: absolute;
  top: 50%;
  margin-top: -10px;
}

.blog-listing-arrow--left {
  left: -10px;
}

.blog-listing-arrow--right {
  right: -10px;
}

/* Blog articles */
.article {
  -ms-break-inside: avoid;
  -webkit-break-inside: avoid;
  break-inside: avoid;
}

.article-grid-item {
  margin-bottom: 30px;
}

.article__text-wrapper {
  padding: var(--inner) 0;
}
body.grid-compact .article__text-wrapper, body.has-line-design .article__text-wrapper {
  padding-left: var(--inner);
  padding-right: var(--inner);
}

.article__title {
  margin-top: 0;
  margin-bottom: 8px;
}
.article__title a {
  width: 100%;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /*! autoprefixer: off */
  -webkit-box-orient: vertical;
  color: var(--text);
  transition: color 0.3s ease;
}
.article__title a:hover {
  color: var(--link-hover);
}

.article__meta {
  display: flex;
  flex-flow: row wrap;
  margin-bottom: 16px;
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  line-height: 1.4;
  font-weight: var(--FONT-WEIGHT-BODY);
  color: var(--text-light);
}
.article__meta .separator {
  margin: 0 5px;
  opacity: 0.75;
}

.article__image__outer {
  position: relative;
  overflow: hidden;
}

.article__image {
  position: relative;
  display: block;
  overflow: hidden;
  max-width: 100%;
  margin-bottom: 16px;
}

.article__image-link {
  display: flex;
  position: relative;
}

.featured-posts .article__image {
  padding-top: 56.25%;
}

.featured-posts .article__image img {
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.article__excerpt {
  font-size: calc(0.865rem * var(--FONT-ADJUST-BODY));
  margin-top: 16px;
  margin-bottom: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  /* autoprefixer: off */
  -webkit-box-orient: vertical;
  /* autoprefixer: on */
}

.article__link {
  font-size: calc(0.865rem * var(--FONT-ADJUST-BODY));
  margin-top: 16px;
  margin-bottom: 0;
}

.article__link a {
  color: var(--text);
  margin-bottom: 0;
}
.article__link a:hover {
  color: var(--link-hover);
}

.article__tags {
  width: 100%;
  padding: 0 15px 5px 25px;
  margin-bottom: -20px;
  word-break: break-word;
}

.article__tag {
  line-height: 1;
  display: inline-block;
  background-color: var(--bg);
  color: var(--text);
  padding: 6px 8px;
  margin: 0 10px 10px 0;
}
.article__tag:hover {
  color: var(--text-light);
}

.blog-section {
  position: relative;
  text-align: left;
}
.blog-section .article__image {
  overflow: hidden;
  position: relative;
  margin-bottom: 0;
}
.no-js .blog-section .article__image {
  padding-top: 0 !important;
}
.blog-section .article__image .article__tags {
  position: absolute;
  z-index: 20;
  left: 0;
  bottom: 0;
  margin-bottom: 0;
}
.blog-section .flash {
  text-align: center;
}
.blog-section .comments {
  margin: 10px 0 20px;
  padding-top: 20px;
  position: relative;
}
.blog-section .comments .gravatar {
  float: left;
  margin-right: 15px;
  width: 50px;
}
.blog-section .comments .label {
  float: right;
}
.blog-section .comments .comment {
  padding-bottom: 10px;
  margin-top: 10px;
  border-bottom: 1px solid var(--COLOR-BORDER);
}
.blog-section .comment-body {
  overflow: hidden;
}
.blog-section .paginate {
  text-align: center;
}

.article__image-holder {
  overflow: hidden;
  display: block;
}

.comments-form {
  margin-top: 20px;
  position: relative;
}
.comments-form .btn, .comments-form #challenge .shopify-challenge__button, #challenge .comments-form .shopify-challenge__button, .comments-form #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .comments-form .spr-button-primary, .comments-form .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .comments-form .shopify-payment-button__button--unbranded {
  margin: 10px 0;
}

.flash {
  margin-bottom: 1em;
}

.paginate .num {
  margin: 0 5px;
}

.blog__button {
  margin-top: 20px;
}

/**
 * Article
 */
.article--single {
  position: relative;
}
.article--single .article {
  position: relative;
  margin-bottom: 30px;
}
.article--single .article__title {
  font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
  margin: 11px 0 26px;
}
.article--single .article__meta {
  font-size: calc(0.8rem * var(--FONT-ADJUST-BODY));
  display: inline-flex;
  flex-wrap: wrap;
  padding: 7px 0;
  opacity: 1;
  margin: 0.5em 20px 0.5em 0;
}
.article--single .article__tags {
  margin: 24px 0;
  padding: 0;
  word-break: break-word;
}
.article--single .article__image {
  position: relative;
}
@media only screen and (max-width: 749px) {
  .article--single .article__title {
    line-height: 31px;
    margin: 0;
  }
  .article--single .article__meta {
    padding: 0;
    margin: 0;
    font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
  }
  .article--single .hr {
    margin: 10px 0;
  }
}

.article__content {
  padding: 14px 0 0;
  font-size: calc(1.125rem * var(--FONT-ADJUST-BODY));
  line-height: 26px;
  word-break: break-word;
}
.article__content p {
  font-size: inherit;
  line-height: inherit;
  margin: 0 0 24px;
}
.article__content blockquote {
  font-style: var(--FONT-STYLE-BODY-ITALIC);
  margin: 52px 0;
  padding: 0 0 0 28px;
  border-left: 2px solid var(--COLOR-BORDER);
}
.article__content blockquote p {
  margin: 0;
}
.article__content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 24px 0;
}
@media only screen and (min-width: 750px) {
  .article__content {
    min-height: 130px;
  }
}
@media only screen and (max-width: 749px) {
  .article__content blockquote {
    margin: 26px 0;
    padding: 0 0 0 18px;
    border-width: 1px;
  }
}

.article__meta-holder {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.article__meta > *:not(:last-child):after,
.editorial__meta > *:not(:last-child):after {
  content: "•";
  padding: 0 7px;
}

.article__author-bio {
  margin: 24px 0;
  display: flex;
}
.article__author__image {
  flex-shrink: 0;
  margin-right: 20px;
  margin-top: 7px;
  position: relative;
  width: 80px;
  height: 80px;
  border-radius: 80px;
  display: inline-block;
  overflow: hidden;
}
@media only screen and (max-width: 749px) {
  .article__author__image {
    width: 60px;
    height: 60px;
    margin-right: 15px;
    border-radius: 40px;
  }
}

.article__author__text {
  align-self: center;
}

.article__content__wrapper {
  position: relative;
}

@media only screen and (max-width: 749px) {
  .comments-container {
    margin: 22px 0 0;
  }
}

.comments h3 {
  margin: 0;
  font-size: calc(1.265rem * var(--FONT-ADJUST-HEADING));
  line-height: 1.2;
}
@media only screen and (max-width: 749px) {
  .comments h3 {
    font-size: calc(1rem * var(--FONT-ADJUST-HEADING));
    line-height: 1.5;
  }
}

.comment-body {
  margin: 32px 0;
  padding-bottom: 9px;
  font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
  line-height: 17px;
}
.comment-body p {
  font-size: inherit;
  line-height: inherit;
}
@media only screen and (max-width: 749px) {
  .comment-body {
    margin: 20px 0;
    line-height: 15px;
  }
}

.comment-meta {
  margin: 15px 0;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}
@media only screen and (max-width: 749px) {
  .comment-meta {
    margin: 6px 0;
    font-weight: var(--FONT-WEIGHT-BODY);
    color: var(--text-light);
  }
}

.comments-form {
  margin-top: 13px;
}
.comments-form h3 {
  margin: 0;
  font-size: calc(1.265rem * var(--FONT-ADJUST-HEADING));
  line-height: 1.2;
}
@media only screen and (max-width: 749px) {
  .comments-form h3 {
    font-size: calc(1.125rem * var(--FONT-ADJUST-HEADING));
    line-height: 1.5;
  }
}

.comment-form {
  max-width: 600px;
  margin: 0;
  padding: 4px 0 0;
}
.comment-form .form-field {
  max-width: 100%;
}
.comment-form p {
  font-size: calc(0.75rem * var(--FONT-ADJUST-BODY));
  line-height: 17px;
}
.comment-form p.error {
  margin-bottom: 1.75em;
}
.comment-form .form-row {
  display: flex;
  justify-content: space-between;
}
.comment-form .form-row .form-field {
  width: calc(50% - 5px);
}
.comment-form .form-row .form-field .label--float {
  top: -0.3em;
}
.comment-form .btn, .comment-form #challenge .shopify-challenge__button, #challenge .comment-form .shopify-challenge__button, .comment-form #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .comment-form .spr-button-primary, .comment-form .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .comment-form .shopify-payment-button__button--unbranded {
  font-size: calc(0.9375rem * var(--FONT-ADJUST-BODY));
  line-height: normal;
}
@media only screen and (max-width: 749px) {
  .comment-form {
    padding-top: 11px;
  }
  .comment-form .form-field {
    margin-bottom: 8px;
  }
  .comment-form .form-field textarea {
    height: 158px;
  }
  .comment-form .form-row .form-field {
    width: calc(50% - 4px);
  }
  .comment-form .btn, .comment-form #challenge .shopify-challenge__button, #challenge .comment-form .shopify-challenge__button, .comment-form #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .comment-form .spr-button-primary, .comment-form .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .comment-form .shopify-payment-button__button--unbranded {
    font-size: calc(0.8125rem * var(--FONT-ADJUST-BODY));
  }
}

@media only screen and (min-width: 750px) {
  .sidebar {
    position: sticky;
    top: var(--header-sticky-height);
    max-width: 100%;
    padding-left: 20px;
  }
}
@media only screen and (max-width: 749px) {
  .sidebar {
    position: relative;
  }
}

.pinterest__image {
  max-width: 100%;
}

.widget {
  padding-bottom: 30px;
}
.widget:empty {
  padding: 0;
}
@media only screen and (min-width: 750px) {
  .widget:first-child {
    padding-top: 30px;
  }
}
@media only screen and (max-width: 749px) {
  .widget {
    padding-bottom: 3px;
  }
}

.widget__products {
  margin-top: 30px;
}

.widget__title {
  font-size: calc(1rem * var(--FONT-ADJUST-HEADING));
  line-height: 1.4;
  font-weight: var(--FONT-WEIGHT-BODY);
  padding: 8px 0;
  margin-bottom: 15px;
  border-bottom: 1px solid var(--COLOR-BORDER);
}

.widget__links {
  margin: 0;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
  line-height: 17px;
}

.widget__links:after {
  content: "";
}

.widget__links li {
  list-style: none;
}

.widget__link {
  display: block;
  color: var(--link);
  transition: color 0.3s ease;
  padding: 6px 0;
  word-break: break-word;
  line-height: inherit;
  font-weight: inherit;
}

.widget__link:hover {
  color: var(--COLOR-LINK-HOVER);
}

.widget__accordion-title {
  padding: 6px 0;
}

.widget__links .submenu {
  font-weight: var(--FONT-WEIGHT-BODY);
  margin: 4px 0 4px 2px;
  padding: 0 0 0 15px;
  border-left: 2px solid var(--COLOR-BORDER);
}

.widget__links--secondary .widget__link {
  display: inline-block;
  position: relative;
}
.widget__links--secondary .widget__link:after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  height: 1px;
  background: currentColor;
  opacity: 0;
  transform: scaleX(0);
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.25s ease-in, transform 0.25s ease-in, visibility 0.25s;
}
.widget__links--secondary .widget__link.is-selected:after {
  opacity: 1;
  visibility: visible;
  transform: scaleX(1);
}

.widget__links--active .widget__link {
  color: var(--COLOR-PRIMARY);
}

.widget--pinterest .widget__image {
  margin-top: 20px;
  position: relative;
  overflow: hidden;
}
.widget--pinterest .widget__image img {
  display: block;
  width: 100%;
  height: auto;
  border-radius: 10px;
}

.widget__recent {
  margin-top: 30px;
}

.widget__column {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  text-align: left;
  position: relative;
  min-height: 120px;
  margin-bottom: 30px;
  transition: box-shadow 0.3s ease-out;
  border: 1px solid var(--COLOR-BORDER);
}
.widget__column:last-child {
  margin-bottom: 0;
}
.widget__column .meta--light {
  margin-top: 8px;
  font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
  color: var(--COLOR-TEXT-LIGHT);
}
.widget__column:hover {
  box-shadow: 0 0px 5px rgba(0, 0, 0, 0.15);
}

.widget__column__image {
  flex: 0 0 105px;
  align-self: stretch;
  overflow: hidden;
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .widget__column__image {
    flex-basis: 33%;
  }
}

.widget__column__contents {
  padding: 10px 10px 10px 5%;
  flex: 1;
}

.widget__column__title {
  margin: 0 0 9px 0;
  color: var(--COLOR-TEXT);
}

.anchor-logo__link {
  display: block;
}
.anchor-logo__link .svg-placeholder {
  display: block;
  height: 25vh;
}

@media only screen and (min-width: 750px) {
  .js .editorial__slider[data-slider]:not(.flickity-enabled) {
    display: flex;
    overflow-x: auto;
  }
}

@media only screen and (min-width: 750px) {
  .editorial__slider[data-slider]:after {
    content: "flickity";
    display: none;
  }
}

@media only screen and (max-width: 749px) {
  .editorial__slider {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-left: var(--outer);
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .editorial__slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
}

.editorial__slider .flickity-button {
  top: auto;
  bottom: 35px;
  margin-top: 0;
}
@media only screen and (max-width: 1399px) {
  .editorial__slider .flickity-button {
    bottom: 20px;
  }
}

.editorial__slider .flickity-button.previous {
  left: 104px;
}
@media only screen and (max-width: 1399px) {
  .editorial__slider .flickity-button.previous {
    left: 60px;
  }
}

.editorial__slider .flickity-button.next {
  right: auto;
  left: 154px;
}
@media only screen and (max-width: 1399px) {
  .editorial__slider .flickity-button.next {
    left: 110px;
  }
}

.editorial__slide {
  width: 100%;
  flex: 0 0 100%;
}
@media only screen and (max-width: 749px) {
  .editorial__slide {
    flex-basis: calc(100% - 50px);
    scroll-snap-align: start;
    margin: 0 var(--gap) 0 0;
  }
  .editorial__slide:only-child {
    flex-basis: calc(100% - var(--gap));
  }
}

.editorial {
  background-color: var(--bg);
  word-break: break-word;
}
@media only screen and (min-width: 750px) {
  .editorial {
    display: flex;
    flex-direction: row-reverse;
  }
}

.editorial__aside {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 84px 104px;
}
@media only screen and (max-width: 1399px) {
  .editorial__aside {
    padding: 70px 60px;
  }
}
@media only screen and (min-width: 750px) {
  .editorial__aside {
    flex: 0 0 50%;
  }
}
@media only screen and (max-width: 749px) {
  .editorial__aside {
    display: block;
    padding: 40px var(--outer);
  }
}

@media only screen and (max-width: 749px) {
  .editorial__slider[data-slider].flickity-enabled .editorial__aside {
    padding-bottom: 70px;
  }
}

@media only screen and (min-width: 750px) {
  .editorial__aside[data-subheading]:after {
    content: attr(data-subheading);
    padding-top: 0.5em;
    margin-top: auto;
    opacity: 0;
    pointer-events: none;
    text-transform: uppercase;
    letter-spacing: 0.12em;
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-size: calc(11px * var(--FONT-ADJUST-BODY));
  }
}

.editorial__content {
  margin: auto 0;
}

.editorial__title a {
  color: var(--text);
}

.editorial__subheading {
  padding-left: 5px;
  padding-bottom: 0.5em;
  margin: 0 0 auto;
}

.editorial__subheading + .editorial__content .editorial__title:first-child {
  margin-top: 0;
}

.editorial__meta {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(0.8rem * var(--FONT-ADJUST-BODY));
  display: flex;
  flex-wrap: wrap;
  padding: 7px 0;
}
.editorial__meta time {
  font-family: var(--FONT-STACK-BODY);
}

.editorial__image {
  display: flex;
}
@media only screen and (min-width: 750px) {
  .editorial__image {
    flex: 0 0 50%;
  }
}

.editorial__link {
  margin-top: 1em;
}

/**
 * Collections
 */
.template-collection .container {
  background-color: var(--TRANSPARENT);
}

.collection__products {
  position: relative;
  align-items: flex-start;
}
.collection__products .grid {
  padding-top: 0;
}

.collection__products .grid-outer {
  padding: var(--gutter) var(--outer);
}

@media only screen and (min-width: 480px) {
  .collection__products--group-tags {
    display: flex;
    flex-flow: row;
  }
}

.collection__nav {
  --border-width: 0px;
  position: sticky;
  top: 0;
  z-index: 11;
  display: flex;
  flex-grow: 1;
  background: var(--COLOR-BG);
  border-top: 1px solid var(--hairline);
  border-bottom: 1px solid var(--hairline);
}

.has-header-sticky .collection__nav {
  top: calc(var(--header-height) - var(--border-width));
}

.has-header-sticky.has-line-design .collection__nav {
  --border-width: 1px;
}

.collection__nav--filter {
  justify-content: flex-start;
}

.collection__nav--sort {
  justify-content: flex-end;
}

.collection__nav--filter.collection__nav--sort {
  justify-content: space-between;
}

/**
 * COLLECTION PAGE HEADER
 */
.collection-image-with-title {
  overflow: hidden;
}

.collection__image-inline {
  display: flex;
  align-items: stretch;
  position: relative;
}
.collection__image-inline .collection__image {
  width: 65%;
  min-height: inherit;
}
.collection__image-inline .collection__title-wrapper {
  min-height: inherit;
  width: 35%;
}
.collection__image-inline .hero__content {
  max-width: none;
}
.collection__image-inline .hero__content:not(.hero__content--transparent) {
  margin: 0;
}
@media only screen and (max-width: 989px) {
  .collection__image-inline {
    flex-direction: column;
  }
  .collection__image-inline .collection__image,
.collection__image-inline .collection__title-wrapper {
    width: 100%;
  }
  .collection__image-inline .collection__title-wrapper {
    height: auto;
  }
}

.collection__title--no-image {
  padding: var(--gutter) var(--outer);
  background: var(--bg);
}

.collections-hover {
  position: relative;
  color: var(--text);
  background: var(--bg);
}
@media only screen and (max-width: 749px) {
  .collections-hover {
    min-height: 0;
  }
}

.collections-hover--empty {
  display: block;
  min-height: 0;
  color: var(--COLOR-TEXT);
}

@media only screen and (max-width: 749px) {
  .collections-hover__images,
.collections-hover__inner {
    min-height: initial;
  }
}

.collections-hover__images {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .collections-hover__images {
    display: grid;
    height: 100%;
  }
}

.collections-hover__image {
  flex: 0 1 100%;
  display: flex;
  position: relative;
  background-color: var(--bg);
}
@media only screen and (min-width: 750px) {
  .collections-hover__image {
    grid-row-start: 1;
    grid-column-start: 1;
    overflow: hidden;
    min-height: 100%;
    width: 100%;
    height: 100%;
    overflow: hidden;
    opacity: 0;
    transform: scale(1.1);
    transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1), transform 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  .collections-hover__image.is-visible {
    opacity: 1;
    transform: scale(1);
  }
}
.collections-hover__image .svg-placeholder,
.collections-hover__image .image-wrapper {
  flex: 1;
  min-height: 100%;
}

@media only screen and (max-width: 749px) {
  .collections-hover__image:not(.image-height--mobile) .image-wrapper {
    height: 100%;
    padding: 0;
  }
}

@media only screen and (min-width: 750px) {
  .collections-hover:not(.image-height) .collections-hover__image .image-wrapper {
    height: 100%;
    padding: 0;
  }
}

@media only screen and (max-width: 749px) {
  .collections-hover__image:not(.image-height--mobile) .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0;
  }
}

@media only screen and (min-width: 750px) {
  .collections-hover:not(.image-height) .collections-hover__image .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0;
  }
}

.collections-hover__inner {
  position: relative;
  z-index: 2;
}

.collections-hover__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: sticky;
  position: -webkit-sticky;
  top: var(--header-sticky-height, 0px);
  overflow: hidden;
  min-height: min(var(--full-screen), 100%);
  text-align: center;
}

[data-overlay-header] .collections-hover__content {
  padding-top: var(--header-height);
  padding-bottom: var(--header-height);
}

.collections-hover__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media only screen and (max-width: 749px) {
  .collections-hover__actions {
    flex-direction: column;
  }
}

.collection-hover__button {
  font-family: var(--FONT-STACK-HEADING);
  font-style: var(--FONT-STYLE-HEADING);
  font-weight: var(--FONT-WEIGHT-HEADING);
  display: inline-block;
  align-self: center;
  padding: 0;
  margin: var(--gutter);
  color: var(--text);
  opacity: 0.5;
  transition: opacity 0.8s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media (hover: hover) {
  .collection-hover__button:hover {
    opacity: 1;
    color: currentColor;
  }
}

.collection-hover__button.is-selected {
  opacity: 1;
  color: currentColor;
}

.collection__products {
  --duration: 0.6s;
}

.collection__sidebar {
  padding: var(--inner);
  font-size: calc(0.825rem * var(--FONT-ADJUST-BODY));
  overflow-y: auto;
  max-height: 100%;
  min-width: var(--sidebar-width);
  mask-image: linear-gradient(to top, transparent, black), linear-gradient(to left, transparent var(--scrollbar-width), black var(--scrollbar-width));
  mask-size: 100% 20000px;
  mask-position: left bottom;
  -webkit-mask-image: linear-gradient(to top, transparent, black), linear-gradient(to left, transparent var(--scrollbar-width), black var(--scrollbar-width));
  -webkit-mask-size: 100% 20000px;
  -webkit-mask-position: left bottom;
  transition: mask-position 0.3s, -webkit-mask-position 0.3s;
}
.collection__sidebar:hover {
  -webkit-mask-position: left top;
}
.collection__sidebar .no-results {
  padding: var(--gutter)/2 0;
}

.collection__sidebar--has-buttons .collection__sidebar__slider::after {
  content: none;
}

.collection__sidebar__slider {
  display: flex;
  flex-direction: column;
  background: var(--COLOR-BG);
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: var(--hairline);
  visibility: hidden;
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .collection__sidebar__slider {
    position: sticky;
    position: -webkit-sticky;
    top: var(--collection-nav-height);
    height: calc(var(--full-screen) - var(--collection-nav-height));
    width: 0;
    min-width: 0;
    margin-right: -2px;
    transition-property: min-width, margin, transform, visibility;
    transition-duration: var(--duration);
    transition-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
}
@media only screen and (max-width: 749px) {
  .collection__sidebar__slider {
    position: fixed;
    z-index: 6100;
    top: 0;
    height: 100%;
    transform: translateX(-100%);
    transition: transform var(--duration) cubic-bezier(0.215, 0.61, 0.355, 1), visibility var(--duration);
  }
}

@media only screen and (max-width: 749px) {
  .collection__sidebar__slider.drawer--animated {
    --base-animation-delay: 200ms;
  }
}

@media only screen and (min-width: 750px) {
  .has-header-sticky .collection__sidebar__slider {
    --border-width: 0px;
    top: calc(var(--collection-nav-height) + var(--header-height) - var(--border-width));
    height: calc(var(--full-screen) - var(--collection-nav-height) + var(--border-width));
  }
}

@media only screen and (min-width: 750px) {
  .has-header-sticky.has-line-design .collection__sidebar__slider {
    --border-width: 1px;
  }
}

.collection__sidebar__slider::after,
.collection__sidebar__slide-out::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: var(--scrollbar-width);
  height: 40px;
  background: linear-gradient(to bottom, rgba(var(--COLOR-BG-RGB), 0%) 0%, var(--COLOR-BG) 100%);
  pointer-events: none;
}

@media only screen and (min-width: 750px) {
  .collection__sidebar__slider .collection__sidebar {
    padding: var(--inner) var(--gutter) var(--inner) var(--outer);
    transform: translateX(-100%);
    transition: transform var(--duration) cubic-bezier(0.215, 0.61, 0.355, 1), mask-position var(--duration), -webkit-mask-position var(--duration);
  }
}

.collection__sidebar__slider.expanded,
.collection__sidebar__slide-out.expanded {
  visibility: visible;
}

@media only screen and (min-width: 750px) {
  .collection__sidebar__slider.expanded .collection__sidebar {
    transform: translateX(0);
  }
}

.collection__sidebar__slide-out.expanded {
  transform: translateX(0);
}

@media only screen and (min-width: 750px) {
  .collection__sidebar__slider.expanded {
    transform: translateZ(0);
    min-width: var(--sidebar-width);
    margin-right: calc((var(--outer) - var(--gutter)) * -1);
  }
}
@media only screen and (max-width: 749px) {
  .collection__sidebar__slider.expanded {
    transform: translateZ(0);
  }
}

/**
 * Prevent collection filters sidebar fading out on page load on mobile
 */
@media only screen and (max-width: 749px) {
  .no-mobile-animation {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none;
  }

  .no-mobile-animation ~ .underlay {
    display: none;
  }
}
.grid--sidebar {
  width: 75%;
}
@media only screen and (max-width: 749px) {
  .grid--sidebar {
    width: 100%;
  }
}

.filter-group:not(.filter-group--hidden) ~ .collection__filters .filter-group,
.filter-group:not(.filter-group--hidden) ~ .filter-group {
  margin-top: 25px;
}

.collection__sidebar__actions {
  padding-top: 17px;
}
.collection__sidebar__actions.is-hidden {
  display: none !important;
}

.collection__sidebar__link {
  --icon-size: 24px;
  position: relative;
  display: inline-block;
  padding-left: 23px;
}

.collection__sidebar__link .icon {
  position: absolute;
  top: 50%;
  left: -4px;
  fill: none;
  transform: translateY(-50%);
}

.filter-group__heading {
  position: relative;
  border-bottom: 1px solid var(--hairline);
  padding: 0 15px 5px 0;
  margin-bottom: 0;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  cursor: pointer;
}

.filter-group__heading .icon {
  --icon-size: 18px;
  top: 8px;
  right: -4px;
}

.collection-nav {
  list-style-type: none;
  overflow: hidden;
  padding: 0 0 1px;
  margin: 0;
}

.sidebar__item {
  position: relative;
  font-size: calc(0.725rem * var(--FONT-ADJUST-BODY));
  padding: 0;
  margin: 12px 0 0;
}
.sidebar__item label,
.sidebar__item a {
  color: var(--COLOR-TEXT);
}
.sidebar__item label {
  cursor: pointer;
}
.sidebar__item input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  margin: 0;
  opacity: 0;
}
.sidebar__item.hidden {
  display: none;
}

.sidebar__item .swatch__button {
  width: 1.15em;
  height: 1.15em;
  padding: 0;
  margin: 0 5px 0 0;
  background: var(--swatch, var(--swatch-default));
  background-size: cover;
  background-repeat: no-repeat;
}

.sidebar__item .swatch__button[data-swatch=white i] {
  --swatch: #FAFAFA;
  box-shadow: inset 0 0 0 1px var(--border);
}

.sidebar__item .swatch__button--circle {
  border-radius: 50px;
}

.link--remove a,
.link--remove label,
.link--add a,
.link--add label,
.link--disable {
  padding-left: 23px;
  position: relative;
  display: flex;
}

.sidebar__item a::after,
.sidebar__item label::after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 1em;
  height: 1em;
  border: 1px solid var(--COLOR-TEXT-LIGHT);
  background: var(--COLOR-BG);
}

.sidebar__item.link--remove a::after,
.sidebar__item input:checked ~ label::after {
  background: var(--COLOR-PRIMARY);
  box-shadow: inset 0 0 0 2px var(--COLOR-BG);
}

.link--disable {
  text-decoration: line-through;
  opacity: 0.8;
}

.link--disable a::after,
.link--disable label::after {
  border: 1px solid var(--COLOR-BORDER);
  background-color: var(--COLOR-BORDER);
}

.link--disable .swatch__button {
  pointer-events: none;
}

.link--disable .swatch__button [data-swatch]:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1px;
  height: 32px;
  background-color: var(--text-dark);
  transform: rotate(-45deg) translate(-50%, -50%);
  transform-origin: left top;
}

.collection__nav.collection__nav--both {
  justify-content: space-between;
}

.popout--group .popout,
.popout--sort .popout {
  height: 100%;
}
.popout--group .popout-list,
.popout--sort .popout-list {
  z-index: 1000;
  max-height: 90vh;
  top: 100%;
  bottom: initial;
  right: 0;
  max-width: 100vw !important;
}
.popout--group .popout__toggle,
.popout--sort .popout__toggle {
  padding: 20px 15px;
  height: 100%;
  border-top: none;
  border-left: 1px solid var(--hairline);
  border-radius: 0;
  color: var(--COLOR-TEXT);
  border-bottom: none;
  border-right: none;
  margin: 0;
  font-size: calc(0.625rem * var(--FONT-ADJUST-BODY));
}
@media only screen and (min-width: 990px) {
  .popout--group .popout__toggle,
.popout--sort .popout__toggle {
    padding: 23px 18px;
  }
}

.popout--sort .popout__toggle__text:nth-child(2),
.popout--sort .popout.is-active .popout__toggle__text:nth-child(1) {
  display: none;
}
.popout--sort .popout.is-active .popout__toggle__text:nth-child(2) {
  display: inline;
}

.popout--sort .popout__toggle {
  padding-left: var(--outer);
  padding-right: var(--outer);
}

.popout--sort .popout-list {
  width: 0;
  min-width: 0;
  margin-top: 1px;
  overflow-x: hidden;
  overflow-y: auto;
  transition: opacity 0.2s ease, width 0.2s ease, visibility 0.2s;
}

.popout--sort .popout-list--visible {
  width: 200px;
  transition: opacity 0.4s ease, width 0.4s ease, visibility 0.4s;
}

.popout--sort .popout-list__item {
  white-space: normal;
  min-width: calc(170px - var(--scrollbar-width));
}

.popout--group .popout-list {
  right: initial;
}

.popout--group .popout__toggle {
  display: flex;
  align-items: center;
  padding-left: var(--outer);
  padding-right: var(--outer);
  border-right: 1px solid var(--hairline);
  border-left: none;
}
.popout--group .popout__toggle:after {
  display: none;
}

/**
 * Slide out filters sidebar
 */
.collection__sidebar__slide-out {
  position: fixed;
  top: 0;
  right: 100%;
  z-index: 6100;
  display: flex;
  flex-direction: column;
  height: 100%;
  width: 100%;
  max-width: var(--DRAWER-WIDTH);
  border-left: 1px solid var(--border);
  background-color: var(--bg);
  opacity: 0;
  transition: opacity var(--duration) ease, transform var(--duration) ease, visibility var(--duration);
  transform: translateZ(0);
  overflow: hidden;
  visibility: hidden;
  will-change: trasnform, opacity;
}

.collection__sidebar__slide-out.expanding,
.collection__sidebar__slide-out.expanded {
  visibility: visible;
  opacity: 1;
}

.collection__sidebar__slide-out.expanded {
  transform: translate3d(100%, 0, 0);
}

.collection__sidebar__head {
  position: relative;
  width: 100%;
  padding: 24px calc(var(--inner) + 24px) 24px var(--inner);
  border-bottom: 1px solid var(--border);
}
.collection__sidebar__head h3 {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(1em * var(--FONT-ADJUST-BODY));
  line-height: 1;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  margin: 0 0 -3px;
}

.collection__sidebar__close {
  --icon-size: 24px;
  position: absolute;
  top: 50%;
  right: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 5px;
  color: var(--link);
  background: transparent;
  border-radius: var(--RADIUS);
  font-size: 0;
  text-decoration: none;
  transform: translate3d(0, -50%, 0);
  transition: color 0.3s ease;
}
.collection__sidebar__close .icon {
  display: block;
  fill: currentColor;
  transition: transform 0.3s;
  pointer-events: none;
}
@media (hover: hover) {
  .collection__sidebar__close:hover {
    color: var(--link-hover);
  }
  .collection__sidebar__close:hover .icon {
    transform: rotate(90deg);
  }
}

.collection__sidebar__buttons {
  position: sticky;
  left: 0;
  right: var(--scrollbar-width);
  bottom: 0;
  z-index: 2;
  min-width: calc(var(--sidebar-width) - var(--scrollbar-width));
  padding: 5px var(--inner) 15px;
  margin-top: auto;
  background: var(--bg);
}
.collection__sidebar__buttons::after {
  content: "";
  display: block;
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  height: 45px;
  background: linear-gradient(to bottom, rgba(var(--COLOR-BG-RGB), 0%) 0%, var(--COLOR-BG) 100%);
  pointer-events: none;
}

@media only screen and (min-width: 750px) {
  .collection__sidebar__slider .collection__sidebar__buttons {
    padding: 5px 15px 15px;
  }
}

.collection__sidebar__buttons .btn + .btn, .collection__sidebar__buttons #challenge .shopify-challenge__button + .btn, #challenge .collection__sidebar__buttons .shopify-challenge__button + .btn, .collection__sidebar__buttons #shopify-product-reviews .spr-button-primary + .btn, #shopify-product-reviews .collection__sidebar__buttons .spr-button-primary + .btn, .collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded + .btn, .shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded + .btn, .collection__sidebar__buttons #challenge .btn + .shopify-challenge__button, #challenge .collection__sidebar__buttons .btn + .shopify-challenge__button, .collection__sidebar__buttons #challenge .shopify-challenge__button + .shopify-challenge__button, #challenge .collection__sidebar__buttons .shopify-challenge__button + .shopify-challenge__button, .collection__sidebar__buttons #shopify-product-reviews #challenge .spr-button-primary + .shopify-challenge__button, #challenge .collection__sidebar__buttons #shopify-product-reviews .spr-button-primary + .shopify-challenge__button, #shopify-product-reviews .collection__sidebar__buttons #challenge .spr-button-primary + .shopify-challenge__button, #challenge #shopify-product-reviews .collection__sidebar__buttons .spr-button-primary + .shopify-challenge__button, .collection__sidebar__buttons .shopify-payment-button #challenge .shopify-payment-button__button--unbranded + .shopify-challenge__button, #challenge .collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded + .shopify-challenge__button, .shopify-payment-button .collection__sidebar__buttons #challenge .shopify-payment-button__button--unbranded + .shopify-challenge__button, #challenge .shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded + .shopify-challenge__button, .collection__sidebar__buttons #shopify-product-reviews .btn + .spr-button-primary, #shopify-product-reviews .collection__sidebar__buttons .btn + .spr-button-primary, .collection__sidebar__buttons #challenge #shopify-product-reviews .shopify-challenge__button + .spr-button-primary, #shopify-product-reviews .collection__sidebar__buttons #challenge .shopify-challenge__button + .spr-button-primary, #challenge .collection__sidebar__buttons #shopify-product-reviews .shopify-challenge__button + .spr-button-primary, #shopify-product-reviews #challenge .collection__sidebar__buttons .shopify-challenge__button + .spr-button-primary, .collection__sidebar__buttons #shopify-product-reviews .spr-button-primary + .spr-button-primary, #shopify-product-reviews .collection__sidebar__buttons .spr-button-primary + .spr-button-primary, .collection__sidebar__buttons .shopify-payment-button #shopify-product-reviews .shopify-payment-button__button--unbranded + .spr-button-primary, #shopify-product-reviews .collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded + .spr-button-primary, .shopify-payment-button .collection__sidebar__buttons #shopify-product-reviews .shopify-payment-button__button--unbranded + .spr-button-primary, #shopify-product-reviews .shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded + .spr-button-primary, .collection__sidebar__buttons .shopify-payment-button .btn + .shopify-payment-button__button--unbranded, .shopify-payment-button .collection__sidebar__buttons .btn + .shopify-payment-button__button--unbranded, .collection__sidebar__buttons #challenge .shopify-payment-button .shopify-challenge__button + .shopify-payment-button__button--unbranded, .shopify-payment-button .collection__sidebar__buttons #challenge .shopify-challenge__button + .shopify-payment-button__button--unbranded, #challenge .collection__sidebar__buttons .shopify-payment-button .shopify-challenge__button + .shopify-payment-button__button--unbranded, .shopify-payment-button #challenge .collection__sidebar__buttons .shopify-challenge__button + .shopify-payment-button__button--unbranded, .collection__sidebar__buttons #shopify-product-reviews .shopify-payment-button .spr-button-primary + .shopify-payment-button__button--unbranded, .shopify-payment-button .collection__sidebar__buttons #shopify-product-reviews .spr-button-primary + .shopify-payment-button__button--unbranded, #shopify-product-reviews .collection__sidebar__buttons .shopify-payment-button .spr-button-primary + .shopify-payment-button__button--unbranded, .shopify-payment-button #shopify-product-reviews .collection__sidebar__buttons .spr-button-primary + .shopify-payment-button__button--unbranded, .collection__sidebar__buttons .shopify-payment-button .shopify-payment-button__button--unbranded + .shopify-payment-button__button--unbranded, .shopify-payment-button .collection__sidebar__buttons .shopify-payment-button__button--unbranded + .shopify-payment-button__button--unbranded {
  margin-top: 10px;
}

.collection__sidebar__slide-out .collection__sidebar {
  flex-grow: 1;
  height: auto;
  overflow-y: auto;
}

.collection__products .underlay {
  z-index: 6000;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  will-change: opacity;
}

.collection__active__filters {
  display: flex;
  flex-wrap: wrap;
}

.active__filters__clear,
.active__filters__remove {
  color: var(--text);
  display: flex;
  background-color: var(--COLOR-BG-SECONDARY);
  padding: 8px 7px 8px 14px;
  margin: 0 7px 7px 0;
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
}
.active__filters__clear:hover,
.active__filters__remove:hover {
  color: var(--text-dark);
}
.active__filters__clear:hover .filter__x,
.active__filters__remove:hover .filter__x {
  color: var(--primary);
}
.active__filters__clear small,
.active__filters__remove small {
  align-self: center;
  flex: 0 1 100%;
  word-break: break-word;
  font-size: inherit;
}

.filter__x {
  --icon-size: 14px;
  flex: 0 0 auto;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  margin-left: 4px;
}

.active__filters__clear {
  padding-right: 14px;
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.filter__price {
  margin-top: 12px;
}

.filter__price__fields {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  max-width: 100%;
  margin: 0 0 25px;
}

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

.filter__price__field {
  display: flex;
  align-items: center;
  flex: 1;
  max-width: calc(50% - 10px);
  padding: 8px 0 8px 8px;
  border: 1px solid var(--COLOR-TEXT);
  border-radius: var(--RADIUS-SELECT);
}

.filter__price__currency {
  margin-right: 5px;
}

.filter__price__spacer {
  flex: 0 0 20px;
  position: relative;
  padding: 5px;
  font-size: 0;
  text-align: center;
}
.filter__price__spacer:before {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 6px;
  height: 1px;
  margin-left: -3px;
  background: currentColor;
  content: "";
}

.filter__price__input {
  flex: 1;
  display: block;
  min-width: 0;
  max-width: 100%;
  width: 0;
  padding: 0 3px;
  border: 1px solid transparent;
  border-radius: 0;
  margin: 0;
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  text-align: right;
}

.range {
  position: relative;
  display: block;
  height: 36px;
  margin-left: -8px;
  margin-right: -8px;
  opacity: 0;
  -webkit-user-select: none;
  user-select: none;
}

.range.is-initialized {
  opacity: 1;
}

.range__dot {
  position: absolute;
  z-index: 2;
  display: block;
  width: 36px;
  height: 36px;
  padding: 8px;
}
.range__dot span {
  display: block;
  width: 100%;
  height: 100%;
  background: var(--COLOR-TEXT);
  border: 1px solid var(--COLOR-TEXT);
  border-radius: 50%;
  font-size: 0;
  cursor: pointer;
}

.range__line {
  position: absolute;
  top: 16px;
  left: 8px;
  z-index: 0;
  overflow: hidden;
  width: calc(100% - 16px);
  height: 4px;
  border-radius: 4px;
  border: 1px solid var(--COLOR-TEXT);
}
.range__line span {
  display: block;
  height: 100%;
  width: 0%;
  background: var(--COLOR-TEXT);
  font-size: 0;
}

.filter-count {
  margin-left: 4px;
}

.filter-count:before {
  content: "(";
}

.filter-count:after {
  content: ")";
}

/**
 * List Collections Index
 */
.collection-item {
  --link: var(--text);
  --link-hover: var(--text);
  display: flex;
  position: relative;
  background: #FFF;
  scroll-snap-align: start;
}

.collection-item__content {
  flex: 0 1 100%;
}

.collection-item__image {
  position: relative;
  overflow: hidden;
}
.has-line-design .collection-item__image {
  border-bottom: 1px solid var(--border);
}

.collection-item__info {
  padding: var(--inner);
  overflow: hidden;
}
@media only screen and (max-width: 749px) {
  .collection-item__info {
    padding: 12px;
  }
}

.collection-item--centered .collection-item__info {
  text-align: center;
}

@media (hover: hover) {
  .collection-item__bg .image-wrapper {
    --transform-scale: scale(1.08);
    transition: transform 2s cubic-bezier(0.215, 0.61, 0.355, 1);
  }

  .collection-item__info span {
    --bg-size: 100% 1px;
    padding: 0 0 5px;
    background: linear-gradient(to right, currentColor, currentColor);
    background-size: 0% 1px;
    background-position: 50% 86%;
    background-repeat: no-repeat;
    transition: color 0.25s ease-in, background-size 0.25s ease-in;
  }
}
@media (hover: hover) and (hover: hover) {
  .collection-item__info span:hover {
    background-size: 100% 1px;
  }
}
@media (hover: hover) {
  .collection-item__content:hover .collection-item__bg .image-wrapper {
    transform: var(--transform-scale);
  }
}
@media (hover: hover) {
  .collection-item__content:hover .collection-item__info span {
    background-size: var(--bg-size);
  }
}
/**
 * Subcollection
 */
.subcollections {
  --link: var(--text);
  background-color: var(--bg);
  position: relative;
  overflow: hidden;
}

.collection__title + .subcollections .subcollections__inner {
  padding-top: 0;
}

.subcollection__item {
  position: relative;
  height: 300px;
  overflow: hidden;
  z-index: 0;
}

.subcollection__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow-y: hidden;
  transform: scale(1.06);
  transition: transform 2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.subcollection__image .image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
}

.subcollection__link:hover .subcollection__image {
  transform: scale(1);
}

.subcollection__link {
  color: var(--link);
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  padding: 20px;
  width: 100%;
  height: 100%;
}

body.is-focused .subcollection__item:focus-within .image-overlay-bottom {
  outline: 5px auto var(--COLOR-PRIMARY);
  outline-offset: -1px;
}

.subcollection__text {
  position: relative;
  z-index: 200;
  max-height: 100%;
}

.subcollection__title,
.subcollection__description {
  margin: 0;
  color: var(--text);
}

.subcollection__title {
  margin-bottom: 3px;
  font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
}

/* ============================================================================
  #Pagination (Including Shopify Product Reviews)
============================================================================== */
.pagination {
  margin-bottom: 1em;
}

/* ================ Custom Pagination ================ */
.pagination-custom {
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto;
  padding: max(var(--inner), var(--outer));
  width: 100%;
  font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .pagination-custom {
    justify-content: space-around;
  }
}

.pagination-custom a {
  transition: color 0.3s ease;
}
.pagination-custom a:hover, .pagination-custom a:focus {
  color: var(--link-hover);
}

.pagination-custom__page {
  margin: 0 12px;
  color: var(--text);
  display: block;
  padding: 4px 8px;
  transition: color 0.3s ease;
  border-radius: var(--RADIUS);
}

.pagination-custom__page--active {
  position: relative;
  box-shadow: 0 0 0 1px currentColor;
}

.pagination-custom__inner {
  display: flex;
  justify-content: center;
  margin: 0 32px;
}

@media only screen and (min-width: 750px) {
  .pagination-custom__prev,
.pagination-custom__next {
    padding: 5px;
    display: inline-block;
  }
}
@media only screen and (min-width: 480px) {
  .pagination-custom__prev .icon,
.pagination-custom__next .icon {
    display: none;
  }
}
@media only screen and (max-width: 749px) {
  .pagination-custom__page {
    margin: 8px;
  }

  .pagination-custom__sep {
    margin: 8px 2px;
  }

  .pagination-custom__prev,
.pagination-custom__next {
    display: flex;
    flex: 1 0 0;
    margin: 0;
  }

  .pagination-custom__prev {
    justify-content: flex-start;
  }

  .pagination-custom__next {
    justify-content: flex-end;
  }

  .pagination-custom__inner {
    flex-grow: 0;
    margin: 0 10px;
  }
}
@media only screen and (max-width: 479px) {
  .pagination-custom__prev,
.pagination-custom__next {
    margin: 0 -4px;
  }
  .pagination-custom__prev span,
.pagination-custom__next span {
    display: none;
  }
}
/**
 * Footer
 */
.footer-sections {
  --bg: var(--COLOR-FOOTER-BG);
  --text: var(--COLOR-FOOTER-TEXT);
  --text-a35: var(--COLOR-FOOTER-TEXT-A35);
  --text-a75: var(--COLOR-FOOTER-TEXT-A75);
  --border: var(--COLOR-FOOTER-BORDER);
  --link: var(--COLOR-FOOTER-LINK);
  --link-hover: var(--COLOR-FOOTER-LINK-HOVER);
  position: relative;
  color: var(--text);
  background-color: var(--bg);
  padding-bottom: var(--cart-bar-height, 0px);
}
.footer-sections a:not(.btn) {
  transition: color 0.25s ease, background 0.25s ease;
}

.site-footer-wrapper {
  overflow: hidden;
}

.footer__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}

.footer__logo__wrapper {
  padding: var(--inner) 0;
}

.footer__logo {
  display: inline-block;
  max-width: 100%;
}

.footer__blocks {
  display: flex;
  flex-flow: column;
  position: relative;
  margin: 0 calc(var(--gutter) / -2) var(--gutter-offset);
}
@media only screen and (min-width: 750px) {
  .footer__blocks {
    flex-flow: row wrap;
  }
}

.footer__block {
  flex: 1 0 100%;
  padding: 0 calc(var(--gutter) / 2);
  margin-bottom: var(--gutter);
}
@media only screen and (min-width: 990px) {
  .footer__block {
    flex: 0 0 var(--desktop-width);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .footer__block {
    flex-basis: 50%;
  }
}

@media only screen and (min-width: 750px) {
  .footer__block--divider {
    position: relative;
    display: flex;
    padding: 0;
    pointer-events: none;
  }
  .footer__block--divider .divider-holder {
    display: flex;
    justify-content: center;
    flex: 0 1 100%;
    margin: 0;
  }
  .footer__block--divider .divider {
    height: 100%;
    border-width: 0 0 0 1px;
    border-style: solid;
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .footer__block--divider {
    position: absolute;
    top: 0;
    left: 50%;
    bottom: 0;
  }
}

@media only screen and (min-width: 750px) {
  body.grid-compact .footer__block--divider--inline {
    margin-bottom: calc((var(--padding-bottom) * -1) + var(--gutter));
  }
  body.grid-compact .footer__blocks:only-child .footer__block--divider--inline {
    margin-top: calc((var(--padding-top) * -1));
  }
}

.footer__block .social-link {
  color: var(--COLOR-FOOTER-LINK);
}

.footer__block .social-link:hover {
  color: var(--link-hover);
}

.footer__block__title {
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
  font-size: calc(1.25rem * var(--FONT-ADJUST-HEADING));
  padding-bottom: 10px;
}

.footer__block__image {
  max-width: 100%;
  margin-bottom: var(--inner);
}

.footer__newsletter__wrapper {
  max-width: 440px;
}

.footer__newsletter__wrapper .newsletter-form {
  --border: var(--COLOR-FOOTER-BORDER);
}

.footer__quicklinks {
  font-size: calc(1rem * var(--FONT-ADJUST-BODY));
}

.footer__quicklinks li {
  margin: 0 0 1.25em;
}
.footer__quicklinks li:last-child {
  margin-bottom: 0;
}

.footer__quicklinks a {
  transition: color 0.25s ease;
}

.footer__social__text,
.footer__newsletter__text {
  margin-bottom: 15px;
}

/**
 * Tabs
 */
.tabs-wrapper {
  overflow: hidden;
  position: relative;
}

.tabs__head {
  position: relative;
  z-index: 2;
  overflow: hidden;
}

.tabs__head .tabs__arrow:before {
  display: block;
}

.tabs__arrow {
  --icon-size: 24px;
  position: absolute;
  top: 50%;
  display: flex;
  align-items: center;
  width: calc(var(--icon-size) + 8px);
  height: var(--icon-size);
  max-height: none;
  margin-top: calc(var(--icon-size) / -2);
  border-radius: 0;
  padding: 0 4px;
  box-shadow: none;
  transition: all 0.2s;
}
.tabs__arrow:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  display: none;
  width: 100%;
  height: 200%;
  transform: translateY(-50%);
  background: linear-gradient(to right, var(--bg, var(--COLOR-BG)) 78%, transparent 100%);
}
.tabs__arrow .icon {
  position: relative;
  z-index: 5;
}

.tabs__arrow--prev {
  left: 0;
}

.tabs__arrow--next {
  right: 0;
}

.tabs__arrow--next:before {
  transform: translateY(-50%) rotateY(180deg);
}

ul.tabs {
  display: block;
  overflow-x: auto;
  white-space: nowrap;
  margin: 0;
  padding: 5px 0;
  list-style: none;
  position: relative;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
ul.tabs::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}

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

ul.tabs > li {
  --text: var(--text-light);
  text-transform: var(--BTN-UPPERCASE);
  font-family: var(--BTN-FONT-STACK);
  font-size: var(--BTN-FONT-SIZE);
  font-style: var(--BTN-FONT-STYLE);
  font-weight: var(--BTN-FONT-WEIGHT);
  letter-spacing: var(--BTN-LETTER-SPACING);
  display: inline-block;
  padding: 10px 0px;
  margin: 0 3rem 0 0;
  cursor: pointer;
  vertical-align: bottom;
  color: var(--text);
}
ul.tabs > li span {
  padding: 0 0 5px;
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 0% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
}
@media (hover: hover) {
  ul.tabs > li span:hover {
    background-size: 100% 1px;
  }
}
@media (hover: hover) {
  ul.tabs > li .icon-arrow-right {
    transition: transform 0.5s ease;
    transform: translateZ(0);
  }
  ul.tabs > li:hover .icon-arrow-right {
    transform: translate3d(5px, 0, 0);
  }
}

ul.tabs > li.current {
  --text: var(--text-dark);
}
ul.tabs > li.current span {
  background-size: 100% 1px;
}
ul.tabs > li.current:only-child {
  cursor: default;
}
ul.tabs > li.current:only-child span {
  background: none;
}

ul.tabs--center > li {
  margin: 0 15px;
}

.tab-content {
  position: absolute;
  top: 0;
  width: 100%;
  padding: 15px 15px 15px 0px;
  min-height: 6rem;
  pointer-events: none;
  opacity: 0;
  visibility: hidden;
  content-visibility: hidden;
}
.no-js .tab-content {
  position: static;
  display: inherit;
  pointer-events: none;
  opacity: 1;
  visibility: visible;
  content-visibility: visible;
}

.tab-content.current {
  position: static;
  display: inherit;
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
  content-visibility: visible;
}

.tab-content:not(.current) figure {
  display: none;
}

.tab__title:not(:last-child) {
  margin-bottom: var(--gutter);
}

/* Product Tabs */
.product-tabs {
  max-width: 100%;
}
.product-tabs ul.tabs {
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.product-tabs ul.tabs::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}
.product-tabs ul.tabs::-webkit-scrollbar {
  -webkit-appearance: none;
  width: 0;
  height: 0;
}
.product-tabs ul.tabs > li {
  padding-bottom: 0;
  border-bottom-width: 1px;
  white-space: normal;
}
.product-tabs ul.tabs > li:last-child {
  margin-right: 0;
}

.product-tabs__head {
  padding-bottom: 16px;
  margin-bottom: -13px;
}

/* Tabs Collections */
.index-tab-collections {
  color: var(--text);
  background-color: var(--bg);
}
.index-tab-collections .btn, .index-tab-collections #challenge .shopify-challenge__button, #challenge .index-tab-collections .shopify-challenge__button, .index-tab-collections #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .index-tab-collections .spr-button-primary, .index-tab-collections .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .index-tab-collections .shopify-payment-button__button--unbranded {
  max-width: 100%;
}
.index-tab-collections .tabs-collections {
  position: relative;
}
.index-tab-collections .tabs__nav {
  flex: 0 1 auto;
}
.index-tab-collections .tabs__nav:only-child {
  flex: 1 1 auto;
}
.index-tab-collections ul.tabs {
  display: block;
  white-space: nowrap;
  overflow-x: auto;
  margin: 0 auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.index-tab-collections ul.tabs::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}
.index-tab-collections .tab-link {
  padding: 5px 0;
}
.index-tab-collections .tab-link:first-child {
  margin-left: 0;
}
.index-tab-collections .tab-link:last-child {
  margin-right: 0;
}
.index-tab-collections .tab-content {
  padding: 0;
  min-height: 0;
}
.index-tab-collections .grid__heading-image .svg-placeholder {
  color: #BBB;
  background: #CCC;
}
@media only screen and (min-width: 750px) {
  .index-tab-collections .tabs-collections__head .grid__heading-holder:not(.grid__heading-holder--inline) .grid__heading-text:not(:last-child) {
    margin-bottom: var(--gutter);
  }
}
@media only screen and (max-width: 749px) {
  .index-tab-collections .tabs-collections__head .grid__heading-holder {
    margin-bottom: 0;
  }
  .index-tab-collections .tabs-collections__head .grid__heading-text {
    margin-bottom: calc(var(--gutter) * 2);
  }
  .index-tab-collections .tabs-collections__head .grid__heading-actions {
    margin-bottom: var(--gutter);
  }
}

.product-accordion {
  --icon-size: 16px;
  padding-top: 1px;
}
.product-accordion .accordion__title {
  padding-top: 1rem;
  padding-bottom: 1rem;
}

/* Tabs/Accordion Truncated */
.accordion-content__entry--truncate,
.tab-content__entry--truncate,
.product__description__content--truncate {
  display: none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.accordion-content__actions,
.tab-content__actions,
.product__description__content__actions {
  display: none;
}

.accordion-content__holder,
.tab-content__holder,
.product__description__content__holder {
  position: relative;
  word-break: break-word;
}

.accordion-content__holder.is-expanded .accordion-content__entry:not(.accordion-content__entry--truncate),
.accordion-content__holder.is-expanded .tab-content__entry:not(.tab-content__entry--truncate),
.accordion-content__holder.is-expanded .product__description__content__entry:not(.product__description__content__entry--truncate),
.tab-content__holder.is-expanded .accordion-content__entry:not(.accordion-content__entry--truncate),
.tab-content__holder.is-expanded .tab-content__entry:not(.tab-content__entry--truncate),
.tab-content__holder.is-expanded .product__description__content__entry:not(.product__description__content__entry--truncate),
.product__description__content__holder.is-expanded .accordion-content__entry:not(.accordion-content__entry--truncate),
.product__description__content__holder.is-expanded .tab-content__entry:not(.tab-content__entry--truncate),
.product__description__content__holder.is-expanded .product__description__content__entry:not(.product__description__content__entry--truncate) {
  display: none;
}
.accordion-content__holder.is-expanded .accordion-content__entry--truncate,
.accordion-content__holder.is-expanded .tab-content__entry--truncate,
.accordion-content__holder.is-expanded .product__description__content__entry--truncate,
.tab-content__holder.is-expanded .accordion-content__entry--truncate,
.tab-content__holder.is-expanded .tab-content__entry--truncate,
.tab-content__holder.is-expanded .product__description__content__entry--truncate,
.product__description__content__holder.is-expanded .accordion-content__entry--truncate,
.product__description__content__holder.is-expanded .tab-content__entry--truncate,
.product__description__content__holder.is-expanded .product__description__content__entry--truncate {
  position: relative;
  display: block !important;
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}
.accordion-content__holder.is-expanded .accordion-content__actions,
.accordion-content__holder.is-expanded .tab-content__actions,
.accordion-content__holder.is-expanded .product__description__content__actions,
.tab-content__holder.is-expanded .accordion-content__actions,
.tab-content__holder.is-expanded .tab-content__actions,
.tab-content__holder.is-expanded .product__description__content__actions,
.product__description__content__holder.is-expanded .accordion-content__actions,
.product__description__content__holder.is-expanded .tab-content__actions,
.product__description__content__holder.is-expanded .product__description__content__actions {
  display: block;
}

.compare__outer {
  position: relative;
  overflow: hidden;
  height: 100%;
}

.section-before-after .compare__outer {
  height: 0;
  padding-top: calc(1 / var(--aspect-ratio) * 100%);
}

.section-before-after .compare__buttons {
  margin-top: var(--inner);
}

@media only screen and (min-width: 750px) {
  .image-height .compare__outer {
    height: auto;
    min-height: 100%;
    padding-top: calc(1 / var(--aspect-ratio) * 100%);
  }

  .image-height .compare {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
@media only screen and (max-width: 749px) {
  .image-height--mobile .compare__outer {
    height: auto;
    min-height: 100%;
    padding-top: calc(1 / var(--aspect-ratio) * 100%);
  }

  .image-height--mobile .compare {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
}
.compare__image {
  position: relative;
}
.no-js .compare__image {
  width: 50% !important;
}

.compare {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.compare,
.compare__image {
  height: 100%;
  padding: 0;
}

.compare__image__holder .image-wrapper,
.compare__image:nth-child(2),
.compare__image__holder {
  position: absolute;
  top: 0;
  right: 0;
  z-index: 2;
  overflow: hidden;
  width: 100%;
  height: 100%;
}

.compare__btn {
  position: absolute;
  top: 50%;
  z-index: 3;
  width: 50px;
  height: 50px;
  border-radius: var(--radius);
  margin-top: -25px;
  background: var(--bg);
  cursor: move;
  transition: color 0.3s ease;
  touch-action: pan-y;
}
.compare__btn:active {
  color: var(--link-hover);
}

.compare__btn .icon {
  --icon-size: 36px;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
}

.no-js .compare__btn {
  display: none;
}

/**
 * Custom content
 */
.brick__section {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}
@media only screen and (min-width: 750px) {
  .brick__section {
    flex-wrap: nowrap;
  }
}

.js .brick__slider:not(.flickity-enabled) {
  display: flex;
  overflow-x: auto;
  overflow-y: hidden;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.js .brick__slider:not(.flickity-enabled)::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}
.js .brick__slider:not(.flickity-enabled) .brick__section {
  min-width: 100%;
}

.brick__slider .flickity-page-dots {
  bottom: 20px;
}
@media only screen and (max-width: 749px) {
  .brick__slider .flickity-page-dots {
    padding: 0 calc(var(--outer) * 2);
  }
  .text-left .brick__slider .flickity-page-dots {
    justify-content: flex-start;
  }
  .brick__slider[data-dots=line] .hero__content, .brick__slider[data-dots=circle] .hero__content {
    padding-bottom: 20px;
  }
}

body.has-line-design .brick__block .hero__slide {
  border: 0;
}

.text-left .brick__block__text .flickity-page-dots {
  justify-content: flex-start;
}

.brick__block {
  flex: 0 1 100%;
  color: var(--text);
  background-color: var(--bg);
}
@media only screen and (min-width: 750px) {
  .brick__block {
    flex: 1 1 50%;
  }
}

.brick--border .brick__block {
  border: 1px solid var(--border);
}

.brick__section--reversed .brick__block:nth-child(2):last-child {
  order: -1;
}

@media only screen and (max-width: 749px) {
  .brick__section--reversed-mobile .brick__block:nth-child(2):last-child {
    order: -1;
  }
}

@media only screen and (min-width: 750px) {
  .brick__block.is-sticky {
    align-self: flex-start;
    position: sticky;
    top: 0;
    min-height: inherit;
  }
}

.brick__block__text {
  height: 100%;
  display: flex;
  align-items: center;
  padding: var(--outer);
  background-color: var(--bg);
  margin: 0 auto;
}
@media only screen and (min-width: 1400px) {
  .brick__block__text {
    flex-basis: 76%;
  }
}
@media only screen and (min-width: 990px) and (max-width: 1399px) {
  .brick__block__text {
    flex-basis: 84%;
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .brick__block__text {
    flex-basis: 90%;
  }
}
@media only screen and (max-width: 749px) {
  .brick__block__text {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }
}

.brick__block__text--column {
  flex-direction: column;
}

.brick__block__text.has-padding,
.brick__block__collection.has-padding {
  padding: var(--outer);
}

@media only screen and (max-width: 749px) {
  .brick__block__collection.has-padding .look__slider {
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
    padding-left: var(--outer);
  }
}

.brick__section--reversed .brick__block:last-child .brick__block__text:not(.has-padding),
.brick__block:first-child .brick__block__text:not(.has-padding) {
  padding-left: 0;
}

.wrapper--full.brick__section--reversed .brick__block:last-child .brick__block__text:not(.has-padding),
.wrapper--full .brick__block:first-child .brick__block__text:not(.has-padding) {
  padding-left: var(--outer);
}

@media only screen and (max-width: 749px) {
  .wrapper--full .brick__block__text:not(.has-padding) {
    padding-left: var(--outer);
    padding-right: var(--outer);
  }
}

.brick__block__text.has-padding,
.wrapper--full .brick__block__text.has-padding {
  padding-left: var(--outer);
}

@media only screen and (min-width: 750px) {
  .brick--border .brick__block:last-of-type:not(:only-child) {
    border-left: none;
  }

  .brick__block__video .image-height,
.brick__block__image .image-height {
    flex: 1;
    min-height: 100%;
  }

  .brick__block__video,
.brick__block__image,
.brick__block__video .image__hero__frame:not(.image-height),
.brick__block__image .image__hero__frame:not(.image-height) {
    height: 100%;
  }
}
@media only screen and (max-width: 749px) {
  .brick--border .brick__block:last-of-type:not(:only-child) {
    border-top: none;
  }

  .brick__block__video .image-height--mobile,
.brick__block__image .image-height--mobile {
    min-height: 100%;
  }

  .brick__block__video .image__hero__frame:not(.image-height--mobile),
.brick__block__image .image__hero__frame:not(.image-height--mobile) {
    height: 100%;
  }
}
.image__video__play {
  width: unset;
  min-width: calc(var(--BTN-FONT-SIZE) * var(--line-height-normal) + var(--btn-top) * 2 + 2px);
  max-width: unset;
  border-radius: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--btn-top);
}
.image__video__play .icon-play {
  --icon-size: 14px;
  margin: 0;
}

.brick__product__subheading {
  padding-bottom: var(--gutter);
  margin: 0;
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-size: calc(11px * var(--FONT-ADJUST-BODY));
}

.brick__product {
  display: block;
  width: 100%;
  max-width: 350px;
  margin: 0 auto;
}
.brick__product .product-item__info[href="#"] {
  pointer-events: none;
}
.brick__product .product-item__info .price {
  font-size: calc(0.9rem * var(--FONT-ADJUST-BODY));
  margin-top: 5px;
}
.brick__product .product-item__title {
  font-size: calc(1rem * var(--FONT-ADJUST-HEADING));
  margin: 0 0 5px;
}
.brick__product .product-item--overlay-text .product-information {
  padding-bottom: calc(var(--inner) / 2);
}
@media only screen and (max-width: 989px) {
  .brick__product .product-item--overlay-text .product-information {
    padding-left: 42px;
    padding-right: 42px;
  }
}

.brick__block--collection {
  display: flex;
  align-items: center;
  min-width: 0;
  padding-top: var(--outer);
  padding-bottom: var(--outer);
}
@media only screen and (min-width: 750px) {
  .brick__block--collection .look__slider {
    max-width: 500px;
  }
}
@media only screen and (max-width: 749px) {
  .brick__block--collection {
    min-height: 0;
  }
  .brick__block--collection .look__slider {
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
  }
  .brick__block--collection .look__title {
    text-align: center;
  }
}

.brick__block__collection {
  flex: 1;
  max-width: 100%;
}
.brick__block__collection .product-item {
  margin-top: 0;
}
@media only screen and (max-width: 749px) {
  .wrapper--full .brick__block__collection {
    margin-left: var(--outer);
    margin-right: var(--outer);
  }
}

body.grid-compact.has-line-design .brick__block__collection .look__slide {
  padding: 1px 1px 0 0;
}

@media only screen and (min-width: 750px) {
  .brick__block__collection .look__aside {
    padding-top: var(--outer);
    padding-bottom: var(--outer);
  }
}

.brick__block--compare {
  overflow: hidden;
}

.brick__block__compare {
  height: 100%;
}

.brick__block__compare .compare__image {
  padding: 0;
}

.brick__block--images {
  display: flex;
}

@media only screen and (max-width: 749px) {
  .brick__block--images.desktop {
    display: none;
  }
}

@media only screen and (max-width: 749px) {
  .brick__block--images[data-slider] {
    display: block;
  }
}

@media only screen and (max-width: 749px) {
  .brick__block--images[data-slider]:after {
    content: "flickity";
    display: none;
  }
}

.brick__block--image-slider {
  display: block;
}

.brick__block--image-slider .brick__block__image {
  width: 100%;
}

.brick__block--image-slider[data-slider]:after {
  content: "flickity";
  display: none;
}

.brick__block--images .brick__block__image {
  flex: 1;
  display: flex;
  min-height: 100%;
}
@media only screen and (min-width: 750px) {
  .brick__block--images .brick__block__image {
    transform: translateX(0) !important;
  }
}

@media only screen and (max-width: 749px) {
  .brick__block--images[data-slider] .brick__block__image {
    display: block;
    width: 100%;
  }
}

@media only screen and (min-width: 750px) {
  .brick__block--three-quarters {
    flex: 0 0 65%;
  }
}

.brick__block--text {
  display: flex;
}
.brick__block--text .hero__content--compact {
  flex-basis: 100%;
}
@media only screen and (max-width: 749px) {
  .brick__block--text .hero__content--compact {
    padding: var(--outer) var(--outer) calc(var(--outer) - var(--line));
    margin-bottom: 0;
  }
}

.has-line-design .brick__block--slider .grid-item {
  border: none;
}
@media only screen and (max-width: 749px) {
  .brick__block--slider .hero__content {
    flex-direction: row;
  }
}

@media only screen and (min-width: 750px) {
  .js .hero__content:not(.flickity-enabled) .hero__slide:not(:first-child) {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
  }
}

.brick__block--password {
  flex: 1 0 50%;
  margin: 0 auto;
  padding: 0 var(--outer);
}

.brick__block--password .brick__block__text {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  margin: 0 auto;
  padding: var(--outer) 0;
}

.brick__block__logo {
  margin: auto;
  max-width: 100%;
}

.brick__block__content {
  display: grid;
  grid-template-columns: 100%;
  gap: var(--gap);
  margin-bottom: var(--gap);
  width: 100%;
}

.brick__block__menu {
  margin: calc(var(--inner-offset) / 2);
}
.brick__block__menu .btn, .brick__block__menu #challenge .shopify-challenge__button, #challenge .brick__block__menu .shopify-challenge__button, .brick__block__menu #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .brick__block__menu .spr-button-primary, .brick__block__menu .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .brick__block__menu .shopify-payment-button__button--unbranded {
  margin: calc(var(--inner) / 2);
  vertical-align: middle;
}

.brick__block__newsletter .contact-form {
  display: inline-block;
  max-width: 260px;
  width: 100%;
}
.brick__block__newsletter .form__legal {
  margin-top: var(--line);
  text-align: center;
}
.brick__block__newsletter .field {
  margin-bottom: var(--inner);
}

.brick__block__actions {
  flex: 0 1 100%;
  margin-bottom: var(--inner);
}

.brick__block__actions + .brick__block__actions {
  padding-top: var(--inner);
}

.brick__block__title {
  margin: 0;
}

.brick__block__powered {
  margin-bottom: var(--inner);
}

.brick__block__social {
  overflow: hidden;
}

.brick__section--accordion .brick__block--images {
  align-self: flex-start;
}

/* Video */
.video__poster,
.video__poster .image__hero__frame {
  min-height: inherit;
}

.video__player {
  position: absolute;
  top: 50%;
  left: 50%;
  min-height: 100%;
  min-width: 100%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  overflow: hidden;
  transition: opacity 0.5s ease;
}

.video__player.is-loading {
  opacity: 0;
}

.video__player video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.map-section {
  color: var(--text);
  background-color: var(--bg);
}

.map__content {
  padding: 0;
}

.map-section__container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

@media only screen and (min-width: 990px) and (max-width: 1399px) {
  .map-section--load-error {
    width: 50%;
    margin: 0 auto;
  }
}
.map-section--load-error .errors {
  width: 100%;
}

.homepage-columns {
  display: flex;
  align-items: stretch;
}
@media only screen and (max-width: 749px) {
  .homepage-columns {
    flex-direction: column-reverse;
  }
}

.column__block {
  position: relative;
  overflow: hidden;
  float: none;
  min-height: inherit;
}

.column__block--content {
  display: flex;
  flex: 1;
  padding: var(--outer);
}

@media only screen and (min-width: 990px) {
  .column__block--map {
    flex: 0 0 66.66%;
  }
}
@media only screen and (max-width: 989px) {
  .column__block--map {
    flex: 0 0 50%;
  }
}

.column__block .flex--centered {
  padding: 15px;
}

/**
 * Home Slideshow
 */
.slideshow {
  position: relative;
  height: auto;
  overflow: hidden;
  transition: min-height 0.5s linear;
}
.slideshow .hero__content__wrapper {
  pointer-events: none;
}
.slideshow .hero__content__wrapper a {
  pointer-events: auto;
}
.slideshow .flickity-viewport {
  min-height: inherit;
}
.slideshow .flickity-enabled {
  min-height: inherit;
  height: 100%;
}
.slideshow .flickity-enabled.is-loading .flickity-viewport {
  transition: none;
}
.slideshow .flickity-prev-next-button.previous {
  left: calc(var(--btn-size) / 2);
}
.slideshow .flickity-prev-next-button.next {
  right: calc(var(--btn-size) / 2);
}
.slideshow .slideshow__slide {
  width: 100%;
  color: var(--text);
}
.slideshow .slideshow__slide--onboarding {
  display: flex;
  justify-content: center;
  align-items: center;
}
.slideshow .slideshow__slide--onboarding .image-overlay {
  z-index: -1;
  opacity: 1;
}
.slideshow .flickity-page-dots {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  margin: 0;
  padding: 0 10px 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  list-style: none;
}
@media only screen and (max-width: 989px) {
  .slideshow .flickity-page-dots {
    padding-bottom: 10px;
  }
}
.slideshow .hero__content {
  margin: var(--outer);
}
.slideshow .hero__content--transparent {
  padding: var(--outer) var(--outer) calc(var(--outer) - var(--line));
  margin: 0;
}

/* Zoom out animation */
.slideshow__slider--zoom-out .image__fill > img {
  will-change: opacity, transform;
  transform: scale(1.2);
  transition: transform 2s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.no-js .slideshow__slider--zoom-out .image__fill > img,
.slideshow__slider--zoom-out .is-selected .image__fill > img {
  opacity: 1;
  transform: scale(1);
}

/* Wipe animation */
.slideshow__slider--wipe .slideshow__slide {
  opacity: 1 !important;
}

.slideshow__slider--wipe.is-loading .slideshow__slide,
.slideshow__slider--wipe .slideshow__slide.is-selected,
.no-js .slideshow__slider--wipe .slideshow__slide {
  transition: none;
}

.no-js .slideshow__slider--wipe .hero__image,
.slideshow__slider--wipe .is-selected .hero__image {
  animation: clipPathFromRight 0.5s ease-out;
  animation-fill-mode: both;
}

@keyframes clipPathFromRight {
  0% {
    -webkit-clip-path: polygon(100% 0, 100% 0%, 100% 100%, 100% 100%);
            clip-path: polygon(100% 0, 100% 0%, 100% 100%, 100% 100%);
    transform: translateX(2%);
  }
  100% {
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    transform: translateX(0);
  }
}
/* Slide styles */
.slideshow__slide > a {
  min-height: 100%;
  height: 100%;
  color: inherit;
}

/*
  Prevent CLS on page load
  Images are stacked until flickity is initialized which causes CLS
  Position absolute makes them stay unchanged (if only JS is enabled)
*/
.js .slideshow__slider:not(.flickity-enabled) .slideshow__slide:not(:first-child) {
  position: absolute;
  top: 0;
  left: 0;
  visibility: hidden;
}

/**
 * Social sharing
 */
.share-holder {
  position: relative;
  display: block;
  z-index: 2;
}

.sharing-button {
  display: inline-flex;
  padding: 10px 0;
  cursor: pointer;
  text-align: left;
}
@media (hover: hover) {
  .sharing-button:hover .sharing-button__text span {
    background-size: 100% 1px;
  }
}

.sharing-button .icon {
  flex-shrink: 0;
}

.sharing-button__text {
  text-transform: var(--BTN-UPPERCASE);
  font-family: var(--BTN-FONT-STACK);
  font-size: var(--BTN-FONT-SIZE);
  font-style: var(--BTN-FONT-STYLE);
  font-weight: var(--BTN-FONT-WEIGHT);
  letter-spacing: var(--BTN-LETTER-SPACING);
  align-self: center;
  position: relative;
  margin-left: 6px;
  line-height: 1.4;
}
.sharing-button__text span {
  padding: 0 0 5px;
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 0% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
}
@media (hover: hover) {
  .sharing-button__text span:hover {
    background-size: 100% 1px;
  }
}
@media (hover: hover) {
  .sharing-button__text .icon-arrow-right {
    transition: transform 0.5s ease;
    transform: translateZ(0);
  }
  .sharing-button__text:hover .icon-arrow-right {
    transform: translate3d(5px, 0, 0);
  }
}

.share-button__message {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 5;
  margin-top: 2px;
  white-space: nowrap;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.share-button__message.is-visible {
  visibility: visible;
  animation: showMessage 3s ease;
  animation-fill-mode: both;
}

.share-button__message::after {
  content: "";
  position: absolute;
  z-index: 2;
  top: -1px;
  left: 22px;
  width: 12px;
  height: 12px;
  background: var(--bg);
  border: 1px solid var(--border);
  -webkit-clip-path: polygon(0% 0%, 100% 100%, 0 100%);
          clip-path: polygon(0% 0%, 100% 100%, 0 100%);
  transform: rotate(135deg) translateX(-50%);
}

.share-button__message--right {
  right: 0;
  left: auto;
}

.share-button__message--right:after {
  right: 22px;
  left: auto;
}

.share-button__message-text {
  position: relative;
  display: block;
  border: 1px solid var(--border);
  padding: 3px 10px;
  color: var(--text-dark);
  background-color: var(--bg);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  line-height: normal;
  text-align: center;
  white-space: nowrap;
  text-overflow: ellipsis;
}

@keyframes showMessage {
  0% {
    opacity: 0;
    transform: translateY(-4px);
  }
  15% {
    opacity: 1;
    transform: translateZ(0);
  }
  90% {
    opacity: 1;
    transform: translateZ(0);
  }
  100% {
    opacity: 0;
    transform: translateY(-4px);
  }
}
.socials {
  --gap: 8px;
  --gap-offset: calc(var(--gap) * -1);
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin: var(--gap-offset);
  list-style: none;
}
.socials li {
  margin: var(--gap);
}
.socials a {
  color: var(--text);
}
.socials:empty {
  display: none;
}

.socials--newsletter {
  margin-top: calc(var(--inner) - var(--gap));
}

.text-center .socials {
  justify-content: center;
}

.social-link {
  height: var(--icon-size);
  width: var(--icon-size);
  color: var(--link);
}

.social-link:hover {
  color: var(--link-hover);
}

/**
 * Logo list
 */
.logos {
  padding-left: 0;
  padding-right: 0;
  overflow: hidden;
  background-color: var(--bg);
  color: var(--text);
}

.logos .container {
  background-color: initial;
}

.logos__wrapper {
  display: flex;
  flex-direction: column;
  position: relative;
  text-align: center;
}
.logos__wrapper .logos__slider {
  width: 100%;
}
.logos__wrapper .logos__slider:after {
  content: "flickity";
  display: none;
}
@media only screen and (max-width: 749px) {
  .logos__wrapper .logos__slider:after {
    content: "";
  }
}

.logos__title {
  margin-bottom: 30px;
}
.logos__title:first-child {
  margin-top: 0;
}

.logos__logo {
  opacity: var(--logo-opacity);
  width: 200px;
  padding: 0 10px;
  transition: opacity 0.3s ease;
}
@media only screen and (max-width: 749px) {
  .logos__logo {
    width: auto;
    padding: 0 var(--gutter);
  }
}

.logos-press .logos__logo {
  cursor: pointer;
}

.logos__img {
  display: block;
  margin: 0 auto;
}
.logos__img.svg-placeholder {
  background-color: transparent;
}

.logos__slider__outer {
  position: relative;
  width: 100%;
  order: 1;
  height: 100%;
  margin: auto;
}
@media only screen and (max-width: 749px) {
  .logos__slider__outer {
    overflow: hidden;
    max-width: none;
    width: auto;
    margin-left: var(--gutter-offset);
    margin-right: var(--gutter-offset);
  }
}

.logos__slider:not(.flickity-enabled) {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
}

.logos__slider .flickity-slider {
  display: flex;
  justify-content: center;
  align-items: center;
}

.logos__slide {
  flex: 0 0 auto;
  width: auto;
  padding: 0;
}

@media only screen and (max-width: 749px) {
  .logos__slider:not(.flickity-enabled) {
    overflow-x: auto;
    display: block;
    padding: 0 var(--gutter);
    white-space: nowrap;
    font-size: 0;
    text-align: center;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .logos__slider:not(.flickity-enabled)::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }

  .logos__slide {
    display: inline-block;
    vertical-align: middle;
  }
}
.logos__slide a:hover .logos__logo,
.logos__slide.is-selected .logos__logo,
.logos__slide.is-active .logos__logo {
  opacity: 1;
}

.logos__slider-text {
  width: 100%;
  padding-bottom: 10px;
  margin-bottom: 20px;
  overflow: hidden;
}

.js .logos__slider-text:not(.flickity-enabled) {
  display: flex;
  overflow-x: auto;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.js .logos__slider-text:not(.flickity-enabled)::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}

.logos__slider-text .flickity-viewport {
  overflow: visible;
}

.logos__slider-text .logos__slide {
  width: 100%;
}

.logos__slide__text {
  text-align: center;
  overflow: hidden;
  opacity: 0;
  transform: translateY(-100%);
  transition: transform 0.25s ease-in, opacity 0.2s ease;
  -webkit-backface-visibility: hidden;
}

.is-selected .logos__slide__text {
  transform: none;
  opacity: 1;
  animation: fadeInUp 0.3s ease-out;
  animation-delay: 0.3s;
  animation-fill-mode: backwards;
}

.no-js .logos__slide__text {
  transform: none;
  opacity: 1;
}

@keyframes fadeInUp {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  100% {
    transform: translateZ(0);
    opacity: 1;
  }
}
/**
 * Sidebar Section
 */
.section-sidebar {
  color: var(--text);
  background-color: var(--bg);
}

.section-sidebar__body {
  display: flex;
  margin: 0 calc(var(--gutter)/2 * -1);
}
@media only screen and (max-width: 749px) {
  .section-sidebar__body {
    display: block;
    margin: 0;
  }
}

.section-sidebar__aside {
  flex: 0 0 33.33%;
  padding: 0 calc(var(--gutter)/2);
}
@media only screen and (max-width: 749px) {
  .section-sidebar__aside {
    display: none;
    padding: 0;
  }
}

.section-sidebar__widget {
  position: sticky;
  top: 0;
  padding-top: calc(1.5rem - 6px);
}
.has-header-sticky .section-sidebar__widget {
  top: var(--header-height);
}

.section-sidebar__content {
  flex: 0 1 100%;
  padding: 0 calc(var(--gutter)/2);
}
@media only screen and (max-width: 749px) {
  .section-sidebar__content {
    padding: 0;
  }
}

.section-sidebar__title {
  padding: 1.5rem 0;
  margin: 0;
  line-height: 1.2;
}

.accordion + .section-sidebar__title {
  margin-top: var(--inner);
}

@media only screen and (min-width: 990px) {
  .supporting-menu__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (max-width: 749px) {
  .supporting-menu__inner {
    display: grid;
    grid-template-columns: 100%;
    gap: var(--inner);
  }
}

.supporting-menu__item--copyright {
  flex: 1 1 auto;
}

.supporting-menu__item--localization,
.supporting-menu__item--payment {
  flex: 1 0 auto;
}

.supporting-menu__item:only-child {
  width: 100%;
  text-align: center;
}

.supporting-menu__copyright {
  --gap: 8px;
  --gap-offset: calc(var(--gap) * -1);
  list-style: none;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  margin: 0 var(--gap-offset);
}
@media only screen and (max-width: 749px) {
  .supporting-menu__copyright {
    text-align: left;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    min-width: 100%;
  }
}
.supporting-menu__copyright li {
  display: inline-block;
  padding: 10px var(--gap);
}

.supporting-menu__payment {
  --gap: 5px;
  --gap-offset: calc(var(--gap) * -1);
  display: flex;
  flex-wrap: wrap;
  margin: var(--gap-offset);
}
@media only screen and (min-width: 990px) {
  .supporting-menu__payment {
    justify-content: flex-end;
  }
}
.supporting-menu__payment li {
  display: inline-block;
  padding: var(--gap);
}
.supporting-menu__payment a {
  text-decoration: none;
}
.supporting-menu__payment .payment-icon {
  display: block;
  width: 36px;
}

/**
 * Related
 */
.related__wrapper {
  color: var(--text);
  background-color: var(--bg);
}

.related__products {
  text-align: center;
}
.related__products .tab-link,
.related__products .tab-content {
  padding: 0;
}
@media only screen and (min-width: 750px) {
  .related__products .grid--slider:after {
    content: "flickity";
    display: none;
  }
}
.related__products .grid--slider.flickity-resize .flickity-slider .product-item {
  height: 100%;
}

.pswp {
  z-index: 6000;
}

.pswp__bg {
  background: rgba(0, 0, 0, 0.4);
}

.pswp__img {
  background-color: var(--bg);
  filter: brightness(var(--filter-bg));
}

.pswp__zoom-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.pswp__custom-inner {
  max-width: 920px;
  width: 100%;
  padding: 0 10px;
  margin: 0 auto;
  font-size: 0;
  text-align: center;
}
.pswp__custom-inner:before {
  display: inline-block;
  width: 0;
  height: 100%;
  vertical-align: middle;
  content: "";
}

.pswp__custom-content {
  display: inline-block;
  width: 100%;
  vertical-align: middle;
}

.pswp__custom-native video {
  width: 100%;
  height: auto;
}

.pswp__custom-iframe-outer {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
}

.pswp__custom-iframe-outer > video,
.pswp__custom-iframe-outer iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.pswp__custom-close .icon {
  --icon-size: 16px;
  position: absolute;
  margin-left: -7px;
  pointer-events: none;
  transform: translateY(-50%);
  transition: transform 0.3s;
}

.pswp__custom-close {
  position: absolute;
  top: 34px;
  right: 40px;
  z-index: 4;
  width: 50px;
  height: 50px;
  border: 1px solid var(--border);
  background-color: var(--COLOR-BG);
  color: var(--primary);
  text-align: center;
  transition: all 0.4s;
}
@media only screen and (max-width: 749px) {
  .pswp__custom-close {
    top: 50px;
    right: 10px;
  }
}
.pswp__custom-close:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.pswp__custom-close:hover {
  border-color: var(--COLOR-BORDER-DARK);
  transform: scale(1.1);
}
.pswp__custom-close:hover .icon {
  transform: translateY(-50%) rotate(90deg);
}

.pswp__counter {
  display: none;
}

.pswp__loader {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  transition: opacity 0.4s, visibility 0.4s;
}

.pswp__loader-line {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 40%;
  margin: auto;
  transform: translate(-50%, -50%);
}

.pswp--not-close-btn .pswp__custom-close {
  display: none;
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] {
  position: fixed;
  display: block;
  opacity: 1 !important;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__img--placeholder {
  display: none;
}

.pswp-zoom-gallery .pswp__loader {
  opacity: 0;
  visibility: hidden;
  transition-delay: 0.8s;
}

.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__loader,
.pswp-zoom-gallery .pswp__loader {
  z-index: 5;
  display: block;
  background: var(--COLOR-BG);
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__title,
.pswp-zoom-gallery .pswp__title {
  cursor: pointer;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__bg,
.pswp-zoom-gallery .pswp__bg {
  background: var(--COLOR-BG);
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__container,
.pswp-zoom-gallery .pswp__container {
  transition: transform 0.7s cubic-bezier(0.645, 0.045, 0.355, 1);
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__scroll-wrap,
.pswp-zoom-gallery .pswp__scroll-wrap {
  bottom: 146px;
  height: auto;
  overflow: visible;
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__scroll-wrap,
.pswp-zoom-gallery .pswp__scroll-wrap {
    bottom: 0;
    overflow: hidden;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__zoom-wrap,
.pswp-zoom-gallery .pswp__zoom-wrap {
  display: block;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__item,
.pswp-zoom-gallery .pswp__item {
  overflow: visible;
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__item,
.pswp-zoom-gallery .pswp__item {
    overflow: hidden;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left,
.pswp-zoom-gallery .pswp__button--arrow--right,
.pswp-zoom-gallery .pswp__button--arrow--left {
  position: absolute;
  top: 50%;
  left: 40px;
  z-index: 3;
  width: 50px;
  height: 50px;
  border: 1px solid var(--border);
  margin-top: -25px;
  background: var(--COLOR-BG);
  color: currentColor;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left,
.pswp-zoom-gallery .pswp__button--arrow--right,
.pswp-zoom-gallery .pswp__button--arrow--left {
    left: 10px;
    transform: translateY(0);
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right:hover,
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left:hover,
.pswp-zoom-gallery .pswp__button--arrow--right:hover,
.pswp-zoom-gallery .pswp__button--arrow--left:hover {
  transform: scale(1.1);
  --primary: var(--COLOR-PRIMARY-HOVER);
  border-color: var(--COLOR-BORDER-DARK);
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right .icon,
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left .icon,
.pswp-zoom-gallery .pswp__button--arrow--right .icon,
.pswp-zoom-gallery .pswp__button--arrow--left .icon {
  stroke: var(--primary);
  fill: none;
  pointer-events: none;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,
.pswp-zoom-gallery .pswp__button--arrow--right {
  left: auto;
  right: 40px;
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,
.pswp-zoom-gallery .pswp__button--arrow--right {
    right: 10px;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs,
.pswp-zoom-gallery .pswp__thumbs {
  position: absolute;
  bottom: -146px;
  left: 0;
  z-index: 2;
  overflow-x: auto;
  width: 100%;
  padding: 10px 10px 16px;
  font-size: 0;
  text-align: center;
  white-space: nowrap;
  -webkit-overflow-scrolling: touch;
  will-change: transform;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs::-webkit-scrollbar,
.pswp-zoom-gallery .pswp__thumbs::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs,
.pswp-zoom-gallery .pswp__thumbs {
    bottom: 0;
    padding: 10px 0;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb,
.pswp-zoom-gallery .pswp__thumb {
  position: relative;
  display: inline-block;
  width: 80px;
  height: 80px;
  border-radius: 50%;
  overflow: hidden;
  margin: 10px;
  padding-top: 0;
  color: inherit;
  vertical-align: top;
  cursor: pointer;
  filter: brightness(var(--filter-bg));
  transition: transform 0.2s ease-in-out;
  will-change: transform;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb:hover,
.pswp-zoom-gallery .pswp__thumb:hover {
  transform: scale(1.1);
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb:before,
.pswp-zoom-gallery .pswp__thumb:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 1;
  border: 1px solid transparent;
  border-radius: 50%;
  pointer-events: none;
  transition: border-color 0.2s ease-in-out;
  content: "";
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb,
.pswp-zoom-gallery .pswp__thumb {
    width: 42px;
    height: 42px;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb.is-current:before,
.pswp-zoom-gallery .pswp__thumb.is-current:before {
  border-color: var(--COLOR-BG);
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumb.is-current,
.pswp-zoom-gallery .pswp__thumb.is-current {
    transform: scale(1.4);
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption,
.pswp-zoom-gallery .pswp__caption {
  position: absolute;
  z-index: 1;
  top: 30px;
  left: 30px;
  max-width: 50vw;
  padding: 10px 20px 10px 50px;
  background: var(--COLOR-BG);
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption,
.pswp-zoom-gallery .pswp__caption {
    top: 50px;
    left: 10px;
    max-width: 250px;
    max-width: calc(100% - 80px);
    padding: 7px 14px 7px 7px;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption__center *:not(.product__title):not(.product__title > a),
.pswp-zoom-gallery .pswp__caption .pswp__caption__center *:not(.product__title):not(.product__title > a) {
  display: none;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .product__title > a,
.pswp-zoom-gallery .pswp__caption .product__title > a {
  pointer-events: none;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close,
.pswp-zoom-gallery .pswp__caption .pswp__caption-close {
  position: absolute;
  top: 5px;
  left: 0;
  width: 40px;
  height: 40px;
  border-radius: 2px;
  color: currentColor;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close:hover,
.pswp-zoom-gallery .pswp__caption .pswp__caption-close:hover {
  color: var(--COLOR-PRIMARY-HOVER);
}
body.is-focused .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close:focus,
body.is-focused .pswp-zoom-gallery .pswp__caption .pswp__caption-close:focus {
  outline: initial !important;
  box-shadow: 0px 0px 0px 2px var(--COLOR-PRIMARY);
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close .icon,
.pswp-zoom-gallery .pswp__caption .pswp__caption-close .icon {
  --icon-size: 28px;
  position: absolute;
  top: 7px;
  left: 14px;
  stroke: currentColor;
  fill: none;
  pointer-events: none;
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .pswp__caption-close,
.pswp-zoom-gallery .pswp__caption .pswp__caption-close {
    display: none;
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .product__link-holder,
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption .product__badge,
.pswp-zoom-gallery .pswp__caption .product__link-holder,
.pswp-zoom-gallery .pswp__caption .product__badge {
  display: none;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption h1,
.pswp-zoom-gallery .pswp__caption h1 {
  margin: 0 0 5px;
  font-size: calc(1.375rem * var(--FONT-ADJUST-HEADING));
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption h1,
.pswp-zoom-gallery .pswp__caption h1 {
    font-size: calc(1rem * var(--FONT-ADJUST-HEADING));
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption h1:last-child,
.pswp-zoom-gallery .pswp__caption h1:last-child {
  margin-bottom: 0;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption div,
.pswp-zoom-gallery .pswp__caption div {
  margin-top: 0;
  font-size: calc(1rem * var(--FONT-ADJUST-BODY));
}
@media only screen and (max-width: 749px) {
  .pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption div,
.pswp-zoom-gallery .pswp__caption div {
    font-size: calc(0.875rem * var(--FONT-ADJUST-BODY));
  }
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption div:last-child,
.pswp-zoom-gallery .pswp__caption div:last-child {
  margin-bottom: 0;
}
.pswp[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__caption--fake,
.pswp-zoom-gallery .pswp__caption--fake {
  display: none;
}

.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__scroll-wrap,
.pswp-zoom-gallery--single .pswp__scroll-wrap {
  bottom: 0;
}
.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--right,
.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__button--arrow--left,
.pswp-zoom-gallery--single[data-pswp-option-classes*=pswp-zoom-gallery] .pswp__thumbs,
.pswp-zoom-gallery--single .pswp__button--arrow--right,
.pswp-zoom-gallery--single .pswp__button--arrow--left,
.pswp-zoom-gallery--single .pswp__thumbs {
  display: none;
}

.popup-cookies {
  --bg: var(--COLOR-BG);
  --text: var(--COLOR-TEXT);
  position: fixed;
  display: none;
  padding: var(--gutter);
  background-color: var(--bg);
  color: var(--text);
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
  line-height: var(--line-height-normal);
  text-align: center;
}
.popup-cookies:not([data-promo-text]) {
  z-index: 4005;
  transition: z-index 0.3s, opacity 0.3s, visibility 0.3s;
}
[data-scroll-locked] .popup-cookies:not([data-promo-text]) {
  z-index: -1;
  visibility: hidden;
  opacity: 0 !important;
  pointer-events: none;
}
.popup-cookies .popup__title {
  font-family: var(--FONT-STACK-HEADING);
  font-style: var(--FONT-STYLE-HEADING);
  font-weight: var(--FONT-WEIGHT-HEADING);
  margin-bottom: 10px;
  font-size: calc(var(--font-4) * var(--FONT-ADJUST-HEADING));
}
.popup-cookies .popup__title--cookies {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-HEADING));
}
.popup-cookies .popup__tracking p:nth-child(2) {
  margin-bottom: 15px;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}
.popup-cookies .close {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 20px;
  height: 20px;
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  padding: 0;
  color: inherit;
  transition: transform 0.3s;
}
.popup-cookies .close:hover {
  transform: rotate(90deg);
}
@media only screen and (max-width: 479px) {
  .popup-cookies .close {
    top: 5px;
    right: 5px;
  }
}
.popup-cookies .close svg {
  width: 100%;
  height: 100%;
}
@media only screen and (min-width: 480px) {
  .popup-cookies--left {
    left: 0;
    bottom: 30px;
    max-width: 350px;
  }
  .popup-cookies--right {
    right: 0;
    bottom: 30px;
    max-width: 350px;
  }
  .popup-cookies--bottom {
    left: 0;
    right: 0;
    bottom: 0;
    padding: 10px var(--outer);
  }
  .popup-cookies--bottom .popup__tracking__text,
.popup-cookies--bottom .popup__tracking {
    display: flex;
    align-items: center;
  }
  .popup-cookies--bottom .popup__tracking__text {
    flex-wrap: wrap;
  }
  .popup-cookies--bottom .popup__tracking p,
.popup-cookies--bottom .popup__tracking p:nth-child(2),
.popup-cookies--bottom .popup__tracking > a:not(.btn),
.popup-cookies--bottom .popup__tracking > button:not(.close) {
    margin: 0 16px 0 0;
    font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  }
  .popup-cookies--bottom .popup__tracking > button:not(.close) {
    flex: 0 0 auto;
    padding-right: 0;
    margin: 0 0 0 auto;
  }
  .popup-cookies--center {
    top: 50%;
    left: 50%;
    max-width: 350px;
    transform: translate(-50%, -50%);
  }
}
@media only screen and (max-width: 479px) {
  .popup-cookies {
    max-width: none;
    left: 15px;
    right: 15px;
    bottom: 60px;
  }
  .popup-cookies:first-child:last-child {
    bottom: 15px;
  }
}

.popup-large-newsletter .newsletter-form {
  margin: 0 auto;
}

@media only screen and (max-width: 749px) {
  [data-popup-delay].desktop {
    display: none !important;
  }
}

@media only screen and (min-width: 750px) {
  [data-popup-delay].mobile {
    display: none !important;
  }
}

[data-promo-text][data-popup-delay=always],
[data-popup-delay=always]:not([data-large-popup]) > * {
  z-index: 4004;
}

[data-promo-text][data-popup-delay=delay],
[data-popup-delay^=delayed]:not([data-large-popup]) > * {
  z-index: 4003;
}

[data-large-popup] > * {
  z-index: 4002;
}

[data-popup-delay]:not([data-popup-delay=always]):not([data-popup-delay^=delayed]):not([data-large-popup]):not([data-tracking-consent]) {
  z-index: 4001;
}

.has-block-selected > div:not(.selected) {
  visibility: hidden;
}

.select-popout {
  position: relative;
  text-align: left;
  align-self: flex-start;
}
.select-popout > .quantity-selector {
  display: none;
}
.select-popout > .quantity-selector input {
  border-color: var(--primary);
}
.select-popout.is-active > *:not(.quantity-selector) {
  display: none;
}
.select-popout.is-active > .quantity-selector {
  display: block;
}

.no-js .select-popout > .quantity-selector {
  display: block;
}

.select-popout__toggle {
  position: relative;
  overflow: hidden;
  display: block;
  width: 100%;
  padding: var(--form-top) calc(var(--form-left) * 2) var(--form-top) var(--form-left);
  border: 1px solid var(--primary);
  border-radius: var(--RADIUS-SELECT);
  line-height: var(--line-height-normal);
  text-align: inherit;
  white-space: nowrap;
  text-overflow: ellipsis;
  transition: border-radius 0.15s ease;
}

.sold-out .select-popout__toggle::after {
  content: attr(data-select-soldout);
}

.unavailable .select-popout__toggle::after {
  content: attr(data-select-unavailable);
}

.select-popout__toggle .icon-nav-arrow-down {
  --icon-size: 18px;
  position: absolute;
  top: 0;
  right: 10px;
  height: 100%;
  transition: transform 0.3s ease;
}

.select-popout__toggle[aria-expanded=true] {
  border-radius: var(--RADIUS-SELECT) var(--RADIUS-SELECT) 0 0;
}

.select-popout__toggle[aria-expanded=true] .icon-nav-arrow-down {
  transform: rotateX(180deg);
}

.select-popout--top .select-popout__toggle[aria-expanded=true] {
  border-radius: 0 0 var(--RADIUS-SELECT) var(--RADIUS-SELECT);
}

.select-popout__list {
  position: absolute;
  top: 100%;
  left: 0;
  z-index: 1000;
  overflow-x: hidden;
  overflow-y: auto;
  max-height: 300px;
  min-height: calc(var(--form-top) * 2 + var(--font-2) * var(--FONT-ADJUST-BODY) * 1.2);
  width: 100%;
  border: 1px solid var(--primary);
  border-top-width: 0px;
  margin: -1px 0 0;
  background: var(--bg);
  list-style: none outside none;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.2s ease, visibility 0.2s;
}

.select-popout__list.popout-list--visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.4s, visibility 0.4s;
}

.select-popout__item {
  display: block;
  margin-bottom: 0;
}

.select-popout__item.is-active .select-popout__option {
  background: var(--COLOR-BG-SECONDARY);
}

.select-popout__option {
  display: block;
  padding: var(--form-top) var(--form-left);
  color: inherit;
  transition: background 0.3s;
}
.select-popout__option:hover {
  color: var(--text-color);
  background: var(--COLOR-BG-SECONDARY);
}
.select-popout__option.sold-out::after {
  content: attr(data-select-soldout);
}
.select-popout__option.unavailable::after {
  content: attr(data-select-unavailable);
}

.select-popout--top .select-popout__list {
  border-width: 1px 1px 0;
  bottom: 100%;
  top: auto;
  margin: 0 0 -1px;
}

.no-js .select-popout__toggle,
.no-js .select-popout__list {
  display: none;
}

predictive-search {
  display: block;
  width: 100%;
}
predictive-search[open] .predictive-search, predictive-search[loading] .predictive-search {
  display: block;
}
predictive-search:not([loading]) .predictive-search__loading-state {
  display: none;
}
predictive-search[loading] .predictive-search__actions,
predictive-search[loading] .predictive-search__layout ~ .predictive-search__loading-state {
  display: none;
}
predictive-search[loading] .predictive-search__layout ~ .predictive-search__actions {
  display: block;
}
predictive-search[loading] .predictive-search__loader {
  opacity: 1;
  visibility: visible;
}

.predictive-search {
  position: absolute;
  z-index: 4000;
  top: 100%;
  right: 0;
  left: 0;
  width: 100%;
  max-height: calc(var(--full-screen) - var(--header-height) - var(--announcement-height));
  opacity: 0;
  visibility: hidden;
  transition: max-height 0.5s ease, opacity 0.5s ease, visibility 0.5s;
  background: var(--bg);
  overflow-x: hidden;
  overflow-y: scroll;
  -webkit-overflow-scrolling: smooth;
  scrollbar-width: none;
  -ms-overflow-style: none;
  /* for Internet Explorer, Edge */
}
.predictive-search::-webkit-scrollbar {
  display: none;
  /* for Chrome, Safari, and Opera */
}
.js__header__stuck .predictive-search {
  --announcement-height: 0px;
}

.predictive-search--empty {
  z-index: 3999;
}

header-search-form ~ .predictive-search--empty,
predictive-search:not([open]):not([results]) ~ .predictive-search--empty {
  opacity: 1;
  visibility: visible;
  max-height: calc(var(--full-screen) - var(--header-height) - var(--announcement-height));
}

predictive-search[open=true] .predictive-search {
  opacity: 1;
  visibility: visible;
}

.predictive-search__outer {
  position: relative;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: padding 0.3s ease, opacity 0.3s ease, visibility 0.3s;
}

.predictive-search .product-item {
  background-color: var(--bg);
}

.predictive-search__outer--empty,
.is-searched .predictive-search__outer {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  padding: var(--outer) 0;
}

@media only screen and (min-width: 990px) {
  .predictive-search__layout {
    --columns: repeat(3, minmax(0, 1fr));
  }
}
@media only screen and (min-width: 750px) {
  .predictive-search__layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 3fr);
    gap: var(--gutter);
  }
}

.predictive-search__layout--no-products,
.predictive-search__layout--no-suggestions {
  grid-template-columns: 100%;
}

@media only screen and (max-width: 749px) {
  .predictive-search__column {
    margin-bottom: var(--inner);
  }
}

.predictive-search__actions {
  margin: var(--inner) 0;
}

@media only screen and (min-width: 750px) {
  .predictive-search__group {
    padding-bottom: var(--inner);
  }
}

.predictive-search__heading {
  font-family: var(--FONT-STACK-HEADING);
  font-style: var(--FONT-STYLE-HEADING);
  font-weight: var(--FONT-WEIGHT-HEADING);
  margin-bottom: var(--inner);
  padding-bottom: 10px;
  border-bottom: 1px solid var(--border);
}

.predictive-search__item {
  margin-bottom: var(--inner);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-NAV));
}

.predictive-search__link {
  color: currentcolor;
  transition: color 0.3s ease;
  padding: 5px 0;
}

.predictive-search__products__list {
  padding: 0;
}

@media only screen and (max-width: 749px) {
  .predictive-search__products__list .product-link {
    display: grid;
    grid-template-columns: 50px auto;
    gap: 16px;
  }

  .predictive-search__products__list .product-item__info {
    text-align: left;
    padding-left: 0;
  }

  body.grid-compact .predictive-search__products__list {
    margin-bottom: -16px;
  }

  body.grid-compact .predictive-search__grid-item {
    margin-bottom: 16px;
  }
}
.predictive-search__empty p {
  margin: 0;
}

.predictive-search__loading-state {
  margin: var(--inner) 0;
  min-height: var(--btn-height);
  display: flex;
  align-items: center;
}

.predictive-search__loader {
  margin: auto;
  opacity: 0;
  transition: opacity 0.3s ease, visibility 0.3s;
}

.predictive-search__item[aria-selected=true] > a,
.predictive-search__grid-item[aria-selected=true] > a,
.predictive-search__actions > .btn[aria-selected=true],
#challenge .predictive-search__actions > [aria-selected=true].shopify-challenge__button,
#shopify-product-reviews .predictive-search__actions > [aria-selected=true].spr-button-primary,
.shopify-payment-button .predictive-search__actions > [aria-selected=true].shopify-payment-button__button--unbranded {
  outline: 5px auto var(--COLOR-PRIMARY);
}

/*====== Product Upsell ======*/
.product-upsell__holder {
  text-align: left;
}

.product-upsell__holder__title {
  margin-top: 0;
}

.product-upsell {
  position: relative;
  display: flex;
  flex-flow: row wrap;
  justify-content: flex-start;
  align-items: stretch;
  background-color: var(--bg-accent);
}

.product-upsell__image {
  width: 120px;
}

.product-upsell__image__link {
  display: block;
  height: 100%;
}

.product-upsell__image__thumb {
  overflow: hidden;
  position: relative;
  padding-top: var(--PRODUCT-GRID-ASPECT-RATIO);
  min-height: 100%;
  filter: brightness(var(--filter-bg));
}

.product-upsell__image__thumb .image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
}

.product-upsell__content {
  --inner: 16px;
  width: calc(100% - 120px);
  padding: var(--inner) 60px var(--inner) var(--inner);
}
@media only screen and (min-width: 990px) {
  .product-upsell__content {
    --inner: 24px;
  }
}

.product-upsell__title {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  margin-top: 0;
}

.product-upsell__variant-title {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(var(--font-1) * var(--FONT-ADJUST-BODY));
  color: var(--text-light);
}

.product-upsell__variant-title span {
  display: inline-block;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  margin: 0 4px;
  background-color: currentColor;
  vertical-align: middle;
  opacity: 0.8;
}

.product-upsell__price {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}

.product-upsell__price .unit {
  font-family: var(--FONT-STACK-BODY);
  font-weight: var(--FONT-WEIGHT-BODY);
  font-style: var(--FONT-STYLE-BODY);
  display: block;
  margin-top: 5px;
  color: var(--text-light);
}

.btn__outer {
  position: absolute;
  right: 16px;
  bottom: 16px;
  display: inline-grid;
}
@media only screen and (max-width: 479px) {
  .btn__outer {
    position: relative;
    right: auto;
    bottom: auto;
    margin: 10px 0 0;
  }
}

.product-upsell__btn {
  --btn-size: 32px;
  --btn-text: var(--primary);
  --icon-size: 20px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: end;
  min-width: var(--btn-size);
  min-height: var(--btn-size);
  padding: 0;
  width: var(--btn-size);
  background: var(--bg);
  border: none;
  border-radius: var(--radius);
  font-size: calc(0.8rem * var(--FONT-ADJUST-BODY));
  line-height: 32px;
  color: var(--primary);
  transition: width 0.3s ease;
}
@media only screen and (max-width: 479px) {
  .product-upsell__btn {
    justify-self: flex-start;
  }
}
.product-upsell__btn .btn__text {
  display: block;
  opacity: 0;
  overflow: hidden;
  white-space: nowrap;
  transition: opacity 0.3s ease, padding 0.3s ease, visibility 0.3s;
}
.product-upsell__btn .btn__plus {
  position: relative;
  transition: opacity 0.3s ease;
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: center;
  flex: 0 0 var(--icon-size);
  margin: 0 4px;
}
.product-upsell__btn .btn__loading {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.product-upsell__btn .icon-plus {
  position: absolute;
  top: 50%;
  left: 50%;
  display: block;
  fill: currentColor;
  transform: translate(-50%, -50%);
}
.product-upsell__btn.is-loading .btn__inner, .product-upsell__btn.is-added .btn__inner {
  width: var(--btn-size);
}
.product-upsell__btn.is-loading .btn__plus,
.product-upsell__btn.is-loading .btn__text, .product-upsell__btn.is-added .btn__plus,
.product-upsell__btn.is-added .btn__text {
  opacity: 0;
}
.product-upsell__btn.is-hidden {
  display: none;
}
.product-upsell__btn.is-hidden + .product-upsell__out-of-stock {
  display: block;
}

@media (hover: hover) {
  .btn__outer:hover .product-upsell__btn {
    width: 100%;
  }
  .btn__outer:hover .btn__text {
    padding-right: 10px;
    opacity: 1;
  }
  .btn__outer:hover .is-added,
.btn__outer:hover .is-loading {
    width: var(--btn-size);
  }
  .btn__outer:hover .is-added .btn__text,
.btn__outer:hover .is-loading .btn__text {
    opacity: 0;
    visibility: hidden;
  }
}
.product-upsell__out-of-stock {
  display: none;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  color: var(--sale-text-secondary);
}

.product-upsell__errors {
  overflow: hidden;
  position: relative;
  max-height: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, max-height 0.5s cubic-bezier(0, 0.75, 0.25, 1), visibility 0.5s;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
}
.product-upsell__errors.is-visible {
  visibility: visible;
  max-height: 300px;
  opacity: 1;
  transition-timing-function: cubic-bezier(0.5, 0.25, 0.75, 1);
}
.product-upsell__errors .errors {
  position: relative;
  padding: 10px 30px 10px 10px;
  margin: 10px 0;
  border: 1px solid var(--COLOR-ERROR-BORDER);
  border-radius: var(--RADIUS);
  background-color: var(--COLOR-ERROR-BG);
  color: var(--COLOR-ERROR);
}

quick-add-product + quick-add-product {
  display: none;
}

/*====== Product Quick view Drawer ======*/
.product-quick-add {
  --inner: 20px;
  --outer: 20px;
  --outer-offset: calc(var(--outer) * -1);
}

dialog[open=true] .product-quick-add__content {
  opacity: 1;
}
@media only screen and (min-width: 750px) {
  dialog[open=true] .product-quick-add__content {
    transform: translateX(-100%);
    animation: slideInLeft 0.5s ease;
  }
}
@media only screen and (max-width: 749px) {
  dialog[open=true] .product-quick-add__content {
    transform: translateY(0);
    animation: slideInUp 0.5s ease;
  }
}
dialog[closing] .product-quick-add__content {
  opacity: 0;
}
@media only screen and (min-width: 750px) {
  dialog[closing] .product-quick-add__content {
    transform: translateX(0);
  }
}
@media only screen and (max-width: 749px) {
  dialog[closing] .product-quick-add__content {
    transform: translateY(100%);
  }
}
dialog.is-loading .loader {
  opacity: 1;
  visibility: visible;
}

.product-quick-add__inner {
  display: grid;
  grid-template-rows: 1fr 1fr;
  height: 100%;
}
@media only screen and (max-width: 749px) {
  .product-quick-add__inner {
    display: block;
    height: auto;
  }
}

.product-quick-add__content {
  position: absolute;
  bottom: 0;
  z-index: 2;
  overflow-x: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  width: 100%;
  max-width: var(--DRAWER-WIDTH);
  max-height: 100%;
  background-color: var(--bg);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  opacity: 0;
  transition: transform 0.5s ease, opacity 0.5s ease;
  will-change: transform, opacity;
}
@media only screen and (min-width: 750px) {
  .product-quick-add__content {
    top: 0;
    left: 100%;
  }
}
@media only screen and (max-width: 749px) {
  .product-quick-add__content {
    top: auto;
    left: 0;
    max-width: 100%;
    max-height: 95%;
    border-radius: 10px 10px 0 0;
    transform: translate3d(0, 100%, 0);
  }
}

@media only screen and (max-width: 749px) {
  .product-quick-add__slides {
    display: none;
  }
}
.product-quick-add__slides .product__slide {
  overflow: hidden;
  width: 100%;
  height: 50vh;
}
.product-quick-add__slides .product__slide:only-child {
  width: 100%;
}
.product-quick-add__slides .product__photo {
  height: 100%;
}
.product-quick-add__slides .lazy-image {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.product-quick-add__slides .deferred-media {
  height: 100%;
  padding: 0 !important;
}

.product-quick-add__form {
  width: 100%;
  padding: var(--outer);
  margin: 0 auto;
  display: flex;
  justify-content: center;
  flex: 1 1 auto;
}
.product-quick-add__form .product__form__outer {
  flex-grow: 1;
}
.product-quick-add__form .product__title__wrapper {
  padding-right: 0;
}
.product-quick-add__form .product__form__holder {
  position: relative;
  z-index: 1;
}
.product-quick-add__form .product__title {
  margin-top: 0;
}
.product-quick-add__form .product__block--description {
  min-height: 64px;
}
.product-quick-add__form .product__submit__buttons {
  width: 100%;
  margin: var(--inner) 0 0;
}
.product-quick-add__form .product__submit__item {
  max-width: 100%;
  padding: 0;
}
.product-quick-add__form .product__block--buttons {
  position: sticky;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 3;
  margin: auto 0 var(--outer-offset);
  padding-bottom: var(--outer);
  background: var(--bg);
  box-shadow: 0 0 10px 10px var(--bg);
}
.product-quick-add__form .product__form__errors {
  padding-bottom: 0;
  margin: 15px 0 0 0;
}
.product-quick-add__form .product__form__errors:empty {
  margin-top: 0;
}
.product-quick-add__form .select__fieldset,
.product-quick-add__form .radio__fieldset {
  grid-template-columns: minmax(0, 5rem) minmax(0, 100%);
}
.product-quick-add__form .select-popout__list {
  max-height: 120px;
}
@media only screen and (min-width: 750px) {
  .product-quick-add__form .select-popout__list {
    top: auto;
    bottom: 100%;
    margin-bottom: -1px;
    border-top-width: 1px;
    border-bottom-width: 0;
  }
}
@media only screen and (min-width: 750px) {
  .product-quick-add__form .select-popout__toggle[aria-expanded=true] {
    border-radius: 0 0 var(--RADIUS-SELECT) var(--RADIUS-SELECT);
  }
}
@media only screen and (max-width: 749px) {
  .product-quick-add__form {
    --padding-vertical: 3px;
  }
  .product-quick-add__form .product__title__wrapper {
    padding-right: 40px;
    margin: 0;
  }
}

.product-quick-add__form__inner {
  display: flex;
  flex-direction: column;
  flex: 0 1 550px;
}
@media only screen and (max-width: 749px) {
  .product-quick-add__form__inner {
    max-width: none;
  }
}
.product-quick-add__form__inner .product-form {
  display: flex;
  flex-direction: column;
  height: 100%;
}
.product-quick-add__form__inner .product__block--buttons {
  margin-top: auto;
}

.product-quick-add__close-outer {
  position: sticky;
  top: 0;
  display: flex;
  justify-content: flex-end;
  z-index: 2;
}

.product-quick-add__close {
  position: absolute;
  top: 11px;
  right: 5px;
  transform: none;
  padding: 8px;
}
@media only screen and (min-width: 750px) {
  .product-quick-add__close {
    top: var(--outer);
    right: var(--outer);
    background: var(--COLOR-BG);
  }
}

.product-quick-add__description {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
}

/*====== Accordions ======*/
.accordion-section,
.accordion-group {
  color: var(--text);
  background-color: var(--bg);
}

.accordion-group__items {
  display: grid;
  align-items: start;
  column-gap: var(--gutter);
}
@media only screen and (min-width: 750px) {
  .accordion-group__items {
    grid-template-columns: repeat(var(--accordion-columns, 1), minmax(0, 1fr));
  }
}

.accordions-holder + .accordions-holder {
  margin-top: -1px;
}

.accordions-holder:empty {
  margin: 0 !important;
}
@media only screen and (max-width: 749px) {
  .accordions-holder .accordion__body {
    margin-left: var(--outer-offset);
    margin-right: var(--outer-offset);
  }
}

.accordion__heading {
  margin: 2.5rem 0;
  grid-column: 1/-1;
}
.accordion__heading:first-child {
  margin-top: 0;
}

.accordion {
  display: block;
  border-bottom: 1px solid var(--border);
  border-top: 1px solid var(--border);
  color: var(--text);
  background-color: var(--bg);
  margin-top: -1px;
}

.accordion__title {
  padding: 1.5rem 30px 1.5rem 0;
  margin: 0;
}

.accordion__content {
  padding-bottom: 1rem;
}

/*====== FAQ List ======*/
.faq-list {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-between;
  align-items: flex-start;
}
@media only screen and (max-width: 749px) {
  .faq-list {
    overflow-x: auto;
    overflow-y: hidden;
    flex-wrap: nowrap;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    padding-left: var(--outer);
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .faq-list::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .faq-list:after {
    content: "";
    min-height: 1px;
    display: block;
    position: relative;
    padding-right: var(--outer);
  }
}

.faq-list__item {
  flex-basis: 45%;
  padding: calc(var(--gutter) / 2) 0;
  font-size: calc(var(--font-2) * var(--FONT-ADJUST-BODY));
  line-height: 1.3;
}
.faq-list__item:only-child {
  flex-basis: 100%;
}
@media only screen and (max-width: 749px) {
  .faq-list__item {
    scroll-snap-align: start;
    flex: 0 0 calc(100% - 50px);
    padding-right: var(--outer);
  }
}

.faq-list__item--form:only-child {
  display: flex;
  justify-content: center;
}
@media only screen and (min-width: 750px) {
  .faq-list__item--form:only-child {
    flex-basis: 45%;
    margin: 0 auto;
  }
}

.faq-list__item .contact-form {
  max-width: 520px;
  margin: 0;
}

.faq-list__item:only-child .contact-form {
  margin: 0 auto;
}

.faq-list--3 .faq-list__item,
.faq-list--6 .faq-list__item,
.faq-list--9 .faq-list__item {
  flex-basis: 30%;
}
@media only screen and (max-width: 749px) {
  .faq-list--3 .faq-list__item,
.faq-list--6 .faq-list__item,
.faq-list--9 .faq-list__item {
    flex-basis: calc(100% - 50px);
  }
}

.faq-list__item-title {
  margin-bottom: calc(var(--gutter) / 3);
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-HEADING));
  font-weight: var(--FONT-WEIGHT-HEADING);
}

.image-wrapper + .faq-list__item-title {
  margin-top: calc(var(--gutter) / 3);
}

.faq-list__item-icon .icon__animated {
  padding-bottom: calc(var(--inner) / 4);
}

/**
 * Quick add
 */
.quick-add__holder {
  --btn-text: var(--primary);
  position: absolute;
  bottom: 0;
  z-index: 20;
  width: 100%;
  background: var(--TRANSPARENT);
  border-top: none;
  text-align: center;
  pointer-events: auto;
}
@media only screen and (min-width: 750px) {
  .quick-add__holder {
    -webkit-backdrop-filter: blur(5px);
            backdrop-filter: blur(5px);
  }
}

.no-touch .product-item__image:hover .quick-add__button,
.no-touch .product-item--overlay-text:hover .quick-add__button {
  visibility: visible;
}
.no-touch body.is-focused .product-item__image:focus-within .quick-add__button {
  visibility: visible;
}
@media only screen and (min-width: 750px) {
  .no-touch .quick-add__holder {
    opacity: 0;
    animation: slideOutDown 0.25s ease;
  }
  .no-touch .quick-add__button {
    visibility: hidden;
    transition: visibility 0.5s;
  }
  .no-touch .quick-add__button.has-error {
    animation: slideToggle 3s ease;
    animation-fill-mode: forwards;
  }
  .no-touch .product-item__image:hover .quick-add__holder:not(.is-disabled),
.no-touch .product-item--overlay-text:hover .quick-add__holder:not(.is-disabled) {
    animation: slideInUp 0.25s ease;
    animation-fill-mode: forwards;
  }
  .no-touch body.is-focused .quick-add__holder:focus-within,
.no-touch .quick-add__holder.is-visible,
.no-touch .quick-add__holder.has-error {
    animation: slideInUp 0.25s ease;
    animation-fill-mode: forwards;
  }
  .no-touch .quick-add__holder.is-disabled {
    animation: slideOutDown 0.25s ease;
  }
  .no-touch .quick-add__holder.is-disabled .quick-add__button {
    visibility: hidden;
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .no-touch .has-error > .quick-add__button {
    visibility: visible;
    display: block;
    max-height: none;
    padding: 15px;
    opacity: 1;
  }
}

.quick-add__holder.is-disabled {
  pointer-events: none;
}

.quick-add__button {
  color: var(--COLOR-TEXT);
}
.quick-add__button.is-visible, .quick-add__button.is-loading, .quick-add__button.is-added {
  visibility: visible;
}
.quick-add__button.is-disabled {
  pointer-events: none;
}
.quick-add__button .btn__plus {
  color: var(--primary);
}
@media only screen and (min-width: 750px) {
  .quick-add__button {
    position: relative;
    text-decoration: none;
    display: block;
    width: 100%;
    padding: 15px;
    cursor: pointer;
    text-align: center;
    box-shadow: none;
  }
  .quick-add__button:after {
    content: "";
    width: 100%;
    height: 100%;
    z-index: -1;
    top: 0;
    left: 0;
    position: absolute;
    background: var(--COLOR-BG);
    opacity: 0.7;
  }
  .quick-add__button .btn__plus {
    display: none;
  }
}
@media only screen and (max-width: 749px) {
  .quick-add__button {
    --btn-size: 36px;
    --btn-offset: 5px;
    position: absolute;
    bottom: var(--btn-offset);
    left: var(--btn-offset);
    display: flex;
    align-items: center;
    justify-content: center;
    width: var(--btn-size);
    height: var(--btn-size);
    border-radius: var(--radius);
    background: var(--COLOR-BG);
    pointer-events: auto;
    font-size: 0;
    z-index: 1;
  }
  .quick-add__button:after {
    content: "";
    position: absolute;
    top: calc(var(--btn-offset) * -1);
    left: calc(var(--btn-offset) * -1);
    width: calc(var(--btn-size) + var(--btn-offset) * 2);
    height: calc(var(--btn-size) + var(--btn-offset) * 2);
    z-index: -1;
    opacity: 0;
  }
  .has-error .quick-add__button {
    width: auto;
    right: var(--btn-offset);
  }
  .has-error .quick-add__button .btn__error {
    font-size: var(--BTN-FONT-SIZE);
  }
  .quick-add__button .btn__text {
    display: none;
  }
}

.quick-add__button > span {
  pointer-events: none;
}

@keyframes slideInUp {
  from {
    transform: translateY(100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes slideOutDown {
  from {
    transform: translateY(0);
    opacity: 1;
  }
  to {
    transform: translateY(100%);
    opacity: 0;
  }
}
@keyframes slideToggle {
  0% {
    transform: translateY(100%);
    opacity: 0;
  }
  10% {
    transform: translateY(0);
    opacity: 1;
  }
  90% {
    transform: translateY(0);
    opacity: 1;
  }
  100% {
    transform: translateY(100%);
    opacity: 0;
  }
}
.text-promo {
  color: var(--text);
}
@media only screen and (min-width: 990px) {
  .text-promo {
    --inner: 40px;
  }
}
.text-promo .hero__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
}
.text-promo .hero__title,
.text-promo .hero__app,
.text-promo .hero__rte,
.text-promo .hero__button {
  position: relative;
  margin: 10px 20px;
  z-index: 20;
}
.text-promo .hero__button {
  margin: 10px;
}
@media only screen and (max-width: 749px) {
  .text-promo {
    flex-direction: column;
  }
  .text-promo .hero__title,
.text-promo .hero__app,
.text-promo .hero__rte {
    margin: 8px 10px;
  }
  .text-promo .hero__button {
    margin: 8px;
  }
}
.text-promo .hero__content {
  padding: var(--outer);
  flex-flow: row wrap;
  align-items: center;
  justify-content: center;
}
.text-promo .backdrop--radial:before {
  z-index: initial;
}

.text-promo-inner {
  display: flex;
  flex-flow: row wrap;
  justify-content: center;
  align-items: center;
  position: relative;
  z-index: 1;
  overflow: hidden;
  width: 100%;
  background-color: var(--bg);
}

.text-promo-inner--border {
  border: 1px solid var(--border);
}

.section-before-after {
  color: var(--text);
  background-color: var(--bg);
}

@media only screen and (min-width: 750px) {
  .compare__body {
    display: flex;
    align-items: flex-start;
  }
}

@media only screen and (min-width: 750px) {
  .compare__content {
    flex: 0 0 50%;
    align-self: center;
    padding-right: var(--outer);
  }
}

.wrapper--full .compare__content {
  padding-left: var(--outer);
}
@media only screen and (max-width: 749px) {
  .wrapper--full .compare__content {
    padding-right: var(--outer);
  }
}

@media only screen and (max-width: 749px) {
  .wrapper--full .compare__buttons {
    padding: 0 var(--outer);
  }
}

.compare__images {
  overflow: hidden;
}
@media only screen and (min-width: 750px) {
  .compare__images {
    flex: 0 0 50%;
  }
}

/**** Highlights ****/
.highlights {
  position: relative;
  color: var(--text);
  background: var(--bg);
  padding-top: var(--PT);
  padding-bottom: var(--PB);
}

.highlights .grid__heading-holder {
  padding-left: 0;
  padding-right: 0;
}

.highlights__container {
  overflow: hidden;
}

.highlights__items {
  --gap: calc(var(--gutter) / 2);
  --gap-offset: calc(var(--gutter-offset) / 2);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0 var(--gap-offset) var(--gutter-offset);
}

@media only screen and (max-width: 749px) {
  .highlights__items--mobile-slider {
    flex-wrap: nowrap;
    justify-content: flex-start;
    padding-left: var(--outer);
    margin: 0 var(--outer-offset);
    overflow-x: scroll;
    overflow-y: hidden;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    scroll-padding: var(--outer);
    scrollbar-width: none;
    -ms-overflow-style: none;
    /* for Internet Explorer, Edge */
  }
  .highlights__items--mobile-slider::-webkit-scrollbar {
    display: none;
    /* for Chrome, Safari, and Opera */
  }
  .highlights__items--mobile-slider:after {
    content: "";
    min-height: 1px;
    display: block;
    position: relative;
    padding-right: var(--outer);
  }
}

@media only screen and (max-width: 749px) {
  .highlights__items--mobile-slider .highlights__item {
    flex: 0 0 auto;
    width: calc(100% - 50px);
    padding: 0;
    margin: 0 var(--gap) 0 0;
    scroll-snap-align: start;
  }
  .highlights__items--mobile-slider .highlights__item:last-child {
    margin-right: 0;
  }
  .highlights__items--mobile-slider .highlights__item:only-child {
    width: 100%;
  }
}

.highlights__item {
  --column-default: 1;
  --width-desktop: 100% / var(--columns-desktop, var(--column-default));
  --width-tablet: 100% / var(--columns-tablet, var(--column-default));
  --width-mobile: 100% / var(--columns-mobile, var(--column-default));
  --width-small: 100% / var(--columns-small, var(--column-default));
  --width: var(--width-desktop);
  --border: transparent;
  flex-basis: calc(var(--width, 100%));
  position: relative;
  padding: 0 var(--gap);
  margin-bottom: var(--gutter);
  text-align: center;
}
@media only screen and (min-width: 990px) {
  .highlights__item {
    --width: var(--width-desktop);
  }
}
@media only screen and (min-width: 750px) and (max-width: 989px) {
  .highlights__item {
    --width: var(--width-tablet);
  }
}
@media only screen and (max-width: 749px) {
  .highlights__item {
    --width: var(--width-small);
  }
}
@media only screen and (max-width: 479px) {
  .highlights__item {
    --width: var(--width-mobile);
  }
}

.highlights__item--rectangle,
.highlights__item--square,
.highlights__item--circle {
  color: var(--text);
}

.highlights__item-inner {
  min-height: 100%;
}

.highlights__item--button {
  --btn-bg: var(--bg);
  --btn-text: var(--text);
  --btn-border: var(--border);
  --btn-bg-hover: var(--bg-brighter, transparent);
  --btn-text-hover: var(--text);
  --btn-border-hover: var(--border-brighter, transparent);
  overflow: hidden;
}

.highlights__item__background {
  position: relative;
  width: 100%;
  min-height: inherit;
  padding-bottom: 100%;
  overflow: hidden;
  background-color: var(--bg);
  border: 1px solid var(--border);
}

.highlights__item--rectangle .highlights__item__background {
  padding-bottom: 75%;
}

.highlights__item--circle .highlights__item__background {
  -webkit-clip-path: circle(50%);
          clip-path: circle(50%);
  border-radius: 50%;
}

.highlights__item--button .btn, .highlights__item--button #challenge .shopify-challenge__button, #challenge .highlights__item--button .shopify-challenge__button, .highlights__item--button #shopify-product-reviews .spr-button-primary, #shopify-product-reviews .highlights__item--button .spr-button-primary, .highlights__item--button .shopify-payment-button .shopify-payment-button__button--unbranded, .shopify-payment-button .highlights__item--button .shopify-payment-button__button--unbranded {
  max-width: none;
}

.highlights__item--button .btn:after, .highlights__item--button #challenge .shopify-challenge__button:after, #challenge .highlights__item--button .shopify-challenge__button:after, .highlights__item--button #shopify-product-reviews .spr-button-primary:after, #shopify-product-reviews .highlights__item--button .spr-button-primary:after, .highlights__item--button .shopify-payment-button .shopify-payment-button__button--unbranded:after, .shopify-payment-button .highlights__item--button .shopify-payment-button__button--unbranded:after {
  z-index: 1;
}

.highlights__item--button .btn.is-disabled:after, .highlights__item--button #challenge .is-disabled.shopify-challenge__button:after, #challenge .highlights__item--button .is-disabled.shopify-challenge__button:after, .highlights__item--button #shopify-product-reviews .is-disabled.spr-button-primary:after, #shopify-product-reviews .highlights__item--button .is-disabled.spr-button-primary:after, .highlights__item--button .shopify-payment-button .is-disabled.shopify-payment-button__button--unbranded:after, .shopify-payment-button .highlights__item--button .is-disabled.shopify-payment-button__button--unbranded:after {
  content: none;
}

.highlights__item--button .highlights__item__content {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  top: auto;
  left: auto;
  overflow: visible;
  width: auto;
  padding: 0;
  transform: none;
}

.highlights__item--button .highlights__item__background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  padding: 0;
  background-color: transparent;
  border: none;
}

.highlights__item .image-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.highlights__item__content {
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 2;
  max-width: 100%;
  width: max-content;
  margin: 0;
  padding: var(--inner);
  overflow: hidden;
  transform: translate(-50%, -50%);
}

.highlights__item-link {
  --link: var(--text);
  --link-hover: var(--text);
  transition: none;
}

.highlights__item-link span {
  padding: 0 0 5px;
  background: linear-gradient(to right, currentColor, currentColor);
  background-size: 0% 1px;
  background-position: 50% 86%;
  background-repeat: no-repeat;
  transition: color 0.25s ease-in, background-size 0.25s ease-in;
}
@media (hover: hover) {
  .highlights__item-link span:hover {
    background-size: 100% 1px;
  }
}

@media (hover: hover) {
  .highlights__item-link:hover span {
    background-size: 100% 1px;
  }
}
/*================ Siblings - PDP ================*/
product-siblings {
  display: block;
}

.swatch__button--circle .image-wrapper {
  overflow: hidden;
  border-radius: 50%;
}

/**
 * Features
 */
.product__features {
  position: relative;
}
.product__features .flickity-page-dots {
  --text: var(--COLOR-PRIMARY);
  justify-content: flex-end;
  bottom: 0;
  padding: 0 var(--inner) var(--inner);
}

.js .product__features:not(.flickity-enabled) {
  display: grid;
  grid-template-columns: 1fr;
}
.js .product__features:not(.flickity-enabled) .product__feature {
  grid-row-start: 1;
  grid-column-start: 1;
  min-height: 100%;
  width: 100%;
}
.js .product__features:not(.flickity-enabled) .product__feature:not(:first-child) {
  opacity: 0;
  visibility: hidden;
}

.product__feature {
  --dots-height: 16px;
  width: 100%;
  color: var(--text);
  background-color: var(--bg);
  padding: calc(var(--inner) - 0.5em) var(--inner);
}

.flickity-enabled .product__feature {
  padding-bottom: calc(var(--inner) * 2 - 0.5em + var(--dots-height));
}

.product__feature__heading {
  font-size: calc(var(--font-3) * var(--FONT-ADJUST-BODY));
  font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.recipient-form input[type=checkbox]:checked ~ .recipient-fields {
  display: block;
}

.recipient-form input[type=checkbox] + label {
  padding-bottom: 1em;
}

.no-js .recipient-form input[type=checkbox] + label,
.js .recipient-form .recipient-fields {
  display: none;
}

.recipient-form .select__fieldset {
  align-items: center;
}

.recipient-form .select__fieldset .select__label--textarea {
  align-self: flex-start;
}

.recipient-form .field {
  border-bottom: none;
}

.recipient-form .recipient-form-field-label {
  display: block;
  text-align: right;
}

.featured-product {
  --min-height: 0;
  --padding: 100px;
  --padding-horizontal: 50px;
  --height: calc(100vh - var(--header-sticky-height));
  --height-inner: calc(var(--height) - (var(--padding) * 2));
  --translateX: 0%;
  --top: 0;
  --top-horizontal: var(--padding);
  background-color: var(--bg);
  color: var(--text);
}
@media only screen and (min-width: 990px) {
  .featured-product {
    --padding: 100px;
    --padding-horizontal: var(--padding);
  }
}
@media only screen and (min-width: 750px) {
  .featured-product {
    --height: var(--full-screen);
  }
  body.has-header-sticky .main-content > .shopify-section:first-of-type .featured-product {
    --height: calc(var(--full-screen) + var(--announcement-height));
  }
  body:not(.has-header-sticky) .main-content > .shopify-section:first-of-type .featured-product {
    --height: var(--full-height);
  }
}

.has-header-sticky .featured-product {
  --top: var(--header-height);
  --top-horizontal: calc(var(--padding) + var(--header-height));
}

.featured-product__body {
  min-height: var(--min-height);
}
@media only screen and (min-width: 750px) {
  .featured-product__body {
    display: flex;
    align-items: flex-start;
    min-height: var(--height);
  }
  .featured-product.is-reversed .featured-product__body {
    flex-direction: row-reverse;
  }
}

.featured-product__content {
  position: sticky;
  top: var(--top);
}
@media only screen and (min-width: 750px) {
  .featured-product__content {
    flex: 0 0 50%;
    display: flex;
    align-items: center;
    z-index: 3;
    min-height: inherit;
    padding: var(--outer) 0;
  }
}

.featured-product__card {
  padding: var(--outer);
}
@media only screen and (min-width: 750px) {
  .featured-product__card {
    flex: 0 0 50%;
    padding: 0;
    margin: 0 auto;
  }
}

.featured-product__aside {
  flex: 0 0 50%;
  position: relative;
  background-color: var(--bg);
  transform: translate3d(0, 0, 0);
}

.featured-product__aside--bg {
  padding: var(--padding) var(--padding-horizontal);
}

.featured-product__bg {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.featured-product__bg .image-wrapper {
  position: sticky;
  top: var(--top);
  max-height: var(--height);
  -webkit-mask: linear-gradient(to top, #FFF, #FFF) top/100% var(--padding), linear-gradient(to bottom, #FFF, #FFF) bottom/100% var(--padding), linear-gradient(to left, #FFF, #FFF) left/var(--padding-horizontal) 100%, linear-gradient(to right, #FFF, #FFF) right/var(--padding-horizontal) 100%;
          mask: linear-gradient(to top, #FFF, #FFF) top/100% var(--padding), linear-gradient(to bottom, #FFF, #FFF) bottom/100% var(--padding), linear-gradient(to left, #FFF, #FFF) left/var(--padding-horizontal) 100%, linear-gradient(to right, #FFF, #FFF) right/var(--padding-horizontal) 100%;
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
}

.featured-product__image {
  position: relative;
}

.featured-product__image .image-wrapper img {
  object-fit: cover;
}

@media only screen and (min-width: 750px) {
  .featured-product--horizontal .featured-product__aside {
    min-height: calc(var(--height) * var(--images-count, 1));
  }
  .featured-product--horizontal .featured-product__inner {
    position: sticky;
    top: var(--top);
    overflow: hidden;
  }
  .featured-product--horizontal.featured-product--full-width:not(.is-reversed) .featured-product__aside:not(.featured-product__aside--bg) .featured-product__inner {
    padding-left: 100%;
    margin-left: -100%;
  }
  .featured-product--horizontal.featured-product--full-width.is-reversed .featured-product__aside:not(.featured-product__aside--bg) .featured-product__inner {
    padding-right: 100%;
    margin-right: -100%;
  }
  .featured-product--horizontal .featured-product__images {
    display: flex;
    transform: translateX(var(--translateX));
  }
  .featured-product--horizontal.is-reversed .featured-product__images {
    flex-direction: row-reverse;
  }
  .featured-product--horizontal .featured-product__image {
    flex: 1 0 100%;
    min-width: 0;
  }
  .featured-product--horizontal .featured-product__image .image-wrapper {
    height: var(--height);
    padding-top: 0;
  }
  .featured-product--horizontal .featured-product__aside--bg {
    min-height: calc(var(--height-inner) * var(--images-count, 1));
  }
  .featured-product--horizontal .featured-product__aside--bg .featured-product__inner {
    top: var(--top-horizontal);
  }
  .featured-product--horizontal .featured-product__aside--bg .featured-product__image .image-wrapper {
    height: var(--height-inner);
  }
}
/*! ============ Add any custom styles below this line ================== */
.swym-button-bar{
  margin: 10px 0 !important;
}
.swym-button-bar.swym-wishlist-button-bar.swym-inject, .swym-btn-container.swym-inject{
  display: block!important;
}
.swym-button.swym-add-to-wishlist.swym-inject.swym-icontext.swym-heart.swym-loaded{
  width: calc(100% + -26px) !important;
}
.ProductItem__Image.ko-video-fixer {
  object-fit: cover;
  top: 0;
  left: 0;
  bottom: 0;
  transform: none;
}

.ProductItem__Image video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  pointer-events: none;
}


.Product__SlideshowNavBadge {
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
    display: flex;
  align-items: center;
  justify-content: center;
  
}
.Product__SlideshowNavBadge .Icon {
  width:40px;
  height: 40px;
  border-radius: 50%;
  background: #666;
}
.pledge-description, .psvg-icon-span{
  display: none !important;
}
#pp-button-div{
  position: relative;
}
.pp-button-width{
  position: absolute;
}
#preproduct-pledge{
  padding-top: 0 !important;
  margin-top: -13px;
}
.pp-safe.pp-button-text{
  background: #775b3d;
}
#pp-button-div{
    opacity: 1 !important;
}
.ks-powered-by{
  display: none;
}
.product-upsell__holder{
  display: block !important;
}
.pp-safe.pp-button-text{
  font-size: 14px !important;
    font-weight: 400 !important;
}
.product-item__title{
  color: black;
  text-shadow: -.25px -.25px 0 transparent, 
                .25px .25px transparent;
}

.product-item__title:hover{
  text-shadow: -.25px -.25px 0 black, 
                .25px .25px black;
  transition: text-shadow .3s ease-in-out;
}

}
#custom-acceptance-message p {
  font-size: 10px;
  color: #999;
  margin-top: 10px;
  padding-bottom: 40px; /* Adding space using padding */
  text-align: center;
}


#dropdown-6317addfec29a2fa8611aa632c519c2b {
    background-image: url('/cdn/shop/files/13_8e1da8c3-506f-4e80-837b-d6b096660c92.jpg?v=1749556038');
    background-size: cover; /* Ensures the background image covers the entire element */
    background-position: center; /* Centers the image */
    inset: 0px;
    display: flex; /* Allows for flexbox centering */
    align-items: center; /* Vertically centers content */
    justify-content: center; /* Horizontally centers content */
    opacity: 0; /* Initially hide the dropdown */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for dropdown visibility */
}

/* Ensure Background is Visible on Hover */
#dropdown-6317addfec29a2fa8611aa632c519c2b.is-visible {
    height: 850%;
    opacity: 1; /* Make the dropdown visible */
}

/* Center the dropdown items */
#dropdown-6317addfec29a2fa8611aa632c519c2b.header__dropdown__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
}

#dropdown-3717a8ee43dfe72b982273241b6d4a74 {
    background-image: url('/cdn/shop/files/13_8e1da8c3-506f-4e80-837b-d6b096660c92.jpg?v=1749556038');
    background-size: cover; /* Ensures the background image covers the entire element */
    background-position: center; /* Centers the image */
    inset: 0px;
    display: flex; /* Allows for flexbox centering */
    align-items: center; /* Vertically centers content */
    justify-content: center; /* Horizontally centers content */
    opacity: 0; /* Initially hide the dropdown */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for dropdown visibility */
}

/* Ensure Background is Visible on Hover */
#dropdown-3717a8ee43dfe72b982273241b6d4a74.is-visible {
    height: 850%;
    opacity: 1; /* Make the dropdown visible */
}

/* Center the dropdown items */
#dropdown-3717a8ee43dfe72b982273241b6d4a74.header__dropdown__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
}

#dropdown-d1290a9ac48dc19f3f0906d4bbbcc708 {
    background-image: url('/cdn/shop/files/13_8e1da8c3-506f-4e80-837b-d6b096660c92.jpg?v=1749556038');
    background-size: cover; /* Ensures the background image covers the entire element */
    background-position: center; /* Centers the image */
    inset: 0px;
    display: flex; /* Allows for flexbox centering */
    align-items: center; /* Vertically centers content */
    justify-content: center; /* Horizontally centers content */
    opacity: 0; /* Initially hide the dropdown */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for dropdown visibility */
}

/* Ensure Background is Visible on Hover */
#dropdown-d1290a9ac48dc19f3f0906d4bbbcc708.is-visible {
    height: 850%;
    opacity: 1; /* Make the dropdown visible */
}

/* Center the dropdown items */
#dropdown-d1290a9ac48dc19f3f0906d4bbbcc708 .header__dropdown__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
}

#dropdown-ea5e965463e7d4a67cff30db5ca1217e {
    background-image: url('/cdn/shop/files/13_8e1da8c3-506f-4e80-837b-d6b096660c92.jpg?v=1749556038');
    background-size: cover; /* Ensures the background image covers the entire element */
    background-position: center; /* Centers the image */
    inset: 0px;
    display: flex; /* Allows for flexbox centering */
    align-items: center; /* Vertically centers content */
    justify-content: center; /* Horizontally centers content */
    opacity: 0; /* Initially hide the dropdown */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for dropdown visibility */
}

/* Ensure Background is Visible on Hover */
#dropdown-ea5e965463e7d4a67cff30db5ca1217e.is-visible {
    height: 850%;
    opacity: 1; /* Make the dropdown visible */
}

/* Center the dropdown items */
#dropdown-ea5e965463e7d4a67cff30db5ca1217e.header__dropdown__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
}


/* Set medium thickness for main menu item texts */
.navlink--toplevel .navtext {
    font-weight: 000; /* Medium thickness */
}

/* General background and centering styles for all devices */
#dropdown-3717a8ee43dfe72b982273241b6d4a74 {
    background-image: url('/cdn/shop/files/13_8e1da8c3-506f-4e80-837b-d6b096660c92.jpg?v=1749556038');
    background-size: cover; /* Ensures the background image covers the entire element */
    background-position: center; /* Centers the image */
    inset: 0px;
    display: flex; /* Allows for flexbox centering */
    align-items: center; /* Vertically centers content */
    justify-content: center; /* Horizontally centers content */
    opacity: 0; /* Initially hide the dropdown */
    transition: opacity 0.3s ease-in-out; /* Smooth transition for dropdown visibility */
}

/* Ensure Background is Visible on Hover */
#dropdown-3717a8ee43dfe72b982273241b6d4a74.is-visible {
    height: 850%;
    opacity: 1; /* Make the dropdown visible */
}

/* Center and bold the dropdown items */
#dropdown-3717a8ee43dfe72b982273241b6d4a74.header__dropdown__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
}

/* Bold and center the text of each dropdown item */
#dropdown-3717a8ee43dfe72b982273241b6d4a74.header__dropdown__inner .navlink.navlink--child {
    font-weight: medium; /* Make the dropdown items bold */
    text-align: center; /* Center the text */
    width: 100%; /* Ensure full width for centering */
}

/* Applying background image to mobile menu dropdowns */
.mobile__menu__dropdown {
    background-image: url('/cdn/shop/files/12_3e1e6751-ffef-49f1-b54c-842bec90d855.jpg?v=1749556037');
    background-size: cover;
    background-position: center;
    opacity: 1;
}

/* Ensure that all dropdown item texts are centered and bold */
.mobile__menu__dropdown .navlink.navlink--child,
.mobile__menu__dropdown .navlink.navlink--grandchild {
    text-align: center;
    font-weight: regular;
    width: 100%; /* Ensures full width for centering */
    display: block; /* Ensures the link takes up the full width of the parent */
}

/* Applying background image to mobile menu dropdowns */
.mobile__menu__dropdown {
    background-image: url('/cdn/shop/files/12_3e1e6751-ffef-49f1-b54c-842bec90d855.jpg?v=1749556037');
    background-size: cover;
    background-position: center;
    opacity: 1;
}

/* Center and bold the dropdown item texts for desktop menu */
.header__dropdown .navlink.navlink--child,
.header__dropdown .navlink.navlink--grandchild {
    text-align: center;
    font-weight: regular;
    width: 100%; /* Ensures full width for centering */
    display: block; /* Ensures the link takes up the full width of the parent */
}

/* Ensure the dropdown items container is also centered */
.header__dropdown__inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding-top: 0px;
}

/* Applying background image to the desktop menu dropdowns */
.header__dropdown {
    background-image: url('/cdn/shop/files/13_8e1da8c3-506f-4e80-837b-d6b096660c92.jpg?v=1749556038');
    background-size: cover;
    background-position: center;
    opacity: 1;
}

/* Mobile menu background for main items */
nav > .drawer__inner {
    background-image: url('/cdn/shop/files/12_3e1e6751-ffef-49f1-b54c-842bec90d855.jpg?v=1749556037');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
    z-index: 999;
}

/* Remove top gap in mobile menu */
nav > .drawer__inner {
    margin-top: 0;
    padding-top: 0;
    top: 0;
    position: fixed; /* Fix the position to the top */
    width: 100%; /* Ensure the full width is covered */
    z-index: 9999; /* Ensure it appears on top of other elements */
}

/* Mobile menu dropdown background */
.mobile__menu__dropdown {
    background-image: url('/cdn/shop/files/12_3e1e6751-ffef-49f1-b54c-842bec90d855.jpg?v=1749556037');
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%; /* Ensure the dropdown covers the full height */
    width: 100%;  /* Ensure the dropdown covers the full width */
    margin-top: 0;
    padding-top: 0;
    top: 0; /* Remove any gap from the top */
    position: fixed; /* Fix the position so it starts from the top */
    z-index: 9999;
}

/* Mobile menu dropdown container with 25px gap at the top */
.mobile__menu__dropdown .sliderow__links {
    margin-top: 45px; /* Add the 25px gap at the top */
    padding-top: 0; /* Ensure no extra padding is added */
}

#dropdown-3717a8ee43dfe72b982273241b6d4a74.header__dropdown__inner {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Vertically centers the items */
    align-items: center; /* Horizontally centers the items */
    padding-top: 0px;
    height: 100%;
    transform: translateY(-10px); /* Moves the items up by 50px */
}

#dropdown-d1290a9ac48dc19f3f0906d4bbbcc708 .header__dropdown__inner {
    display: flex;
    flex-direction: column;
    justify-content: center; /* Vertically centers the items */
    align-items: center; /* Horizontally centers the items */
    padding-top: 0px;
    height: 100%;
    transform: translateY(-70px); /* Moves the items up by 70px */
}

#custom-acceptance-message p {
  font-size: 12px; /* Adjust this size as needed */
  color: #666; /* Optional: Adjust color to match the cart theme */
  margin-top: 10px;
  text-align: center; /* This aligns the text to the center */
}

/* Apply Poppins font and set font size to 13px for main menu texts */
.navlink--toplevel .navtext {
    font-family: 'Poppins', sans-serif;
    font-size: 13px;
    font-weight: normal; /* Adjust weight if necessary */
}

/* Move dropdown items 110px up for id-3717a8ee43dfe72b982273241b6d4a74 */
#dropdown-3717a8ee43dfe72b982273241b6d4a74 .header__dropdown__inner {
    margin-top: -110px;
}

/* Set dropdown menu items to regular font weight */
.header__dropdown__inner .navlink .navtext {
    font-weight: 400; /* 400 is the normal font weight */
}

#dropdown-3717a8ee43dfe72b982273241b6d4a74 .header__dropdown__inner {
    padding-top: 90px; /* Move items 90px down */
}

#dropdown-d1290a9ac48dc19f3f0906d4bbbcc708 .header__dropdown__inner {
    padding-top: 90px; /* Move items 90px down */
}

.card:not(.ratio) {
    height: fit-content !important;
}
.card__content .button {
    min-height: fit-content;
}
ul#Slider-template--18694670909735__featured_collection {
    margin-bottom: 0px;
}

#SupportingMenu--{{ section.id }} {
  display: flex !important; /* Use flexbox for layout */
  justify-content: center !important; /* Center horizontally */
  align-items: center !important; /* Center vertically */
  flex-direction: column; /* Stack items vertically */
  height: 100vh; /* Full viewport height for centering */
  width: 100%; /* Full width of the container */
  margin: 0 auto; /* Center the container itself */
  padding: var(--PT, 30px) var(--PB, 30px); /* Respect section padding settings */
  text-align: center; /* Center-align text content */
  box-sizing: border-box; /* Include padding in dimensions */
}

#SupportingMenu--{{ section.id }} .supporting-menu__inner {
  max-width: 800px; /* Optional: Limit width of the inner content */
  margin: 0 auto; /* Ensure the inner content is centered */
  display: flex; /* Apply flex to align items */
  justify-content: center; /* Center content horizontally */
  flex-wrap: wrap; /* Handle responsive behavior for inner items */
}

#SupportingMenu--{{ section.id }} .supporting-menu__item {
  margin: 0; /* Remove any extra margins from inner items */
  padding: 0; /* Remove extra padding */
  text-align: center; /* Center-align text inside each item */
}

/* Centered Image Container */
.centered-image-container {
  display: flex; /* Enables flexbox for centering */
  justify-content: center; /* Centers content horizontally */
  align-items: center; /* Centers content vertically */
  text-align: center; /* Ensures text alignment is centered */
  padding: 20px 0; /* Adds padding to the top and bottom */
  width: 100%; /* Makes the container span full width */
}

/* Centered Image Styling */
.centered-image-container img {
  max-width: 350px; /* Restricts the maximum width to 350px */
  width: 100%; /* Ensures the image scales proportionally */
  height: auto; /* Maintains the image's aspect ratio */
  display: block; /* Removes inline spacing issues */
  margin: 0 auto; /* Centers the image within its container */
}

/* Centered Text Section Styling */
.centered-text-section {
  text-align: center; /* Ensures the text is centered */
  margin: 10px 0; /* Adds 10px gap above and below the section */
  font-size: 15px; /* Optional: Ensures consistent font size */
  line-height: 1.5; /* Optional: Improves text readability */
}

/* General Styles for product-grid-item-2 */
.product-item-2 {
  background-color: #f9f9f9; /* Light gray background for the grid items */
  border-radius: 10px; /* Smooth rounded corners */
  overflow: hidden; /* Ensure content stays within the grid item */
  box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); /* Subtle shadow for depth */
  transition: transform 0.3s ease, box-shadow 0.3s ease; /* Smooth hover animations */
}

.product-item-2:hover {
  transform: translateY(-5px); /* Lift effect on hover */
  box-shadow: 0 6px 10px rgba(0, 0, 0, 0.2); /* Slightly stronger shadow on hover */
}

/* Image Styles */
.product-item-2 .product-item__image {
  position: relative;
  overflow: hidden;
}

.product-item-2 .product-item__image img {
  width: 100%; /* Ensure images fill the grid item */
  height: auto;
  transition: transform 0.3s ease; /* Smooth image zoom on hover */
}

.product-item-2:hover .product-item__image img {
  transform: scale(1.1); /* Slight zoom effect on hover */
}
 
.sale-box {
  background-color: black; /* Black background */
  color: white; /* White text */
  padding: 5px 10px; /* Padding to create a button-like appearance */
  border-radius: 8px; /* Smooth, rounded corners */
  font-weight: bold; /* Make the text stand out */
  font-size: 0.675rem; /* Adjust the font size for better readability */
  display: inline-block; /* Ensures proper spacing around the badge */
  text-align: center; /* Centers text inside the badge */
  position: absolute; /* Absolute positioning */
  top: 10px; /* Adjust distance from the top */
  left: 10px; /* Adjust distance from the left */
  z-index: 10; /* Ensures it stays on top of other elements */
}

.product-item__image {
  position: relative; /* Ensures the badge aligns correctly inside the product grid */
}

.announcement-bar-wrapper {
  position: fixed; /* Sabitleme */
  top: 0;
  left: 0;
  width: 100%;
  height: 45px;
  background-color: #000;
  overflow: hidden;
  font-family: 'Avenir Next Light', sans-serif;
  display: flex;
  align-items: center;
  z-index: 9999;
}

.announcement-bar-marquee {
  display: inline-block;
  white-space: nowrap;
  animation: marquee-scroll 2500s linear infinite;
}

.announcement-bar-marquee span {
  font-size: 11pt;
  color: #fff;
  display: inline-block;
  margin-right: 240px; /* yazılar arası boşluk */
}
body {
  padding-top: 35px;
}

@media (max-width: 768px) {
  body {
    padding-top: 30px;
  }
}

@keyframes marquee-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

@media (max-width: 768px) {
  .announcement-bar-marquee span {
    font-size: 16pt;
    margin-right: 180px;
  }

  .announcement-bar-wrapper {
    height: 30px;
  }
}


@keyframes marquee-scroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-50%);
  }
}

.popup-rv-overlay {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0,0,0,0.6);
  display: flex;
  justify-content: center;
  align-items: center;
}

.popup-rv-container {
  position: relative;
  width: 90%;
  max-width: 600px;
}

.popup-rv-img {
  width: 100%;
  height: auto;
  display: block;
  border-radius: 8px;
}

.popup-rv-close {
  position: absolute;
  top: -10px;
  right: -10px;
  font-size: 28px;
  color: #fff;
  background: #000;
  border-radius: 50%;
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}

@media screen and (max-width: 768px) {
  .popup-rv-container {
    max-width: 90%;
  }
}

@media screen and (max-width: 480px) {
  .popup-rv-container {
    max-width: 95%;
  }
}

.announcement-bar-marquee span {
  font-size: 11pt; /* varsayılan masaüstü */
  color: #fff;
  display: inline-block;
  margin-right: 240px;
}

@media (max-width: 768px) {
  .announcement-bar-marquee span {
    font-size: 8pt; /* mobil için küçültülmüş */
    margin-right: 120px; /* boşluğu da biraz azaltabilirsin istersen */
  }

  .announcement-bar-wrapper {
    height: 30px;
  }

  body {
    padding-top: 30px;
  }
}















