/** Shopify CDN: Minification failed

Line 3033:15 Expected identifier but found whitespace
Line 3034:6 Unexpected "{"
Line 3035:14 Expected ":"
Line 3421:21 Expected identifier but found whitespace
Line 3422:8 Unexpected "{"
Line 3423:16 Expected ":"
Line 5019:19 Expected identifier but found whitespace
Line 5020:6 Unexpected "{"
Line 5021:14 Expected ":"
Line 5029:15 Expected identifier but found whitespace
... and 15 more hidden warnings

**/
@charset "UTF-8";

/*!
  Impulse, by Archetype Themes
  http://archetypethemes.co
*/

@keyframes spin {
  0% {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

@keyframes preloading {
  0% {
    transform-origin: 0% 50%;
    transform: scaleX(0);
    opacity: 0;
  }

  40% {
    transform-origin: 0% 50%;
    transform: scaleX(1);
    opacity: 1;
  }

  41% {
    transform-origin: 100% 50%;
    transform: scaleX(1);
    opacity: 1;
  }

  to {
    transform-origin: 100% 50%;
    transform: scaleX(0);
    opacity: 1;
  }
}

@keyframes slideshowBars {
  0% {
    transform: translateX(-100%);
  }

  to {
    transform: translateX(0);
  }
}

@keyframes grid-product__loading {
  0% {
    opacity: 1;
  }

  60% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes shine {
  to {
    left: -200%;
  }
}

@keyframes overlay-on {
  0% {
    opacity: 0;
  }

  to {
    opacity: 0.6;
  }
}

@keyframes overlay-off {
  0% {
    opacity: 0.6;
  }

  to {
    opacity: 0;
  }
}

@keyframes full-overlay-on {
  0% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes full-overlay-off {
  0% {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes modal-open {
  0% {
    opacity: 0;
    transform: translateY(30px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes modal-closing {
  0% {
    opacity: 1;
    transform: scale(1);
  }

  to {
    opacity: 0;
    transform: scale(0.9);
  }
}

@keyframes rise-up {
  0% {
    opacity: 1;
    transform: translateY(120%);
  }

  to {
    opacity: 1;
    transform: translateY(0%);
  }
}

@keyframes rise-up-out {
  0% {
    opacity: 1;
    transform: translateY(0%);
  }

  to {
    opacity: 1;
    transform: translateY(-120%);
  }
}

@keyframes fade-in {
  0% {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}

@keyframes fade-out {
  0% {
    opacity: 1;
  }

  to {
    opacity: 0;
  }
}

@keyframes zoom-fade {
  0% {
    opacity: 0;
    transform: scale(1.3);
  }

  to {
    opacity: 1;
    transform: scale(1);
  }
}

@keyframes placeholder-shimmer {
  0% {
    background-position: -150% 0;
  }

  to {
    background-position: 150% 0;
  }
}


.hero[data-arrows=true] {
  overflow: visible;
  z-index: 5
}

.hero[data-arrows=true] .flickity-prev-next-button {
  top: auto;
  bottom: -20px;
  transform: none;
}

.hero[data-arrows=true] .flickity-prev-next-button:hover {
  transform: scale(1.12);
}

.hero[data-arrows=true] .flickity-prev-next-button:active {
  transform: scale(1);
}

.hero[data-arrows=true] .flickity-previous {
  left: auto;
  right: 100px;
}

.hero[data-arrows=true] .flickity-next {
  right: 40px;
}

.hero[data-arrows=true].flickity-rtl .flickity-previous {
  right: auto;
  left: 90px;
}

.hero[data-arrows=true].flickity-rtl .flickity-next {
  right: auto;
  left: 40px;
}

@media only screen and (max-width:768px) {
  .hero[data-arrows=true] .flickity-prev-next-button {
    bottom: -16px;
  }

  .hero[data-arrows=true] .flickity-previous {
    right: 60px;
  }

  .hero[data-arrows=true] .flickity-next {
    right: 20px;
  }

  .hero[data-arrows=true].flickity-rtl .flickity-previous {
    left: 60px;
  }

  .hero[data-arrows=true].flickity-rtl .flickity-next {
    left: 20px;
  }
}

[data-bars=true].hero .flickity-page-dots {
  bottom: 0;
  height: 6px;
  line-height: 6px;
  z-index: 6;
}

[data-bars=true] .flickity-page-dots .dot {
  position: relative;
  border-radius: 0;
  width: 120px;
  height: 6px;
  border: 0;
  opacity: 1;
  vertical-align: top;
  background: none;
  overflow: hidden
}

@media only screen and (max-width:768px) {

  [data-bars=true] .flickity-page-dots .dot {
    width: 45px
  }
}

[data-bars=true] .flickity-page-dots .dot:after,
[data-bars=true] .flickity-page-dots .dot:before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  height: 100%;
  width: 100%;
  background-color: currentColor;
}

[data-bars=true] .flickity-page-dots .dot:before {
  opacity: 0.4;
}

[data-bars=true] .flickity-page-dots .dot:hover:before {
  opacity: 0.6;
}

[data-bars=true] .flickity-page-dots .dot:after {
  transform: translateX(-100%);
  transition: none;
}

[data-bars=true] .flickity-page-dots .dot.is-selected:after {
  animation: slideshowBars 0s linear forwards;
}

.noUi-target,
.noUi-target * {
  -webkit-touch-callout: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  -webkit-user-select: none;
  touch-action: none;
  user-select: none;
  box-sizing: border-box;
}

.noUi-target {
  position: relative;
}

.noUi-base,
.noUi-connects {
  width: 100%;
  height: 100%;
  position: relative;
  z-index: 1;
}

.noUi-connects {
  overflow: hidden;
  z-index: 0;
}

.noUi-connect,
.noUi-origin {
  will-change: transform;
  position: absolute;
  z-index: 1;
  top: 0;
  right: 0;
  -ms-transform-origin: 0 0;
  -webkit-transform-origin: 0 0;
  -webkit-transform-style: preserve-3d;
  transform-origin: 0 0;
  transform-style: flat;
}

.noUi-connect {
  height: 100%;
  width: 100%;
}

.noUi-origin {
  height: 10%;
  width: 10%;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
  left: 0;
  right: auto;
}

.noUi-vertical .noUi-origin {
  width: 0;
}

.noUi-horizontal .noUi-origin {
  height: 0;
}

.noUi-handle {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  position: absolute;
}

.noUi-touch-area {
  height: 100%;
  width: 100%;
}

.noUi-state-tap .noUi-connect,
.noUi-state-tap .noUi-origin {
  transition: transform 0.3s;
}

.noUi-state-drag * {
  cursor: inherit !important;
}

.noUi-horizontal {
  height: 18px;
}

.noUi-horizontal .noUi-handle {
  width: 34px;
  height: 28px;
  right: -17px;
  top: -6px;
}

.noUi-vertical {
  width: 18px;
}

.noUi-vertical .noUi-handle {
  width: 28px;
  height: 34px;
  right: -6px;
  top: -17px;
}

.noUi-txt-dir-rtl.noUi-horizontal .noUi-handle {
  left: -17px;
  right: auto;
}

.noUi-target {
  background: #fafafa;
  border-radius: 4px;
  border: 1px solid #d3d3d3;
  box-shadow: inset 0 1px 1px #f0f0f0, 0 3px 6px -5px #bbb;
}

.noUi-connects {
  border-radius: 3px;
}

.noUi-connect {
  background: #3fb8af;
}

.noUi-draggable {
  cursor: ew-resize;
}

.noUi-vertical .noUi-draggable {
  cursor: ns-resize;
}

.noUi-handle {
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  cursor: default;
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ebebeb, 0 3px 6px -3px #bbb;
}

.noUi-active {
  box-shadow: inset 0 0 1px #fff, inset 0 1px 7px #ddd, 0 3px 6px -3px #bbb;
}

.noUi-handle:after,
.noUi-handle:before {
  content: "";
  display: block;
  position: absolute;
  height: 14px;
  width: 1px;
  background: #e8e7e6;
  left: 14px;
  top: 6px;
}

.noUi-handle:after {
  left: 17px;
}

.noUi-vertical .noUi-handle:after,
.noUi-vertical .noUi-handle:before {
  width: 14px;
  height: 1px;
  left: 6px;
  top: 14px;
}

.noUi-vertical .noUi-handle:after {
  top: 17px;
}

[disabled] .noUi-connect {
  background: #b8b8b8;
}

[disabled].noUi-handle,
[disabled] .noUi-handle,
[disabled].noUi-target {
  cursor: not-allowed;
}

.noUi-pips,
.noUi-pips * {
  box-sizing: border-box;
}

.noUi-pips {
  position: absolute;
  color: #999;
}

.noUi-value {
  position: absolute;
  white-space: nowrap;
  text-align: center;
}

.noUi-value-sub {
  color: #ccc;
  font-size: 10px;
}

.noUi-marker {
  position: absolute;
  background: #ccc;
}

.noUi-marker-sub {
  background: #aaa;
}

.noUi-marker-large {
  background: #aaa;
}

.noUi-pips-horizontal {
  padding: 10px 0;
  height: 80px;
  top: 100%;
  left: 0;
  width: 100%;
}

.noUi-value-horizontal {
  transform: translate(-50%, 50%);
}

.noUi-rtl .noUi-value-horizontal {
  transform: translate(50%, 50%);
}

.noUi-marker-horizontal.noUi-marker {
  margin-left: -1px;
  width: 2px;
  height: 5px;
}

.noUi-marker-horizontal.noUi-marker-sub {
  height: 10px;
}

.noUi-marker-horizontal.noUi-marker-large {
  height: 15px;
}

.noUi-pips-vertical {
  padding: 0 10px;
  height: 100%;
  top: 0;
  left: 100%;
}

.noUi-value-vertical {
  transform: translateY(-50%);
  padding-left: 25px;
}

.noUi-rtl .noUi-value-vertical {
  transform: translateY(50%);
}

.noUi-marker-vertical.noUi-marker {
  width: 5px;
  height: 2px;
  margin-top: -1px;
}

.noUi-marker-vertical.noUi-marker-sub {
  width: 10px;
}

.noUi-marker-vertical.noUi-marker-large {
  width: 15px;
}

.noUi-tooltip {
  display: block;
  position: absolute;
  border: 1px solid #d9d9d9;
  border-radius: 3px;
  background: #fff;
  color: #3D3936;
  padding: 5px;
  text-align: center;
  white-space: nowrap;
}

.noUi-horizontal .noUi-tooltip {
  transform: translate(-50%);
  left: 50%;
  bottom: 120%;
}

.noUi-vertical .noUi-tooltip {
  transform: translateY(-50%);
  top: 50%;
  right: 120%;
}

.noUi-horizontal .noUi-origin>.noUi-tooltip {
  transform: translate(50%);
  left: auto;
  bottom: 10px;
}

.noUi-vertical .noUi-origin>.noUi-tooltip {
  transform: translateY(-18px);
  top: auto;
  right: 28px;
}

tool-tip {
  display: none;
}

tool-tip[data-tool-tip-open=true] {
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 10001;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}

tool-tip[data-tool-tip-open=true]:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--colorModalBg);
  animation: overlay-on 0.3s forwards;
  cursor: pointer;
}

.tool-tip__inner {
  animation: modal-close 0.3s forwards;
  opacity: 0
}

tool-tip[data-tool-tip-open=true] .tool-tip__inner {
  animation: modal-open 0.3s forwards;
  display: block;
  position: fixed;
  background-color: #fff;
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.0902);
  padding: 30px;
  max-width: 720px
}

@media only screen and (max-width:768px) {

  tool-tip[data-tool-tip-open=true] .tool-tip__inner {
    width: 100%;
    max-width: 93%
  }
}

.tool-tip__content {
  overflow: auto;
  max-height: 80vh
}

@media only screen and (max-width:768px) {

  .tool-tip__content {
    font-size: 0.85em
  }
}

.tool-tip__close {
  position: absolute;
  top: 0;
  right: 0;
}

.tool-tip__close .icon {
  width: 28px;
  height: 28px;
}

.tool-tip-trigger {
  cursor: pointer;
  background: none;
  border: 0;
}

.tool-tip-trigger .icon {
  width: 28px;
  height: 28px;
}

.tool-tip-trigger__title {
  display: inline-block;
}

.tool-tip-trigger__title:focus,
.tool-tip-trigger__title:hover {
  text-decoration: underline;
  text-underline-offset: 2px;
}

.tool-tip-trigger__content {
  display: none !important;
}

*,
:after,
:before,
input {
  box-sizing: border-box;
}

body,
html {
  padding: 0;
  margin: 0;
}

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

audio,
canvas,
progress,
video {
  display: inline-block;
  vertical-align: baseline;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

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

.grid:after {
  content: "";
  display: table;
  clear: both;
}

.grid {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -22px
}

@media only screen and (max-width:768px) {

  .grid {
    margin-left: -17px
  }

  html[dir=rtl] .grid {
    margin-left: 0;
    margin-right: -17px
  }
}

html[dir=rtl] .grid {
  margin-left: 0;
  margin-right: -22px
}

.grid--small {
  margin-left: -10px
}

.grid--small .grid__item {
  padding-left: 10px;
}

.grid__item {
  position: relative;
  float: left;
  padding-left: 22px;
  width: 100%;
  min-height: 1px
}

@media only screen and (max-width:768px) {

  .grid__item {
    padding-left: 17px
  }

  html[dir=rtl] .grid__item {
    padding-left: 0;
    padding-right: 17px
  }
}

html[dir=rtl] .grid__item {
  float: right;
  padding-left: 0;
  padding-right: 22px
}

.grid--no-gutters {
  margin-left: 0
}

.grid--no-gutters .grid__item {
  padding-left: 0;
}

.grid--flush-bottom {
  margin-bottom: -22px;
  overflow: auto
}

.grid--flush-bottom>.grid__item {
  margin-bottom: 22px;
}

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

.grid--center .grid__item {
  float: none;
  display: inline-block;
  vertical-align: top;
  text-align: left
}

html[dir=rtl] .grid--center .grid__item {
  text-align: right
}

.grid--full {
  margin-left: 0
}

.grid--full>.grid__item {
  padding-left: 0;
}

@media only screen and (min-width:769px) {
  .grid--table-large {
    display: table;
    width: 100%;
    table-layout: fixed
  }

  .grid--table-large>.grid__item {
    display: table-cell;
    vertical-align: middle;
    float: none;
  }
}

@media only screen and (max-width:768px) {
  .small--grid--flush {
    margin-left: -2px
  }

  .page-width .small--grid--flush {
    margin-left: -17px;
    margin-right: -15px
  }

  .small--grid--flush>.grid__item {
    padding-left: 2px;
  }
}

.one-whole {
  width: 100%;
}

.one-half {
  width: 50%;
}

.one-third {
  width: 33.33333%;
}

.two-thirds {
  width: 66.66667%;
}

.one-quarter {
  width: 25%;
}

.two-quarters {
  width: 50%;
}

.three-quarters {
  width: 75%;
}

.one-fifth {
  width: 20%;
}

.two-fifths {
  width: 40%;
}

.three-fifths {
  width: 60%;
}

.four-fifths {
  width: 80%;
}

.one-sixth {
  width: 16.66667%;
}

.two-sixths {
  width: 33.33333%;
}

.three-sixths {
  width: 50%;
}

.four-sixths {
  width: 66.66667%;
}

.five-sixths {
  width: 83.33333%;
}

@media only screen and (max-width:768px) {
  .small--one-whole {
    width: 100%;
  }

  .small--one-half {
    width: 50%;
  }

  .small--one-third {
    width: 33.33333%;
  }

  .small--two-thirds {
    width: 66.66667%;
  }

  .grid--uniform .small--one-half:nth-of-type(odd),
  .grid--uniform .small--one-third:nth-of-type(3n+1) {
    clear: both;
  }

  .small--one-quarter {
    width: 25%;
  }

  .small--two-quarters {
    width: 50%;
  }

  .small--three-quarters {
    width: 75%;
  }

  .grid--uniform .small--one-quarter:nth-of-type(4n+1) {
    clear: both;
  }

  .small--one-fifth {
    width: 20%;
  }

  .small--two-fifths {
    width: 40%;
  }

  .small--three-fifths {
    width: 60%;
  }

  .small--four-fifths {
    width: 80%;
  }

  .grid--uniform .small--one-fifth:nth-of-type(5n+1) {
    clear: both;
  }

  .small--one-sixth {
    width: 16.66667%;
  }

  .small--two-sixths {
    width: 33.33333%;
  }

  .small--three-sixths {
    width: 50%;
  }

  .small--four-sixths {
    width: 66.66667%;
  }

  .small--five-sixths {
    width: 83.33333%;
  }

  .grid--uniform .small--one-sixth:nth-of-type(6n+1),
  .grid--uniform .small--three-sixths:nth-of-type(odd),
  .grid--uniform .small--two-sixths:nth-of-type(3n+1) {
    clear: both;
  }
}

@media only screen and (min-width:769px) {
  .medium-up--one-whole {
    width: 100%;
  }

  .medium-up--one-half {
    width: 50%;
  }

  .medium-up--one-third {
    width: 33.33333%;
  }

  .medium-up--two-thirds {
    width: 66.66667%;
  }

  .grid--uniform .medium-up--one-half:nth-of-type(odd),
  .grid--uniform .medium-up--one-third:nth-of-type(3n+1) {
    clear: both;
  }

  .medium-up--one-quarter {
    width: 25%;
  }

  .medium-up--two-quarters {
    width: 50%;
  }

  .medium-up--three-quarters {
    width: 75%;
  }

  .grid--uniform .medium-up--one-quarter:nth-of-type(4n+1) {
    clear: both;
  }

  .medium-up--one-fifth {
    width: 20%;
  }

  .medium-up--two-fifths {
    width: 40%;
  }

  .medium-up--three-fifths {
    width: 60%;
  }

  .medium-up--four-fifths {
    width: 80%;
  }

  .grid--uniform .medium-up--one-fifth:nth-of-type(5n+1) {
    clear: both;
  }

  .medium-up--one-sixth {
    width: 16.66667%;
  }

  .medium-up--two-sixths {
    width: 33.33333%;
  }

  .medium-up--three-sixths {
    width: 50%;
  }

  .medium-up--four-sixths {
    width: 66.66667%;
  }

  .medium-up--five-sixths {
    width: 83.33333%;
  }

  .grid--uniform .medium-up--one-sixth:nth-of-type(6n+1),
  .grid--uniform .medium-up--three-sixths:nth-of-type(odd),
  .grid--uniform .medium-up--two-sixths:nth-of-type(3n+1) {
    clear: both;
  }
}

.show {
  display: block !important;
}

.hide {
  display: none !important;
}

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

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

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

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

@media only screen and (max-width:768px) {
  .small--show {
    display: block !important;
  }

  .small--hide {
    display: none !important;
  }

  .small--text-left {
    text-align: left !important;
  }

  .small--text-right {
    text-align: right !important;
  }

  .small--text-center {
    text-align: center !important;
  }
}

@media only screen and (max-width:959px) {
  .medium-down--show {
    display: block !important;
  }

  .medium-down--hide {
    display: none !important;
  }

  .medium-down--text-left {
    text-align: left !important;
  }

  .medium-down--text-right {
    text-align: right !important;
  }

  .medium-down--text-center {
    text-align: center !important;
  }
}

@media only screen and (min-width:769px) {
  .medium-up--show {
    display: block !important;
  }

  .medium-up--hide {
    display: none !important;
  }

  .medium-up--text-left {
    text-align: left !important;
  }

  .medium-up--text-right {
    text-align: right !important;
  }

  .medium-up--text-center {
    text-align: center !important;
  }
}

.flex-grid {
  display: flex;
  flex-wrap: wrap;
  flex: 1 1 100%
}

[data-center-text=true] .flex-grid {
  justify-content: center
}

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

.flex-grid--gutters {
  margin-top: -15px;
  margin-left: -15px;
}

.flex-grid__item {
  flex: 0 1 100%;
  display: flex;
  align-items: stretch
}

.flex-grid--gutters .flex-grid__item {
  padding-top: 15px;
  padding-left: 15px
}

.flex-grid__item>* {
  flex: 1 1 100%;
}

.flex-grid__item--stretch {
  flex: 1 1 100%
}

.flex-grid__item--stretch:first-child {
  min-width: 250px;
}

@media only screen and (min-width:769px) {
  .flex-grid__item--33 {
    flex-basis: 33.33%;
  }

  .flex-grid__item--50 {
    flex-basis: 50%;
  }
}

@media only screen and (max-width:768px) {
  .flex-grid__item--mobile-second {
    order: 2;
  }
}

.clearfix:after {
  content: "";
  display: table;
  clear: both;
}

.display-table {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.display-table-cell {
  display: table-cell;
  vertical-align: middle;
  float: none;
}

@media only screen and (min-width:769px) {
  .medium-up--display-table {
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  .medium-up--display-table-cell {
    display: table-cell;
    vertical-align: middle;
    float: none;
  }
}

.visually-hidden {
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
  position: absolute;
  height: 1px;
  width: 1px;
}

.visually-invisible {
  opacity: 0 !important;
}

.skip-link:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: var(--colorTextBody);
  background-color: var(--colorBody);
  padding: 10px;
  opacity: 1;
  z-index: 10000;
  transition: none;
}

html {
  touch-action: manipulation;
}

html[dir=rtl] {
  direction: rtl;
}

body,
html {
  background-color: var(--colorBody);
  color: var(--colorTextBody);
  line-height: var(--typeBaseLineHeight);
}

.page-width {
  max-width: 1600px;
  margin: 0 auto;
}

.page-full,
.page-width {
  padding: 0 17px
}

@media only screen and (min-width:769px) {

  .page-full,
  .page-width {
    padding: 0 40px
  }
}

.page-width--narrow {
  max-width: 1000px;
}

.page-width--tiny {
  max-width: 450px;
}

@media only screen and (max-width:768px) {
  .page-width--flush-small {
    padding: 0;
  }
}

.page-content,
.shopify-email-marketing-confirmation__container,
.shopify-policy__container {
  overflow: hidden;
  padding-top: 40px;
  padding-bottom: 40px
}

@media only screen and (min-width:769px) {

  .page-content,
  .shopify-email-marketing-confirmation__container,
  .shopify-policy__container {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}

.shopify-email-marketing-confirmation__container {
  text-align: center;
}

.page-content--top,
.page-content--with-blocks {
  padding-bottom: 0;
}

.page-content--bottom {
  padding-top: 0;
}

.main-content {
  display: block;
  min-height: 300px
}

@media only screen and (min-width:769px) {

  .main-content {
    min-height: 700px
  }
}

.template-challange .main-content {
  min-height: 0
}

.hr--large,
.hr--medium,
.hr--small,
hr {
  height: 1px;
  border: 0;
  border-top: 1px solid;
  border-top-color: var(--colorBorder);
}

.hr--small {
  margin: 15px auto;
}

.hr--medium {
  margin: 25px auto
}

@media only screen and (min-width:769px) {

  .hr--medium {
    margin: 35px auto
  }
}

.hr--large {
  margin: 30px auto
}

@media only screen and (min-width:769px) {

  .hr--large {
    margin: 45px auto
  }
}

.page-blocks+.hr--large,
.page-blocks+[data-section-type=recently-viewed] .hr--large {
  margin-top: 0
}

.hr--clear {
  border: 0;
}

@media only screen and (max-width:768px) {
  .table--responsive thead {
    display: none;
  }

  .table--responsive tr {
    display: block;
  }

  .table--responsive td,
  .table--responsive tr {
    float: left;
    clear: both;
    width: 100%;
  }

  .table--responsive td,
  .table--responsive th {
    display: block;
    text-align: right;
    padding: 15px;
  }

  .table--responsive td:before {
    content: attr(data-label);
    float: left;
    padding-right: 10px;
  }
}

@media only screen and (max-width:768px) {
  .table--small-hide {
    display: none !important;
  }

  .table__section+.table__section {
    position: relative;
    margin-top: 10px;
    padding-top: 15px
  }

  .table__section+.table__section:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 15px;
    right: 15px;
    border-bottom: 1px solid;
    border-bottom-color: var(--colorBorder);
  }
}

select {
  background-image: url('data:image/svg+xml,<svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-down" width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 25.182.94 10.122 3.06 8 16 20.94 28.94 8l2.12 2.121L16 25.181Z" fill="%233D3936"/></svg>');
}

.is-light select {
  background-image: url('data:image/svg+xml,<svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-down" width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 25.182.94 10.122 3.06 8 16 20.94 28.94 8l2.12 2.121L16 25.181Z" fill="%23ffffff"/></svg>');
}

.faux-select,
body,
input,
select,
textarea {
  font-family: var(--typeBasePrimary), sans-serif;
  font-size: var(--typeBaseSize);
  line-height: var(--typeBaseLineHeight);
}

@media only screen and (min-width:769px) {

  .faux-select,
  body,
  button,
  input,
  select,
  textarea {
    font-size: var(--typeBaseSize);
  }
}

.faux-select,
body,
button,
input,
select,
textarea {
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  text-rendering: optimizeSpeed;
}

body {
  font-weight: var(--typeBaseWeight);
}

p {
  margin: 0 0 15px 0
}

p img {
  margin: 0;
}

em {
  font-style: italic;
}

b,
strong {
  font-weight: 700;
}

p[data-spam-detection-disclaimer],
small {
  font-size: 0.85em;
}

sub,
sup {
  position: relative;
  font-size: 60%;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.5em;
}

.rte blockquote,
blockquote {
  margin: 0;
  padding: 15px 30px 40px
}

.rte blockquote p,
blockquote p {
  margin-bottom: 0
}

.rte blockquote p+cite,
blockquote p+cite {
  margin-top: 15px;
}

.rte blockquote cite,
blockquote cite {
  display: block;
}

code,
pre {
  background-color: #faf7f5;
  font-family: Consolas, monospace;
  font-size: 1em;
  border: 0 none;
  padding: 0 2px;
}

pre {
  overflow: auto;
  padding: 15px;
  margin: 0 0 30px;
}

label {
  display: block;
  margin-bottom: 10px;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  display: block;
  margin: 0 0 10px;
}

@media only screen and (min-width:769px) {

  .h1,
  .h2,
  .h3,
  .h4,
  .h5,
  .h6,
  h1,
  h2,
  h3,
  h4,
  h5,
  h6 {
    margin: 0 0 15px
  }
}

.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a,
h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a {
  text-decoration: none;
  font-weight: inherit;
}

.h1,
.h2,
.h3,
h1,
h2,
h3 {
  font-family: var(--typeHeaderPrimary), sans-serif;
  font-weight: var(--typeHeaderWeight);
}

.h4,
.h5,
.h6,
h4,
h5,
h6 {
  font-family: var(--typeHeaderSecondary), sans-serif;
}

.text-spacing,
.text-spacing.rte:last-child {
  margin-bottom: 15px;
}

@media only screen and (max-width:768px) {

  .rte table td,
  .rte table th {
    padding: 6px 8px;
  }
}

.collapsible-content .rte table td,
.collapsible-content .rte table th {
  padding: 6px 8px;
}

.comment-author {
  margin-bottom: 0;
}

.comment-date {
  font-size: calc(var(--typeBaseSize)*0.85);
  display: block;
  margin-top: 3px
}

@media only screen and (max-width:768px) {

  .comment-date {
    margin-bottom: 15px
  }
}

.ajaxcart__subtotal {
  text-transform: uppercase;
  letter-spacing: 0.3em;
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .1px;
  line-height: 22.4px;
}

.rte .enlarge-text,
.rte .enlarge-text p {
  margin: 0;
  font-size: 1.3em;
}

@media only screen and (min-width:769px) {

  .rte .enlarge-text--offset p {
    padding-right: 15%
  }

  .text-center .rte .enlarge-text--offset p {
    padding: 0 5%
  }
}

@media only screen and (min-width:769px) {
  .table--small-text {
    font-size: calc(var(--typeBaseSize)*0.85);
  }
}

.index-section--footer h3 {
  font-size: 1.5em;
}

html[dir=rtl] .text-left {
  text-align: right !important;
}

html[dir=rtl] .text-right {
  text-align: left !important;
}

.icon-and-text {
  display: flex;
  flex-wrap: nowrap;
  align-items: center
}

.icon-and-text .icon {
  flex: 0 0 auto;
}

ol,
ul {
  margin: 0 0 15px 30px;
  padding: 0;
  text-rendering: optimizeLegibility;
}

ol ol {
  list-style: lower-alpha;
}

ol {
  list-style: decimal;
}

ol ol,
ol ul,
ul ol,
ul ul {
  margin: 4px 0 5px 20px;
}

li {
  margin-bottom: 0.25em;
}

ul.square {
  list-style: square outside;
}

ul.disc {
  list-style: disc outside;
}

ol.alpha {
  list-style: lower-alpha outside;
}

.no-bullets {
  list-style: none outside;
  margin-left: 0;
}

.inline-list {
  padding: 0;
  margin: 0
}

.inline-list li {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
}

table {
  width: 100%;
  border-spacing: 1px;
  position: relative;
  border: 0 none;
  background: var(--colorBorder);
}

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

td,
th {
  border: 0 none;
  text-align: left;
  padding: 10px 15px;
  background: var(--colorBody)
}

html[dir=rtl] td,
html[dir=rtl] th {
  text-align: right
}

th {
  font-weight: 700;
}

.table__title,
th {
  font-weight: 700;
}

.text-link {
  display: inline;
  border: 0 none;
  background: none;
  padding: 0;
  margin: 0;
}

.rte a,
.shopify-email-marketing-confirmation__container a,
.shopify-policy__container a {
  color: var(--colorLink);
}

button {
  overflow: visible;
  color: currentColor;
}

.btn--disabled,
button[disabled],
html input[disabled] {
  cursor: not-allowed;
}

.rte .btn,
.shopify-payment-button .shopify-payment-button__button--unbranded {
  line-height: 1.42;
  text-decoration: none;
  text-align: center;
  white-space: normal;
  font-family: var(--typeHeaderSecondary);
  font-size: var(--typeBaseSize);
  font-weight: var(--typeBaseWeight);
  text-transform: uppercase;
  letter-spacing: var(--typeWideSpacing);

  display: inline-block;
  padding: 11px 20px;
  margin: 0;
  width: auto;
  min-width: 90px;
  vertical-align: middle;
  cursor: pointer;
  -webkit-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  border-radius: var(--buttonRadius);
  color: var(--colorBtnPrimaryText);
  background: var(--colorBtnPrimary)
}


.btn--circle {
  padding: 10px;
  border-radius: 50%;
  min-width: 0;
  line-height: 1
}

.btn--circle .icon {
  width: 20px;
  height: 20px;
}

.btn--circle:after,
.btn--circle:before {
  content: none;
  background: none;
  width: auto;
}

.btn--circle.btn--large .icon {
  width: 30px;
  height: 30px;
}

.btn--circle.btn--large {
  padding: 15px;
}

.btn--small {
  padding: 8px 14px;
  background-position: 150% 45%;
  font-size: calc(var(--typeBaseSize) - 6px);
  font-size: max(calc(var(--typeBaseSize) - 6px), 12px)
}

.btn--large {
  padding: 15px 20px;
}

.btn--full {
  width: 100%;
  padding: 11px 20px;
  transition: none;
  padding: 13px 20px
}

.btn--inverse {
  background-color: transparent;
  color: #fff;
  border: 2px solid #fff
}

.btn--inverse:focus,
.btn--inverse:hover {
  background-color: transparent;
}

.hero__link .btn--inverse {
  color: var(--colorHeroText);
  border-color: var(--colorHeroText)
}

.btn--loading {
  position: relative;
  text-indent: -9999px;
  background-color: var(--colorBtnPrimary);
  color: var(--colorBtnPrimary)
}

.btn--loading:active,
.btn--loading:hover {
  background-color: var(--colorBtnPrimary);
  color: var(--colorBtnPrimary);
}

.btn--loading:before {
  content: "";
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  left: 50%;
  top: 50%;
  margin-left: -12px;
  margin-top: -12px;
  border-radius: 50%;
  border: 3px solid;
  border-color: var(--colorBtnPrimaryText);
  border-top-color: transparent;
  animation: spin 1s linear infinite;
}

.btn--loading.btn--secondary {
  color: var(--colorTextBody);
  background: transparent
}

.btn--loading.btn--secondary:before {
  border-color: var(--colorTextBody);
  border-top-color: transparent;
}

.return-link {
  text-align: center;
  padding: 15px 25px;
  margin-top: 50px
}

@media only screen and (max-width:768px) {

  .return-link {
    padding: 22px 17px;
    width: 100%
  }
}

.collapsible-trigger-btn {
  text-align: left
}

.collapsible-trigger-btn:focus-visible .collapsible-trigger__icon {
  border-width: 1px;
  outline: -webkit-focus-ring-color auto 1px;
  outline-offset: 4px;
}

[data-center-text=true] .collapsible-trigger-btn {
  text-align: center
}

.collapsible-trigger-btn {
  text-transform: uppercase;
  font-size: 18px;
  display: block;
  width: 100%;
  padding: 15px 10px 15px 0
}

.collection-sidebar__group .collapsible-trigger-btn {
  text-align: left
}

.collapsible-trigger-btn--borders {
  padding: 12px 0;
}

.collapsible-trigger-btn--borders .collapsible-trigger__icon {
  right: 12px;
}

@media only screen and (min-width:769px) {
  .collapsible-trigger-btn--borders {
    padding: 15px 0;
  }

  .collapsible-trigger-btn--borders .collapsible-trigger__icon {
    right: 0;
  }
}

.collapsible-content+.collapsible-trigger-btn--borders {
  margin-top: -1px
}

.collapsible-trigger-btn--borders+.collapsible-content .collapsible-content__inner {
  padding: 0 0 15px;
  font-size: calc(var(--typeBaseSize)*0.92);
}

.collapsible-trigger-btn--borders+.collapsible-content--expanded {
  margin-bottom: 30px
}

.collapsible-trigger-btn--borders+.collapsible-content--expanded:last-child {
  margin-bottom: -1px;
}

.shopify-payment-button {
  margin-top: 10px;
}

.shopify-payment-button .shopify-payment-button__button--unbranded {
  display: block;
  width: 100%;
  transition: none;
}

.shopify-payment-button__button--hidden {
  display: none !important;
}

img {
  border: 0 none;
}

svg:not(:root) {
  overflow: hidden;
}

iframe,
img {
  max-width: 100%;
}

img[data-sizes=auto] {
  display: block;
  width: 100%;
}

.lazyload {
  opacity: 0
}

.no-js .lazyload {
  display: none
}

.lazyloaded {
  opacity: 1;
  transition: opacity 0.4s ease;
}

.video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto
}

.video-wrapper iframe,
.video-wrapper video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.video-wrapper--modal {
  width: 1000px;
}

.grid__image-ratio {
  position: relative;
  background-color: var(--colorSmallImageBg)
}

.grid__image-ratio img {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}

.grid__image-ratio img.lazyloaded {
  opacity: 1;
  animation: fade-in 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition: none;
}

.grid__image-ratio img.grid__image-contain {
  -o-object-fit: contain;
  object-fit: contain;
}

.grid__image-ratio:before {
  content: "";
  display: block;
  height: 0;
  width: 100%;
}

.grid__image-ratio .placeholder-svg {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.grid__image-ratio--object {
  opacity: 1;
}

.grid__image-ratio--wide:before {
  padding-bottom: 56.25%;
}

.grid__image-ratio--landscape:before {
  padding-bottom: 75%;
}

.grid__image-ratio--square:before {
  padding-bottom: 100%;
}

.grid__image-ratio--portrait:before {
  padding-bottom: 100%;
}

.image-fit {
  position: relative;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  z-index: 1;
}

.parallax-container {
  position: absolute;
  top: -30%;
  left: 0;
  height: 160%;
  width: 100%;
}

.parallax-image {
  position: absolute;
  top: -5%;
  left: 0;
  width: 100%;
  height: 110%
}

.parallax-image img {
  display: block;
  -o-object-fit: cover;
  object-fit: cover;
  width: 100%;
  height: 100%;
}

.inline {
  display: inline;
}


small {
  display: block;
}

.icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  vertical-align: middle;
  fill: currentColor
}

.icon .no-fill,
.icon.no-fill {
  fill: none;
}

.no-svg .icon {
  display: none
}

.icon--full-color {
  fill: initial;
}

.icon-cart circle {
  fill: currentColor !important;
}

.icon__fallback-text {
  clip: rect(0, 0, 0, 0);
  overflow: hidden;
  position: absolute;
  height: 1px;
  width: 1px;
}

.js-drawer-open {
  overflow: hidden;
}

.drawer {
  display: none;
  position: fixed;
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  top: 0;
  bottom: 0;
  max-width: 95%;
  z-index: 99999999999;
  color: var(--colorTextBody);
  background-color: var(--colorDrawers);
  box-shadow: 0 0 150px rgba(0, 0, 0, 0.1);
  transition: transform 0.25s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (max-height:400px) {

  .drawer {
    overflow: scroll
  }

  .drawer .drawer__contents {
    height: auto;
  }
}

.drawer a:not(.btn) {
  color: var(--colorTextBody)
}

.drawer a:not(.btn):hover {
  color: var(--colorTextBody);
}

.drawer input,
.drawer textarea {
  border-color: var(--colorBorder);
}

.drawer .btn:not(.btn--primary):not(.btn--secondary):not(.btn--tertiary) {
  background-color: var(--colorBtnPrimary);
  color: var(--colorBtnPrimaryText);
}

.drawer--left {
  width: 350px;
  left: -350px
}

.drawer--left.drawer--is-open {
  display: block;
  transform: translateX(350px);
  transition-duration: 0.45s;
}

.drawer--right {
  width: 350px;
  right: -350px
}

@media only screen and (min-width:769px) {

  .drawer--right {
    width: 450px;
    right: -450px
  }
}

.drawer--right.drawer--is-open {
  display: block;
  transform: translateX(-350px);
  transition-duration: 0.45s
}

@media only screen and (min-width:769px) {

  .drawer--right.drawer--is-open {
    transform: translateX(-450px)
  }
}

.js-drawer-closing .main-content:after,
.js-drawer-open .main-content:after {
  content: "";
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: var(--colorModalBg);
  opacity: 0;
  z-index: 26;
}

.js-drawer-open .main-content:after {
  animation: overlay-on 0.35s forwards;
}

.js-drawer-closing .main-content:after {
  animation: overlay-off 0.25s forwards;
}

.drawer__fixed-header,
.drawer__footer,
.drawer__header,
.drawer__scrollable {
  padding-left: var(--drawer-gutter);
  padding-right: var(--drawer-gutter);
}

.drawer__fixed-header {
  height: 58px;
  overflow: visible;
}

/* @media only screen and (min-width:769px){
  .drawer__fixed-header,.drawer__header{
    height:80px;
  }
} */

.drawer__close,
.drawer__title {
  display: table-cell;
  vertical-align: middle;
}

.drawer__title {
  width: 100%;
}

.drawer__close {
  width: 1%;
  text-align: center;
}

.drawer__close-button {
  position: relative;
  height: 100%;
  color: inherit;
  padding: 0 var(--drawer-gutter);
  margin-right: calc(var(--drawer-gutter) * -1);
}

.drawer__close-button:focus-visible {
  border-radius: 4px;
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.75);
}

.drawer__close-button:active {
  background-color: var(--colorDrawers);
}

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

.drawer__close--left .drawer__close-button {
  right: auto;
  left: -20px;
  left: calc(var(--drawer-gutter)*-1);
}

.drawer__contents {
  height: 100%;
  display: flex;
  flex-direction: column;
}

.drawer__inner,
.drawer__scrollable {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  overflow-y: hidden;
}

.drawer__scrollable {
  padding-top: 20px;
  padding-top: var(--drawer-gutter);
  overflow: hidden;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

.drawer__footer {
  padding-top: 15px;
  padding-bottom: 20px;
  padding-bottom: var(--drawer-gutter)
}

@media only screen and (min-width:769px) {

  .drawer__footer {
    padding-top: 22.22222px
  }
}

.drawer__inner.is-loading .drawer__scrollable {
  transition: opacity 0.3s ease 0.7s;
  opacity: 0.4;
}

.cart-notes {
  margin-top: 10px;
  margin-bottom: 10px;
  min-height: 60px;
  height: 60px
}

@media only screen and (min-width:769px) {

  .cart-notes {
    min-height: 80px;
    height: 80px
  }
}

.placeholder-svg {
  fill: #999;
  background-color: #e1e1e1;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  display: block;
  padding: 30px 0;
}

.placeholder-noblocks {
  padding: 40px;
  text-align: center;
}

.placeholder-content {
  overflow: hidden;
  animation: placeholder-shimmer 1.3s linear infinite;
  background-size: 400% 100%;
  margin-bottom: 20px;
  border-radius: 4px
}

@media only screen and (max-width:768px) {

  .placeholder-content {
    margin-left: auto;
    margin-right: auto
  }
}

.animation-delay-20 {
  animation-delay: 1.2s;
}

.animation-delay-19 {
  animation-delay: 1.14s;
}

.animation-delay-18 {
  animation-delay: 1.08s;
}

.animation-delay-17 {
  animation-delay: 1.02s;
}

.animation-delay-16 {
  animation-delay: 0.96s;
}

.animation-delay-15 {
  animation-delay: 0.9s;
}

.animation-delay-14 {
  animation-delay: 0.84s;
}

.animation-delay-13 {
  animation-delay: 0.78s;
}

.animation-delay-12 {
  animation-delay: 0.72s;
}

.animation-delay-11 {
  animation-delay: 0.66s;
}

.animation-delay-10 {
  animation-delay: 0.6s;
}

.animation-delay-9 {
  animation-delay: 0.54s;
}

.animation-delay-8 {
  animation-delay: 0.48s;
}

.animation-delay-7 {
  animation-delay: 0.42s;
}

.animation-delay-6 {
  animation-delay: 0.36s;
}

.animation-delay-5 {
  animation-delay: 0.3s;
}

.animation-delay-4 {
  animation-delay: 0.24s;
}

.animation-delay-3 {
  animation-delay: 0.18s;
}

.animation-delay-2 {
  animation-delay: 0.12s;
}

.appear-delay-20 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.3s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.4s;
}

.appear-delay-19 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.24s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.34s;
}

.appear-delay-18 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.18s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.28s;
}

.appear-delay-17 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.12s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.22s;
}

.appear-delay-16 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.06s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.16s;
}

.appear-delay-15 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s;
}

.appear-delay-14 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.94s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 1.04s;
}

.appear-delay-13 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.88s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.98s;
}

.appear-delay-12 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.82s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.92s;
}

.appear-delay-11 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.76s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.86s;
}

.appear-delay-10 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}

.appear-delay-9 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.64s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.74s;
}

.appear-delay-8 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.58s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.68s;
}

.appear-delay-7 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.52s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.62s;
}

.appear-delay-6 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.46s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.56s;
}

.appear-delay-5 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
}

.appear-delay-4 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.34s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.44s;
}

.appear-delay-3 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.28s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.38s;
}

.appear-delay-2 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.22s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.32s;
}

.appear-delay-1 {
  transition: transform 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s, opacity 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
}

.animation-cropper {
  overflow: hidden;
  display: inline-flex;
}

.image-wrap {
  background: var(--colorSmallImageBg);
  overflow: hidden;
  width: 100%;
}

.image-wrap img:not([role=presentation]) {
  display: block
}

.no-js .image-wrap img:not([role=presentation]).lazyload {
  display: none
}

.image-wrap .animate-me,
.image-wrap img:not([role=presentation]),
.image-wrap svg {
  opacity: 0
}

.no-js .image-wrap .animate-me,
.no-js .image-wrap img:not([role=presentation]),
.no-js .image-wrap svg {
  opacity: 1
}

.aos-animate .image-wrap .animate-me,
.aos-animate .image-wrap .lazyloaded:not([role=presentation]),
.aos-animate .image-wrap svg {
  animation: fade-in 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}

[data-aos=row-of-3].aos-animate:nth-child(3n+2) .image-wrap img {
  animation-delay: 150ms
}

[data-aos=row-of-3].aos-animate:nth-child(3n+3) .image-wrap img {
  animation-delay: 300ms
}

[data-aos=row-of-4].aos-animate:nth-child(4n+2) .image-wrap img {
  animation-delay: 120ms
}

[data-aos=row-of-4].aos-animate:nth-child(4n+3) .image-wrap img {
  animation-delay: 240ms
}

[data-aos=row-of-4].aos-animate:nth-child(4n+4) .image-wrap img {
  animation-delay: 360ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+2) .image-wrap img {
  animation-delay: 75ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+3) .image-wrap img {
  animation-delay: 150ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+4) .image-wrap img {
  animation-delay: 225ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+5) .image-wrap img {
  animation-delay: 300ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+2) .image-wrap img {
  animation-delay: 50ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+3) .image-wrap img {
  animation-delay: 100ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+4) .image-wrap img {
  animation-delay: 150ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+5) .image-wrap img {
  animation-delay: 200ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+6) .image-wrap img {
  animation-delay: 250ms
}

[data-aos=row-of-3].aos-animate:nth-child(3n+2) .collection-image {
  animation-delay: 150ms
}

[data-aos=row-of-3].aos-animate:nth-child(3n+3) .collection-image {
  animation-delay: 300ms
}

[data-aos=row-of-4].aos-animate:nth-child(4n+2) .collection-image {
  animation-delay: 120ms
}

[data-aos=row-of-4].aos-animate:nth-child(4n+3) .collection-image {
  animation-delay: 240ms
}

[data-aos=row-of-4].aos-animate:nth-child(4n+4) .collection-image {
  animation-delay: 360ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+2) .collection-image {
  animation-delay: 75ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+3) .collection-image {
  animation-delay: 150ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+4) .collection-image {
  animation-delay: 225ms
}

[data-aos=row-of-5].aos-animate:nth-child(5n+5) .collection-image {
  animation-delay: 300ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+2) .collection-image {
  animation-delay: 50ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+3) .collection-image {
  animation-delay: 100ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+4) .collection-image {
  animation-delay: 150ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+5) .collection-image {
  animation-delay: 200ms
}

[data-aos=row-of-6].aos-animate:nth-child(6n+6) .collection-image {
  animation-delay: 250ms
}

.loading:after,
.loading:before,
.unload:after,
.unload:before {
  content: "";
  position: absolute;
  width: 100px;
  height: 3px;
  background: var(--colorBody);
  left: 50%;
  top: 50%;
  margin: -1px 0 0 -50px;
  z-index: 4;
  opacity: 0
}

.no-js .loading:after,
.no-js .loading:before,
.no-js .unload:after,
.no-js .unload:before {
  display: none
}

.loading:before,
.unload:before {
  background: var(--colorTextBody);
  opacity: 1;
}

.loading:after,
.unload:after {
  opacity: 0;
  animation: preloading 0.5s ease 0.3s infinite;
}

.loading--delayed:before {
  animation-delay: 0.8s !important;
  animation-duration: 1s !important;
}

.loading--delayed:after {
  animation-delay: 1.3s !important;
}

.appear-animation {
  opacity: 0;
  transform: translateY(60px)
}

[data-disable-animations=true] .appear-animation {
  opacity: 1;
  transform: none
}

.js-drawer-open .appear-animation {
  opacity: 1;
  transform: translateY(0px);
}

.js-drawer-closing .appear-animation {
  transition-duration: 0s;
  transition-delay: 0.5s;
}

tool-tip[data-tool-tip-open=true] .tool-tip__inner {
  padding: 45px
}

@media only screen and (max-width:768px) {

  tool-tip[data-tool-tip-open=true] .tool-tip__inner {
    padding: 45px 20px 20px
  }
}

.tool-tip__close {
  padding: 10px;
}

[data-center-text=true] .footer-promotions {
  text-align: center
}

@media only screen and (max-width:768px) {
  .footer-promotions .grid__item {
    margin-bottom: 32px
  }

  .footer-promotions .grid__item:last-child {
    margin-bottom: 0;
  }
}


.collapsible-content__inner p a:after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0%;
  border-bottom: 2px solid;
  border-bottom-color: var(--colorFooterText);
  transition: width 0.5s ease;
}

.collapsible-content__inner p a {
  position: relative;
  text-decoration: none;
  border-bottom: 2px solid;

  border-color: {
      {
      settings.color_footer_text | default: "#fff" | color_modify: "alpha", 0.1
    }
  }
}

.collapsible-content.is-collapsed {
  max-height: 0;
  visibility: hidden;
}

.collapsible-content__inner p a:focus:after,
.collapsible-content__inner p a:hover:after {
  width: 100%;
}

.site-footer select {
  background-image: url('data:image/svg+xml,<svg aria-hidden="true" focusable="false" role="presentation" class="icon icon-chevron-down" width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M16 25.182.94 10.122 3.06 8 16 20.94 28.94 8l2.12 2.121L16 25.181Z" fill="%233D3936"/></svg>');
}

[data-center-text=true] .payment-icons {
  text-align: center
}

.payment-icons {
  -webkit-user-select: none;
  user-select: none;
  cursor: default
}

.payment-icons li {
  cursor: default;
  margin: 0 4px 0;
}

.errors,
.note {
  border-radius: 0;
  padding: 6px 12px;
  margin-bottom: 15px;
  border: 1px solid transparent;
  text-align: left
}

.errors ol,
.errors ul,
.note ol,
.note ul {
  margin-top: 0;
  margin-bottom: 0;
}

.errors li:last-child,
.note li:last-child {
  margin-bottom: 0;
}

.errors p,
.note p {
  margin-bottom: 0;
}

.note {
  border-color: var(--colorBorder);
}

.errors ul {
  list-style: disc outside;
  margin-left: 20px;
}

.note--success {
  color: #56ad6a;
  background-color: #ecfef0;
  border-color: #56ad6a
}

.note--success a {
  color: #56ad6a;
  text-decoration: underline
}

.note--success a:hover {
  text-decoration: none;
}

.errors,
.form-error {
  color: #d02e2e;
  background-color: #fff6f6;
  border-color: #d02e2e
}

.errors a,
.form-error a {
  color: #d02e2e;
  text-decoration: underline
}

.errors a:hover,
.form-error a:hover {
  text-decoration: none;
}

.rte:after {
  content: "";
  display: table;
  clear: both;
}

.rte {
  margin-bottom: 7.5px
}

@media only screen and (min-width:769px) {

  .rte {
    margin-bottom: 15px
  }
}

.rte:last-child {
  margin-bottom: 0;
}

.rte+.rte {
  margin-top: 30px;
}

.rte ol,
.rte p,
.rte table,
.rte ul {
  margin-bottom: 15px
}

@media only screen and (min-width:769px) {

  .rte ol,
  .rte p,
  .rte table,
  .rte ul {
    margin-bottom: 25px
  }
}

.rte ol:last-child,
.rte p:last-child,
.rte table:last-child,
.rte ul:last-child {
  margin-bottom: 0;
}

.rte ul ul {
  margin-bottom: 0;
}

.rte h1,
.rte h2,
.rte h3,
.rte h4,
.rte h5,
.rte h6 {
  margin-top: 60px;
  margin-bottom: 25px;
}

.rte h1:first-child,
.rte h2:first-child,
.rte h3:first-child,
.rte h4:first-child,
.rte h5:first-child,
.rte h6:first-child {
  margin-top: 0;
}

.rte h1 a,
.rte h2 a,
.rte h3 a,
.rte h4 a,
.rte h5 a,
.rte h6 a {
  text-decoration: none;
}

.rte meta:first-child+h1,
.rte meta:first-child+h2,
.rte meta:first-child+h3,
.rte meta:first-child+h4,
.rte meta:first-child+h5,
.rte meta:first-child+h6 {
  margin-top: 0;
}

.rte>div {
  margin-bottom: 15px
}

.rte>div:last-child {
  margin-bottom: 0;
}

.rte li {
  margin-bottom: 0;
}

.rte table {
  table-layout: fixed;
}

.rte--block {
  margin-bottom: 8px
}

@media only screen and (min-width:769px) {

  .rte--block {
    margin-bottom: 12px
  }
}

.rte-setting>p:last-child {
  margin-bottom: 0;
}

.rte-setting a,
.rte a {
  text-decoration: none;
}

.rte-setting img,
.rte img {
  height: auto;
}

.rte-setting a:not(.rte__image):not(.btn),
.rte a:not(.rte__image):not(.btn) {
  text-decoration: none;
  border-bottom: .5px solid;
  border-bottom-color: #3D3936;
  position: relative;
  display: inline-block;
  line-height: 100%;
}

.rte-setting a:not(.btn),
.rte a:not(.btn):after {
  content: "";
  position: absolute;
  bottom: -2px;
  left: 0;
  width: 0%;
  border-bottom: 2px solid currentColor;
  transition: width 0.5s ease;
}

.rte-setting a:not(.btn):focus:after,
.rte-setting a:not(.btn):hover:after,
.rte a:not(.btn):focus:after,
.rte a:not(.btn):hover:after {
  width: 100%;
}

.rte-setting a.rte__image:after,
.rte a.rte__image:after {
  content: none;
}

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

.rte--nomargin {
  margin-bottom: 0;
}

.header-layout {
  display: flex;
  justify-content: space-between;
}

.header-layout--center {
  align-items: center;
}

.header-item {
  display: flex;
  align-items: center;
  flex: 1 1 auto;
}

.header-item--logo {
  flex: 0 0 auto;
}

.header-item--icons {
  justify-content: flex-end;
  flex: 0 1 auto;
}

.header-layout--left-center .header-item--icons,
.header-layout--left-center .header-item--logo {
  flex: 0 0 200px;
  max-width: 50%
}

@media only screen and (min-width:769px) {

  .header-layout--left-center .header-item--icons,
  .header-layout--left-center .header-item--logo {
    min-width: 130px
  }
}

@media only screen and (min-width:769px) {

  .header-layout[data-logo-align=center] .header-item--logo {
    margin: 0 30px
  }
}

.header-layout[data-logo-align=center] .header-item--icons,
.header-layout[data-logo-align=center] .header-item--navigation {
  flex: 1 1 130px;
}

.header-item--navigation {
  justify-content: flex-end;
}

.header-item--logo-split {
  display: flex;
  justify-content: center;
  align-items: center;
  flex: 1 1 100%
}

.header-item--logo-split .header-item:not(.header-item--logo) {
  text-align: center;
  flex: 1 1 20%;
}

.header-item--split-left {
  justify-content: flex-end;
}

.header-item--left .site-nav {
  margin-left: -12px
}

@media only screen and (max-width:768px) {

  .header-item--left .site-nav {
    margin-left: -7.5px
  }
}

.header-item--icons .site-nav {
  margin-right: -12px
}

@media only screen and (max-width:768px) {

  .header-item--icons .site-nav {
    margin-right: -7.5px
  }
}

.site-header {
  position: relative;
  padding: 7px 0;
  background: var(--colorNav)
}

@media only screen and (min-width:769px) {

  .site-header {
    padding: 20px 0
  }

  .toolbar+.header-sticky-wrapper .site-header {
    border-top: 1px solid;

    border-top-color: {
        {
        settings.color_header_text | default: "#3D3936" | color_modify: "alpha", 0.1
      }
    }
  }
}

.site-header--stuck {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  transform: translate3d(0, -100%, 0);
  transition: none;
  z-index: 20
}

.js-drawer-open--search .site-header--stuck {
  z-index: 28
}

@media only screen and (min-width:769px) {

  .site-header--stuck {
    padding: 10px 0
  }
}

@media screen and (min-width:700px) and (max-height:550px) {
  .site-header--stuck {
    position: static;
  }
}

.site-header--opening {
  transform: translateZ(0);
}

.site-header__logo {
  position: relative;
  margin: 10px 0;
  display: block;
  font-size: 30px;
  z-index: 6
}

@media only screen and (min-width:769px) {

  .text-center .site-header__logo {
    padding-right: 0;
    margin: 10px auto
  }
}

.header-layout[data-logo-align=center] .site-header__logo {
  margin-left: auto;
  margin-right: auto;
  text-align: center
}

.site-header__logo a {
  max-width: 100%;
}

.site-header__logo a,
.site-header__logo a:hover {
  text-decoration: none;
}

.site-header__logo img {
  width: 100%;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.site-header__logo-link {
  display: flex;
  position: relative;
  align-items: center;
  color: var(--colorNavText)
}

.site-header__logo-link:hover {
  color: var(--colorNavText);
}

@media only screen and (max-width:768px) {

  .site-header__logo-link {
    margin: 0 auto
  }
}

.header-sticky-wrapper {
  position: relative;
  z-index: 28
}

.js-drawer-open:not(.js-drawer-open--search) .header-sticky-wrapper {
  z-index: 6
}

.header-wrapper--sticky {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 6;
  background: none;
  background: linear-gradient(180deg, rgba(0, 0, 0, 0.3) 0%, transparent)
}

.header-wrapper--sticky .site-header:not(.site-header--stuck) {
  background: none;
}

.js-drawer-open--search .header-wrapper--sticky {
  z-index: 28
}

.site-header__search-container {
  display: none;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 200%;
  height: 100%;
  z-index: 28;
  overflow: hidden
}

.site-header__search-container.is-active {
  display: block;
  overflow: visible;
  bottom: 0;
}

.site-header__search {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 28;
  display: flex;
  transform: translate3d(0, -110%, 0);
  background-color: var(--colorBody);
  color: var(--colorTextBody);
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.1)
}

.site-header__search .page-width {
  flex: 1 1 100%;
  display: flex;
  align-items: stretch
}

@media only screen and (max-width:768px) {

  .site-header__search .page-width {
    padding: 0
  }
}

.is-active .site-header__search {
  transform: translateZ(0)
}

.site-header__search .icon {
  width: 30px;
  height: 30px;
}

.site-header__search-form {
  flex: 1 1 auto;
  display: flex
}

@media only screen and (min-width:769px) {

  .site-header__search-form {
    padding: 15px 0
  }
}

.site-header__search-input {
  border: 0;
  width: 100px;
  flex: 1 1 auto
}

.site-header__search-btn {
  padding: 0 15px;
}

@media only screen and (min-width:769px) {
  .site-header__search-btn--submit {
    padding: 0 15px 0 0
  }

  .site-header__search-btn--submit .icon {
    position: relative;
    top: -1px;
    width: 28px;
    height: 28px;
  }
}

.header--is-stuck .announcement-bar .slideshow__pause,
.header--is-stuck .announcement-bar .slideshow__play {
  display: none;
}

.predictive-results {
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background-color: var(--colorBody);
  color: var(--colorTextBody);
  max-height: 70vh;
  max-height: calc(90vh - 100%);
  overflow: auto;
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.09)
}

@media only screen and (min-width:769px) {

  .predictive-results {
    max-height: calc(100vh - 100% - 33px)
  }
}

.predictive__label {
  border-bottom: 1px solid;
  border-bottom-color: var(--colorBorder);
  padding-bottom: 5px;
  margin-bottom: 20px;
}

.predictive-result__layout {
  display: flex;
  flex-wrap: wrap;
  padding: 10px;
  margin-left: -10px;
  margin-right: -10px
}

.predictive-result__layout>div {
  margin: 0 10px 30px
}

.predictive-result__layout>div:last-child {
  margin-bottom: 0;
}

.predictive-result__layout [data-type-products] {
  flex: 1 1 60%;
  margin-bottom: 0;
}

.predictive-result__layout [data-type-collections],
.predictive-result__layout [data-type-pages] {
  flex: 1 1 200px;
}

.predictive-result__layout [data-type-articles] {
  flex: 1 1 60%;
}

.predictive-result__layout [data-type-articles] .grid-product__meta {
  padding-top: 0 !important;
}

.predictive__image-wrap {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0
}

.predictive__image-wrap img {
  -o-object-position: 50% 0;
  object-position: 50% 0;
}

.predictive-results__footer {
  padding: 0 0 30px;
}

.search-bar {
  max-width: 100%;
}

.search-bar--page {
  max-width: 300px;
  margin-top: -15px
}

[data-type_headers_align_text=true] .search-bar--page {
  margin: -15px auto 0
}

.search-bar--page .input-group-btn .icon-search {
  vertical-align: middle;
}

.search-bar--page .input-group-btn .icon-search circle {
  stroke: #fff;
}

.search-bar--page .input-group-btn .icon-search path {
  fill: #fff;
}

.search-bar--drawer {
  margin-bottom: 15px;
  padding-bottom: 15px;
  border-bottom: 1px solid;
  border-bottom-color: var(--colorBorder)
}

.search-bar--drawer input {
  border: 0;
}

.search-bar .icon {
  width: 24px;
  height: 24px;
  vertical-align: middle;
}

.toolbar {
  background: var(--colorNav);
  color: var(--colorNavText);
  font-size: calc(var(--typeBaseSize)*0.85)
}

.toolbar a {
  color: var(--colorNavText);
}

.site-header--stuck .toolbar {
  display: none
}

.toolbar--transparent {
  background-color: transparent;
  color: #fff;
  border-bottom: none
}

.toolbar--transparent a {
  color: #fff;
}

.toolbar--transparent .toolbar__content {
  border-bottom: 1px solid hsla(0, 0%, 100%, 0.2);
}

.toolbar__content {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}

.toolbar__item {
  flex: 0 1 auto;
  padding: 0 5px
}

.toolbar__item:first-child {
  padding-left: 0;
}

.toolbar__item:last-child {
  padding-right: 0;
}

.toolbar__item .faux-select,
.toolbar__item select {
  font-size: 14px;
  padding-top: 5px;
  padding-bottom: 5px;
  padding-left: 5px;
}

.toolbar__item--menu {
  flex: 1 1 auto;
}

.toolbar__menu {
  margin-left: -10px
}

.toolbar__menu a {
  display: block;
  padding: 5px 10px;
}

.toolbar__social {
  text-align: right
}

.toolbar__social a {
  display: block;
  padding: 5px;
}

.toolbar__social .icon {
  position: relative;
  top: -2px;
  width: 16px;
  height: 16px;
}

.section-header {
  margin-bottom: 16px;
}

[data-type_headers_align_text=true] .section-header {
  text-align: center
}

.section-header select {
  display: inline-block;
  vertical-align: middle;
}

.section-header--flush {
  margin-bottom: 0;
}

.section-header--with-link {
  display: flex;
}

.section-header--with-link select {
  flex: 0 1 auto;
}

.section-header--hero {
  position: relative;
  flex: 1 1 100%;
  color: var(--colorHeroText);
  margin-bottom: 0
}

.section-header--hero a {
  color: var(--colorHeroText);
}

.section-header__shadow {
  position: relative;
  display: inline-block
}

.section-header__shadow:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: auto;
  background: radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
  margin: -100px -200px -100px -200px;
  z-index: -1;
}

.section-header__shadow .breadcrumb,
.section-header__shadow .section-header__title {
  position: relative;
}

.section-header__title {
  margin-bottom: 0
}

.section-header--with-link .section-header__title {
  flex: 1 1 auto;
  margin-bottom: 0;
}


.section-header__link {
  flex: 0 1 auto;
}

.section-header--with-link .section-header__link {
  white-space: nowrap;
  align-self: center;
}

.section-header--404 {
  padding-top: 80px;
}

.section-header select {
  margin: 10px 0;
}

.section-header p {
  margin: 10px 0;
}

.site-nav {
  margin: 0;
}

.header-layout--left .site-navigation {
  padding-left: 24px;
  margin-top: 10px;
}

.site-nav__icons {
  white-space: nowrap;
}

.site-nav__item {
  position: relative;
  display: inline-block;
  margin: 0
}

.site-nav__item li {
  display: block;
}

.site-nav__item .icon-chevron-down {
  width: 10px;
  height: 10px;
}

.site-nav__link {
  display: inline-block;
  vertical-align: middle;
  text-decoration: none;
  padding: 20px 15px 23px;
  white-space: nowrap;
  color: var(--colorNavText);
  font-family: var(--typeHeaderSecondary), sans-serif;
  font-weight: var(--typeHeaderWeight);
  line-height: var(--typeHeaderLineHeight);
  font-size: var(--typeBaseSize);
  text-transform: uppercase;
  letter-spacing: 0;
}

.site-nav__link:hover {
  color: var(--colorNavText);
}

.is-light .site-nav__link {
  color: #fff
}

.is-light .site-nav__link:hover {
  color: #fff;
}

.site-nav--has-dropdown>.site-nav__link {
  position: relative;
  z-index: 6
}

.site-nav__link .icon-chevron-down {
  margin-left: 5px;
}

@media only screen and (max-width:959px) {
  .header-layout--center .site-nav__link {
    padding-left: 2px;
    padding-right: 2px
  }
}

.site-nav__link--underline {
  position: relative
}

.site-nav__link--underline:after {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  right: 100%;
  margin: 0 15px;
  border-bottom: 2px solid;
  border-bottom-color: var(--colorNavText);
  transition: right 0.5s
}

[data-disable-animations=true] .site-nav__link--underline:after {
  transition: none
}

.is-light .site-nav__item:not(.site-nav--has-dropdown) .site-nav__link--underline:after {
  border-bottom-color: #fff
}

.site-nav--has-dropdown .site-nav__link--underline:after {
  border-bottom-color: var(--colorNavText)
}

.site-nav__item:hover .site-nav__link--underline:after {
  right: 0
}

.site-nav--has-dropdown {
  z-index: 6
}

.site-nav--has-dropdown.is-focused,
.site-nav--has-dropdown:hover {
  z-index: 7;
}

.site-nav--has-dropdown.is-focused>a,
.site-nav--has-dropdown:hover>a {
  color: var(--colorNavText) !important;
  background-color: var(--colorBody);
  opacity: 1;
  transition: none;
}

.site-nav__link--icon,
.site-nav__link {
  padding-left: 12px;
  padding-right: 12px;
}

.site-nav__link--icon {
  position: relative;
}

.site-nav__link--icon .icon {
  width: 24px;
  height: 24px;
}

.site-nav__dropdown {
  position: absolute;
  left: 0;
  margin: 0;
  z-index: 5;
  display: block;
  visibility: hidden;
  background-color: var(--colorBody);
  min-width: 100%;
  padding: 10px 0 5px;
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.09);
  transform: translate3d(0px, -12px, 0px)
}

.site-nav--has-dropdown:hover .site-nav__dropdown {
  display: block;
  visibility: visible;
  transform: translateZ(0px);
  transition: all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95)
}

.site-nav__dropdown li {
  margin: 0;
}

.site-nav__dropdown>li {
  position: relative
}

.site-nav__dropdown>li>a {
  position: relative;
  z-index: 6;
}

.site-nav__dropdown a:not(.btn) {
  background-color: var(--colorBody);
}

.site-nav__deep-dropdown {
  background-color: var(--colorBody);
  box-shadow: 0px 10px 20px rgba(0, 0, 0, 0.09);
  position: absolute;
  top: 0;
  left: 100%;
  margin: 0;
  visibility: hidden;
  opacity: 0;
  z-index: 5;
  transform: translate3d(-12px, 0px, 0px)
}

.is-focused+.site-nav__deep-dropdown,
.site-nav__deep-dropdown-trigger:hover .site-nav__deep-dropdown {
  visibility: visible;
  opacity: 1;
  transform: translateZ(0px);
  transition: all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95)
}

.site-nav__deep-dropdown:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 10px;
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.09), transparent);
  pointer-events: none;
}

.site-nav__deep-dropdown-trigger:hover .site-nav__dropdown-link--has-children {
  background-color: var(--colorBodyDim)
}

.site-nav__dropdown-link--has-children:focus,
.site-nav__dropdown-link--has-children:hover {
  background-color: var(--colorBodyDim);
}

.site-nav__deep-dropdown-trigger .icon-chevron-down {
  position: absolute;
  top: 50%;
  right: 10px;
  width: 10px;
  height: 10px;
  transform: rotate(-90deg) translateX(50%);
}

.site-nav__items-count {
  background-color: var(--colorCartDot);
  width: 20px;
  height: 20px;
  border-radius: 50%;
  font-family: var(--typeHeaderSecondary);
  font-size: calc(var(--typeBaseSize)*0.75);
  color: var(--colorTextBody);
  position: absolute;
  transform: translate(43%, -14px);
  display: flex;
  align-items: center;
  justify-content: center;
}

.mobile-nav {
  margin: -20px -20px 0;
  margin: calc(var(--drawer-gutter)*-1) calc(var(--drawer-gutter)*-1) 0
}

.mobile-nav li {
  margin-bottom: 0;
  list-style: none;
}

.mobile-nav__search {
  padding: 15px;
}

.cart-link {
  position: relative;
  display: block;
  margin-top: -2px;
}

.cart-link__bubble {
  display: none;
}

.cart-link__bubble--visible {
  display: block;
  position: absolute;
  top: 50%;
  right: 0px;
  width: 15px;
  height: 15px;
  background-color: var(--colorCartDot);
  border: 2px solid;
  border-color: var(--colorBody);
  border-radius: 50%
}

[data-icon=cart] .cart-link__bubble--visible {
  top: 0;
  right: -4px
}

[data-icon=bag-minimal] .cart-link__bubble--visible {
  top: 50%;
  right: 0
}

[data-type_headers_align_text=true] .breadcrumb {
  text-align: center
}

.breadcrumb {
  font-size: calc(var(--typeBaseSize)*0.85);
  margin: -25px 0 10px
}

.template-product .breadcrumb {
  margin-top: 10px
}

@media only screen and (min-width:769px) {

  .template-product .breadcrumb {
    text-align: left
  }
}

@media only screen and (max-width:768px) {

  .breadcrumb {
    margin-bottom: 15px
  }
}

.breadcrumb__divider {
  color: currentColor;
}

.megamenu {
  padding: 39px 0;
  line-height: 1.8;
  transform: none;
  opacity: 0;
  transition: all 300ms cubic-bezier(0.2, 0.06, 0.05, 0.95);
  transition-delay: 0.3s
}

.is-focused>.megamenu,
.site-nav--has-dropdown:hover .megamenu {
  opacity: 1;
  transition-delay: 0s
}

.is-focused>.megamenu .appear-animation,
.site-nav--has-dropdown:hover .megamenu .appear-animation {
  opacity: 1;
  transform: none;
}

.site-nav--is-megamenu.site-nav__item {
  position: static;
}

.megamenu__collection-image {
  display: block;
  background-repeat: no-repeat;
  background-position: top;
  background-size: cover;
  height: 0;
  padding-bottom: 46%;
  margin-bottom: 20px;
}

.text-center .megamenu .grid {
  text-align: left
}

.text-center .megamenu .grid .grid__item {
  float: none;
  display: inline-block;
  vertical-align: top;
  text-align: left;
  margin-bottom: 40px;
}

.megamenu .site-nav__dropdown-link:not(.site-nav__dropdown-link--top-level) {
  font-size: calc(var(--typeBaseSize)*0.875);
  font-weight: var(--typeBaseWeight);
}


.modal {
  display: none;
  bottom: 0;
  left: 0;
  opacity: 1;
  overflow: hidden;
  position: fixed;
  right: 0;
  top: 0;
  z-index: 30;
  color: #fff;
  align-items: center;
  justify-content: center
}

.modal.modal--quick-shop {
  align-items: flex-start;
}

.modal-open .modal .modal__inner {
  animation: modal-open 0.5s forwards;
}

.modal-open .modal:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--colorModalBg);
  animation: overlay-on 0.5s forwards;
  cursor: pointer;
}

.modal-closing .modal .modal__inner {
  animation: modal-closing 0.5s forwards;
}

.modal-closing .modal:before {
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: var(--colorModalBg);
  animation: overlay-off 0.5s forwards;
}

.modal-open--solid .modal:before {
  background-color: var(--colorModalBg);
}

.modal-open .modal--solid:before {
  background-color: var(--colorModalBg);
  animation: full-overlay-on 0.5s forwards;
}

.modal-closing .modal--solid:before {
  background-color: var(--colorModalBg);
  animation: full-overlay-off 0.5s forwards;
}

.modal--is-closing {
  display: flex !important;
  overflow: hidden;
}

.modal--is-active {
  display: flex !important;
  overflow: hidden;
}

@media only screen and (min-width:769px) {
  .modal-open {
    overflow: hidden;
  }
}

.modal__inner {
  transform-style: preserve-3d;
  flex: 0 1 auto;
  margin: 15px;
  max-width: calc(100% - 15px);
  display: flex;
  align-items: center
}

@media only screen and (min-width:769px) {

  .modal__inner {
    margin: 40px;
    max-width: calc(100% - 80px)
  }
}

.modal--square .modal__inner {
  background-color: var(--colorBody);
  color: var(--colorTextBody);
  box-shadow: 0 15px 45px rgba(0, 0, 0, 0.1)
}

.modal__inner img {
  display: block;
  max-height: 90vh;
}

.modal__inner .image-wrap img {
  max-height: none;
}

.modal__centered {
  position: relative;
  flex: 0 1 auto;
  min-width: 1px;
  max-width: 100%;
}

.modal--square .modal__centered-content {
  max-height: 80vh;
  padding: 22.5px;
  min-width: 200px;
  min-height: 200px;
  overflow: auto;
  -webkit-overflow-scrolling: touch
}

@media only screen and (min-width:769px) {

  .modal--square .modal__centered-content {
    padding: 45px;
    max-height: 90vh;
    max-width: 1200px
  }
}

.modal__close {
  border: 0;
  padding: 15px;
  position: fixed;
  top: 0;
  right: 0;
  color: #fff
}

@media only screen and (min-width:769px) {

  .modal__close {
    padding: 30px
  }
}

.modal__close .icon {
  width: 28px;
  height: 28px;
}

.modal__close:focus,
.modal__close:hover {
  color: #fff;
}

.modal--square .modal__close {
  position: absolute;
  color: var(--colorTextBody);
  padding: 10px
}

.modal--square .modal__close:focus,
.modal--square .modal__close:hover {
  color: var(--colorTextBody);
}

.modal .page-content,
.modal .page-width {
  padding: 0;
}

.popup-cta {
  margin-bottom: 15px;
}

@media only screen and (max-width:768px) {
  .modal--mobile-friendly {
    top: auto;
    bottom: 0;
    overflow: auto
  }

  .modal--mobile-friendly.modal--square .modal__centered-content {
    padding: 20px 20px 0;
  }

  .modal--mobile-friendly.modal--is-active {
    overflow: auto;
  }

  .modal-open .modal--mobile-friendly:before {
    display: none;
  }

  .modal--mobile-friendly .modal__inner {
    margin: 0;
    border: 2px solid;
    border-color: var(--colorTextBody);
  }

  .modal--mobile-friendly .h1 {
    padding-right: 25px;
  }

  .modal--mobile-friendly input {
    font-size: 16px !important;
  }

  .modal--mobile-friendly .text-close {
    display: none;
  }
}

.drawer .js-qty__wrapper {
  background-color: transparent;
  border-color: var(--colorTextBody);
  height: 40px;
  max-width: 112px;
}

.drawer .js-qty__num {
  color: var(--colorTextBody);
  height: 36px
}

.currency-flag {
  transform: scale(0.55);
  margin: -0.55rem;
}

@media only screen and (max-width:768px) {
  [data-disclosure-currency] .disclosure-list {
    left: 50%;
    transform: translateX(-50%);
    max-width: 95vw;
  }
}

.collapsibles-wrapper--border-bottom {
  border-bottom: 1px solid var(--colorBorder);
}

.collapsibles-wrapper--border-bottom+.collapsibles-wrapper--border-bottom .collapsible-trigger-btn--borders {
  border-top: 0;
}

.product-block--tab .collapsibles-wrapper--border-bottom:first-of-type {
  border-top: 1px solid var(--colorBorder);
}

.product-block--tab+.product-block--tab .collapsibles-wrapper--border-bottom {
  border-top: 0;
}

.collapsible-trigger {
  color: inherit;
  position: relative;
}

.collapsible-trigger__icon {
  display: block;
  position: absolute;
  right: 0;
  top: 50%;
  width: 24px;
  height: 24px;
  transform: translateY(-50%);

  .icon {
    width: 24px;
    height: 24px;
  }
}

.mobile-nav__has-sublist .collapsible-trigger__icon {
  right: var(--drawer-gutter);
}

.collapsible-trigger__icon .icon {
  display: block;
  transition: all 0.1s ease-in
}

.collapsible-trigger__icon--circle {
  border: 1px solid;
  border-color: var(--colorBtnPrimary);
  width: 24px;
  height: 24px;
  border-radius: 24px;
  text-align: center
}

.collapsible-trigger__icon--circle .icon {
  position: absolute;
  top: 56%;
  left: 50%;
  transform: translate(-50%, -56%);
}

.collapsible-trigger.is-open .collapsible-trigger__icon>.icon-chevron-down {
  transform: scaleY(-1);
}

.collapsible-trigger.is-open .collapsible-trigger__icon--circle>.icon-chevron-down {
  transform: translate(-50%, -56%) scaleY(-1);
}

/* .collapsible-content{
  transition:opacity 0.3s cubic-bezier(.25,.46,.45,.94),height 0.3s cubic-bezier(.25,.46,.45,.94)
} */

.collapsible-content.is-open {
  max-height: 1000px;
  visibility: visible;
}

.collapsible-content--all {
  visibility: hidden;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  height: 0
}

@media only screen and (max-width:768px) {
  .collapsible-content--small {
    visibility: hidden;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    height: 0
  }
}

.collapsible-content__inner {
  transition: transform 0.3s cubic-bezier(.25, .46, .45, .94);
  padding-bottom: 15px;
}

.rte.collapsible-content__inner--faq {
  padding-bottom: 30px;
}

.collapsible-trigger[aria-expanded=true] .collapsible-label__closed {
  display: none
}

.collapsible-label__open {
  display: none
}

.collapsible-trigger[aria-expanded=true] .collapsible-label__open {
  display: inline-block
}

h2.accordion-title {
  margin-bottom: 0px;
}

.product-accordion__trigger {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

.collapsible-content--sidebar {
  visibility: hidden;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  height: 0
}

@media only screen and (min-width:769px) {
  .collapsible-content--sidebar.is-open {
    overflow: visible;
    overflow: initial;
    visibility: visible;
    height: auto;
  }
}

.pswp {
  display: none;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  overflow: hidden;
  touch-action: none;
  z-index: 1500;
  -webkit-text-size-adjust: 100%;
  -webkit-backface-visibility: hidden;
  outline: none;
}

.pswp img {
  max-width: none;
}

.pswp--animate_opacity {
  opacity: 0.001;
  will-change: opacity;
  transition: opacity 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp--open {
  display: block;
}

.pswp--zoom-allowed .pswp__img {
  cursor: zoom-in;
}

.pswp--zoomed-in .pswp__img {
  cursor: grab;
}

.pswp--dragging .pswp__img {
  cursor: grabbing;
}

.pswp__bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: var(--colorBody);
  opacity: 0;
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
}

.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;
}

.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;
  transition: transform 333ms cubic-bezier(0.4, 0, 0.22, 1);
}

.pswp__bg {
  will-change: opacity;
  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;
}

.pswp__img--placeholder {
  -webkit-backface-visibility: hidden;
}

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

.pswp__error-msg {
  position: absolute;
  left: 0;
  top: 50%;
  width: 100%;
  text-align: center;
  line-height: 16px;
  margin-top: -8px;
  color: #ccc;
}

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

.pswp__button {
  position: relative
}

.pswp__button:after {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.pswp__button svg {
  pointer-events: none;
}

.pswp__button[disabled] {
  opacity: 0;
  pointer-events: none;
}

.pswp__ui {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  bottom: 30px;
  left: 0;
  right: 0;
  transform: translateY(0);
  transition: transform 0.25s 0.6s
}

.pswp__ui .btn {
  margin: 12px;
  padding: 8px;
  border-width: 1px;
}

.pswp__ui--hidden {
  transform: translateY(150%);
  transition: transform 0.25s;
}

html.pswp-open-in-ios,
html.pswp-open-in-ios body {
  background: #444;
  height: var(--window-inner-height);
  overflow: hidden;
  box-sizing: border-box;
}

.pswp-open-in-ios body>* {
  display: none;
}

.pswp-open-in-ios body .pswp.pswp--open {
  display: block;
}

.disclosure {
  position: relative;
}

.disclosure__toggle {
  white-space: nowrap;
}

.disclosure-list {
  background-color: var(--colorBody);
  color: var(--colorTextBody);
  bottom: 100%;
  padding: 10px 0px;
  margin: 0;
  position: absolute;
  display: none;
  min-height: 92px;
  max-height: 60vh;
  overflow-y: auto;
  border-radius: 0;
  box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.09)
}

.disclosure-list a {
  color: currentColor;
}

.disclosure-list--down {
  bottom: auto;
  top: 100%;
  z-index: 30;
}

.disclosure-list--left {
  right: 0;
}

.disclosure-list--visible {
  display: block;
}

.disclosure-list__item {
  white-space: nowrap;
  padding: 5px 15px 4px;
  text-align: left;
}

.disclosure-list__option:focus .disclosure-list__label,
.disclosure-list__option:hover .disclosure-list__label {
  text-decoration: underline;
}

.disclosure-list__item--current .disclosure-list__label {
  text-decoration: underline;
}

.disclosure-list__label {
  display: inline-block;
  vertical-align: middle;
  text-underline-offset: 0.2rem
}

[data-disclosure-currency] .disclosure-list__label {
  padding-left: 10px
}

.disclosure-list__label span {
  border-bottom: 2px solid transparent
}

.is-active .disclosure-list__label span {
  border-bottom: 2px solid currentColor
}

.multi-selectors {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
}

.multi-selectors__item {
  margin: 0 20px 10px
}

@media only screen and (max-width:768px) {

  .multi-selectors__item {
    margin: 10px 20px
  }
}

.toolbar .multi-selectors__item {
  margin-right: 0;
  margin-bottom: 0
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  opacity: 1;
  background: var(--colorBody);
  border-radius: 50px;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: var(--colorTextBody);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: var(--colorTextBody);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active {
  color: var(--colorTextBody);

  background-color: {
      {
      settings.color_body_text | default: "#1c1d1d" | color_modify: "alpha", 0.05
    }
  }

  ;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  border-color: {
      {
      settings.color_body_text | default: "#1c1d1d" | color_modify: "alpha", 0.05
    }
  }

  ;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background-color: var(--colorTextBody);
  color: var(--colorBody);
  border-radius: 100%;
  border: 1px solid;

  border-color: {
      {
      settings.color_body_bg | default: "#fff" | color_modify: "alpha", 0.05
    }
  }
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover {
  color: var(--colorBody);
}

.product-single__view-in-space {
  display: block;
  color: var(--colorTextBody);

  background-color: {
      {
      settings.color_body_text | default: "#1c1d1d" | color_modify: "alpha", 0.08
    }
  }

  ;
  width:80%;
  width:calc(80% - 4px);
  margin:40px 10% 10px;
  padding:5px 10px 10px
}

.product-single__view-in-space[data-shopify-xr-hidden] {
  display: none;
}

.product-single__view-in-space-text {
  font-size: calc(var(--typeBaseSize)*0.85);
  display: inline-block;
  vertical-align: middle;
  margin-left: 5px;
}

.shopify-model-viewer-ui,
.shopify-model-viewer-ui model-viewer {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.shopify-model-viewer-ui__button[hidden] {
  display: none;
}

.product-single__close-media {
  position: absolute;
  top: 10px;
  right: 10px;
  z-index: 2;
}

.price-range__slider-wrapper {
  padding: 0 8px 8px
}

@media only screen and (max-width:768px) {

  .price-range__slider-wrapper {
    padding: 0 10px 8px
  }
}

.price-range__input {
  display: none;
}

.price-range__display-wrapper {
  display: flex;
  flex: 1 1 auto;
  justify-content: space-between;
  padding: 0;
  padding-bottom: 8px;
  width: 100%
}

@media only screen and (max-width:768px) {

  .price-range__display-wrapper {
    padding: 0
  }
}

.noUi-horizontal .noUi-handle {
  border: 0;
  border-radius: 50%;
  background: var(--colorTextBody);
  box-shadow: 0 0 1px 2px #fff;
  width: 12px;
  height: 12px;
  cursor: pointer;
  right: -6px;
  top: -3px
}

.noUi-horizontal .noUi-handle:focus,
.noUi-horizontal .noUi-handle:hover {
  width: 14px;
  height: 14px;
  right: -7px;
  top: -4px;
}

.noUi-horizontal .noUi-handle:after,
.noUi-horizontal .noUi-handle:before {
  content: none;
}

.noUi-target {
  background: #f4f4f4;
  border: 0;
  box-shadow: none;
}

.noUi-connect {
  background: var(--colorTextBody);
}

.noUi-horizontal {
  height: 6px;
}

::-webkit-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

:-moz-placeholder {
  color: inherit;
  opacity: 0.5;
}

:-ms-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

::-ms-input-placeholder {
  color: inherit;
  opacity: 1;
}

input,
select,
textarea {
  background-color: inherit;
  color: inherit
}

input[type=image] {
  background-color: transparent;
}

[data-center-text=true] .social-sharing {
  text-align: center
}

.social-sharing .icon {
  height: 18px;
  width: 18px;
}

.social-sharing__link {
  display: inline-block;
  color: var(--colorTextBody);
  border-radius: 2px;
  margin: 0 18px 0 0;
  text-decoration: none;
  font-weight: 400
}

.social-sharing__link:last-child {
  margin-right: 0;
}

.social-sharing__title {
  font-size: calc(var(--typeBaseSize)*0.85);
  display: inline-block;
  vertical-align: middle;
  padding-right: 15px;
  padding-left: 3px;
}

.grid-search {
  margin-bottom: 30px;
}

.grid-search__product {
  position: relative;
  text-align: center;
}

.grid-search__page-link {
  display: block;

  background-color: {
      {
      settings.color_body_bg | default: "#fff" | color_darken: 2
    }
  }

  ;
  padding:20px;
  color:var(--colorTextBody);
  overflow:hidden;
  text-overflow:ellipsis
}

.grid-search__page-link:focus,
.grid-search__page-link:hover {
  background-color: {
      {
      settings.color_body_bg | default: "#fff" | color_darken: 4
    }
  }

  ;
}

.grid-search__page-content {
  display: block;
  height: 100%;
  overflow: hidden;
}

.grid-search__page-content img {
  display: block;
  margin-bottom: 10px;
}

.grid-search__image {
  display: block;
  padding: 20px;
  margin: 0 auto;
  max-height: 100%;
  max-width: 100%
}

@media only screen and (min-width:769px) {

  .grid-search__image {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
  }
}

.index-section {
  margin: 48px 0;
}

.index-section--small {
  margin: 18px 0;
}

.index-section+.index-section,
.index-section+.index-section--hidden,
.main-content+.index-section {
  margin-top: 0;
}

.index-section--flush {
  margin: 0;
}

.section--divider {
  border-top: 1px solid;
  border-top-color: var(--colorBorder);
  padding-top: 40px;
}

.index-section--faq {
  margin-bottom: 40px;
}


.template-challange .index-section--footer {
  display: none;
}

.testimonials-section {
  padding: 25.5px 0;
}

.testimonials-section--with-divider {
  border-top: 1px solid;
  border-top-color: var(--colorBorder);
}

@media only screen and (min-width:769px) {
  .index-section {
    margin: 64px 0;
  }

  .index-section--small {
    margin: 30px 0;
  }

  .section--divider {
    padding-top: 75px;
  }

  .index-section--faq {
    margin: 75px 0 37.5px;
  }

  .testimonials-section {
    padding: 40px 0;
  }
}

.page-blocks--flush .page-width {
  padding: 0;
}

.page-blocks>div:first-child .index-section {
  margin-top: 0;
}

.feature-row-wrapper {
  overflow: hidden;
  direction: ltr;
}

.feature-row {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center
}

@media only screen and (max-width:768px) {

  .feature-row {
    flex-direction: column;
    margin: 0
  }
}

@media only screen and (max-width:959px) {
  .feature-row--small-none {
    display: block;
  }
}

.feature-row__item {
  flex: 0 1 57%;
  margin: 0 auto
}

@media only screen and (min-width:769px) {
  .feature-row__item {
    flex: 0 1 50%;
  }
}

@media only screen and (min-width:960px) {
  .feature-row__item {
    flex: 0 1 57%;
  }
}

@media only screen and (max-width:768px) {

  .feature-row__item {
    flex: 1 1 auto;
    max-width: 100%;
    min-width: 100%
  }
}

.feature-row__item--overlap-images {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 15px;
  margin: 0 0 0 -30px
}

@media only screen and (min-width:769px) {

  .feature-row__item--overlap-images {
    padding: 50px 0;
    margin: 0 auto
  }
}

.feature-row__item--overlap-images>* {
  width: 50%
}

.feature-row__item--overlap-images>:first-child {
  z-index: 1;
  transform: translate(30px, 30px)
}

@media only screen and (min-width:769px) {

  .feature-row__item--overlap-images>:first-child {
    transform: translate(50px, 50px)
  }
}

.feature-row__item--overlap-images svg {
  border: 2px solid;
  border-color: var(--colorBody);
}

.feature-row__image {
  display: block;
  margin: 0 auto;
  order: 1
}

@media only screen and (min-width:769px) {

  .feature-row__image {
    order: 2
  }
}

.feature-row__text {
  min-width: 43%;
  flex: 0 1 43%;
  padding: 0
}

@media only screen and (max-width:768px) {

  .feature-row__text {
    order: 2;
    margin-top: 0;
    padding: 30px 20px 0;
    padding-bottom: 0
  }
}

.feature-row__text .rte {
  margin: 0;
}

.feature-row__text .btn {
  margin-top: 15px;
}

@media only screen and (min-width:769px) {
  .feature-row__text--left {
    padding-left: 60px;
  }

  .feature-row__text--right {
    padding-right: 60px;
    margin: 0;
  }
}

.product-block {
  margin-bottom: 25px
}

.product-block hr {
  margin: 0;
}

.product-block--tab+.product-block--tab {
  margin-top: -25px;
}

.product-block--sales-point+.product-block--sales-point {
  margin-top: -20px;
}

.product-block--header+.product-block--price {
  margin-top: -20px;
}

.theme-block {
  margin-bottom: 30px
}

.theme-block:last-child {
  margin-bottom: 0;
}

.slideshow-wrapper {
  position: relative;
}

.slideshow__pause:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: var(--colorBtnPrimaryText);
  background-color: var(--colorBtnPrimary);
  padding: 10px;
  z-index: 10000;
  transition: none
}

.video-is-playing .slideshow__pause:focus {
  display: none
}

.slideshow__pause-stop {
  display: block
}

.is-paused .slideshow__pause-stop {
  display: none
}

.slideshow__pause-play {
  display: none
}

.is-paused .slideshow__pause-play {
  display: block
}

.slideshow__slide {
  display: none;
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden
}

.slideshow__slide:first-child {
  display: block;
}

.flickity-slider .slideshow__slide {
  display: block
}

.hero {
  position: relative;
  overflow: hidden;
  background: var(--colorLargeImageBg);
}

.hero__media-container {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}

.hero__image-wrapper,
.hero__media {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%
}

.hero__image-wrapper:before,
.hero__media:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 3;
  background-color: var(--colorImageOverlay);
  opacity: var(--colorImageOverlayOpacity)
}

.video-interactable .hero__image-wrapper:before,
.video-interactable .hero__media:before {
  pointer-events: none
}

.hero__image {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  -o-object-fit: cover;
  object-fit: cover;
}

.hero__media {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: top;
  z-index: 1;
}

.hero__image-wrapper--no-overlay:before {
  content: none;
}

.hero__media iframe,
.hero__media video {
  width: 100%;
  height: 100%;
  pointer-events: none
}

.video-interactable .hero__media iframe,
.video-interactable .hero__media video {
  pointer-events: auto
}

.video-parent-section.loading .hero__media iframe,
.video-parent-section.loading .hero__media video {
  opacity: 0.01
}

.video-parent-section.loaded .hero__media iframe,
.video-parent-section.loaded .hero__media video {
  opacity: 1;
  animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition: none
}

.hero__media video {
  position: relative;
  -o-object-fit: cover;
  object-fit: cover;
}

.hero__media iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 300%;
  left: -100%;
  max-width: none
}

@media screen and (min-width:1140px) {

  .hero__media iframe {
    width: 100%;
    height: 300%;
    left: auto;
    top: -100%
  }
}

.vimeo-mobile-trigger {
  display: block;
  position: absolute;
  width: 100%;
  z-index: 2;
  margin-top: 90px
}

.hero__text-content .vimeo-mobile-trigger {
  bottom: 120%
}

.vimeo-mobile-trigger .icon {
  width: 40px;
  height: 40px;
  background-color: #fff;
  border-radius: 50%;
  padding: 10px;
}

.hero__text-wrap {
  position: relative;
  height: 100%;
  color: var(--colorHeroText);
}

.video-interactable .hero__text-wrap {
  pointer-events: none
}

.hero__text-wrap .page-width {
  display: table;
  width: 100%;
  height: 100%;
}

.hero__text-content {
  position: relative;
  padding: 16px 0;
  z-index: 4
}

@media only screen and (min-width:769px) {
  .hero__text-content {
    padding: 45px 0
  }
}

[data-dots=true] .hero__text-content {
  padding-bottom: 24px;
}

@media only screen and (min-width:769px) {
  [data-dots=true] .hero__text-content {
    padding-bottom: 40px;
  }
}

.hero__text-shadow {
  position: relative;
  display: inline-block;
  transform: translateY(-15px)
}

@media only screen and (min-width:769px) {
  .hero__text-shadow {
    transform: translateY(0px)
  }
}

.hero__text-shadow:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: auto;
  background: radial-gradient(rgba(0, 0, 0, var(--colorImageOverlayTextShadow)) 0%, transparent 60%);
  margin: -100px -200px -100px -200px;
  z-index: -1;
}


.hero__title {
  display: block;
  margin-bottom: 5px !important;
  line-height: 100% !important;
}

.hero__subtext {
  margin-top: 20px;
}

.hero__subtitle {
  margin-top: 0px;
  margin-bottom: 10px;
}

.hero__link {
  position: relative;
  display: block
}

.video-interactable .hero__link {
  pointer-events: auto
}

.hero__link .btn {
  margin: 4px 3px 2px 0;
  display: inline-block;
}

@media only screen and (min-width:769px) {

  .hero__link .btn {
    margin-right: 5px;
    margin-top: 10px;
  }
}

.hero__link .btn+.btn {
  margin-left: 2px
}

@media only screen and (min-width:769px) {

  .hero__link .btn+.btn {
    margin-left: 10px;
    margin-right: 2px;
  }
}

.hero__link .btn .icon-play {
  position: relative;
  top: -2px;
  margin-right: 5px;
}

.hero__text-content {
  display: table-cell
}

.hero__text-content.horizontal-left {
  text-align: left;
}

.hero__text-content.horizontal-center {
  text-align: center;
}

.hero__text-content.horizontal-right {
  text-align: right;
}

.hero__text-content.vertical-center {
  vertical-align: middle;
}

.hero__text-content.vertical-bottom {
  vertical-align: bottom;
}

.overlaid-header .index-section--hero:first-child .hero__text-content.vertical-center {
  padding-top: 50px
}

@media only screen and (min-width:769px) {

  .overlaid-header .index-section--hero:first-child .hero__text-content.vertical-center {
    padding-top: 90px
  }
}

.hero--450px {
  height: 292.5px;
}

.hero--550px {
  height: 357.5px;
}

.hero--650px {
  height: 422.5px;
}

.hero--750px {
  height: 487.5px;
}

.hero--100vh {
  height: 100vh;
}

@media only screen and (min-width:769px) {
  .hero--natural[data-natural] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
  }

  .hero--450px {
    height: 450px;
  }

  .hero--550px {
    height: 550px;
  }

  .hero--650px {
    height: 650px;
  }

  .hero--750px {
    height: 750px;
  }
}

@media only screen and (max-width:768px) {
  .hero--mobile--auto[data-mobile-natural=true] {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    height: auto;
  }

  .hero--natural[data-mobile-natural=false] {
    height: 500px;
  }

  .hero--mobile--250px[data-mobile-natural=false] {
    height: 250px;
  }

  .hero--mobile--300px[data-mobile-natural=false] {
    height: 300px;
  }

  .hero--mobile--400px[data-mobile-natural=false] {
    height: 400px;
  }

  .hero--mobile--500px[data-mobile-natural=false] {
    height: 500px;
  }

  .hero--mobile--100vh[data-mobile-natural=false] {
    height: 90vh;
  }
}

.slideshow__slide .animation-cropper,
[data-aos=hero__animation] .animation-cropper {
  opacity: 0;
}

.slideshow__slide .animation-contents,
[data-aos=hero__animation] .animation-contents {
  opacity: 0;
  transform: translateY(15px);
  transition: none;
}

.slideshow__slide:not(.animate-out) .hero__image,
[data-aos=hero__animation]:not(.animate-out) .hero__image {
  opacity: 0;
  transition: none;
}

.slideshow__slide .hero__link .btn,
[data-aos=hero__animation] .hero__link .btn {
  opacity: 0;
  transition: none;
}

.slideshow__slide .hero__image-wrapper,
[data-aos=hero__animation] .hero__image-wrapper {
  transform: translateX(200px);
  opacity: 0;
  transition: none;
}

.loaded .slideshow__slide.is-selected .animation-cropper,
[data-aos=hero__animation].loaded .animation-cropper {
  opacity: 1;
}

.loaded .slideshow__slide.is-selected .animation-contents,
[data-aos=hero__animation].loaded .animation-contents {
  transform: translateY(0px);
}

.loaded .slideshow__slide.is-selected .hero__title .animation-contents,
[data-aos=hero__animation].loaded .hero__title .animation-contents {
  animation: 0.8s cubic-bezier(0.26, 0.54, 0.32, 1) 0.3s forwards;
  animation-name: rise-up;
}

.loaded .slideshow__slide.is-selected .hero__subtitle .animation-contents,
.loaded .slideshow__slide.is-selected .hero__top-subtitle .animation-contents,
[data-aos=hero__animation].loaded .hero__subtitle .animation-contents,
[data-aos=hero__animation].loaded .hero__top-subtitle .animation-contents {
  animation: 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0.7s forwards;
  animation-name: rise-up;
}

.loaded .slideshow__slide.is-selected .hero__link .animation-contents,
[data-aos=hero__animation].loaded .hero__link .animation-contents {
  opacity: 1;
}

.loaded .slideshow__slide.is-selected .hero__link .btn,
[data-aos=hero__animation].loaded .hero__link .btn {
  animation: fade-in 2s ease 1.3s forwards;
}

.loaded .slideshow__slide.is-selected .hero__link .btn:nth-child(2),
[data-aos=hero__animation].loaded .hero__link .btn:nth-child(2) {
  animation: fade-in 2s ease 1.6s forwards;
}

.loaded .slideshow__slide.is-selected .hero__image--svg,
.loaded .slideshow__slide.is-selected .hero__image.lazyloaded,
.loaded .slideshow__slide.is-selected .hero__media,
[data-aos=hero__animation].loaded .hero__image--svg,
[data-aos=hero__animation].loaded .hero__image.lazyloaded,
[data-aos=hero__animation].loaded .hero__media {
  opacity: 1;
  transition: none;
}

.loaded .slideshow__slide.is-selected .hero__image-wrapper,
[data-aos=hero__animation].loaded .hero__image-wrapper {
  opacity: 1;
  transform: translateX(0px);
  transition: transform 0.7s ease, opacity 0.7s ease;
}

[data-aos=hero__animation].loaded .hero__image-wrapper {
  transition: opacity 0.7s ease !important;
}

.no-js .hero__image,
.no-js .hero__image-wrapper {
  opacity: 1 !important;
  transform: none;
}

.slideshow__slide.animate-out .animation-cropper {
  opacity: 0;
  transition: none;
}

.slideshow__slide.animate-out .hero__image-wrapper {
  opacity: 0;
  transform: translateX(-200px);
  transition: transform 0.5s ease-in 0.05s, opacity 0.5s ease-in 0.05s;
}

.slideshow__slide.animate-out .hero__link {
  opacity: 0;
  transition: none;
}

.collection-content {
  padding-top: 22.5px
}

@media only screen and (min-width:769px) {

  .collection-content {
    padding-top: 45px
  }
}

.collection-hero__image {
  opacity: 0
}

.no-js .collection-hero__image {
  opacity: 1
}

.collection-hero__image.lazyloaded {
  animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition: none
}

[data-disable-animations=true] .collection-hero__image.lazyloaded {
  animation: none;
  opacity: 1
}

.collection-grid__wrapper.unload {
  min-height: 180px;
  position: relative;
  opacity: 0.2;
  transition: opacity 0.3s
}

.collection-grid__wrapper.unload [data-section-type=collection-grid] {
  animation: grid-product__loading 1.5s ease 1.5s infinite;
}

.collection-sidebar {
  padding-right: 10px;
  margin-bottom: 20px;
}

.collection-sidebar .tag-list--active-tags a {
  color: #fff;
}

@media only screen and (min-width:769px) {
  .grid__item--sidebar {
    position: sticky;
    top: 10px;
    max-height: 90vh;
    overflow-y: auto;
  }
}

.collection-sidebar__group {
  border-top: 1px solid;
  border-top-color: var(--colorBorder);
  padding-top: 5px;
  margin-top: 5px;
  margin-bottom: 5px;
  overflow: hidden
}

.collection-sidebar__group:first-child {
  margin-top: 0;
}

.collection-sidebar__group .collapsible-content__inner {
  padding-bottom: 5px;
}

.filter-form div:first-of-type .collection-sidebar__group {
  border-top: 0;
  padding-top: 0;
}

.is-light .site-header__logo .logo--has-inverted {
  display: none
}

.site-header__logo .logo--inverted {
  display: none
}

.is-light .site-header__logo .logo--inverted {
  display: block
}

@media only screen and (min-width:769px) {

  .site-header__logo {
    text-align: left
  }
}

.header-logo a,
.site-header__logo a {
  color: var(--colorNavText)
}

.is-light .header-logo a,
.is-light .site-header__logo a {
  color: #fff
}

.is-light .header-logo a:hover,
.is-light .site-header__logo a:hover {
  color: #fff;
}

.is-light .site-header {
  box-shadow: none
}

.site-header--password {
  color: var(--colorNavText)
}

.site-header--password a,
.site-header--password a:hover {
  color: var(--colorNavText);
}

.is-light .site-header--password {
  color: #fff
}

.is-light .site-header--password a,
.is-light .site-header--password a:hover {
  color: #fff;
}


.variant-input {
  display: inline-block
}

select .variant-input {
  display: block
}

.variant-wrapper+.variant-wrapper {
  margin-top: 25px;
}

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

.variant-wrapper--dropdown {
  display: inline-block;
  max-width: 100%;
  margin-right: 15px;
  margin-bottom: 0;
}

.variant__label[for] {
  display: block;
  margin-bottom: 10px;
  cursor: default;
}

.variant__label-info {
  text-transform: none;
  font-weight: 400;
  letter-spacing: 0;
}

.grid-product {
  margin-bottom: 15px
}

@media only screen and (min-width:769px) {

  .grid-product {
    margin-bottom: 30px
  }
}

.grid-product__tag {
  position: absolute;
  top: 0;
  right: 0;
}

@media only screen and (max-width:768px) {

  .grid-overflow-wrapper .grid-product {
    margin-bottom: 0
  }
}

.grid-product__content {
  position: relative;
  text-align: left
}

html[dir=rtl] .grid-product__content {
  text-align: right
}

.grid-product__title {
  font-size: var(--typeBaseSize);
  word-break: break-word;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.grid-product__title--primary-heading-font,
.grid-product__title--secondary-heading-font {
  font-weight: var(--typeHeaderWeight);
  line-height: 1;
}

.grid-product__link {
  display: block;
}

.grid-product__link--inline {
  display: flex
}

.grid-product__link--inline .grid-product__image-mask {
  flex: 0 0 auto;
  margin-right: 10px;
}

.grid-product__link--inline .grid__image-ratio {
  width: 80px;
}

.grid-product__link--inline .grid-product__meta {
  text-align: left;
}

.grid-product__image-mask {
  position: relative;
  overflow: hidden;
}

.grid-product__image {
  display: block;
  margin: 0 auto;
  width: 100%;
}

.grid-product__secondary-image {
  position: absolute;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px;
  opacity: 0;
  background-color: var(--colorBody)
}

.grid-product__secondary-image img {
  height: 100%;
  width: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.grid-product__image-mask:hover .grid-product__secondary-image {
  animation: fade-in 0.2s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards
}

@media only screen and (max-width:768px) {

  .supports-touch .grid-product__secondary-image {
    display: none
  }
}

.grid-product__color-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: 50%;
  opacity: 0;
  transition: opacity 0.4s ease;
  background-color: var(--colorBody)
}

.grid-product__color-image.is-active {
  animation: fade-in 0.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}

[data-center-text=true] .grid-product__meta {
  text-align: center
}

.grid-product__meta {
  position: relative;
  padding: 10px 0 6px 0;
  line-height: var(--typeBaseLineHeight);
}

@media only screen and (max-width:768px) {

  .small--grid--flush .grid-product__meta {
    padding-left: 10px;
    padding-right: 10px
  }
}


.quick-product__btn {
  width: -moz-available !important; // needed to make CTA full width on Firefox
  font-size: calc(var(--typeBaseSize)*0.85);
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  z-index: 2;
  background-color: var(--colorBtnPrimary);
  color: var(--colorBtnPrimaryText);
  overflow: hidden;
  padding: 8px 5px;
  text-align: center;
  cursor: pointer;
  opacity: 0;
  transform: translateY(5px);
  transition: opacity 0.25s ease, transform 0.25s ease-out, background 0.4s ease
}

.no-js .quick-product__btn {
  display: none
}

.grid-product__content:hover .quick-product__btn,
.grid-product__content:focus-within .quick-product__btn {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.25s ease, transform 0.25s ease-out
}

.supports-touch .quick-product__btn {
  opacity: 1;
  transform: translateY(0);
}

.quick-product__btn--not-ready {
  pointer-events: none;
}

@media only screen and (max-width:768px) {
  .grid-overflow-wrapper {
    overflow: hidden;
    overflow-x: scroll;
    -webkit-overflow-scrolling: touch
  }

  .grid-overflow-wrapper .grid {
    white-space: nowrap;
    display: flex;
  }

  .grid-overflow-wrapper .grid__item {
    width: 39vw;
    flex: 0 0 39vw;
    display: inline-block;
    float: none;
    white-space: normal
  }

  .grid-overflow-wrapper .grid__item:last-child:after {
    content: "";
    display: inline-block;
    width: 100%;
    margin-right: 17px;
  }

  .grid-overflow-wrapper .grid__item--view-all {
    align-self: center;
  }

  .grid-overflow-wrapper .grid-product__price,
  .grid-overflow-wrapper .grid__item {
    font-size: 0.75rem;
  }

  [data-aos=overflow__animation] {
    transform: translateX(100vw);
    transition: all 0.8s cubic-bezier(.25, .46, .45, .94)
  }

  [data-aos=overflow__animation].aos-animate {
    transform: translateX(0);
  }

  [data-disable-animations=true] [data-aos=overflow__animation] {
    transform: none;
    transition: none
  }
}

.grid-product__see-all {
  display: inline-block;
  padding: 15px;
  text-align: center;
  border: 1px solid;
  border-color: var(--colorBorder);
  margin-top: -60px;
}

[data-center-text=true] .grid-product__colors {
  text-align: center
}

.grid-product__colors {
  margin-top: 3px;
  display: flex;
  flex-wrap: wrap;
  line-height: 15px
}

@media only screen and (min-width:769px) {

  .grid-product__colors {
    line-height: 19px
  }
}

[data-center-text=true] .grid-product__colors {
  align-items: center;
  justify-content: center
}

.grid-product__colors+.grid-product__colors {
  margin-top: 4px;
}

.sales-points {
  list-style: none;
  padding: 0;
  margin: 25px 0
}

.quick-add-modal .sales-points {
  display: none
}

.sales-point {
  display: block;
  margin-bottom: 10px
}

.sales-point:last-child {
  margin-bottom: 0;
}

.sales-point .icon {
  position: relative;
  width: 25px;
  height: 25px;
  margin-right: 10px
}

[dir=rtl] .sales-point .icon {
  margin-right: 0;
  margin-left: 10px
}

@media only screen and (max-width:768px) {
  .sales-point .icon-and-text {
    justify-content: center;
  }
}

@keyframes inventory-pulse {
  0% {
    opacity: 0.5;
  }

  to {
    transform: scale(2.5);
    opacity: 0;
  }
}

.icon--inventory:after,
.icon--inventory:before {
  width: 9px;
  height: 9px;
  background: #54c63a;
  border-radius: 9px;
  position: absolute;
  left: 0;
  top: 0;
  content: "";
  margin: 8px;
}

.icon--inventory:before {
  animation: inventory-pulse 2s linear infinite;
}

.inventory--low .icon--inventory:after,
.inventory--low .icon--inventory:before {
  background: #d02e2e;
}

.inventory--low {
  color: #d02e2e;
}

.color-swatch {
  position: relative;
  display: block;
  text-indent: -9999px;
  overflow: hidden;
  margin: 0 4px 4px;
  background-position: 50%;
  background-size: cover;
  background-repeat: no-repeat;
  height: 40px;
  width: 40px;
  box-shadow: 0 0 0 1px var(--colorBorder);
  transition: box-shadow 0.2s ease
}

[data-swatch_style=round] .color-swatch {
  border-radius: 100%
}

.color-swatch:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}

.color-swatch:before {
  border: 3px solid;
  border-color: var(--colorBody)
}

[data-swatch_style=round] .color-swatch:before {
  border-radius: 100%;
  border-width: 4px;
  top: -1px;
  left: -1px;
  right: -1px;
  bottom: -1px
}

.tag:not(.tag--active) label:hover .color-swatch:hover,
a.color-swatch:hover {
  box-shadow: 0 0 0 1px var(--colorTextBody);
}

.tag--active .color-swatch {
  box-shadow: 0 0 0 2px var(--colorTextBody);
}

.color-swatch--small {
  width: 15px;
  height: 15px
}

@media only screen and (min-width:769px) {

  .color-swatch--small {
    width: 19px;
    height: 19px
  }
}

.color-swatch--small:before {
  border: 2px solid;
  border-color: var(--colorBody)
}

[data-swatch_style=round] .color-swatch--small:before {
  border-width: 3px
}

.tag--swatch {
  display: inline-block
}

.tag--swatch>label {
  margin-bottom: 0;
}

.color-swatch--filter {
  width: 35px;
  height: 35px;
}

.tag--active .color-swatch--filter:hover:after {
  position: absolute;
  content: "";
  left: 50%;
  top: 0;
  bottom: 0;
  border-left: 1px solid;
  border-color: var(--colorBorder);
  transform: rotate(45deg);
}

.collection-image--square {
  padding-bottom: 100%;
}

.collection-image--landscape {
  padding-top: 75%;
}

.collection-image--portrait {
  padding-top: 150%;
}

.custom-content {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  width: auto;
  margin-bottom: -22px;
  margin-left: -22px
}

@media only screen and (max-width:768px) {

  .custom-content {
    margin-bottom: -17px;
    margin-left: -17px
  }
}

.custom__item {
  flex: 0 0 auto;
  margin-bottom: 22px;
  padding-left: 22px;
  max-width: 100%
}

@media only screen and (max-width:768px) {

  .custom__item {
    flex: 0 0 auto;
    padding-left: 17px;
    margin-bottom: 17px
  }

  .custom__item.small--one-half {
    flex: 1 0 50%;
    max-width: 400px;
    margin-left: auto;
    margin-right: auto;
  }
}

.custom__item img {
  display: block;
}

.custom__item-inner {
  position: relative;
  display: inline-block;
  text-align: left;
  max-width: 100%;
  width: 100%;
}

.custom__item-inner--html,
.custom__item-inner--video {
  display: block;
}

.custom__item-inner--image {
  width: 100%;
}

.custom__item-inner--html img {
  display: block;
  margin: 0 auto;
}

.custom__item-inner--placeholder-image {
  width: 100%;
}

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

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

.align--middle-left {
  align-self: center;
}

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

.align--middle-right {
  align-self: center;
  text-align: right;
}

.align--bottom-left {
  align-self: flex-end;
}

.align--bottom-middle {
  align-self: flex-end;
  text-align: center;
}

.align--bottom-right {
  align-self: flex-end;
  text-align: right;
}

.article__grid-image {
  display: block;
  text-align: center;
  margin-bottom: 16px
}

.article__grid-image img {
  display: block;
}

.article__title {
  font-size: calc(var(--typeBaseSize) + 2px);
}

.article__date {
  font-size: max(calc(var(--typeBaseSize)*0.7), 12px);
  margin-bottom: 3px
}

.section-header .article__date {
  margin-bottom: 15px
}

.article__author {
  margin-top: 2px;
  font-size: max(calc(var(--typeBaseSize)*0.7), 12px);
}

.article__grid-meta {
  margin-bottom: 16px;

  @include media-query($medium-up) {
    margin-bottom: 30px;
  }
}

@media only screen and (min-width:769px) {

  [data-center-text=true] .article__grid-meta {
    text-align: center
  }
}

.article__excerpt {
  margin-top: 10px;
}

.logo-bar {
  text-align: center;
  margin-bottom: -30px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.logo-bar__item {
  flex: 0 1 110px;
  vertical-align: middle;
  margin: 0 15px 20px
}

@media only screen and (min-width:769px) {

  .logo-bar__item {
    flex: 0 1 160px;
    margin: 0 20px 30px
  }
}

.logo-bar__image {
  display: block;
  margin: 0 auto;
}

.logo-bar__link {
  display: block;
}

[data-aos=logo__animation] .logo-bar__item {
  opacity: 0;
}

[data-aos=logo__animation].aos-animate .logo-bar__item {
  animation: fade-in 0.5s ease 0s forwards;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(2) {
  animation-delay: 0.2s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(3) {
  animation-delay: 0.4s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(4) {
  animation-delay: 0.6s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(5) {
  animation-delay: 0.8s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(6) {
  animation-delay: 1.0s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(7) {
  animation-delay: 1.2s
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(8) {
  animation-delay: 1.4s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(9) {
  animation-delay: 1.6s;
}

[data-aos=logo__animation].aos-animate .logo-bar__item:nth-child(10) {
  animation-delay: 1.8s;
}

.background-media-text {
  position: absolute;
  width: 100%;
  overflow: hidden;
  background: var(--colorLargeImageBg);
  background-size: cover;
}

.background-media-text__video {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  z-index: 0;
}

@media only screen and (max-width:768px) {

  .background-media-text__video {
    width: 300%;
    left: -100%
  }
}

.background-media-text__video iframe,
.background-media-text__video video {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  pointer-events: none
}

@media only screen and (min-width:769px) {

  .background-media-text__video iframe,
  .background-media-text__video video {
    height: 120%;
    max-width: none;
    left: -100%;
    height: 150%;
    width: 300%
  }
}

@media screen and (min-width:1140px) {

  .background-media-text__video iframe,
  .background-media-text__video video {
    width: 100%;
    height: 300%;
    left: auto;
    top: -100%
  }
}

.video-interactable .background-media-text__video iframe,
.video-interactable .background-media-text__video video {
  pointer-events: auto;
}

.background-media-text__inner {
  position: absolute;
  z-index: 2;
  width: 100%;
  height: 100%;
}

.background-media-text__aligner {
  margin: 60px;
}

.background-media-text__text {
  text-align: left;
  font-size: 1.1em;
  background: var(--colorBody);
  padding: 30px;
  width: 380px
}

html[dir=rtl] .background-media-text__text {
  text-align: right
}

@media only screen and (max-width:768px) {

  .background-media-text__text {
    text-align: center
  }
}

.background-media-text__text--framed {
  border: 7px solid;
  border-color: var(--colorBody);
  box-shadow: inset 0 0 0 2px var(--colorTextBody)
}

@media only screen and (min-width:769px) {

  .background-media-text__text--framed {
    border-width: 10px
  }
}

.background-media-text__text .btn {
  margin-top: 15px;
}

@media only screen and (min-width:769px) {
  .background-media-text--right .animation-cropper {
    float: right;
  }
}

.background-media-text__container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

@media only screen and (max-width:768px) {
  .background-media-text {
    position: relative;
  }

  .background-media-text__inner {
    position: relative;
  }

  .background-media-text__container,
  .background-media-text__video {
    position: relative;
    height: 240px
  }

  .promo-video .background-media-text__container,
  .promo-video .background-media-text__video {
    height: 550px
  }

  .background-media-text__aligner {
    margin: 16px;
  }

  .background-media-text__text {
    padding: 16px;
    width: auto;
  }

  .background-media-text.loading:after,
  .background-media-text.loading:before {
    top: 117px;
  }
}

@media only screen and (min-width:769px) {

  .background-media-text--450,
  .background-media-text--450 .background-media-text__video,
  .background-media-text__spacer.background-media-text--450 {
    min-height: 450px;
  }

  .background-media-text--550,
  .background-media-text--550 .background-media-text__video,
  .background-media-text__spacer.background-media-text--550 {
    min-height: 550px;
  }

  .background-media-text--650,
  .background-media-text--650 .background-media-text__video,
  .background-media-text__spacer.background-media-text--650 {
    min-height: 650px;
  }

  .background-media-text--750,
  .background-media-text--750 .background-media-text__video,
  .background-media-text__spacer.background-media-text--750 {
    min-height: 750px;
  }
}

[data-aos=background-media-text__animation] .background-media-text__image,
[data-aos=background-media-text__animation] .background-media-text__image svg,
[data-aos=background-media-text__animation] .background-media-text__video {
  opacity: 0
}

.no-js [data-aos=background-media-text__animation] .background-media-text__image,
.no-js [data-aos=background-media-text__animation] .background-media-text__image svg,
.no-js [data-aos=background-media-text__animation] .background-media-text__video {
  animation: none;
  opacity: 1
}

[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image,
[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__image svg,
[data-disable-animations=true] [data-aos=background-media-text__animation] .background-media-text__video {
  animation: none;
  opacity: 1
}

[data-aos=background-media-text__animation].aos-animate .background-media-text__image.lazyloaded,
[data-aos=background-media-text__animation].aos-animate .background-media-text__image svg,
[data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__video {
  animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  transition: none
}

[data-disable-animations=true] [data-aos=background-media-text__animation].aos-animate .background-media-text__image.lazyloaded,
[data-disable-animations=true] [data-aos=background-media-text__animation].aos-animate .background-media-text__image svg,
[data-disable-animations=true] [data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__video {
  animation: none
}

@media only screen and (min-width:769px) {
  [data-aos=background-media-text__animation] .background-media-text__inner .animation-contents {
    opacity: 0
  }

  .no-js [data-aos=background-media-text__animation] .background-media-text__inner .animation-contents {
    animation: none;
    opacity: 1
  }

  [data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__inner .animation-contents {
    animation: rise-up 1s cubic-bezier(0.26, 0.54, 0.32, 1) 0.5s forwards
  }

  [data-disable-animations=true] [data-aos=background-media-text__animation].loaded.aos-animate .background-media-text__inner .animation-contents {
    animation: none;
    opacity: 1
  }
}

.quote-icon {
  display: block;
  margin: 0 auto 20px;
}

.testimonial-stars {
  display: block;
  font-size: 16px;
  letter-spacing: 0.2em;
  margin-bottom: 10px
}

@media only screen and (min-width:769px) {

  .testimonial-stars {
    font-size: 18px;
    margin-bottom: 15px
  }
}

.testimonials-slide {
  display: none;
  opacity: 0;
  padding: 40px 0 0;
  width: 33%;

  @media only screen and (min-width:769px) {
    padding-bottom: 45px;
  }
}

.testimonials-slide:first-child {
  display: block;
}

.flickity-slider .testimonials-slide {
  display: block;
  opacity: 1
}

.testimonials-slide.is-selected .testimonials-slider__text {
  position: relative;
  z-index: 10;
}

@media only screen and (max-width:768px) {
  .testimonials-slide {
    width: 100%;
  }
}

.testimonials-slider__text {
  margin: 0 30px;
  padding: 30px 15px;
  background: var(--colorBody);
  color: var(--colorTextBody);
  margin-bottom: 15px
}

@media only screen and (min-width:769px) {
  .testimonials-slider__text {
    transform: scale(0.95);
    transition: transform 0.5s ease, box-shadow 0.5s ease;
    margin: 0;
    padding: 30px;
    margin-bottom: 0
  }

  .testimonials-slide.is-selected .testimonials-slider__text {
    transform: scale(1.1);
  }
}

.testimonials-slider__text cite {
  font-style: normal;
  font-weight: 700
}

@media only screen and (min-width:769px) {
  .testimonials-slider__text cite {
    font-size: calc(var(--typeBaseSize) + 1px)
  }
}

.testimonials-slider__text p {
  margin-bottom: 7.5px
}

.testimonials-slider__text p+cite {
  margin-top: 0;
}

.testimonials__info {
  font-size: calc(var(--typeBaseSize) - 1px);
}

.testimonail-image {
  max-width: 142px;
  background-color: var(--colorBody)
}

.text-center .testimonail-image {
  margin-left: auto;
  margin-right: auto
}

.testimonail-image .image-wrap {
  background: none;
}

.testimonail-image--round {
  width: 65px;
  height: 65px;
  max-width: none;
  border-radius: 65px
}

.testimonail-image--round img {
  overflow: hidden;
  border-radius: 65px;
}

.testimonials-section .flickity-page-dots {
  bottom: 0;

  @media only screen and (min-width:769px) {
    bottom: -16px;
  }
}

.shopify-challenge__container {
  padding: 30px 22px
}

@media only screen and (min-width:769px) {
  .shopify-challenge__container {
    padding: 120px 0
  }
}

.map-section {
  position: relative;
  height: 650px;
  width: 100%;
  overflow: hidden
}

@media only screen and (min-width:769px) {

  .map-section {
    height: 500px
  }
}

.map-section .page-width {
  height: 100%;
}

.map-section--load-error {
  height: auto;
}

.map-onboarding {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  width: 100%;
  background-size: cover;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  z-index: 0;
}

.map-section__overlay-wrapper {
  position: relative;
  height: 100%;
}

.map-section__overlay {
  position: relative;
  display: inline-block;
  background-color: var(--colorBody);
  padding: 30px;
  margin: 30px;
  width: 100%;
  max-width: calc(100% - 60px);
  z-index: 3
}

@media only screen and (min-width:769px) {

  .map-section__overlay {
    position: absolute;
    left: 30px;
    top: 50%;
    transform: translateY(-50%);
    margin-top: 0;
    width: 30%
  }
}

.map-section--load-error .map-section__overlay {
  position: static;
  transform: translateY(0)
}

.map-section__link {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}

.map-section__container {
  position: absolute !important;
  top: 0;
  left: 0;
  width: 100%;
  height: 150%;
  margin-bottom: -50%
}

@media only screen and (min-width:769px) {

  .map-section__container {
    width: 130%;
    height: 100%;
    margin: 0 -30% 0 0
  }
}

[data-aos=map-section__animation] .map-section__container {
  animation: fade-out 0.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
  opacity: 0;
}

[data-aos=map-section__animation].aos-animate .map-section__container {
  animation: zoom-fade 2.5s cubic-bezier(0.26, 0.54, 0.32, 1) 0s forwards;
}

.image-row:after {
  content: "";
  display: table;
  clear: both;
}

.image-row__placeholder {
  float: left;
  width: 33.33%
}

.image-row--gutters .image-row__placeholder {
  width: 32%;
  margin: 0 1% 2%
}

.image-row--gutters .image-row__placeholder:first-child {
  margin-left: 0;
}

.image-row--gutters .image-row__placeholder:last-child {
  margin-right: 0;
}

.image-row__image {
  position: relative;
  min-height: 1px;
  float: left
}

.image-row__image:after {
  content: "";
  display: block;
  height: 0;
  width: 100%;
}

.image-row__image img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
}

[data-zoom=true] .image-row__image .js-photoswipe__zoom {
  cursor: zoom-in;
}

[data-zoom=true] .image-row__image a .js-photoswipe__zoom {
  cursor: pointer;
}

.product__photo-zoom:focus-visible {
  outline: 2px solid #3d3936;
  outline-offset: -2px;
  border-radius: 0;
}

.store-availability {
  display: flex;
  justify-content: space-around
}

.store-availability .icon {
  margin: 6px 0 0;
  width: 12px;
  height: 12px;
}

.store-availability .icon-in-stock {
  fill: #56ad6a;
}

.store-availability .icon-out-of-stock {
  fill: #d02e2e;
}

.store-availability+.store-availability {
  margin-top: 20px;
}

.store-availability__info {
  flex: 0 1 90%;
  text-align: left;
  margin-left: 10px
}

.store-availability__info>div {
  margin-bottom: 5px
}

.store-availability__info>div:last-child {
  margin-bottom: 0;
}

.store-availability__info a {
  text-decoration: underline;
}

.store-availability__small {
  font-size: 0.8em
}

.store-availability__small a {
  display: block;
  margin-top: 10px;
}

.modal .store-availability__small--link {
  display: none
}

@media only screen and (min-width:769px) {
  .cart__page {
    display: flex;
    /* flex-wrap:wrap; */
    justify-content: space-between;
    align-items: flex-start;
  }

  .cart__page-colwithgift {
    width: 60%;
  }

  .cart__page .cart__item-remove {
    display: none;
  }

  .cart__page-col {
    position: sticky;
    top: 10%;
    flex: 0 1 35%;
    padding: 30px
  }

  .cart__page-col:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    background-color: var(--colorTextBody);
    opacity: 0.03;
  }
}

.cart__item {
  display: flex;
  margin-bottom: 16px;
}

.cart__item:first-child {
  padding-top: 10px;
}

.cart__item:last-child {
  margin-bottom: 0;
  border-bottom: 0;
}

.cart__image {
  flex: 0 0 150px;
  margin-right: 17px;
  margin-right: var(--grid-gutter)
}

.cart__image a {
  display: block;
}

.cart__image img {
  width: 100%;
  display: block;
}

.drawer .cart__image {
  flex: 0 0 90px;
  width: 90px;
  height: 90px;
}

.cart__item-details {
  flex: 1 1 auto;
  position: relative;
}

.cart__item-title {
  flex: 1 1 100%;
}

.cart__item-title .product__subtitle {
  font-size: 12px;
  letter-spacing: 0.1px;
}

.drawer .cart__item-title {
  font-size: calc(var(--typeBaseSize)*0.85)
}

.cart__item-sub {
  flex: 1 1 100%;
  display: flex;
  justify-content: space-between;
  line-height: 1;
  font-weight: 700;
  font-size: 16px;
  letter-spacing: 0.1px;
  text-transform: uppercase;
}

.cart__item-sub div[data-subtotal] {
  font-size: 17.6px;
}

.cart__item-sub>div:first-child:not(.cart-discountcode) {
  margin-right: 10px;
}

.cart__item-row {
  margin-bottom: 20px;
}

.cart__remove a {
  display: inline-block;
  font-size: 14px;
  margin-top: 10px;
}

.drawer .cart__remove {
  display: none
}

.cart__checkout {
  width: 100%;
  font-weight: 500 !important;
}

.cart__checkout:hover {
  background-color: #fff !important;
  color: var(--colorTextBody) !important;
  border-color: var(--colorTextBody) !important;
}

.cart__item-name,
.cart__item-name p {
  text-decoration: none;;
  display: block;
  font-size: calc(var(--typeBaseSize) - 2px);
  padding: 0 30px 0 0;
  line-height: 20px;
  font-weight: 700;
}

.cart__item-name p {
  margin-bottom: 0;
}

.cart__item--variants {
  margin-bottom: 10px
}

.cart__item--variants span {
  font-weight: 700;
}

.cart__price {
  display: block;
  font-weight: 500;
  font-size: .9rem;
}

.cart__price--strikethrough {
  text-decoration: line-through;
}

.cart__discount {
  color: var(--colorTextSavings);
}

.cart__terms {
  display: flex;
  align-items: center;
  justify-content: center
}

.cart__terms label {
  margin-bottom: 0;
  text-transform: none;
  letter-spacing: 0;
  a {
    font-size: calc(var(--typeBaseSize) * .75);
  }
}

.cart__checkout-wrapper {
  margin-top: 20px
}

.cart__checkout-wrapper .additional-checkout-buttons {
  margin-top: 12px;
}

.drawer .additional-checkout-buttons {
  margin: 10px 0
}

.drawer .additional-checkout-buttons [data-shopify-buttoncontainer] {
  justify-content: center
}

.drawer .additional-checkout-buttons [data-shopify-buttoncontainer]>* {
  height: auto !important;
}

iframe.zoid-component-frame {
  z-index: 1 !important;
}

.drawer__cart-empty {
  display: none;
}

.drawer.is-empty .drawer__inner {
  display: none;
}

.drawer.is-empty .drawer__cart-empty {
  display: block;
}

@media only screen and (max-width:768px) {
  .page-content--product {
    padding-top: 0;
  }

  .grid--product-images-right {
    display: flex;
    flex-wrap: wrap
  }

  .grid--product-images-right .grid__item:first-child {
    order: 2;
  }
}

.modal .page-content--product {
  width: 1500px;
  max-width: 100%;
}

.product-single__meta {
  padding-left: 18px;
}

@media only screen and (max-width:768px) {

  .product-single__meta {
    padding-left: 0;
    margin-top: 15px
  }
}

.grid--product-images-right .product-single__meta {
  padding-left: 0;
  padding-right: 45px
}

@media only screen and (max-width:768px) {

  .grid--product-images-right .product-single__meta {
    padding-right: 0
  }
}

.product-single__meta .social-sharing {
  margin-top: 30px;
}

.product-single__meta .rte {
  text-align: left
}

html[dir=rtl] .product-single__meta .rte {
  text-align: right
}

.product-single__meta .product__policies {
  margin: 0 0 24px;
  text-align: center;

  @media only screen and (min-width:769px) {
    text-align: left;
    margin-bottom: 0;
  }
}

.product-single__meta .product__inventory-container .product__policies {
  text-align: right;
  width: 100%;

  @media only screen and (max-width:768px) {
    margin-top: 12px;
    text-align: left;
  }
}

.product-single__vendor {
  text-transform: uppercase;
  letter-spacing: 0.3em;
  font-size: 0.8em;
  margin-bottom: 7.5px;
}

.product-single__title {
  margin-bottom: 10px;
  word-wrap: break-word;
}

.product__subtitle {
  margin-bottom: 6px !important;

  @media only screen and (min-width:769px) {
    margin-bottom: 4px !important;
  }
}

.product__quantity-and-cta-container {
  display: flex;
  column-gap: 8px;
}

.product-single__sku {
  margin-bottom: 5px;
}

.product-single__description-full {
  margin: 30px 0
}

.product-single__description-full+.collapsibles-wrapper {
  margin: 0 0;
}

@media only screen and (min-width:769px) {

  .section__product-template .page-content--product {
    margin-top: 48px;
  }

  .section__product-template .page-content--product:has(.breadcrumb) {
    margin-top: 0;
  }

  .page-content .grid--product-content {
    margin-top: 0;
  }

  .page-content:has(.breadcrumb) .grid--product-content {
    margin-top: 38px;
  }

  .product-single__description-full {
    margin: 30px 95px
  }

  .product-single__description-full+.collapsibles-wrapper {
    margin: 0 95px;
  }
}

.product-single__variants {
  display: none
}

.no-js .product-single__variants {
  display: block;
  margin-bottom: 30px
}

.product-image-main {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  background-color: #F3F3F5;
}

.product-image-main .image-wrap {
  position: relative;
}

.product__thumbs--scroller .product__thumb-item--video .image-wrap {
  height: 100% !important;
  padding-bottom: 0 !important;
}

.product__thumbs--scroller .product__thumb-item--video .image-wrap a {
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: var(--colorModalBg);
}

.product__video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 100%;
  height: 100%;
  background-color: var(--colorSmallImageBg)
}

.product__video-wrapper iframe {
  width: 100%;
  height: 100%;
  transition: opacity 0.5s ease-in;
}

.product__video-wrapper[data-video-style=muted].loaded:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}

.product__video-wrapper.video-interactable:before {
  display: none;
}

.product__video-wrapper.loaded:after {
  display: none;
}

.product__video-wrapper.loading iframe {
  opacity: 0.01;
}

.product__video-wrapper.loaded iframe {
  opacity: 1;
}

.product__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product-video-trigger {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.product-video-trigger .icon path,
.product__thumb-icon .icon path {
  fill: #fff;
}

.product__photos--beside {
  display: flex;
  width: 100%;
}

.product__photos {
  direction: ltr
}

.product__photos a {
  display: block;
  max-width: 100%;
}

.product__photos img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  width: 100%;
}

.product__main-photos {
  position: relative;
  flex: 1 1 auto
}

.product__main-photos img {
  display: none;
}

.product__main-photos .flickity-page-dots {
  display: none;
}

@media only screen and (max-width:768px) {

  .product__main-photos {
    margin-left: -5%;
    margin-right: -17px
  }

  .product__main-photos .flickity-page-dots {
    display: block;
  }
}

.product-main-slide:not(.is-selected) button,
.product-main-slide:not(.is-selected) iframe,
.product-main-slide:not(.is-selected) model-viewer,
.product-main-slide:not(.is-selected) video {
  display: none;
}

.product-main-slide {
  display: none;
  width: 100%;
  overflow: hidden;
}

.product-main-slide:first-child {
  display: block;
}

.flickity-slider .product-main-slide {
  display: block;
}

@media only screen and (min-width:769px) {
  .flickity-slider .product-main-slide {
    height: 100%;
  }
}

@media only screen and (max-width:768px) {
  .grid--product-images--partial .flickity-slider .product-main-slide {
    width: 88%;
    aspect-ratio: 1;
  }
}

.product__thumbs {
  position: relative;
}

.product__thumbs--below {
  margin-top: 8.5px
}

@media only screen and (min-width:769px) {

  .product__thumbs--below {
    margin-top: 15px
  }
}

.product__thumbs--beside {
  flex: 0 0 60px;
  max-width: 60px;
  margin-left: 8.5px
}

@media only screen and (min-width:769px) {
  .product__thumbs--beside {
    flex: 0 0 80px;
    max-width: 80px;
    margin-left: 15px
  }

  .product__thumbs--beside.product__thumbs-placement--left {
    margin-left: 0;
    margin-right: 8px;
  }
}

.product__thumbs--scroller {
  scrollbar-width: none;
  scroll-behavior: smooth;
  -ms-overflow-style: -ms-autohiding-scrollbar
}

.product__thumbs--scroller::-webkit-scrollbar {
  height: 0;
  width: 0;
}

.product__thumbs--below .product__thumbs--scroller {
  overflow-x: scroll;
  white-space: nowrap
}

.product__thumbs--beside .product__thumbs--scroller {
  overflow-y: scroll;
  margin-bottom: 8px;
}

.product__thumbs--beside .product__thumb-arrow-container {
  display: flex;
  margin-right: 8px;
}

.product__thumb-item {
  border: 2px solid transparent;
  background-color: #F3F3F5;
}

.product__thumb-item a.is-active:before,
.product__thumb-item a:focus:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  box-shadow: inset 0 0 0 2px var(--colorTextBody);
  z-index: 1;
}

.product__thumb-item a:active:before {
  content: none;
}

.product__thumbs--beside .product__thumb-item {
  margin-bottom: 6px;
}

@media only screen and (min-width:769px) {
  .product__thumbs--beside .product__thumb-item {
    aspect-ratio: 1;
    display: flex;
    align-items: center;
  }
}

.product__thumbs--beside .product__thumb-item:last-child {
  margin-bottom: 0;
}

.product__thumbs--below .product__thumb-item {
  display: inline-block;
  vertical-align: middle;
  margin-right: 8.5px;
  max-width: 80px
}

@media only screen and (min-width:769px) {

  .product__thumbs--below .product__thumb-item {
    margin-right: 15px
  }
}

.product__thumbs--below .product__thumb-item:last-child {
  margin-right: 0;
}

.product__price {
  color: var(--colorPrice);
  margin-right: 5px;
  font-size: calc(var(--typeBaseSize) + 2px)
}

.product__price.on-sale {
  padding-right: 5px;
}

.product__unit-price {
  font-size: 0.8em;
  opacity: 0.8;
}

.product__unit-price--spacing {
  margin-top: 10px;
}

.product__price--compare {
  padding-right: 5px;
  display: inline-block;
  text-decoration: line-through;
}

.product__price-savings {
  color: var(--colorTextSavings);
  white-space: nowrap;
}

.product__quantity label {
  display: block;
  margin-bottom: 10px;
}

.product-form-holder--loaded {
  animation: fade-in 1s ease;
}

.add-to-cart[disabled]+.shopify-payment-button {
  display: none;
}

.product-slideshow.flickity-enabled .product-main-slide {
  display: none;
}

.product-slideshow.flickity-enabled .flickity-viewport .product-main-slide {
  display: block;
}

.product__photo-zoom {
  position: absolute !important;
  bottom: 0;
  right: 0;
  cursor: zoom-in;
  background-color: transparent !important;
  border: none !important;
}

@media only screen and (max-width:768px) {

  .product__photo-zoom {
    padding: 6px
  }

  .product__main-photos .product__photo-zoom {
    margin-bottom: 10px;
    margin-right: 10px
  }

  .product-slideshow .product__photo-zoom {
    opacity: 0;
    transition: opacity 0.5s ease-out;
  }
}

@media only screen and (min-width:769px) {

  .product__photo-zoom {
    opacity: 1;
    width: 100%;
    top: 0;
    left: 0;
    margin: 0;
    border-radius: 0
  }

  .product__photo-zoom span,
  .product__photo-zoom svg {
    position: absolute;
    right: 24px;
    bottom: 24px;
  }
}

.product__thumb-arrow {
  color: var(--colorTextBody);
  transform: none;
  border: 1px solid var(--colorTextBody);
  border-radius: 0;
  padding: 0;
  z-index: 2;
}

.product__thumb-arrow .icon {
  display: inline-block;
}

.product__thumbs[data-position=below] .product__thumb-arrow {
  top: 0;
  height: 100%;
  width: 25px
}

.product__thumbs[data-position=below] .product__thumb-arrow.product__thumb-arrow--prev {
  left: 0;
  text-align: left;
}

.product__thumbs[data-position=below] .product__thumb-arrow.product__thumb-arrow--next {
  right: 0;
  text-align: right;
}

.product__thumbs[data-position=beside] .product__thumb-arrow {
  width: 100%;
  padding: 7px;
  border-width: 1px;
}

.product__thumbs[data-position=beside] .product__thumb-arrow .icon {
  margin: 0 auto;
  transform: rotate(90deg);
  width: 24px;
  height: 24px;
}

.product__thumbs[data-position=beside] .product__thumb-arrow.product__thumb-arrow--next {
  border-left: none;
}

.product__thumb {
  position: relative;
  display: block;
  cursor: pointer;
}

.product__thumb-icon {
  position: absolute;
  top: calc(50% - 15px);
  right: 5px;
  background-color: var(--colorTextBody);
  border-radius: 100px;
  padding: 6px;
  z-index: 1;
  opacity: 0;
  transition: opacity 0.5s ease;
  font-size: 0
}

.aos-animate .product__thumb-icon {
  opacity: 1
}

.product__thumb-icon .icon {
  fill: var(--colorBody);
  width: 10px;
  height: 10px
}

@media only screen and (min-width:769px) {
  .product__thumb-icon .icon {
    width: 13px;
    height: 13px
  }

  .product__inventory-container {
    display: flex;
    column-gap: 12px;
  }

  .section__product-template .product__inventory-container .product-block--sales-point {
    align-items: flex-start;
    flex-basis: 33%;
  }
}

.section__product-template .product__inventory-container .product-block--sales-point ul {
  margin: 0;
}

body.is-gift-card .product__inventory-container {
  display: none;
}

.product__policies {
  font-size: 12px;
}

.shopify-payment-terms:empty {
  display: none;
}

.modal .shopify-payment-terms {
  display: none
}

.template-blog .article {
  margin-bottom: 45px
}

@media only screen and (min-width:769px) {

  .template-blog .article {
    margin-bottom: 90px
  }
}

.template-blog .article:last-child {
  margin-bottom: 0
}

@media only screen and (min-width:769px) {

  .template-blog .article:last-child {
    margin-bottom: 45px
  }
}

.article__body {
  margin-bottom: 15px
}

@media only screen and (min-width:769px) {

  .article__body {
    margin-bottom: 30px
  }
}

.article__comment {
  margin-bottom: 30px
}

.article__comment:last-child {
  margin-bottom: 0;
}

.password-page__header__grid {
  display: flex;
  flex: 1 1 auto;
  align-items: center;
  justify-content: space-between;
}

.password-page__logo h1 {
  margin-bottom: 0;
}

.password-page__logo .logo {
  max-width: 100%;
}

.password-login {
  display: block;
  margin: 0 auto;
  padding: 7.5px 15px;
}

.password-form {
  margin-bottom: 1em;
}

.password__lock .icon {
  position: relative;
  top: -2px;
  margin-right: 4px;
  width: 24px;
  height: 24px;
}

.icon-shopify-logo {
  width: 60px;
  height: 20px;
}

@media only screen and (max-width:768px) {

  #LoginModal .modal__close {
    padding: 20px
  }
}

#LoginModal .modal__inner {
  background: var(--colorBody);
  color: var(--colorTextBody);
  padding: 30px
}

@media only screen and (max-width:768px) {

  #LoginModal .modal__inner {
    margin-bottom: 40vh
  }
}

.password-admin-link {
  margin: 0
}

.password-admin-link a {
  border-bottom: 2px solid !important;
  border-bottom-color: var(--colorBorder) !important;
}

.template-giftcard,
.template-giftcard body {
  background: var(--colorBody)
}

.template-giftcard a,
.template-giftcard body a {
  text-decoration: none;
}

.template-giftcard .page-width {
  max-width: 588px;
}

.giftcard-header {
  padding: 60px 0;
  font-size: 1em;
  text-align: center
}

.giftcard-header a {
  display: block;
  margin: 0 auto;
}

.template-giftcard .shop-url {
  display: none;
}

.giftcard__border {
  padding: 1.5em;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.3);
}

.giftcard__content:after {
  content: "";
  display: table;
  clear: both;
}

.giftcard__content {
  background-color: var(--colorBody);
  color: var(--colorTextBody);
}

.giftcard__header:after {
  content: "";
  display: table;
  clear: both;
}

.giftcard__header {
  padding: 15px;
}

.giftcard__title {
  float: left;
  margin-bottom: 0;
}

.giftcard__tag {
  display: block;
  float: right;
  background-color: var(--colorTextBody);
  border: 1px solid transparent;
  color: var(--colorBody);
  padding: 10px;
  border-radius: 4px;
  font-size: 0.75em;
  text-transform: uppercase;
  letter-spacing: .05em;
  line-height: 1;
}

.giftcard__tag--active {
  background: transparent;
  color: var(--colorTextBody);
  border: 1px solid;
  border-color: var(--colorBorder);
}

.giftcard__wrap {
  position: relative;
  margin: 15px 15px 30px
}

.giftcard__wrap img {
  position: relative;
  display: block;
  border-radius: 10px;
  z-index: 2;
}

.giftcard__code {
  position: absolute;
  bottom: 30px;
  text-align: center;
  width: 100%;
  z-index: 50;
}

.giftcard__code--medium {
  font-size: .875em;
}

.giftcard__code--small {
  font-size: .75em;
}

.giftcard__code__inner {
  display: inline-block;
  vertical-align: baseline;
  background-color: #fff;
  padding: .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-weight: 400;
  font-size: 1.875em;
  text-transform: uppercase;
  border-radius: 2px;
  border: 1px dashed;
  border-color: var(--colorBorder);
  padding: .4em .5em;
  display: inline-block;
  vertical-align: baseline;
  color: var(--colorTextBody);
  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
}

.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-weight: 400;
  font-size: 12px;
  text-decoration: none;
  line-height: 16px;
  text-shadow: none;
  padding: .5em .75em;
  margin-left: .25em
}

.tooltip__label small {
  text-transform: uppercase;
  letter-spacing: .1em;
  color: #b3b3b3;
  font-size: .875em;
}

.giftcard__instructions {
  text-align: center;
  margin: 0 15px 30px;
}

.giftcard__actions {
  position: relative;
  text-align: center;
  overflow: hidden;
  padding-bottom: 1em;
}

.template-giftcard .action-link {
  position: absolute;
  left: 15px;
  top: 50%;
  font-size: 0.875em;
  font-weight: 700;
  display: block;
  padding-top: 4px;
  text-transform: uppercase;
  letter-spacing: .2em;
  margin-top: -10px
}

.template-giftcard .action-link:focus,
.template-giftcard .action-link:hover {
  color: var(--colorTextBody);
}

.template-giftcard .action-link__print {
  display: inline-block;
  vertical-align: baseline;
  width: 17px;
  height: 17px;
  vertical-align: middle;
  margin-right: 10px;
  opacity: 1;
  background-image: url(/cdn/s/assets/gift-card/icon-print-164daa1ae32d10d1f9b83ac21b6f2c70.png);
  background-repeat: no-repeat;
  background-position: 0 0;
}

.giftcard__footer {
  text-align: center;
  padding: 60px 0;
}

#QrCode img {
  padding: 30px;
  border: 1px solid;
  border-color: var(--colorBorder);
  border-radius: 4px;
  margin: 0 auto 30px;
}

@media only screen and (max-width:768px) {
  .giftcard {
    font-size: 12px;
  }

  .giftcard-header {
    padding: 30px 0;
  }

  .header-logo {
    font-size: 2em;
  }

  .giftcard__border {
    padding: 15px;
  }

  .giftcard__actions {
    padding: 15px;
  }

  .giftcard__actions .btn {
    width: 100%;
    padding-left: 0;
    padding-right: 0;
  }

  .template-giftcard .action-link {
    display: none;
  }
}

@media screen and (max-width:400px) {
  .giftcard__amount strong {
    text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.1);
  }

  .giftcard__wrap:after,
  .giftcard__wrap:before {
    display: none;
  }

  .giftcard__code {
    font-size: .75em;
  }

  .giftcard__code--medium {
    font-size: .65em;
  }

  .giftcard__code--small {
    font-size: .55em;
  }
}

@media screen and (max-height:800px) {
  .header-logo img {
    max-height: 90px;
  }
}

@media print {
  @page {
    margin: 0.5cm;
  }

  h2,
  h3,
  p {
    orphans: 3;
    widows: 3;
  }

  h2,
  h3 {
    page-break-after: avoid;
  }

  body,
  html {
    background-color: #fff;
  }

  .giftcard-header {
    padding: 10px 0;
  }

  .giftcard__border,
  .giftcard__content {
    border: 0 none;
  }

  .add-to-apple-wallet,
  .giftcard__actions,
  .giftcard__wrap:after,
  .giftcard__wrap:before,
  .site-header__logo-link img:nth-child(2),
  .tooltip {
    display: none;
  }

  .giftcard__title {
    float: none;
    text-align: center;
  }

  .giftcard__code__text {
    color: #555;
  }

  .template-giftcard .shop-url {
    display: block;
  }

  .template-giftcard .logo {
    color: #58686f;
  }
}