/** Shopify CDN: Minification failed

Line 17156:0 Expected "}" to go with "{"

**/
@charset "UTF-8";
/*
File structure:
[Assign user-editable variables in liquid]
[Assign settings variables in liquid]
[Assign conditional variables in liquid]
[Assign variables in scss]
*//* Typography sizes */
/* Font imports *//* Store availability variables */
/* Tabs variables */
/* Price slider variables */
/* Rating stars variables */
/* Product page breakpoints */
/* CSS3 animations */
@keyframes reveal {
  0% {
    opacity: 0;
  }
  1% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
@keyframes unreveal {
  0% {
    opacity: 1;
    left: 0;
  }
  1% {
    opacity: 1;
  }
  100% {
    opacity: 0;
    left: 0;
  }
}
@keyframes spin {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(359deg);
    transform: rotate(359deg);
  }
}
@keyframes fadeIn {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
/* normalize.css v3.0.0 | MIT License | git.io/normalize */
html {
  font-family: sans-serif;
  -ms-text-size-adjust: 100%;
  -webkit-text-size-adjust: 100%;
}

body {
  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;
}

audio:not([controls]) {
  display: none;
  height: 0;
}

[hidden], template {
  display: none;
}

a {
  background: transparent;
}

a:active, a:hover {
  outline: 0;
}

abbr[title] {
  border-bottom: 1px dotted;
}

b, strong {
  font-weight: bold;
}

dfn {
  font-style: italic;
}

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

mark {
  background: #ff0;
  color: #000;
}

small {
  font-size: 80%;
}

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

sup {
  top: -0.5em;
}

sub {
  bottom: -0.25em;
}

img {
  border: 0;
}

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

figure {
  margin: 1em 40px;
}

hr {
  -moz-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
}

pre {
  overflow: auto;
}

code, kbd, pre, samp {
  font-family: monospace;
  font-size: 1em;
}

button, input, optgroup, textarea {
  color: inherit;
  font: inherit;
  margin: 0;
}

button {
  overflow: visible;
}

button, select {
  text-transform: none;
}

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

button[disabled], html input[disabled] {
  cursor: default;
}

button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

input {
  line-height: normal;
}

input[type=checkbox], input[type=radio] {
  box-sizing: border-box;
  padding: 0;
}

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

input[type=search] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}

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

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

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

td, th {
  padding: 0;
}

/* Colorbox Styles */
#cboxOverlay, #cboxWrapper, #colorbox {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: hidden;
} #cboxWrapper {
  max-width: none;
} #cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
} #cboxBottomLeft, #cboxMiddleLeft {
  clear: left;
} #cboxContent {
  position: relative;
} #cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
} #cboxTitle {
  margin: 0;
} #cboxLoadingGraphic, #cboxLoadingOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
} #cboxClose, #cboxNext, #cboxPrevious, #cboxSlideshow {
  cursor: pointer;
} .cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
} .cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
} #cboxContent, #cboxLoadedContent, #colorbox {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
} #cboxOverlay {
  background: #fff;
} #colorbox {
  outline: 0;
} #cboxTopLeft {
  width: 25px;
  height: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border1.png?v=113436874971659238651786791993) no-repeat 0 0;
} #cboxTopCenter {
  height: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border1.png?v=113436874971659238651786791993) repeat-x 0 -50px;
} #cboxTopRight {
  width: 25px;
  height: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border1.png?v=113436874971659238651786791993) no-repeat -25px 0;
} #cboxBottomLeft {
  width: 25px;
  height: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border1.png?v=113436874971659238651786791993) no-repeat 0 -25px;
} #cboxBottomCenter {
  height: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border1.png?v=113436874971659238651786791993) repeat-x 0 -75px;
} #cboxBottomRight {
  width: 25px;
  height: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border1.png?v=113436874971659238651786791993) no-repeat -25px -25px;
} #cboxMiddleLeft {
  width: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border2.png?v=142803151667698387151786791993) repeat-y 0 0;
} #cboxMiddleRight {
  width: 25px;
  background: url(//shamelesscollective.com/cdn/shop/t/46/assets/cbox_border2.png?v=142803151667698387151786791993) repeat-y -25px 0;
} #cboxContent {
  background: #fff;
  overflow: hidden;
} .cboxIframe {
  background: #fff;
} #cboxError {
  padding: 50px;
  border: 1px solid #ccc;
} #cboxLoadedContent {
  margin-bottom: 20px;
} #cboxTitle {
  position: absolute;
  bottom: 0;
  left: 0;
  text-align: center;
  width: 100%;
  color: #999;
} #cboxCurrent {
  display: none !important;
  position: absolute;
  bottom: 0;
  left: 100px;
  color: #999;
} #cboxLoadingOverlay {
  background: #fff url(//shamelesscollective.com/cdn/shop/t/46/assets/loading.gif?v=115678512110750922101786791993) no-repeat center 50px;
} #cboxClose, #cboxNext, #cboxPrevious, #cboxSlideshow {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: 0 0;
} #cboxClose:active, #cboxNext:active, #cboxPrevious:active, #cboxSlideshow:active {
  outline: 0;
} #cboxSlideshow {
  position: absolute;
  bottom: 0;
  right: 42px;
  color: #444;
} #cboxPrevious {
  position: absolute;
  bottom: 0;
  left: 0;
  color: #444;
} #cboxNext {
  position: absolute;
  bottom: 0;
  left: 6.5em;
  color: #444;
} #cboxClose {
  position: absolute;
  bottom: 0;
  right: 0;
  display: block;
  color: #444;
} .cboxIE #cboxBottomCenter, .cboxIE #cboxBottomLeft, .cboxIE #cboxBottomRight, .cboxIE #cboxMiddleLeft, .cboxIE #cboxMiddleRight, .cboxIE #cboxTopCenter, .cboxIE #cboxTopLeft, .cboxIE #cboxTopRight {
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#00FFFFFF, endColorstr=#00FFFFFF);
}

/**
 * Swiper 3.3.1
 * Most modern mobile touch slider and framework with hardware accelerated transitions
 *
 * http://www.idangero.us/swiper/
 *
 * Copyright 2016, Vladimir Kharlampidi
 * The iDangero.us
 * http://www.idangero.us/
 *
 * Licensed under MIT
 *
 * Released on: February 7, 2016
 */
.swiper-container {
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-container-no-flexbox .swiper-slide {
  float: left;
}

.swiper-container-vertical .swiper-wrapper {
  -webkit-box-orient: vertical;
  -moz-box-orient: vertical;
  -ms-flex-direction: column;
  -webkit-flex-direction: column;
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-transition-property: -webkit-transform;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform;
  -webkit-box-sizing: content-box;
  -moz-box-sizing: content-box;
  box-sizing: content-box;
}

.swiper-container-android .swiper-slide,
.swiper-wrapper {
  -webkit-transform: translate3d(0px, 0, 0);
  -moz-transform: translate3d(0px, 0, 0);
  -o-transform: translate(0px, 0px);
  -ms-transform: translate3d(0px, 0, 0);
  transform: translate3d(0px, 0, 0);
}

.swiper-container-multirow .swiper-wrapper {
  -webkit-box-lines: multiple;
  -moz-box-lines: multiple;
  -ms-flex-wrap: wrap;
  -webkit-flex-wrap: wrap;
  flex-wrap: wrap;
}

.swiper-container-free-mode .swiper-wrapper {
  -webkit-transition-timing-function: ease-out;
  -moz-transition-timing-function: ease-out;
  -ms-transition-timing-function: ease-out;
  -o-transition-timing-function: ease-out;
  transition-timing-function: ease-out;
  margin: 0 auto;
}

.swiper-slide {
  -webkit-flex-shrink: 0;
  -ms-flex: 0 0 auto;
  flex-shrink: 0;
  /*width: 100%;*/
  height: 100%;
  position: relative;
}

/* Auto Height */
.swiper-container-autoheight,
.swiper-container-autoheight .swiper-slide {
  height: auto;
}

.swiper-container-autoheight .swiper-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  -webkit-align-items: flex-start;
  align-items: flex-start;
  -webkit-transition-property: -webkit-transform, height;
  -moz-transition-property: -moz-transform;
  -o-transition-property: -o-transform;
  -ms-transition-property: -ms-transform;
  transition-property: transform, height;
}

/* a11y */
.swiper-container .swiper-notification {
  position: absolute;
  left: 0;
  top: 0;
  pointer-events: none;
  opacity: 0;
  z-index: -1000;
}

/* IE10 Windows Phone 8 Fixes */
.swiper-wp8-horizontal {
  -ms-touch-action: pan-y;
  touch-action: pan-y;
}

.swiper-wp8-vertical {
  -ms-touch-action: pan-x;
  touch-action: pan-x;
}

/* Arrows */
.swiper-button-prev,
.swiper-button-next {
  position: absolute;
  top: 50%;
  width: 44px;
  height: 44px;
  z-index: 10;
  cursor: pointer;
  margin-top: -22px;
  -moz-background-size: 44px 44px;
  -webkit-background-size: 44px 44px;
  background-size: 44px 44px;
  display: flex;
  align-items: center;
  background-color: #ffffff;
  transition: all 80ms ease-out;
  border-radius: 50%;
  background-clip: content-box;
  color: #757575;
}
.swiper-button-prev:hover, .swiper-button-prev:focus,
.swiper-button-next:hover,
.swiper-button-next:focus {
  opacity: 1;
}
.swiper-button-prev:hover svg, .swiper-button-prev:focus svg,
.swiper-button-next:hover svg,
.swiper-button-next:focus svg {
  color: #000;
}
.swiper-button-prev svg,
.swiper-button-next svg {
  transition: color 0.3s;
  margin: 0 auto;
  height: 20px;
  width: 20px;
}

.swiper-button-prev {
  left: 20px;
}
@media (min-width: 768px) {
  .swiper-button-prev {
    left: 3px;
  }
}

.swiper-button-next {
  right: 20px;
}
@media (min-width: 768px) {
  .swiper-button-next {
    right: 3px;
  }
}

.swiper-button-prev.swiper-button-disabled,
.swiper-button-next.swiper-button-disabled {
  opacity: 0.35;
  cursor: auto;
}

/*.swiper-button-prev,
.swiper-container-rtl .swiper-button-next {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  left: 10px;
  right: auto;
}
.swiper-button-prev.swiper-button-black,
.swiper-container-rtl .swiper-button-next.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-prev.swiper-button-white,
.swiper-container-rtl .swiper-button-next.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M0%2C22L22%2C0l2.1%2C2.1L4.2%2C22l19.9%2C19.9L22%2C44L0%2C22L0%2C22L0%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-next,
.swiper-container-rtl .swiper-button-prev {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23007aff'%2F%3E%3C%2Fsvg%3E");
  right: 10px;
  left: auto;
}
.swiper-button-next.swiper-button-black,
.swiper-container-rtl .swiper-button-prev.swiper-button-black {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23000000'%2F%3E%3C%2Fsvg%3E");
}
.swiper-button-next.swiper-button-white,
.swiper-container-rtl .swiper-button-prev.swiper-button-white {
  background-image: url("data:image/svg+xml;charset=utf-8,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2027%2044'%3E%3Cpath%20d%3D'M27%2C22L27%2C22L5%2C44l-2.1-2.1L22.8%2C22L2.9%2C2.1L5%2C0L27%2C22L27%2C22z'%20fill%3D'%23ffffff'%2F%3E%3C%2Fsvg%3E");
}*/
/* Pagination Styles */
.swiper-pagination {
  position: absolute;
  text-align: center;
  -webkit-transition: 300ms;
  -moz-transition: 300ms;
  -o-transition: 300ms;
  transition: 300ms;
  -webkit-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  z-index: 10;
}

.swiper-pagination.swiper-pagination-hidden {
  opacity: 0;
}

/* Common Styles */
.swiper-pagination-fraction,
.swiper-pagination-custom,
.swiper-container-horizontal .swiper-pagination-bullets {
  bottom: 10px;
  left: 0;
  width: 100%;
}

/* Bullets */
.swiper-pagination-bullets-dynamic {
  bottom: 10px;
  left: 50% !important;
  transform: translateX(-50%);
  white-space: nowrap;
  overflow: hidden;
  font-size: 0;
  position: absolute;
  text-align: center;
  transition: 0.5s opacity;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
  display: inline-block;
  margin: 0 4px;
  transition: 0.4s transform, 0.4s left;
  transform: scale(0.33);
  position: relative;
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
  transform: scale(1);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
  transform: scale(0.33);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
  transform: scale(0.66);
}
.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
  transform: scale(0.33);
}

.swiper-pagination-bullet {
  width: 8px;
  height: 8px;
  display: inline-block;
  border-radius: 100%;
  background: #fff;
  opacity: 0.5;
  box-shadow: 0px 0px 2px rgba(0, 0, 0, 0.2);
}

button.swiper-pagination-bullet {
  border: none;
  margin: 0;
  padding: 0;
  box-shadow: none;
  -moz-appearance: none;
  -ms-appearance: none;
  -webkit-appearance: none;
  appearance: none;
}

.swiper-pagination-clickable .swiper-pagination-bullet {
  cursor: pointer;
}

.swiper-pagination-white .swiper-pagination-bullet {
  background: #fff;
}

.swiper-pagination-bullet-active {
  opacity: 1;
  background: #fff;
}

.swiper-pagination-white .swiper-pagination-bullet-active {
  background: #fff;
}

.swiper-pagination-black .swiper-pagination-bullet-active {
  background: #fff;
}

.swiper-container-vertical .swiper-pagination-bullets {
  right: 10px;
  top: 50%;
  -webkit-transform: translate3d(0px, -50%, 0);
  -moz-transform: translate3d(0px, -50%, 0);
  -o-transform: translate(0px, -50%);
  -ms-transform: translate3d(0px, -50%, 0);
  transform: translate3d(0px, -50%, 0);
}

.swiper-container-vertical .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 5px 0;
  display: block;
}

.swiper-container-horizontal .swiper-pagination-bullets .swiper-pagination-bullet {
  margin: 0 5px;
}

/* Progress */
.swiper-pagination-progress {
  background: rgba(0, 0, 0, 0.25);
  position: absolute;
}

.swiper-pagination-progress .swiper-pagination-progressbar {
  background: #000;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
}

.swiper-container-rtl .swiper-pagination-progress .swiper-pagination-progressbar {
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
}

.swiper-container-horizontal .swiper-pagination-progress {
  width: 100%;
  height: 4px;
  left: 0;
  top: 0;
}

.swiper-container-vertical .swiper-pagination-progress {
  width: 4px;
  height: 100%;
  left: 0;
  top: 0;
}

.swiper-pagination-progress.swiper-pagination-white {
  background: rgba(255, 255, 255, 0.5);
}

.swiper-pagination-progress.swiper-pagination-white .swiper-pagination-progressbar {
  background: #fff;
}

.swiper-pagination-progress.swiper-pagination-black .swiper-pagination-progressbar {
  background: #000;
}

/* 3D Container */

/* Scrollbar */
.swiper-scrollbar {
  position: relative;
  -ms-touch-action: none;
  background: rgba(0, 0, 0, 0.1);
}

.swiper-container-horizontal .swiper-scrollbar {
  position: absolute;
  left: 1%;
  bottom: -2px;
  z-index: 50;
  height: 3px;
  width: 98%;
}

.swiper-container-vertical .swiper-scrollbar {
  position: absolute;
  right: 3px;
  top: 1%;
  z-index: 50;
  width: 5px;
  height: 98%;
}

.swiper-scrollbar-drag {
  height: 100%;
  width: 100%;
  position: relative;
  background: rgba(0, 0, 0, 0.5);
  left: 0;
  top: 0;
}

.swiper-scrollbar-cursor-drag {
  cursor: move;
}

/* theme override */
.swiper-scrollbar {
  left: 0;
  width: 100%;
  bottom: 0;
  height: 3px;
  background: rgba(255, 255, 255, 0.4);
}

.reading-width {
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}

.link-display {
  color: #807497;
  border-bottom: 1px solid #807497;
}
.link-display:hover {
  color: #000000;
  border-bottom-color: #000000;
}

.rte, #comments, #template, #address_tables, .section-accordion .cc-accordion-item__content {
  text-align: left;
  zoom: 1;
}
.rte::before, #comments::before, #template::before, #address_tables::before, .section-accordion .cc-accordion-item__content::before {
  content: "";
  display: table;
}
.rte::after, #comments::after, #template::after, #address_tables::after, .section-accordion .cc-accordion-item__content::after {
  content: "";
  display: table;
  clear: both;
}
.rte h1, #comments h1, #template h1, #address_tables h1, .rte h2, #comments h2, #template h2, #address_tables h2, .rte h3, #comments h3, #template h3, #address_tables h3, .rte h4, #comments h4, #template h4, #address_tables h4, .rte .under-cart .subtotal, #comments .under-cart .subtotal, #template .under-cart .subtotal, #address_tables .under-cart .subtotal, .under-cart .rte .subtotal, .under-cart #comments .subtotal, .under-cart #template .subtotal, .under-cart #address_tables .subtotal, .rte blockquote, #comments blockquote, #template blockquote, #address_tables blockquote, .rte h5, #comments h5, #template h5, #address_tables h5, .rte h6, #comments h6, #template h6, #address_tables h6, .section-accordion .cc-accordion-item__content h1, .section-accordion .cc-accordion-item__content h2, .section-accordion .cc-accordion-item__content h3, .section-accordion .cc-accordion-item__content h4, .section-accordion .cc-accordion-item__content .under-cart .subtotal, .under-cart .section-accordion .cc-accordion-item__content .subtotal, .section-accordion .cc-accordion-item__content blockquote, .section-accordion .cc-accordion-item__content h5, .section-accordion .cc-accordion-item__content h6 {
  margin-top: 1em;
  margin-bottom: 1em;
}
.rte a, #comments a, #template a, #address_tables a, .section-accordion .cc-accordion-item__content a {
  color: #807497;
  border-bottom: 1px solid #807497;
}
.rte a:hover, #comments a:hover, #template a:hover, #address_tables a:hover, .section-accordion .cc-accordion-item__content a:hover {
  color: #000000;
  border-bottom-color: #000000;
}
.rte a.contains-img, #comments a.contains-img, #template a.contains-img, #address_tables a.contains-img, .section-accordion .cc-accordion-item__content a.contains-img {
  border-bottom: none;
}
.rte p, #comments p, #template p, #address_tables p, .section-accordion .cc-accordion-item__content p {
  line-height: 1.5em;
}
.rte p:last-child, #comments p:last-child, #template p:last-child, #address_tables p:last-child, .section-accordion .cc-accordion-item__content p:last-child {
  margin-bottom: 0;
}
.rte tr, #comments tr, #template tr, #address_tables tr, .section-accordion .cc-accordion-item__content tr {
  border-top: 1px solid #bfbfbf;
}
.rte tr:first-child, #comments tr:first-child, #template tr:first-child, #address_tables tr:first-child, .section-accordion .cc-accordion-item__content tr:first-child {
  border-top: none;
}
.rte td, #comments td, #template td, #address_tables td, .rte th, #comments th, #template th, #address_tables th, .section-accordion .cc-accordion-item__content td, .section-accordion .cc-accordion-item__content th {
  border-left: 1px solid #bfbfbf;
  padding: 0.4em 0.6em;
}
.rte td:first-child, #comments td:first-child, #template td:first-child, #address_tables td:first-child, .rte th:first-child, #comments th:first-child, #template th:first-child, #address_tables th:first-child, .section-accordion .cc-accordion-item__content td:first-child, .section-accordion .cc-accordion-item__content th:first-child {
  border-left: none;
}
.rte th, #comments th, #template th, #address_tables th, .section-accordion .cc-accordion-item__content th {
  border-bottom: 2px solid #bfbfbf;
}
.rte tfoot, #comments tfoot, #template tfoot, #address_tables tfoot, .section-accordion .cc-accordion-item__content tfoot {
  border-top: 2px solid #bfbfbf;
}
@media (min-width: 768px) {
  .rte.large-text, .large-text#comments, .large-text#template, .large-text#address_tables, .section-accordion .cc-accordion-item__content.large-text {
    font-size: 1.2em;
  }
}
.rte.line-2 p:first-child, .line-2#comments p:first-child, .line-2#template p:first-child, .line-2#address_tables p:first-child, .section-accordion .cc-accordion-item__content.line-2 p:first-child {
  margin-top: 0;
}
.column.half .rte, .column.half #comments, .column.half #template, .column.half #address_tables, .grid li.half .rte, .grid li.half #comments, .grid li.half #template, .grid li.half #address_tables, header.half .rte, header.half #comments, header.half #template, header.half #address_tables, footer.half .rte, footer.half #comments, footer.half #template, footer.half #address_tables, .half#main .rte, .half#main #comments, .half#main #template, .half#main #address_tables, .column-half .rte, .column-half #comments, #order_payment .rte, #order_payment #comments,
#order_shipping .rte,
#order_shipping #comments, .column-half #template, #order_payment #template,
#order_shipping #template, .column-half #address_tables, #order_payment #address_tables,
#order_shipping #address_tables, .column.half .section-accordion .cc-accordion-item__content, .grid li.half .section-accordion .cc-accordion-item__content, header.half .section-accordion .cc-accordion-item__content, footer.half .section-accordion .cc-accordion-item__content, .half#main .section-accordion .cc-accordion-item__content, .column-half .section-accordion .cc-accordion-item__content, #order_payment .section-accordion .cc-accordion-item__content,
#order_shipping .section-accordion .cc-accordion-item__content {
  padding-left: 0.75em;
  padding-right: 0.75em;
}
.template-index .central.wide .rte, .template-index .central.wide #comments, .template-index .central.wide #template, .template-index .central.wide #address_tables, .template-index .central.wide .section-accordion .cc-accordion-item__content {
  max-width: none;
}

.content-row {
  margin-top: 100px;
  margin-bottom: 100px;
}

.content-row-bottom {
  margin-bottom: 100px;
}

.article .rte, .article #comments, .article #template, .article #address_tables {
  margin-top: 1em;
  margin-bottom: 1em;
}

.article .meta {
  margin-top: -1em;
  margin-bottom: 3em;
  text-align: center;
  font-size: 0.8em;
  line-height: 1.2em;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  font-weight: 600;
}
.article .meta .sharing {
  margin-top: 1.5em;
}
.article .meta .sharing li {
  margin: 0 1em;
}
.article .meta .sharing-label {
  display: none;
}

.article-image {
  margin-bottom: 2em;
  text-align: center;
}

.pagination {
  margin: 1em 0;
  text-align: center;
  padding-bottom: 1px !important;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.pagination .page {
  margin: 2px 0.5em;
}
.pagination .page.current {
  position: relative;
}
.pagination .page.current::after {
  content: "";
  bottom: -1px;
  left: -3px;
  right: -3px;
  height: 2px;
  position: absolute;
  background-color: currentColor;
}
.pagination .prev, .pagination .next {
  display: inline-flex;
  width: 44px;
  height: 44px;
}
.pagination .prev a, .pagination .next a {
  position: relative;
  display: inline-block;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: rgba(200, 200, 200, 0.2);
  overflow: hidden;
  text-indent: -1000px;
  will-change: transform;
  transition: transform 0.3s;
}
.pagination .prev a::before, .pagination .next a::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  width: 20px;
  height: 20px;
  transform: translate3d(-50%, -50%, 0);
  opacity: 0.5;
  transition: opacity 0.4s;
}
.pagination .prev:hover a, .pagination .next:hover a {
  transform: scale(1.06);
}
.pagination .prev:hover a::before, .pagination .next:hover a::before {
  opacity: 0.8;
}
.pagination .prev {
  margin-right: 0.5em;
}
.pagination .prev a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M0-.25H24v24H0Z' transform='translate(0 0.25)' style='fill:none'%3E%3C/path%3E%3Cpolyline points='14.4 7.03 9 12.43 14.4 17.83' style='fill:none;stroke:currentColor;stroke-linecap:round;stroke-miterlimit:8;stroke-width:3px'%3E%3C/polyline%3E%3C/svg%3E");
}
.pagination .next {
  margin-left: 0.5em;
}
.pagination .next a::before {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M0-.25H24v24H0Z' transform='translate(0 0.25)' style='fill:none'%3E%3C/path%3E%3Cpolyline points='10 17.83 15.4 12.43 10 7.03' style='fill:none;stroke:currentColor;stroke-linecap:round;stroke-miterlimit:8;stroke-width:3px'%3E%3C/polyline%3E%3C/svg%3E");
}

.pager-button {
  padding: 2em 0;
  text-align: center;
}
.pager-button svg {
  width: 44px;
  height: 44px;
  fill: #ffffff;
}
.pager-button a.loading:hover svg {
  top: 0;
}
.pager-button a svg {
  position: relative;
  top: 0;
  -webkit-transition: top 100ms linear;
  -ms-transition: top 100ms linear;
  -moz-transition: top 100ms linear;
  -o-transition: top 100ms linear;
  transition: top 100ms linear;
}
.pager-button a:hover svg {
  top: 4px;
}
.pager-button .no-more {
  font-size: 18px;
}

.filter {
  margin: 40px 20px 0;
  text-align: center;
}
.filter .option {
  margin: 0 10px 20px;
  display: inline-block;
}
.filter .option.option--gap-top {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .filter .filter .option {
    display: block;
    margin: 0 0 20px;
  }
}

.circled-icon {
  display: inline-block;
  position: relative;
  padding: 25px;
  line-height: 1em;
  border: 1px solid;
  -webkit-border-radius: 100px;
  -ms-border-radius: 100px;
  -moz-border-radius: 100px;
  -o-border-radius: 100px;
  border-radius: 100px;
}

.crumbs {
  font-style: italic;
  padding: 0;
}
.crumbs ul {
  padding: 0;
}
.crumbs li {
  display: inline;
  list-style: none;
  padding: 0 0.2em;
}
.crumbs li::before {
  content: "/";
  padding-right: 0.4em;
}
.crumbs li:first-child:before {
  content: "";
  padding-right: 0;
}
.crumbs li:last-child a {
  text-decoration: none;
  cursor: default;
  opacity: 0.8;
  border: none;
}
.crumbs a:hover {
  border-bottom: 1px dotted;
}

.next-prev {
  font-size: 80%;
}

.product-label {
  display: inline-block;
  margin: 0 0 1em;
  font-size: 12px;
  line-height: 12px;
  text-transform: uppercase;
  text-align: center;
  top: 5px;
  left: 5px;
  padding: 8px 14px;
}
@media (min-width: 768px) {
  .product-label {
    top: 10px;
    left: 10px;
    transform: scale(1);
  }
}
.product-label.sale {
  background-color: rgba(0,0,0,0);
  color: rgba(0,0,0,0);
}
.product-label.preorder {
  background-color: rgba(0,0,0,0);
  color: #b79aef;
}
.product-label.unavailable {
  background-color: rgba(0,0,0,0);
  color: #ffffff;
}
.product-label.product-label--new {
  background-color: rgba(0,0,0,0);
  color: rgba(0,0,0,0);
}
.product-block.sold-out .image .image-inner::after {
  background: rgba(0, 0, 0, 0.55) !important;
  opacity: 1 !important;
}
.product-block.sold-out .product-marquee {
  height: 100%;
  z-index: 3;
  pointer-events: none;
}
.product-block.sold-out .product-label.unavailable {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  margin: 0;
  font-size: 16px;
  line-height: 16px;
  letter-spacing: 0.1em;
  font-weight: 700;
  z-index: 3;
  white-space: nowrap;
  overflow: visible;
  padding: 5px 12px;
  width: auto;
  background: transparent;
}
.product-block.sold-out .product-label.unavailable.product-label--marquee > span {
  display: none;
}
.product-block.sold-out .product-label.unavailable.product-label--marquee > span:first-child {
  display: inline-block;
  padding: 0;
}
.product-block.sold-out .product-label.unavailable.product-label--marquee > span:first-child::after {
  display: none;
}
.product-label span {
  display: inline-block;
  vertical-align: middle;
  line-height: 1.2em;
  letter-spacing: 0.05em;
}
.product-label.product-label--marquee {
  position: absolute;
  top: 0;
  left: 0;
  white-space: nowrap;
  margin: 0;
  z-index: 1;
  overflow: hidden;
  padding: 0 0 2px 5px;
  font-weight: bold;
  transition: opacity 250ms;
  line-height: 24px;
}
.product-label.product-label--marquee > span {
  padding: 2px 20px 2px 4px;
  position: relative;
}
.product-label.product-label--marquee > span::after {
  content: "";
  position: absolute;
  right: 4px;
  height: 4px;
  width: 4px;
  top: 50%;
  transform: translateY(-50%);
  background: currentColor;
  border-radius: 50%;
}
.product-label.product-label--marquee > span:nth-last-child(3) {
  opacity: 0.6;
}
.product-label.product-label--marquee > span:nth-last-child(2) {
  opacity: 0.4;
}
.product-label.product-label--marquee > span:last-child {
  opacity: 0.2;
}
.product-label.product-label--marquee > span:last-child::after {
  content: "";
}

.vendor,
.product-area__text-block.product-area__subtitle,
.under-cart__text.under-cart__subtitle {
  font-size: 14px;
  opacity: 0.5;
}

.product-area__bold,
.under-cart__bold {
  font-weight: 600;
}

.was-price {
  text-decoration: line-through;
  opacity: 0.5;
}

.original-price {
  text-decoration: line-through;
  opacity: 0.6;
}

.unit-price {
  font-style: italic;
}

.simple-popup {
  position: absolute;
  z-index: 10000;
  width: 140px;
  padding: 10px 15px;
  border: 1px solid #000;
  color: #eee;
  background: #444;
  -webkit-border-radius: 3px;
  -ms-border-radius: 3px;
  -moz-border-radius: 3px;
  -o-border-radius: 3px;
  border-radius: 3px;
  -webkit-box-shadow: 0 0 2px 0 #888;
  -ms-box-shadow: 0 0 2px 0 #888;
  -moz-box-shadow: 0 0 2px 0 #888;
  -o-box-shadow: 0 0 2px 0 #888;
  box-shadow: 0 0 2px 0 #888;
  text-align: center;
}

.inherit-colors {
  color: inherit;
}
.inherit-colors h1, .inherit-colors h2, .inherit-colors h3, .inherit-colors h4, .inherit-colors .under-cart .subtotal, .under-cart .inherit-colors .subtotal, .inherit-colors h5, .inherit-colors h6, .inherit-colors .h1, .inherit-colors .overlay-type .line-1, .overlay-type .inherit-colors .line-1, .inherit-colors .h2, .inherit-colors .h3, .inherit-colors .h4, .inherit-colors .h5, .inherit-colors .h6, .inherit-colors blockquote {
  color: inherit;
}

.footer-button-xs {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 2;
  background-color: #ffffff;
  transition: transform 0.3s cubic-bezier(0, 0.14, 0.19, 1);
}
.footer-button-xs button {
  width: 100%;
  border-radius: 0 !important;
  height: 65px;
}
.footer-button-xs.-out {
  transform: translate3d(0, 105%, 0);
}
@media (min-width: 768px) {
  .footer-button-xs {
    display: none;
  }
}

#cc-veil {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 99999999;
  background-color: #fff;
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.3s, visibility 0.3s;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #222;
}
.animation-speed-fast #cc-veil {
  transition: opacity 0.15s, visibility 0.15s;
}
#cc-veil.-in {
  bottom: 0;
  right: 0;
  visibility: visible;
  opacity: 1;
}
#cc-veil.cc-veil--animate .cc-veil-loader {
  position: relative;
  will-change: opacity;
  transition: opacity 0.4s;
  opacity: 0;
  overflow: hidden;
  font-family: Helvetica, Arial, sans-serif;
  line-height: 1em;
  padding: 20px 0;
  font-size: 32.4px;
  text-align: center;
}
.animation-speed-fast #cc-veil.cc-veil--animate .cc-veil-loader {
  transition: opacity 0.2s;
}
@media (min-width: 768px) {
  #cc-veil.cc-veil--animate .cc-veil-loader {
    padding: 0.8em 0;
  }
}
#cc-veil.cc-veil--animate .cc-veil-loader__image {
  width: 240px;
}
@media (max-width: 767px) {
  #cc-veil.cc-veil--animate .cc-veil-loader__image {
    max-width: 50vw;
  }
}
#cc-veil.cc-veil--animate .cc-veil-loader__message {
  text-align: center;
  margin: 0.8em 0 0;
  line-height: 1em;
}
@media (min-width: 768px) {
  #cc-veil.cc-veil--animate .cc-veil-loader__message {
    font-size: 36px;
  }
}
#cc-veil.cc-veil--animate .cc-veil-loader--image-text .cc-veil-loader__message {
  margin: 1.6em 0 0.8em;
}
#cc-veil.cc-veil--animate .cc-veil-loader--blank {
  min-width: 150px;
  min-height: 2px;
}
#cc-veil.cc-veil--animate .cc-veil-loader--fill::after,
#cc-veil.cc-veil--animate .cc-veil-loader--progress_bar::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  opacity: 0;
  will-change: transform, opacity;
  transition: transform 0.9s linear;
}
.animation-speed-fast #cc-veil.cc-veil--animate .cc-veil-loader--fill::after,
.animation-speed-fast #cc-veil.cc-veil--animate .cc-veil-loader--progress_bar::after {
  transition: transform 0.9s;
}
#cc-veil.cc-veil--animate .cc-veil-loader--fill::after {
  height: 100%;
  background: rgba(255, 255, 255, 0.7);
}
#cc-veil.cc-veil--animate .cc-veil-loader--progress_bar::after {
  height: 2px;
  background: #222;
  transform: translateX(-100%);
}
#cc-veil.cc-veil--animate.cc-veil--animate--running .cc-veil-loader--progress_bar::after {
  transform: translateX(0);
}
#cc-veil.cc-veil--animate.cc-veil--animate--in .cc-veil-loader {
  opacity: 1;
}
#cc-veil.cc-veil--animate.cc-veil--animate--in .cc-veil-loader--fill::after {
  transform: translateX(100%);
  opacity: 1;
}
#cc-veil.cc-veil--animate.cc-veil--animate--in .cc-veil-loader--progress_bar::after {
  opacity: 1;
}

.shopify-policy__container {
  padding-top: 50px;
  padding-bottom: 70px;
}

#page-content .shopify-email-marketing-confirmation__container {
  padding-top: 50px;
  padding-bottom: 50px;
}
#page-content .shopify-email-marketing-confirmation__container h1 {
  text-align: left;
}

.wide-container {
  padding-left: 70px;
  padding-right: 70px;
}
@media (min-width: 1441px) {
  .wide-container {
    padding-left: 90px;
    padding-right: 90px;
  }
}

.template-password body::before, .image-with-text .image-with-text__image .rimage-outer-wrapper::after, .section-image-with-text-overlay .rimage-outer-wrapper::after {
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.type-0, .cart-list .backorder, .cart-list .subscription-description, .product-block .price, .collection-block .price, .feature-subheader, #comments .comment .comment-date, .unit-price {
  font-size: 0.875rem;
  line-height: 1.5;
}

.type-1, .collection-block:not(.hover-info) .title {
  font-size: 1rem;
  line-height: 1.4;
}

.type-2, .template-search .no-results, .template-collection .no-results, .overlay-type .line-2, h6, .h6, h5, .h5, h4, .under-cart .subtotal, blockquote, .h4 {
  font-size: 1.175rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .type-2, .template-search .no-results, .template-collection .no-results, .overlay-type .line-2, h6, .h6, h5, .h5, h4, .under-cart .subtotal, blockquote, .h4 {
    font-size: 1.175rem;
  }
}
@media (min-width: 992px) {
  .type-2, .template-search .no-results, .template-collection .no-results, .overlay-type .line-2, h6, .h6, h5, .h5, h4, .under-cart .subtotal, blockquote, .h4 {
    font-size: 1.25rem;
    line-height: 1.4;
  }
}

.type-3, .section-testimonials .cc-testimonial .overlay-type .line-1, .overlay-type .line-3, h3, .h3 {
  font-size: 1.28rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .type-3, .section-testimonials .cc-testimonial .overlay-type .line-1, .overlay-type .line-3, h3, .h3 {
    font-size: 1.28rem;
  }
}
@media (min-width: 992px) {
  .type-3, .section-testimonials .cc-testimonial .overlay-type .line-1, .overlay-type .line-3, h3, .h3 {
    font-size: 1.4rem;
    line-height: 1.4;
  }
}

.type-4, h2, .h2 {
  font-size: 1.56rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .type-4, h2, .h2 {
    font-size: 1.56rem;
  }
}
@media (min-width: 992px) {
  .type-4, h2, .h2 {
    font-size: 1.8rem;
    line-height: 1.4;
  }
}

.type-5, h1, .h1, .overlay-type .line-1 {
  font-size: 1.56rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .type-5, h1, .h1, .overlay-type .line-1 {
    font-size: 2.4rem;
  }
}
@media (min-width: 992px) {
  .type-5, h1, .h1, .overlay-type .line-1 {
    font-size: 3rem;
    line-height: 1.4;
  }
}

.type-6 {
  font-size: 1.56rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .type-6 {
    font-size: 3.8rem;
  }
}
@media (min-width: 992px) {
  .type-6 {
    font-size: 5rem;
    line-height: 1.4;
  }
}

.type-7 {
  font-size: 1.56rem;
  line-height: 1.25;
}
@media (min-width: 768px) {
  .type-7 {
    font-size: 4.5rem;
  }
}
@media (min-width: 992px) {
  .type-7 {
    font-size: 6rem;
    line-height: 1.4;
  }
}

.clearfix, #order_address, .cf, .other-products .other-products__products, .product-detail__form__options .option-selectors,
.product-detail__custom-option .option-selectors {
  zoom: 1;
}
.clearfix::before, #order_address::before, .cf::before, .other-products .other-products__products::before, .product-detail__form__options .option-selectors::before,
.product-detail__custom-option .option-selectors::before {
  content: "";
  display: table;
}
.clearfix::after, #order_address::after, .cf::after, .other-products .other-products__products::after, .product-detail__form__options .option-selectors::after,
.product-detail__custom-option .option-selectors::after {
  content: "";
  display: table;
  clear: both;
}

.arr {
  display: flex;
  width: 30px;
  height: 30px;
}
@media (max-width: 767px) {
  .arr {
    height: 20px;
    width: 20px;
  }
}
.arr svg {
  height: 100%;
  width: 100%;
}
.arr.arr--small {
  height: 20px;
  width: 20px;
}
@media (max-width: 767px) {
  .arr.arr--small {
    height: 15px;
    width: 15px;
  }
}

.fill-viewport {
  min-height: var(--viewport-height);
}

.height--full .rimage-outer-wrapper, .height--full .placeholder-image {
  min-height: var(--viewport-height);
}
.height--full.video-container {
  min-height: var(--viewport-height);
}

#page-content > div:first-child .fill-viewport {
  min-height: var(--viewport-height-first-section);
}
#page-content > div:first-child .height--full .rimage-outer-wrapper, #page-content > div:first-child .height--full .placeholder-image {
  min-height: var(--viewport-height-first-section);
}
#page-content > div:first-child .height--full.video-container {
  min-height: var(--viewport-height-first-section);
}

.section-heading {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.section-heading.section-heading--with-spacing {
  margin-bottom: 30px;
}
@media (min-width: 768px) {
  .section-heading.section-heading--with-spacing {
    margin-bottom: 40px;
  }
}
.section-heading h2 {
  line-height: 1em;
  text-align: left;
  padding-right: 2em;
}
@media (max-width: 767px) {
  .section-heading h2 {
    margin-bottom: 0;
    line-height: 1.25em;
  }
}
.section-heading.align-center {
  justify-content: center;
}
.section-heading.align-center h2 {
  padding-right: 0;
  text-align: center;
}
.section-heading.align-left {
  justify-content: flex-start;
}
.section-heading.align-left h2 {
  padding-right: 0;
  text-align: left;
}
.section-heading.align-right {
  justify-content: flex-end;
}
.section-heading.align-right h2 {
  padding-right: 0;
  text-align: right;
}
.section-heading .view-all-link {
  position: relative;
  font-weight: 600;
  font-size: 1em;
  white-space: nowrap;
}
@media (min-width: 768px) {
  .section-heading .view-all-link {
    font-size: 1.1em;
  }
}
.section-heading .view-all-link::after {
  content: "";
  position: absolute;
  bottom: -3px;
  height: 2px;
  background-color: currentColor;
  left: 0;
  width: 0;
  opacity: 0;
  transition: width 0.3s cubic-bezier(0, 0.14, 0.19, 1), opacity 0.3s;
}
.section-heading .view-all-link:hover::after {
  width: 100%;
  opacity: 1;
}
.section-heading .swiper-buttons-inline {
  display: none;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .section-heading .swiper-buttons-inline {
    display: block;
  }
}

.use-alt-bg {
  background-color: #ffffff;
  color: #423f3f;
}
.use-alt-bg h1, .use-alt-bg h2, .use-alt-bg h3, .use-alt-bg h4, .use-alt-bg .under-cart .subtotal, .under-cart .use-alt-bg .subtotal, .use-alt-bg blockquote, .use-alt-bg h5, .use-alt-bg .rte a, .use-alt-bg #comments a, .use-alt-bg #template a, .use-alt-bg #address_tables a, .use-alt-bg .link-display {
  color: currentColor;
  border-color: currentColor;
}
.use-alt-bg .feature-header {
  color: currentColor;
}
.use-alt-bg .feature-header:after {
  border-top-color: currentColor;
}

.border-radius-slightly_rounded {
  border-radius: 4px;
}
.border-radius-rounded {
  border-radius: 40px;
}
.border-radius-sharp {
  border-radius: 0;
}

.no-wrap {
  white-space: nowrap;
}

.errors {
  color: #800000;
  text-align: center;
  margin-top: 1em;
}
.errors ul {
  display: inline-block;
  list-style-type: none;
  padding: 0;
  margin: 0;
}

.cc-bullet {
  font-size: 0.8em;
}

.mt-0 {
  margin-top: 0;
}

.pt-0 {
  padding-top: 0;
}

.pt-medium {
  padding-top: 50px;
}

@media (min-width: 768px) {
  .sm\:pt-medium {
    padding-top: 50px;
  }
}

.pb-medium {
  padding-bottom: 70px;
}

.py-medium {
  padding-top: 50px;
  padding-bottom: 70px;
}

.flex {
  display: flex;
}

/* Using border-box makes it easier to work with grids: http://www.paulirish.com/2012/box-sizing-border-box-ftw/ */
*, *:before, *:after {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

html, body {
  min-height: 100%;
  font-size: 14px;
}

body {
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-size: 14px;
  font-style: normal;
  line-height: 1.5em;
  color: #000000;
  overflow: auto;
  background-color: #ffffff;
  background-position: top center;
  /* Fonts on Macs look bad without these */
  -moz-font-feature-settings: "liga";
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-feature-settings: "liga";
  -webkit-font-smoothing: antialiased;
}

* {
  overflow-anchor: none; /* Chrome Anchoring API fix - https://wicg.github.io/ScrollAnchoring/#exclusion-api */
}

/* Responsive images and videos. */
img, iframe {
  max-width: 100%;
  vertical-align: top;
}

img {
  height: auto;
}

header, footer, #main {
  width: 100%;
}

/* Number spinners */
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

svg {
  fill: #000000;
  width: 24px;
  height: 24px;
  vertical-align: middle;
}

@media (max-width: 767px) {
  h1, .h1, .overlay-type .line-1 {
    margin-bottom: 0.3em;
  }
}

@media (max-width: 767px) {
  h2, .h2 {
    margin-bottom: 0.2em;
  }
}

@media (max-width: 767px) {
  h3, .h3 {
    margin-bottom: 0.2em;
  }
}

@media (max-width: 767px) {
  h4, .under-cart .subtotal, blockquote, .h4 {
    margin-bottom: 0.2em;
  }
}

@media (max-width: 767px) {
  h5, .h5 {
    margin-bottom: 0.2em;
  }
}

@media (max-width: 767px) {
  h6, .h6 {
    margin-bottom: 0.2em;
  }
}

h1:not(.logo-h1), h2, h3, h4, .under-cart .subtotal, blockquote, h5, h6 {
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #060108;
  margin: 0;
  text-align: center;
}

a {
  text-decoration: none;
  color: inherit;
  -webkit-transition: color 150ms, background-color 150ms;
  -ms-transition: color 150ms, background-color 150ms;
  -moz-transition: color 150ms, background-color 150ms;
  -o-transition: color 150ms, background-color 150ms;
  transition: color 150ms, background-color 150ms;
}

blockquote {
  position: relative;
  margin: 1.5em 0;
  quotes: none;
  color: inherit;
  line-height: 1.6em;
  text-align: inherit;
}
blockquote::before {
  color: #000000;
  content: open-quote;
}
blockquote::after {
  color: #000000;
  content: close-quote;
}
blockquote:first-child {
  display: inline;
}
blockquote:last-child {
  margin-bottom: 0;
}

/* This has to be non font-based */
input,
textarea {
  color: #000000;
  border: 1px solid #bfbfbf;
  background: #ffffff;
  padding: 1em 1.7em;
  max-width: 100%;
  width: 432px;
  min-height: calc(2em + 1.4rem);
  line-height: 1.4rem;
  -webkit-border-radius: 0;
  -ms-border-radius: 0;
  -moz-border-radius: 0;
  -o-border-radius: 0;
  border-radius: 0;
  -webkit-appearance: none;
}

input[type=checkbox] {
  width: auto;
  height: auto;
  min-height: 0;
  line-height: normal;
  -webkit-appearance: checkbox;
  vertical-align: middle;
}

input[type=radio] {
  line-height: normal;
  -webkit-appearance: radio;
}

textarea {
  height: 8em;
}

button,
input[type=submit],
.button {
  -webkit-appearance: none;
  display: inline-block;
  background-color: #060108;
  color: #ffffff;
  border: 1px solid #060108;
  height: auto;
  width: auto;
  padding: 18px 30px;
  line-height: 1.25em;
  vertical-align: top;
  font-weight: 400;
  transition: opacity 0.3s, color 0.3s, background-color 0.3s, border-color 0.3s, transform 0.3s;
}
@media (min-width: 768px) {
  button,
  input[type=submit],
  .button {
    padding: 18px 30px;
  }
}
button:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):not(.custom-dot):hover,
input[type=submit]:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):not(.custom-dot):hover,
.button:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):not(.custom-dot):hover {
  background-color: #ffffff;
  color: #060108;
}
button:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):not(.custom-dot):hover svg,
input[type=submit]:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):not(.custom-dot):hover svg,
.button:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):not(.custom-dot):hover svg {
  fill: #060108;
}
button.hover-grow:not([disabled=disabled]):hover,
input[type=submit].hover-grow:not([disabled=disabled]):hover,
.button.hover-grow:not([disabled=disabled]):hover {
  transform: scale(1.06);
}
button.alt,
input[type=submit].alt,
.button.alt {
  background-color: rgba(0,0,0,0);
  color: #fafafa;
  border-color: #fafafa;
}
button.alt svg,
input[type=submit].alt svg,
.button.alt svg {
  fill: #fafafa;
}
button.alt:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover,
input[type=submit].alt:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover,
.button.alt:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover {
  background-color: #fafafa;
  color: rgba(0,0,0,0);
}
button.alt:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover svg,
input[type=submit].alt:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover svg,
.button.alt:not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover svg {
  fill: rgba(0,0,0,0);
}
button svg,
input[type=submit] svg,
.button svg {
  fill: #ffffff;
  -webkit-transition: fill 150ms;
  -ms-transition: fill 150ms;
  -moz-transition: fill 150ms;
  -o-transition: fill 150ms;
  transition: fill 150ms;
}
button[disabled=disabled],
input[type=submit][disabled=disabled],
.button[disabled=disabled] {
  opacity: 0.6;
}

:root {
  
  --btn-border-radius: 4px;
  
}

input[type=submit],
.button,
.shopify-payment-button__button {
  
  text-transform: uppercase;
  font-size: 13px !important;
  letter-spacing: 0.13em;
  
  border-radius: var(--btn-border-radius) !important;
}

button.not-a-button {
  background: none;
  color: inherit;
  border: none;
  padding: 0;
  font: inherit;
  cursor: pointer;
  outline: inherit;
  text-align: left;
}
button.not-a-button:hover {
  background: transparent;
  background-color: transparent !important;
  box-shadow: 0 0 0 transparent;
  border: 0 solid transparent;
  text-shadow: 0 0 0 transparent;
}
.user-is-tabbing button.not-a-button:focus {
  outline: 2px solid #1f61cc;
}

button[disabled],
input[type=submit][disabled] {
  background-color: #383439;
}

button[disabled].confirmation,
input[type=submit][disabled].confirmation {
  color: #060108;
  background-color: #ffffff;
}
button[disabled].confirmation svg,
input[type=submit][disabled].confirmation svg {
  fill: #060108;
}
button[disabled].confirmation.alt,
input[type=submit][disabled].confirmation.alt {
  color: rgba(0,0,0,0);
  background-color: #fafafa;
}
button[disabled].confirmation.alt svg,
input[type=submit][disabled].confirmation.alt svg {
  fill: rgba(0,0,0,0);
}
button[disabled].confirmation:not(.adding),
input[type=submit][disabled].confirmation:not(.adding) {
  text-indent: 20px;
}
button[disabled].confirmation svg,
input[type=submit][disabled].confirmation svg {
  position: absolute;
  margin-left: -27px;
  margin-top: -4px;
}

input[type=submit].textbutton,
button.textbutton {
  color: inherit;
  border: none;
  background: none;
  background-color: transparent;
  padding: 2px;
  font-family: inherit;
  font-size: inherit;
  letter-spacing: 0;
}

shop-login-button {
  --buttons-radius: var(--btn-border-radius);
}

select {
  font: inherit;
}

body:not(.user-is-tabbing) button:focus, body:not(.user-is-tabbing) input:focus, body:not(.user-is-tabbing) textarea:focus, body:not(.user-is-tabbing) select:focus {
  outline: none !important;
}

label, .sharing-label,
.social-label {
  display: block;
  margin: 0 0 0.75em;
  font-size: 0.75em;
  line-height: 1.2em;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

hr {
  border: none;
  width: 100%;
  color: transparent;
  border-bottom: 1px solid #d9d9d9;
  height: 9px;
  margin: 1em 0;
}


.feature-header::after, .shopify-policy__title h1::after {
  content: "";
  display: block;
  margin: 0.25em auto 0;
  width: 0;
  border-top: 3px solid currentColor;
  transition: width 1200ms cubic-bezier(0.13, 0.88, 0.62, 1) 0.7s;
}


/* Control the pages maximum width. */
.container {
  margin: 0 auto;
  max-width: 1024px;
  width: 90%;
}
.container.container--large {
  max-width: 1160px;
}
@media (max-width: 767px) {
  .container.container--large {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}

/* Grids of products and collections, menus, buttons */
.buttons {
  margin: 20px 0;
  padding: 0;
}

.grid li, .buttons li, .nav li {
  list-style-type: none;
  display: inline;
  margin: 0 1em;
  padding: 0;
}

.grid li {
  padding: 20px 0;
}

.nav ul,
ul.nav {
  padding: 0;
}

/* Layout */
.side-gutter {
  padding-left: 20px;
  padding-right: 20px;
}

.half-gutter.side-gutter {
  padding-left: 10px;
  padding-right: 10px;
}

.row, .grid {
  margin-left: -20px;
  margin-right: -20px;
}

.column, #order_payment,
#order_shipping, .grid li, header, footer, #main {
  float: left;
  padding-left: 20px;
  padding-right: 20px;
}
.half-gutter .column, .half-gutter #order_payment,
.half-gutter #order_shipping, .half-gutter .grid li, .grid .half-gutter li, .half-gutter header, .half-gutter footer, .half-gutter #main {
  padding-left: 10px;
  padding-right: 10px;
}

.column.full, .full#order_payment,
.full#order_shipping, .grid li.full, header.full, footer.full, .full#main {
  width: 100%;
}

.column.half, .grid li.half, header.half, footer.half, .half#main, .column-half, #order_payment,
#order_shipping, .column.always-half, .grid li.always-half, header.always-half, footer.always-half, .always-half#main {
  width: 50%;
}

.column.third, .third#order_payment,
.third#order_shipping, .grid li.third, header.third, footer.third, .third#main {
  width: 33.3%;
}

.column.quarter, .quarter#order_payment,
.quarter#order_shipping, .grid li.quarter, header.quarter, footer.quarter, .quarter#main {
  width: 33.3%;
}
@media (min-width: 992px) {
  .column.quarter, .quarter#order_payment,
  .quarter#order_shipping, .grid li.quarter, header.quarter, footer.quarter, .quarter#main {
    width: 25%;
  }
}

.column.bleed, .grid li.bleed, header.bleed, footer.bleed, .bleed#main, .column-bleed, #order_payment,
#order_shipping {
  padding-left: 0;
  padding-right: 0;
}

.half-gutter .grid {
  margin-left: -20px;
  margin-right: -20px;
}
@media (min-width: 768px) {
  .half-gutter .grid {
    margin-left: -10px;
    margin-right: -10px;
  }
}

.grid--uniform .column.half:nth-child(2n+1), .grid--uniform .grid li.half:nth-child(2n+1), .grid .grid--uniform li.half:nth-child(2n+1), .grid--uniform header.half:nth-child(2n+1), .grid--uniform footer.half:nth-child(2n+1), .grid--uniform .half#main:nth-child(2n+1), .grid--uniform .column-half:nth-child(2n+1), .grid--uniform #order_payment:nth-child(2n+1),
.grid--uniform #order_shipping:nth-child(2n+1) {
  clear: left;
}
.grid--uniform .column.third:nth-child(3n+1), .grid--uniform .third#order_payment:nth-child(3n+1),
.grid--uniform .third#order_shipping:nth-child(3n+1), .grid--uniform .grid li.third:nth-child(3n+1), .grid .grid--uniform li.third:nth-child(3n+1), .grid--uniform header.third:nth-child(3n+1), .grid--uniform footer.third:nth-child(3n+1), .grid--uniform .third#main:nth-child(3n+1),
.grid--uniform .column.quarter:nth-child(3n+1),
.grid--uniform .quarter#order_payment:nth-child(3n+1),
.grid--uniform .quarter#order_shipping:nth-child(3n+1),
.grid--uniform .grid li.quarter:nth-child(3n+1),
.grid .grid--uniform li.quarter:nth-child(3n+1),
.grid--uniform header.quarter:nth-child(3n+1),
.grid--uniform footer.quarter:nth-child(3n+1),
.grid--uniform .quarter#main:nth-child(3n+1) {
  clear: left;
}
@media (min-width: 992px) {
  .grid--uniform .column.quarter:nth-child(3n+1), .grid--uniform .quarter#order_payment:nth-child(3n+1),
  .grid--uniform .quarter#order_shipping:nth-child(3n+1), .grid--uniform .grid li.quarter:nth-child(3n+1), .grid .grid--uniform li.quarter:nth-child(3n+1), .grid--uniform header.quarter:nth-child(3n+1), .grid--uniform footer.quarter:nth-child(3n+1), .grid--uniform .quarter#main:nth-child(3n+1) {
    clear: none;
  }
  .grid--uniform .column.quarter:nth-child(4n+1), .grid--uniform .quarter#order_payment:nth-child(4n+1),
  .grid--uniform .quarter#order_shipping:nth-child(4n+1), .grid--uniform .grid li.quarter:nth-child(4n+1), .grid .grid--uniform li.quarter:nth-child(4n+1), .grid--uniform header.quarter:nth-child(4n+1), .grid--uniform footer.quarter:nth-child(4n+1), .grid--uniform .quarter#main:nth-child(4n+1) {
    clear: left;
  }
}

@media (max-width: 767px) {
  body > .container,
  .container--full-mobile {
    width: auto;
  }
  .column, #order_payment,
  #order_shipping, .grid li, header, footer, #main {
    padding-left: 10px;
    padding-right: 10px;
  }
  .column.half, .grid li.half, header.half, footer.half, .half#main, .column-half, #order_payment,
  #order_shipping,
  .column.third,
  .grid li.third,
  header.third,
  footer.third,
  .third#main,
  .column.three-quarters,
  .grid li.three-quarters,
  header.three-quarters,
  footer.three-quarters,
  .three-quarters#main {
    float: none;
    width: auto;
  }
  .column.quarter, .quarter#order_payment,
  .quarter#order_shipping, .grid li.quarter, header.quarter, footer.quarter, .quarter#main {
    width: 50%;
  }
  .grid--uniform .column.quarter:nth-child(2n+1), .grid--uniform .quarter#order_payment:nth-child(2n+1),
  .grid--uniform .quarter#order_shipping:nth-child(2n+1), .grid--uniform .grid li.quarter:nth-child(2n+1), .grid .grid--uniform li.quarter:nth-child(2n+1), .grid--uniform header.quarter:nth-child(2n+1), .grid--uniform footer.quarter:nth-child(2n+1), .grid--uniform .quarter#main:nth-child(2n+1) {
    clear: left;
  }
  .half-gutter .column, .half-gutter #order_payment,
  .half-gutter #order_shipping, .half-gutter .grid li, .grid .half-gutter li, .half-gutter header, .half-gutter footer, .half-gutter #main {
    padding-left: 0;
    padding-right: 0;
  }
  .side-gutter,
  .half-gutter.side-gutter {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .column.quarter, .quarter#order_payment,
  .quarter#order_shipping, .grid li.quarter, header.quarter, footer.quarter, .quarter#main {
    float: none;
    width: auto;
  }
}
.wide-container {
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  margin-left: auto;
  margin-right: auto;
  max-width: none;
}
.wide-container.half-gutter .product-list {
  margin-top: 0;
  margin-left: -10px;
  margin-right: -10px;
}
@media (max-width: 767px) {
  .wide-container {
    padding-left: 20px;
    padding-right: 20px;
  }
  .wide-container .product-list, .wide-container.half-gutter .product-list {
    margin-left: 0;
    margin-right: 0;
  }
  .wide-container .product-list.mob-two-col:not(.jiggly-split) {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -10px;
  }
  .wide-container .product-list.mob-two-col:not(.jiggly-split) .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split) .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split) .article-column {
    width: calc(50% - 1px);
    padding: 10px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  .wide-container .product-list.mob-two-col:not(.jiggly-split) .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split) .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split) .article-column {
    margin-top: calc(30px - 10px);
  }
}
@media (max-width: 767px) {
  .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns .column, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #order_payment,
  .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #order_shipping, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns .grid li, .grid .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns li, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns header, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns footer, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #main {
    float: left;
    width: 50%;
  }
  .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns .column .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #order_payment .product-block,
  .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #order_shipping .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns .column .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #order_payment .collection-block,
  .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #order_shipping .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns .grid li .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns .grid li .collection-block, .grid .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns li .product-block, .grid .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns li .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns header .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns header .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns footer .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns footer .collection-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #main .product-block, .wide-container .product-list.mob-two-col:not(.jiggly-split).product-list--columns #main .collection-block {
    width: 100%;
  }
  .wide-container .product-list.mob-show-1 .product-block, .wide-container .product-list.mob-show-1 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-1 .product-block:nth-child(-n+1), .wide-container .product-list.mob-show-1 .collection-block:nth-child(-n+1) {
    display: block;
  }
  .wide-container .product-list.mob-show-2 .product-block, .wide-container .product-list.mob-show-2 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-2 .product-block:nth-child(-n+2), .wide-container .product-list.mob-show-2 .collection-block:nth-child(-n+2) {
    display: block;
  }
  .wide-container .product-list.mob-show-3 .product-block, .wide-container .product-list.mob-show-3 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-3 .product-block:nth-child(-n+3), .wide-container .product-list.mob-show-3 .collection-block:nth-child(-n+3) {
    display: block;
  }
  .wide-container .product-list.mob-show-4 .product-block, .wide-container .product-list.mob-show-4 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-4 .product-block:nth-child(-n+4), .wide-container .product-list.mob-show-4 .collection-block:nth-child(-n+4) {
    display: block;
  }
  .wide-container .product-list.mob-show-5 .product-block, .wide-container .product-list.mob-show-5 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-5 .product-block:nth-child(-n+5), .wide-container .product-list.mob-show-5 .collection-block:nth-child(-n+5) {
    display: block;
  }
  .wide-container .product-list.mob-show-6 .product-block, .wide-container .product-list.mob-show-6 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-6 .product-block:nth-child(-n+6), .wide-container .product-list.mob-show-6 .collection-block:nth-child(-n+6) {
    display: block;
  }
  .wide-container .product-list.mob-show-7 .product-block, .wide-container .product-list.mob-show-7 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-7 .product-block:nth-child(-n+7), .wide-container .product-list.mob-show-7 .collection-block:nth-child(-n+7) {
    display: block;
  }
  .wide-container .product-list.mob-show-8 .product-block, .wide-container .product-list.mob-show-8 .collection-block {
    display: none;
  }
  .wide-container .product-list.mob-show-8 .product-block:nth-child(-n+8), .wide-container .product-list.mob-show-8 .collection-block:nth-child(-n+8) {
    display: block;
  }
}

.jiggly-split:not([data-result-count="0"]) {
  column-count: 1;
  column-fill: balance;
  margin-left: auto !important;
  margin-right: auto !important;
  column-gap: 20px;
  margin-top: 30px !important;
  transform: translateZ(0);
}
@media (min-width: 768px) {
  .jiggly-split:not([data-result-count="0"]) {
    margin-top: 40px !important;
    column-gap: 20px;
  }
}
.jiggly-split:not([data-result-count="0"]) h2 {
  column-span: all;
  text-align: left;
  margin-bottom: 30px;
}
.jiggly-split:not([data-result-count="0"]) .product-block, .jiggly-split:not([data-result-count="0"]) .collection-block {
  margin: 0 !important;
  padding: 0 !important;
  display: block;
  transform: translateZ(0);
}
.jiggly-split:not([data-result-count="0"]) .product-block:first-child, .jiggly-split:not([data-result-count="0"]) .collection-block:first-child {
  width: 99.9%;
}
.jiggly-split:not([data-result-count="0"]) .product-block .product-block__inner, .jiggly-split:not([data-result-count="0"]) .collection-block .product-block__inner {
  border-bottom: 40px solid transparent;
}
.jiggly-split:not([data-result-count="0"]) .product-block.hover-info .product-block__inner, .jiggly-split:not([data-result-count="0"]) .collection-block.hover-info .product-block__inner {
  border-bottom: 20px solid transparent;
}
@media (max-width: 767px) {
  .jiggly-split:not([data-result-count="0"]).mob-two-col:not([data-result-count="0"]) {
    column-count: 2;
  }
}
@media (min-width: 768px) {
  .jiggly-split:not([data-result-count="0"]) {
    column-count: 2;
  }
}
@media (min-width: 992px) {
  .jiggly-split:not([data-result-count="0"]).dynamic-col-3 {
    column-count: 3;
  }
}
@media (min-width: 992px) {
  .jiggly-split:not([data-result-count="0"]).dynamic-col-4 {
    column-count: 3;
  }
}
@media (min-width: 1200px) {
  .jiggly-split:not([data-result-count="0"]).dynamic-col-4 {
    column-count: 4;
  }
}
.jiggly-split:not([data-result-count="0"]) > * {
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
  break-inside: avoid;
}
.jiggly-split:not([data-result-count="0"]).product-list--columns {
  overflow: hidden;
}

.product-detail .product-list.mob-two-col {
  margin-left: -10px;
  margin-right: -10px;
}
.product-detail .product-list.mob-two-col .product-block, .product-detail .product-list.mob-two-col .collection-block {
  float: left;
  width: 50%;
  padding-left: 10px;
  padding-right: 10px;
}
.product-detail .product-list.mob-two-col .product-block:nth-child(2n-1), .product-detail .product-list.mob-two-col .collection-block:nth-child(2n-1) {
  clear: left;
}

.section-spacing {
  padding-top: 50px;
  padding-bottom: 50px;
}
@media (min-width: 768px) {
  .section-spacing {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}
.section-spacing.section-spacing--top-only {
  padding-bottom: 0;
}
.section-spacing.section-spacing--sm-b {
  padding-bottom: 4px;
}
.section-spacing.section-spacing--bottom-only {
  padding-top: 0;
}
.section-spacing.section-spacing--half-bottom {
  padding-bottom: 25px;
}
@media (min-width: 768px) {
  .section-spacing.section-spacing--half-bottom {
    padding-bottom: 50px;
  }
}

@media (min-width: 768px) {
  .section-spacing-sm {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.double-section-spacing {
  margin-top: 100px;
  margin-bottom: 100px;
}
@media (min-width: 768px) {
  .double-section-spacing {
    margin-top: 200px;
    margin-bottom: 200px;
  }
}

.padded-block {
  padding: 50px 20px;
}
@media (min-width: 768px) {
  .padded-block {
    padding: 90px 70px;
  }
}
@media (min-width: 992px) {
  .padded-block {
    padding: 120px 70px;
  }
}
@media (min-width: 1441px) {
  .padded-block {
    padding: 11vw 70px;
  }
}

.padded-block-y {
  padding: 50px 20px;
}
@media (min-width: 768px) {
  .padded-block-y {
    padding: 0 70px;
  }
}
@media (min-width: 992px) {
  .padded-block-y {
    padding: 0 70px;
  }
}
@media (min-width: 1441px) {
  .padded-block-y {
    padding: 0 70px;
  }
}

.flexible-layout {
  margin-left: -20px;
  margin-bottom: -20px;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: stretch;
}
.flexible-layout.valign-middle > .column, .flexible-layout.valign-middle > #order_payment,
.flexible-layout.valign-middle > #order_shipping, .grid .flexible-layout.valign-middle > li, .flexible-layout.valign-middle > header, .flexible-layout.valign-middle > footer, .flexible-layout.valign-middle > #main {
  align-self: center;
}
.flexible-layout.valign-bottom > .column, .flexible-layout.valign-bottom > #order_payment,
.flexible-layout.valign-bottom > #order_shipping, .grid .flexible-layout.valign-bottom > li, .flexible-layout.valign-bottom > header, .flexible-layout.valign-bottom > footer, .flexible-layout.valign-bottom > #main {
  align-self: flex-end;
}
.flexible-layout .column, .flexible-layout #order_payment,
.flexible-layout #order_shipping, .flexible-layout .grid li, .grid .flexible-layout li, .flexible-layout header, .flexible-layout footer, .flexible-layout #main {
  padding-left: 20px;
  margin-bottom: 20px;
  padding-right: 0;
  flex: 0 0 auto;
}
.flexible-layout .column--quarter {
  width: 25%;
}
.flexible-layout .column--third {
  width: 33.333%;
}
.flexible-layout .column--half {
  width: 50%;
}
.flexible-layout .column--two-thirds {
  width: 66.666%;
}
.flexible-layout .column--three-quarters {
  width: 75%;
}
.flexible-layout .column--full {
  width: 100%;
}

.flexible-layout--variable-columns {
  justify-content: space-around;
}
.flexible-layout--variable-columns .column, .flexible-layout--variable-columns #order_payment,
.flexible-layout--variable-columns #order_shipping, .flexible-layout--variable-columns .grid li, .grid .flexible-layout--variable-columns li, .flexible-layout--variable-columns header, .flexible-layout--variable-columns footer, .flexible-layout--variable-columns #main {
  flex: 1 0 auto;
  width: 33%;
  max-width: 50%;
}
.flexible-layout--variable-columns.flexible-layout--columns-4 .column, .flexible-layout--variable-columns.flexible-layout--columns-4 #order_payment,
.flexible-layout--variable-columns.flexible-layout--columns-4 #order_shipping, .flexible-layout--variable-columns.flexible-layout--columns-4 .grid li, .grid .flexible-layout--variable-columns.flexible-layout--columns-4 li, .flexible-layout--variable-columns.flexible-layout--columns-4 header, .flexible-layout--variable-columns.flexible-layout--columns-4 footer, .flexible-layout--variable-columns.flexible-layout--columns-4 #main {
  width: 50%;
}

@media (max-width: 1200px) {
  .flexible-layout {
    margin-left: -20px;
    margin-bottom: -20px;
  }
  .flexible-layout .column, .flexible-layout #order_payment,
  .flexible-layout #order_shipping, .flexible-layout .grid li, .grid .flexible-layout li, .flexible-layout header, .flexible-layout footer, .flexible-layout #main {
    padding-left: 20px;
    margin-bottom: 20px;
  }
  .flexible-layout .column--quarter {
    width: 25%;
  }
  .flexible-layout .column--third {
    width: 33.333%;
  }
  .flexible-layout .column--half {
    width: 50%;
  }
  .flexible-layout .column--two-thirds {
    width: 66.666%;
  }
  .flexible-layout .column--three-quarters {
    width: 75%;
  }
  .flexible-layout .column--full {
    width: 100%;
  }
  .flexible-layout--variable-columns .column, .flexible-layout--variable-columns #order_payment,
  .flexible-layout--variable-columns #order_shipping, .flexible-layout--variable-columns .grid li, .grid .flexible-layout--variable-columns li, .flexible-layout--variable-columns header, .flexible-layout--variable-columns footer, .flexible-layout--variable-columns #main {
    width: 33%;
    max-width: 50%;
  }
  .flexible-layout--variable-columns.flexible-layout--columns-4 .column, .flexible-layout--variable-columns.flexible-layout--columns-4 #order_payment,
  .flexible-layout--variable-columns.flexible-layout--columns-4 #order_shipping, .flexible-layout--variable-columns.flexible-layout--columns-4 .grid li, .grid .flexible-layout--variable-columns.flexible-layout--columns-4 li, .flexible-layout--variable-columns.flexible-layout--columns-4 header, .flexible-layout--variable-columns.flexible-layout--columns-4 footer, .flexible-layout--variable-columns.flexible-layout--columns-4 #main {
    width: 50%;
  }
}
@media (max-width: 767px) {
  .flexible-layout {
    margin-left: auto;
    margin-bottom: 0;
    flex-direction: column;
  }
  .flexible-layout .column, .flexible-layout #order_payment,
  .flexible-layout #order_shipping, .flexible-layout .grid li, .grid .flexible-layout li, .flexible-layout header, .flexible-layout footer, .flexible-layout #main {
    margin-bottom: 40px;
    padding-left: 0;
    width: 100% !important;
    max-width: none;
  }
  .flexible-layout .column:last-child, .flexible-layout #order_payment:last-child,
  .flexible-layout #order_shipping:last-child, .flexible-layout .grid li:last-child, .grid .flexible-layout li:last-child, .flexible-layout header:last-child, .flexible-layout footer:last-child, .flexible-layout #main:last-child {
    margin-bottom: 0;
  }
  .flexible-layout.layout-all-quarters {
    flex-direction: row;
    margin-left: -20px;
    margin-bottom: -20px;
  }
  .flexible-layout.layout-all-quarters .column, .flexible-layout.layout-all-quarters #order_payment,
  .flexible-layout.layout-all-quarters #order_shipping, .flexible-layout.layout-all-quarters .grid li, .grid .flexible-layout.layout-all-quarters li, .flexible-layout.layout-all-quarters header, .flexible-layout.layout-all-quarters footer, .flexible-layout.layout-all-quarters #main {
    margin-bottom: 20px;
    padding-left: 20px;
    width: 50% !important;
  }
  .flexible-layout.layout-all-quarters .column:last-child, .flexible-layout.layout-all-quarters #order_payment:last-child,
  .flexible-layout.layout-all-quarters #order_shipping:last-child, .flexible-layout.layout-all-quarters .grid li:last-child, .grid .flexible-layout.layout-all-quarters li:last-child, .flexible-layout.layout-all-quarters header:last-child, .flexible-layout.layout-all-quarters footer:last-child, .flexible-layout.layout-all-quarters #main:last-child {
    margin-bottom: 20px;
  }
}
@media (max-width: 500px) {
  .flexible-layout.layout-all-quarters {
    flex-direction: column;
    margin-left: auto;
    margin-bottom: 0;
  }
  .flexible-layout.layout-all-quarters .column, .flexible-layout.layout-all-quarters #order_payment,
  .flexible-layout.layout-all-quarters #order_shipping, .flexible-layout.layout-all-quarters .grid li, .grid .flexible-layout.layout-all-quarters li, .flexible-layout.layout-all-quarters header, .flexible-layout.layout-all-quarters footer, .flexible-layout.layout-all-quarters #main {
    margin-bottom: 40px;
    padding-left: 0;
    width: 100% !important;
  }
  .flexible-layout.layout-all-quarters .column:last-child, .flexible-layout.layout-all-quarters #order_payment:last-child,
  .flexible-layout.layout-all-quarters #order_shipping:last-child, .flexible-layout.layout-all-quarters .grid li:last-child, .grid .flexible-layout.layout-all-quarters li:last-child, .flexible-layout.layout-all-quarters header:last-child, .flexible-layout.layout-all-quarters footer:last-child, .flexible-layout.layout-all-quarters #main:last-child {
    margin-bottom: 0;
  }
}
.product-list-container {
  overflow: hidden;
}

.cc-animate-enabled .shopify-section {
  overflow: hidden;
}
@media (min-width: 768px) {
  .cc-animate-enabled [data-cc-animate] {
    opacity: 0;
  }
}
.cc-animate-enabled [data-cc-animate].-in {
  transition: opacity 0.7s, transform 0.7s;
  opacity: 1;
}
.cc-animate-enabled [data-cc-animate].cc-fade-in-right {
  transform: translate3d(15px, 0, 0);
}
.cc-animate-enabled [data-cc-animate].cc-fade-in-right.-in {
  transition-timing-function: cubic-bezier(0, 0.14, 0.19, 1);
  transform: translate3d(0, 0, 0);
}
.cc-animate-enabled [data-cc-animate].cc-fade-in-up {
  transform: translate3d(0, 15px, 0);
  transition-duration: 0.7s;
}
.cc-animate-enabled [data-cc-animate].cc-fade-in-up.-in {
  transform: translate3d(0, 0, 0);
}
.cc-animate-enabled [data-cc-animate].cc-zoom-out {
  transform: scale(1.1);
}
.cc-animate-enabled [data-cc-animate].cc-zoom-out.-in {
  transition: transform 1.6s cubic-bezier(0, 0.14, 0.19, 1) 0s !important;
  transform: scale(1);
}
.cc-animate-enabled [data-cc-animate].cc-fade-in-zoom-out {
  transform: scale(1.2);
}
.cc-animate-enabled [data-cc-animate].cc-fade-in-zoom-out.-in {
  transition: opacity 1s, transform 1.2s cubic-bezier(0, 0.14, 0.19, 1) 0s, filter 2s !important;
  transform: scale(1);
}
@media (prefers-reduced-motion: reduce) {
  .cc-animate-enabled [data-cc-animate], .cc-animate-enabled [data-cc-animate].-in {
    transition: opacity 0.7s !important;
    transform: none !important;
  }
}

gift-card-recipient {
  display: block;
  padding-top: 8px;
  padding-bottom: 8px;
}

.cc-gift-card-recipient__fields {
  text-align: left;
  display: none;
}

.cc-gift-card-recipient__checkbox:checked ~ .cc-gift-card-recipient__fields {
  max-height: 480px;
  display: block;
}

.cc-gift-card-recipient__checkbox:checked ~ .cc-gift-card-recipient__checkbox-container .cc-gift-card-recipient__label::after {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}

.cc-gift-card-recipient .cc-gift-card-recipient__checkbox-container {
  display: inline;
  margin-bottom: 0px;
  margin-left: 8px;
}

.no-js .cc-gift-card-recipient__fields {
  display: block;
  max-height: unset;
}

.no-js .cc-gift-card-recipient__checkbox,
.no-js .cc-gift-card-recipient__checkbox-container {
  display: none;
}

body.cc-popup-no-scroll {
  overflow: hidden;
}

.popup-scrollbar-measure {
  position: absolute;
  top: -9999px;
  width: 50px;
  height: 50px;
  overflow: scroll;
  pointer-events: none;
}

.cc-popup {
  position: fixed;
  display: flex;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 997;
  transition: opacity 0.15s, visibility 0.15s;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.cc-popup.cc-popup--center {
  justify-content: center;
  align-items: center;
}
.cc-popup.cc-popup--center .cc-popup-modal {
  transform: translate3d(0, 60px, 0);
}
.cc-popup.cc-popup--bottom-left, .cc-popup.cc-popup--bottom-right {
  align-items: flex-end;
}
.cc-popup.cc-popup--bottom-left {
  justify-content: flex-start;
}
.cc-popup.cc-popup--bottom-left .cc-popup-modal {
  transform: translate3d(-60px, 0, 0);
}
[dir=rtl] .cc-popup.cc-popup--bottom-left .cc-popup-modal {
  transform: translate3d(60px, 0, 0);
}
.cc-popup.cc-popup--bottom-right {
  justify-content: flex-end;
}
.cc-popup.cc-popup--bottom-right .cc-popup-modal {
  transform: translate3d(60px, 0, 0);
}
[dir=rtl] .cc-popup.cc-popup--bottom-right .cc-popup-modal {
  transform: translate3d(-60px, 0, 0);
}
.cc-popup.cc-popup--left {
  justify-content: flex-start;
}
.cc-popup.cc-popup--left .cc-popup-modal {
  transform: translate3d(-60px, 0, 0);
  width: 100%;
  min-width: 0;
  overflow: auto;
}
[dir=rtl] .cc-popup.cc-popup--left .cc-popup-modal {
  transform: translate3d(60px, 0, 0);
}
@media (min-width: 768px) {
  .cc-popup.cc-popup--left .cc-popup-modal {
    width: 400px;
  }
}
.cc-popup.cc-popup--right {
  justify-content: flex-end;
}
.cc-popup.cc-popup--right .cc-popup-modal {
  transform: translate3d(60px, 0, 0);
  width: 100%;
  min-width: 0;
  overflow: auto;
}
[dir=rtl] .cc-popup.cc-popup--right .cc-popup-modal {
  transform: translate3d(-60px, 0, 0);
}
@media (min-width: 768px) {
  .cc-popup.cc-popup--right .cc-popup-modal {
    width: 400px;
  }
}
.cc-popup.cc-popup--visible {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
}
.cc-popup.cc-popup--visible .cc-popup-modal {
  transform: translate3d(0, 0, 0);
}
[dir=rtl] .cc-popup.cc-popup--visible .cc-popup-modal {
  transform: translate3d(0, 0, 0);
}
.cc-popup .cc-popup-background {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: rgba(0, 0, 0, 0.3);
  z-index: 998;
}
.cc-popup .cc-popup-modal {
  position: relative;
  z-index: 999;
  transition: transform 0.25s;
  overflow: hidden;
  background-color: #ffffff;
  color: #222;
}
.cc-popup .cc-popup-container {
  display: flex;
}
.cc-popup .cc-popup-container .cc-popup-title {
  color: #222;
}
.cc-popup .cc-popup-close {
  position: absolute;
  right: 3px;
  top: 3px;
  width: 44px;
  height: 44px;
  padding: 7px;
  min-width: auto;
  background-color: transparent;
  border: none;
  box-shadow: none;
}
.cc-popup .cc-popup-close svg {
  stroke: #222;
  stroke-width: 2px;
}
[dir=rtl] .cc-popup .cc-popup-close {
  left: 3px;
  right: auto;
}
.cc-popup .cc-popup-image .rimage-background {
  height: 100%;
}
.cc-popup .cc-popup-column {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.cc-price-range {
  position: relative;
}

.cc-price-range__input-row {
  margin: 0px 0;
  display: flex;
  justify-content: space-between;
}

.cc-price-range__input-container {
  display: flex;
  align-items: baseline;
  flex: 0 0 auto;
  width: calc(50% - 0px);
}

.cc-price-range__input-currency-symbol {
  font-size: 1em;
  margin-right: 2px;
}

.cc-price-range .cc-price-range__input {
  width: 100%;
  padding-left: 15px;
  padding-right: 15px;
}

.cc-price-range__bar {
  position: relative;
  margin: 30px 15px 10px;
}

.cc-price-range__bar-inactive {
  height: 2px;
  background: #e6e6e6;
  border-radius: 2px;
}

.cc-price-range__bar-active {
  position: absolute;
  left: 0;
  top: 0;
  right: 0;
  height: 100%;
  background: currentColor;
  border-radius: 2px;
}

.cc-price-range__control {
  position: absolute;
  left: 0;
  top: -8px;
  margin-inline-start: -9px;
  width: 18px;
  height: 18px;
}
.cc-price-range__control::after {
  content: "";
  display: block;
  width: 18px;
  height: 18px;
  background: #ffffff;
  border: 1px solid currentColor;
  border-radius: 18px;
  cursor: pointer;
  transition: 150ms transform ease-out;
}
.cc-price-range__control:hover::after, .cc-price-range__control:focus::after {
  transform: scale(1.1);
}
.cc-price-range__control::before {
  content: "";
  position: absolute;
  display: block;
  top: calc(50% - 22px);
  width: 44px;
  height: 44px;
  cursor: pointer;
}

.cc-price-range__control--min::before {
  right: 0;
}

.cc-price-range__control--max::before {
  left: 0;
}

.cc-rating {
  display: inline-block;
  margin: 0;
  font-size: 16px;
  line-height: 1.2em;
  white-space: nowrap;
  vertical-align: middle;
}

.cc-rating-stars {
  display: block;
  position: relative;
}

.cc-rating-stars--active {
  position: absolute;
  top: 0;
  left: 0;
  color: rgb(128, 116, 151);
}

.cc-rating-stars--inactive {
  display: block;
  color: rgba(156, 148, 172, 0.41);
}

.cc-rating-stars__svg {
  width: 1em;
  height: 1em;
  fill: currentColor;
  vertical-align: top;
}
.cc-rating-stars__svg:not(:first-child) {
  margin-left: 2px;
}

.cc-rating[data-rating-decimal="0.5"] .cc-rating-stars--active .cc-rating-stars__svg:last-child {
  clip-path: polygon(0 0, 52% 0, 52% 100%, 0% 100%);
}

.cc-rating-text {
  display: none;
}

.cc-rating-count {
  display: inline-block;
  margin: 0;
}

.cc-tabs {
  margin-top: 40px;
  text-align: left;
}
.cc-tabs .cc-tabs__tab-headers__header,
.cc-tabs .cc-tabs__accordion__header {
  font-weight: bold;
  font-size: 1em;
  opacity: 0.55;
  transition: opacity 0.4s;
}
.cc-tabs .cc-tabs__tab-headers__header[aria-selected=true],
.cc-tabs .cc-tabs__accordion__header[aria-selected=true] {
  opacity: 1;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel {
  padding-bottom: 30px;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel p:first-of-type {
  margin-top: 0;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel p:last-of-type {
  margin-bottom: 0;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel #shopify-product-reviews .spr-container {
  padding-top: 0;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel #shopify-product-reviews .spr-container .spr-header-title, .cc-tabs .cc-tabs__tab .cc-tabs__tab__panel #shopify-product-reviews .spr-container .spr-summary-starrating, .cc-tabs .cc-tabs__tab .cc-tabs__tab__panel #shopify-product-reviews .spr-container .spr-summary-caption {
  display: none;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel #shopify-product-reviews .spr-container .spr-form-title {
  text-align: left;
}
.cc-tabs .cc-tabs__tab .cc-tabs__tab__panel #shopify-product-reviews .spr-container .spr-form-actions input {
  float: left;
}
.cc-tabs.cc-tabs--accordion-mode {
  border-top: 1px solid #d9d9d9;
  border-bottom: 1px solid #d9d9d9;
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab-headers {
  display: none;
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab .cc-tabs__accordion__header {
  border-top: 1px solid #d9d9d9;
  padding: 22px 0;
  display: block;
  position: relative;
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab .cc-tabs__accordion__header:after, .cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab .cc-tabs__accordion__header:before {
  content: "";
  height: 2px;
  width: 10px;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background-color: currentColor;
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab .cc-tabs__accordion__header:after {
  transition: transform 0.4s;
  transform: translateY(-50%) rotate(90deg);
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab .cc-tabs__accordion__header[aria-selected=true]:after {
  transform: translateY(-50%) rotate(0deg);
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab .cc-tabs__accordion__header .spr-badge {
  display: inline-block;
  margin-left: 10px;
  font-size: 0.8em;
  font-weight: normal;
}
.cc-tabs.cc-tabs--accordion-mode .cc-tabs__tab:first-child .cc-tabs__accordion__header {
  border-top: none;
}
.cc-tabs.cc-tabs--tab-mode {
  padding-top: 20px;
  border-top: 1px solid #d9d9d9;
}
@media (max-width: 1024px) {
  .cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers-container {
    position: relative;
  }
  .cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers-container:after {
    content: "";
    pointer-events: none;
    width: 30px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    background-image: linear-gradient(-270deg, rgba(255, 255, 255, 0) 0%, #ffffff 80%);
  }
}
.cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers {
  display: flex;
  padding: 0;
  margin: 20px 0;
  list-style-type: none;
  position: relative;
}
@media (max-width: 1024px) {
  .cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers {
    white-space: nowrap;
    overflow: auto;
    padding-bottom: 10px;
  }
  .cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers .cc-hover-line {
    display: none;
  }
  .cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers .cc-tabs__tab-headers__header {
    position: relative;
  }
  .cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers .cc-tabs__tab-headers__header[aria-selected=true]:after {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: currentColor;
  }
}
.cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers .cc-tabs__tab-headers__header {
  margin-right: 20px;
}
.cc-tabs.cc-tabs--tab-mode .cc-tabs__tab .cc-tabs__accordion__header {
  display: none;
}

.store-availability-container-outer.store-availability-initialized {
  transition: height 0.3s;
  overflow: hidden;
}

.store-availability-container {
  padding: 1em 0;
  transition: opacity 0.3s;
}
.store-availability-loading .store-availability-container {
  pointer-events: none;
  opacity: 0.4;
  transition-delay: 0.4s;
}
.payment-and-quantity--buttons-active ~ [data-store-availability-container] .store-availability-container {
  padding-bottom: 1.5em;
}
.store-availability-container small {
  font-size: 0.85em;
}
.store-availability-container .store-availability-small-text {
  margin-bottom: 0.85em;
}
.store-availability-container .store-availability-information {
  display: flex;
}
.store-availability-container .store-availability-information .store-availability-icon {
  padding-inline-end: 10px;
  position: relative;
  top: -1px;
}
.store-availability-container .store-availability-information .store-availability-icon svg {
  height: 16px;
  width: 16px;
}
.store-availability-container .store-availability-information .store-availability-icon.store-availability-icon--available {
  color: #108043;
}
.store-availability-container .store-availability-information .store-availability-icon.store-availability-icon--unavailable {
  color: #de3618;
}
.store-availability-container .store-availability-information .store-availability-information__stores {
  margin-top: 0.5em;
}
.store-availability-container .store-availability-information .store-availability-information__title,
.store-availability-container .store-availability-information .store-availability-information__stores,
.store-availability-container .store-availability-information .store-availability-information__stock {
  margin-bottom: 0;
}
.store-availability-container .store-availability-information .store-availability-information__title,
.store-availability-container .store-availability-information .store-availability-information__stock {
  margin-top: 0;
}
.store-availability-container .store-availability-information .store-availability-information__title strong {
  font-weight: 600;
}

.store-availabilities-modal {
  z-index: 99999;
}
.store-availabilities-modal small {
  font-size: 0.85em;
}
.store-availabilities-modal .store-availability-small-text {
  margin-bottom: 0.85em;
}
.store-availabilities-modal .cc-icon-available {
  color: #108043;
}
.store-availabilities-modal .cc-icon-unavailable {
  color: #de3618;
}
.store-availabilities-modal .cc-popup-close {
  color: #000000 !important;
}
.store-availabilities-modal .cc-popup-close:hover {
  color: #000000 !important;
}
.store-availabilities-modal .cc-popup-close svg {
  stroke: #000000 !important;
}
.store-availabilities-modal .cc-popup-close svg:hover {
  stroke: #000000 !important;
}
.store-availabilities-modal .cc-popup-modal {
  background-color: #ffffff;
  color: #000000;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content {
  text-align: start;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content button {
  white-space: nowrap;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .cc-popup-text {
  margin-bottom: 1em;
  padding-inline-end: 20px;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .cc-popup-text .store-availabilities-modal__product-title {
  margin-bottom: 0;
  text-align: start;
  color: #000000;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item {
  margin-top: 1em;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item:before {
  content: "";
  display: inline-block;
  background-color: #d9d9d9;
  width: 100%;
  height: 1px;
  margin-bottom: 1em;
  margin-top: 0.5em;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item address {
  font-style: normal;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item a {
  color: #807497;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__location {
  display: flex;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__location .store-availability-list__location__text {
  flex: 1;
  margin-bottom: 0.2em;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__location .store-availability-list__location__text strong {
  font-weight: 600;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__location .store-availability-list__location__distance {
  visibility: hidden;
  opacity: 0;
  margin-bottom: 0;
  transition: visibility 0.4s, opacity 0.4s;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__location .store-availability-list__location__distance.-in {
  opacity: 1;
  visibility: visible;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__location .store-availability-list__location__distance svg {
  position: relative;
  height: 11px;
  width: 11px;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__invalid_address svg {
  height: 14px;
  width: 14px;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .cc-icon-available, .store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .cc-icon-unavailable {
  display: inline-block;
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .cc-icon-available svg, .store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .cc-icon-unavailable svg {
  height: 13px;
  width: 13px;
}
@media (min-width: 768px) {
  .store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__phone--mobile {
    display: none;
  }
}
.store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__phone--desktop {
  display: none;
}
@media (min-width: 768px) {
  .store-availabilities-modal .cc-popup-modal .cc-popup-content .store-availability-list__item .store-availability-list__phone--desktop {
    display: block;
  }
}

.store-availability-list__phone {
  direction: ltr;
}
[dir=rtl] .store-availability-list__phone {
  text-align: right;
}

.cc-accordion {
  border-top: 1px solid #ddd;
}

.cc-accordion-item {
  border-bottom: 1px solid #ddd;
}

.cc-accordion-item__title {
  display: block;
  position: relative;
  list-style: none;
  padding: 15px 30px 15px 0;
  cursor: pointer;
}
.cc-accordion-item__title::-webkit-details-marker {
  display: none;
}

.js .cc-accordion-item__panel {
  transition: height 0.3s ease;
  overflow: hidden;
}

.cc-accordion-item__content {
  padding-bottom: 20px;
}

.cc-accordion-item__title::before, .cc-accordion-item__title::after {
  content: "";
  position: absolute;
  top: calc(50% - 1px);
  right: 0;
  width: 11px;
  height: 1px;
  background-color: currentColor;
  transition: 0.3s ease;
  transition-property: transform, opacity;
}
.cc-accordion-item__title::before {
  transform: rotate(-90deg);
}

.cc-accordion-item[open]:not(.is-closing) .cc-accordion-item__title::before {
  transform: rotate(90deg);
  opacity: 0;
}
.cc-accordion-item[open]:not(.is-closing) .cc-accordion-item__title::after {
  transform: rotate(180deg);
}

.js .cc-accordion-item__content {
  transform: translateY(-5px);
  transition: 0.3s ease-out;
  transition-property: transform, opacity;
  opacity: 0;
}

.js .cc-accordion-item.is-open:not(.is-closing) .cc-accordion-item__content {
  transform: translateY(0px);
  opacity: 1;
}

.cc-product-filter .cc-accordion, [data-section-type=accordion] .cc-accordion, .product-detail-accordion + .product-detail-accordion .cc-accordion, .under-cart__accordion + .under-cart__accordion .cc-accordion {
  border-top: none;
}

.cc-accordion-item__title {
  font-weight: 500;
  padding-top: 20px;
  padding-bottom: 20px;
}
@media (max-width: 767px) {
  .cc-accordion-item__title {
    outline: none;
  }
}
.cc-accordion-item__title::after, .cc-accordion-item__title::before {
  height: 2px;
}
.cc-accordion-item__title svg {
  margin-right: 0.5em;
  max-width: 20px;
  position: relative;
  top: -1px;
}

.cc-accordion-item__content p:first-child {
  margin-top: 0;
}
.cc-accordion-item__content .spr-container {
  padding-top: 0;
  padding-bottom: 0;
}
.cc-accordion-item__content .spr-header-title {
  display: none;
}

#cboxTopLeft,
#cboxTopCenter,
#cboxTopRight,
#cboxMiddleLeft,
#cboxMiddleRight,
#cboxBottomLeft,
#cboxBottomCenter,
#cboxBottomRight {
  visibility: hidden;
}

#cboxWrapper, #cboxContent, #cboxOverlay, #cboxLoadingOverlay {
  background-color: #ffffff;
}

#cboxContent {
  overflow: visible;
}

#colorbox {
  box-shadow: 0 2.8px 2.2px rgba(0, 0, 0, 0.02), 0 6.7px 5.3px rgba(0, 0, 0, 0.028), 0 12.5px 10px rgba(0, 0, 0, 0.035), 0 22.3px 17.9px rgba(0, 0, 0, 0.042), 0 41.8px 33.4px rgba(0, 0, 0, 0.05), 0 100px 80px rgba(0, 0, 0, 0.07);
}

#cboxClose {
  top: -25px;
  right: -25px;
  height: 44px;
  width: 44px;
}
#cboxClose svg {
  fill: currentColor;
}

#cboxLoadedContent {
  margin: 0;
}

.cbox-borderless #cboxClose {
  display: none;
}

/* Slick slider */
.slick-slider {
  position: relative;
  display: block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  overflow: hidden;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  -webkit-transform: translate3d(0, 0, 0);
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -o-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  left: 0;
  top: 0;
  display: block;
}
.slick-track::before, .slick-track::after {
  content: "";
  display: table;
}
.slick-track::after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

/* FOUC */
.slideshow {
  position: relative;
}

.slideshow .slide {
  display: none;
}

.slideshow .slide:first-child {
  display: block;
}

/* /FOUC */
.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  position: relative;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  display: none;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}
.slick-slide:focus {
  outline: none;
}

.slick-arrow.slick-hidden {
  display: none;
}

/* Slider */
.slick-loading .slick-list {
  background: #fff url(//shamelesscollective.com/cdn/shop/t/46/assets/loading.gif?v=115678512110750922101786791993) center center no-repeat;
}

/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  z-index: 1;
  display: block;
  height: 80px;
  width: 80px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  padding: 0;
  border: none;
  min-width: 0;
  left: 50%;
  transform: translate(-50%, 0);
  transition: transform 0.3s;
}
.slick-prev:hover, .slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
  color: transparent;
  transform: scale(1.06) translate(-50%, 0);
}
.slick-prev:hover svg, .slick-prev:focus svg,
.slick-next:hover svg,
.slick-next:focus svg {
  opacity: 1;
}
.slick-prev:not(.focus-visible),
.slick-next:not(.focus-visible) {
  outline: none;
}
.slick-prev.slick-disabled,
.slick-next.slick-disabled {
  opacity: 0.25;
}

.slick-prev svg,
.slick-next svg {
  width: 80px;
  height: 80px;
  fill: white;
  opacity: 0.75;
  -webkit-filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.2));
  -moz-filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.2));
  -o-filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.2));
  -ms-filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.2));
  filter: drop-shadow(0px 1px 1px rgba(0, 0, 0, 0.2));
}

.slick-prev {
  -webkit-transform: translate(-50%, 0) rotate(180deg);
  -ms-transform: translate(-50%, 0) rotate(180deg);
  transform: translate(-50%, 0) rotate(180deg);
  top: -50px;
}

.slick-next {
  bottom: -44px;
}

/* Dots */
.slick-dots {
  position: absolute;
  list-style: none;
  text-align: center;
  margin: 0;
  padding: 0;
  line-height: 1em;
  bottom: 50px;
  right: 0;
  left: 0;
}
@media (max-width: 767px) {
  .slick-dots {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .slick-slider-dots-light-xs .slick-dots {
    margin-bottom: 5px;
  }
}
@media (min-width: 768px) {
  .slick-dots {
    bottom: 70px;
    right: 70px;
    left: 70px;
    margin-bottom: -42px;
  }
}
@media (min-width: 1441px) {
  .slick-dots {
    bottom: 90px;
    right: 90px;
    left: 90px;
  }
}
.slick-dots li {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin: 0 0 0 15px;
  padding: 0;
  cursor: pointer;
}
.slick-dots li:first-child {
  margin-left: 0;
}
.slick-dots li button {
  color: #ffffff;
  background-clip: content-box;
  display: block;
  height: 20px;
  width: 20px;
  min-width: 0;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  padding: 0;
  cursor: pointer;
  background-color: transparent;
  border-color: transparent;
}
@media (max-width: 767px) {
  .slick-slider-dots-light-xs .slick-dots li button {
    color: #000000;
  }
}
.slick-dots li button:hover, .slick-dots li button:focus {
  outline: none;
}
@keyframes drawCircle {
  0% {
    stroke-dashoffset: 85;
  }
  100% {
    stroke-dashoffset: 0;
  }
}
.slick-dots li button.custom-dot::before {
  display: none;
}
.slick-dots li button.custom-dot svg {
  height: 12px;
  width: 12px;
}
.slick-dots li button.custom-dot circle {
  fill: currentColor;
  stroke: currentColor;
  stroke-width: 4;
  stroke-dasharray: 85;
  stroke-dashoffset: 85;
  transform-origin: 50%;
  transform: rotate(-90deg);
  transition: fill 0.5s;
}
.slick-dots li button.custom-dot circle.circle-one {
  stroke: rgba(50, 50, 50, 0.2);
  transition: opacity 0.5s;
  opacity: 0;
}
.slick-dots li.slick-active button {
  color: #ffffff;
}
@media (max-width: 767px) {
  .slick-slider-dots-light-xs .slick-dots li.slick-active button svg, .slick-slider-dots-light-xs .slick-dots li.slick-active button {
    color: #000000;
  }
}
.slick-dots li.slick-active button.custom-dot circle {
  stroke-dashoffset: 0;
  fill: transparent;
}
.slideshow[data-autoplay=true] .slick-dots li.slick-active button.custom-dot circle.circle-two {
  animation: drawCircle 8.1s linear;
}
.slideshow[data-autoplay=true] .slick-dots li.slick-active button.custom-dot circle.circle-one {
  transition: opacity 0.5s;
  opacity: 1;
}
@media (max-width: 767px) {
  .slick-dots {
    bottom: 20px;
    right: 0;
    width: 100%;
    text-align: center;
  }
  .slick-dots li {
    margin: 0 7px;
  }
  .slick-dots li:first-child {
    margin-left: 0;
  }
}

/* lazy load */
.slick-slide img {
  opacity: 1;
  transition: opacity 250ms;
}

.slick-slide img.slick-loading {
  opacity: 0;
}

.carousel .slick-prev, .carousel .slick-next {
  background: #ffffff;
  width: 44px;
  height: 44px;
  border-radius: 100px;
  background-clip: content-box;
  padding: 5px;
}
.carousel .slick-prev.slick-disabled, .carousel .slick-prev.theme-unnecessary, .carousel .slick-next.slick-disabled, .carousel .slick-next.theme-unnecessary {
  opacity: 0;
}
.carousel .slick-prev svg, .carousel .slick-next svg {
  fill: #000000;
  width: 20px;
  height: 20px;
  -webkit-filter: none;
  -moz-filter: none;
  -o-filter: none;
  -ms-filter: none;
  filter: none;
  top: 1px;
  position: relative;
}

.pretty-select, .disclosure .disclosure__toggle {
  display: inline-block;
  position: relative;
  background: #FFFFFF;
  color: #000000;
  border: 1px solid #bfbfbf;
  text-align: left;
  padding: 3px 0 3px 15px;
}
.pretty-select .text, .disclosure .disclosure__toggle .text {
  display: inline-block;
  padding: 7px 50px 7px 0;
}
@media (min-width: 768px) {
  .pretty-select .text, .disclosure .disclosure__toggle .text {
    min-width: 150px;
  }
}
@media (min-width: 1200px) {
  .pretty-select .text, .disclosure .disclosure__toggle .text {
    min-width: 200px;
  }
}
.pretty-select .text .label, .disclosure .disclosure__toggle .text .label {
  font-weight: 600;
  float: left;
  margin-right: 5px;
  color: inherit;
  font-family: inherit;
  line-height: 1.5em;
}
.pretty-select svg, .disclosure .disclosure__toggle svg {
  position: absolute;
  right: 10px;
  top: 50%;
  margin-top: -0.55em;
  z-index: 1;
  font-size: 20px;
  line-height: 1em;
  fill: #000000;
}
.pretty-select select, .disclosure .disclosure__toggle select {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
  filter: alpha(opacity=0);
  opacity: 0;
  z-index: 15;
  cursor: pointer;
  -webkit-appearance: menulist-button;
  -ms-appearance: menulist-button;
  -moz-appearance: menulist-button;
  -o-appearance: menulist-button;
  appearance: menulist-button;
}

.clickyboxes {
  margin: 0.4em 0 1em;
  padding: 0;
  position: relative;
}
.clickyboxes li {
  display: inline-block;
  padding: 0 1.1em 0.1em 0;
  min-width: 1.5em;
  margin: 0 0 0.75em 0;
}
@media (min-width: 768px) {
  .clickyboxes li {
    margin: 0 0 1em 0;
  }
}
.clickyboxes li.cc-hover-line {
  z-index: -1;
}
.clickyboxes li a {
  display: inline-block;
  vertical-align: top;
  opacity: 0.8;
  text-align: center;
  line-height: 1.2em;
  font-weight: 200;
  position: relative;
  transition: opacity 0.5s;
  outline: none;
}
.user-is-tabbing .clickyboxes li a:focus {
  box-shadow: 0 0 0 2px #1f61cc inset;
}
.clickyboxes li a::before {
  content: " ";
  position: absolute;
  top: 50%;
  left: 0;
  width: 0;
  height: 1px;
  background-color: currentColor;
  opacity: 0;
  transition: opacity 0.4s, width 0.3s;
}
.clickyboxes li a::after {
  content: " ";
  position: absolute;
  top: 0;
  left: -8px;
  width: calc(100% + 16px);
  height: calc(100% + 8px);
  transition: opacity 0.4s;
  background-color: #ffffff;
  opacity: 0;
}
.clickyboxes li a.active {
  opacity: 1;
}
.clickyboxes li:last-child a {
  margin-right: 0;
}
.clickyboxes .unavailable::before {
  width: 100%;
  opacity: 1;
}
.clickyboxes .unavailable::after {
  opacity: 0.5;
}

li.cc-hover-line {
  position: absolute;
  left: 0;
  width: 0;
  height: 2px;
  background: currentColor;
  transition: left 0.3s, width 0.3s, top 0.2s;
  pointer-events: none;
  min-width: 0;
  margin: 3px 0 0 0;
  padding: 0;
}

.cc-tabs.cc-tabs--tab-mode {
  border-top: 0;
  padding-top: 0;
}
.cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers__header {
  font-weight: 500;
}
.cc-tabs.cc-tabs--tab-mode .cc-tabs__tab-headers {
  margin-top: 0;
}
.cc-tabs.cc-tabs--tab-mode .cc-tabs__tab__panel {
  padding-bottom: 0;
}

.cc-popup:not(.store-availabilities-modal).cc-popup--visible {
  pointer-events: none !important;
}
.cc-popup:not(.store-availabilities-modal) .cc-popup-background {
  background: transparent !important;
  pointer-events: none;
}
.cc-popup:not(.store-availabilities-modal) .cc-popup-close {
  color: #060108 !important;
  z-index: 1;
}
.cc-popup:not(.store-availabilities-modal) .cc-popup-close svg {
  stroke: #060108 !important;
}
.cc-popup:not(.store-availabilities-modal) .cc-popup-close:hover {
  color: #060108 !important;
  background: transparent !important;
}
.cc-popup:not(.store-availabilities-modal) .cc-popup-modal {
  background-color: #fafafa;
  color: #060108;
}

.cc-popup.cc-popup--bottom-left .cc-popup-modal, .cc-popup.cc-popup--bottom-right .cc-popup-modal {
  margin: 5px;
}
@media (min-width: 768px) {
  .cc-popup.cc-popup--bottom-left .cc-popup-modal, .cc-popup.cc-popup--bottom-right .cc-popup-modal {
    margin: 25px;
  }
}
.cc-popup .cc-popup-modal {
  padding: 40px 30px 30px;
  text-align: center;
  position: relative;
  width: calc(100% - 10px);
  margin-left: 5px;
  box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3);
  pointer-events: all;
  overflow: visible;
}
@media (min-width: 768px) {
  .cc-popup .cc-popup-modal {
    margin-left: 0;
    width: 450px;
  }
}
.cc-popup .cc-popup-modal .cc-popup-image {
  position: absolute;
  top: -1px;
  bottom: -1px;
  right: -1px;
  left: -1px;
  overflow: hidden;
}
.cc-popup .cc-popup-modal .cc-popup-image::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  background: rgba(11, 11, 11, 0.27);
}
.cc-popup .cc-popup-modal .cc-popup-image .rimage-outer-wrapper, .cc-popup .cc-popup-modal .cc-popup-image .rimage-wrapper {
  height: 100%;
  width: 100%;
}
.cc-popup .cc-popup-modal .cc-popup-image .rimage-wrapper {
  padding-top: 0 !important;
}
.cc-popup .cc-popup-modal .cc-popup-image .rimage__image {
  object-fit: cover;
}
.cc-popup .cc-popup-modal .cc-popup-content {
  width: 100%;
  z-index: 1;
}
.cc-popup .cc-popup-modal.cc-popup-modal--has-image .cc-popup-content, .cc-popup .cc-popup-modal.cc-popup-modal--has-image .cc-popup-close {
  color: #ffffff;
}
.cc-popup .cc-popup-modal.cc-popup-modal--has-image .cc-popup-content svg, .cc-popup .cc-popup-modal.cc-popup-modal--has-image .cc-popup-close svg {
  stroke: #ffffff !important;
}
.cc-popup .cc-popup-modal .cc-popup-title {
  margin-bottom: 0.2em;
  color: currentColor;
}
.cc-popup .cc-popup-modal .rte, .cc-popup .cc-popup-modal #comments, .cc-popup .cc-popup-modal #template, .cc-popup .cc-popup-modal #address_tables {
  text-align: inherit;
}
.cc-popup .cc-popup-modal .cc-popup-form {
  margin-top: 1.2em;
}
.cc-popup .cc-popup-modal .cc-popup-form h4, .cc-popup .cc-popup-modal .cc-popup-form .under-cart .subtotal, .under-cart .cc-popup .cc-popup-modal .cc-popup-form .subtotal, .cc-popup .cc-popup-modal .cc-popup-form blockquote {
  color: currentColor;
}
.cc-popup .cc-popup-modal .cc-popup-form .cc-popup-form__inputs {
  margin-top: 1em;
}
.cc-popup .cc-popup-modal .cc-popup-form .cc-popup-form__inputs .cc-popup-form-input {
  margin-bottom: 0.5em;
  padding: 1em 1.4em;
}
.cc-popup .cc-popup-modal .cc-popup-form .cc-popup-form__inputs .button {
  width: 100%;
  margin-top: 0.5em;
}
.cc-popup .cc-popup-modal .cc-popup-form .cc-popup-form__inputs .button svg {
  fill: #060108;
}
.cc-popup .cc-popup-modal .social-links__list {
  margin-top: 1.5em;
  margin-left: -1em;
  margin-bottom: -0.5em;
}
.cc-popup .cc-popup-modal .social-links__list li {
  margin-left: 1em;
  margin-bottom: 1em;
}
.cc-popup .cc-popup-modal .social-links__list svg, .cc-popup .cc-popup-modal .social-links__list svg g {
  fill: currentColor;
}

.locale-bar__container {
  box-shadow: none !important;
  border-radius: 0 !important;
}
.locale-bar__container .locale-bar__content {
  max-width: 100% !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

.store-availability-container-outer {
  display: inline-block;
  margin: 0;
  width: 100%;
}
.store-availability-container-outer[data-single-variant-product-available=true] {
  height: auto !important;
}

.store-availability-container {
  margin-bottom: 0;
  padding: 0 !important;
}

.cc-popup.store-availabilities-modal {
  transition: opacity 0.5s, visibility 0.5s;
}
.cc-popup.store-availabilities-modal .cc-popup-background {
  background-color: rgba(0, 0, 0, 0.3) !important;
}
.cc-popup.store-availabilities-modal .cc-popup-close:hover {
  background-color: transparent !important;
}
.cc-popup.store-availabilities-modal .cc-popup-modal {
  transition: transform 0.5s;
}
@media (max-width: 767px) {
  .cc-popup.store-availabilities-modal .cc-popup-modal {
    padding: 20px;
  }
}

.cc-price-range__input-container {
  color: #000000;
  border: 1px solid #bfbfbf;
  background: #ffffff;
  padding-left: 12px;
}

.cc-price-range .cc-price-range__input {
  padding-left: 0;
  border: none;
}

.cc-price-range .cc-price-range__input {
  min-height: calc(2em + 1rem);
  padding: 12px 12px 12px 0;
}

.cc-price-range__input-container {
  width: calc(50% - 4px);
}

.cc-price-range__input-currency-symbol {
  margin-right: 4px;
  line-height: 1.2em;
}

@media (min-width: 992px) {
  .cc-price-range .cc-price-range__input {
    padding-left: 0;
    padding-right: 1em;
  }
  .cc-price-range__input-row {
    position: relative;
  }
  .cc-price-range__input-row::after {
    content: "";
    position: absolute;
    width: 8px;
    background-color: currentColor;
    height: 1px;
    display: inline-block;
    left: 50%;
    top: 50%;
    transform: translateX(-50%) translateY(-50%);
  }
  .cc-price-range__input-container {
    padding-left: 1em;
    width: calc(50% - 12px);
  }
}
body:not(.user-is-tabbing) .cc-accordion-item__title {
  outline: none;
}

.cc-rating-custom-caption {
  font-size: 0.8em;
  margin-left: 0.3em;
  position: relative;
  top: -1px;
}
@media (min-width: 768px) {
  .cc-rating-custom-caption {
    top: 0;
  }
}

#shopify-product-reviews .spr-icon {
  position: relative;
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-right: 1px;
}
#shopify-product-reviews .spr-icon::before,
#shopify-product-reviews .spr-icon-star::after,
#shopify-product-reviews .spr-icon-star-half-alt::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: no-repeat url("data:image/svg+xml,%3Csvg fill='rgba(156, 148, 172, 0.41)' width='13' height='13' viewBox='0 0 13 13' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.43579 4.9459L13.63 4.9536L9.42653 8.01929L11.0329 12.97L6.81981 9.91778L2.60673 12.97L4.20346 8.01929L0 4.9536L5.20383 4.9459L6.81981 0L8.43579 4.9459Z'%3E%3C/path%3E%3C/svg%3E") top left;
  background-size: 100% 100%;
}
#shopify-product-reviews .spr-icon-star::after,
#shopify-product-reviews .spr-icon-star-half-alt::after {
  background-image: url("data:image/svg+xml,%3Csvg fill='rgb(128, 116, 151)' width='13' height='13' viewBox='0 0 13 13' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M8.43579 4.9459L13.63 4.9536L9.42653 8.01929L11.0329 12.97L6.81981 9.91778L2.60673 12.97L4.20346 8.01929L0 4.9536L5.20383 4.9459L6.81981 0L8.43579 4.9459Z'%3E%3C/path%3E%3C/svg%3E");
}
#shopify-product-reviews .spr-icon-star-half-alt::after {
  clip: rect(0px, 7.5px, 14px, 0px);
}

.swiper-button-inline-prev,
.swiper-button-inline-next {
  position: relative;
  display: inline-block;
  vertical-align: top;
  margin-top: 2px;
  padding: 12px;
  transition: opacity 0.3s;
}
.swiper-button-inline-prev::after,
.swiper-button-inline-next::after {
  content: "";
  position: absolute;
  top: 12%;
  left: 12%;
  width: 76%;
  height: 76%;
  background: currentColor;
  border-radius: 100%;
  opacity: 0.12;
  transition: all 0.3s;
}
.swiper-button-inline-prev.swiper-button-disabled,
.swiper-button-inline-next.swiper-button-disabled {
  opacity: 0.2;
}
.swiper-button-inline-prev.swiper-button-disabled::after,
.swiper-button-inline-next.swiper-button-disabled::after {
  opacity: 0.3;
}
.swiper-button-inline-prev:not(.swiper-button-disabled):hover::after,
.swiper-button-inline-next:not(.swiper-button-disabled):hover::after {
  opacity: 0.17;
  transform: scale(1.06);
}
.swiper-button-inline-prev:not(.swiper-button-disabled):hover svg,
.swiper-button-inline-next:not(.swiper-button-disabled):hover svg {
  transform: scale(1.06);
}
.swiper-button-inline-prev svg,
.swiper-button-inline-next svg {
  display: block;
  margin: 0 auto;
  height: 20px;
  width: 20px;
  transition: all 0.3s;
}

/* Utility classes: Hidden, float left, float right, etc. */
.hidden {
  display: none;
}

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

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

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

.no-margin {
  margin: 0;
}

.relative {
  position: relative;
}

html:not(.no-js) .no-js-only {
  display: none;
}

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

.skip-link:focus {
  position: absolute !important;
  overflow: auto;
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: #26262c;
  background-color: #fdfdfa;
  padding: 10px;
  z-index: 10000;
  transition: none;
}

.desktop-only {
  display: block;
}
@media (max-width: 767px) {
  .desktop-only {
    display: none;
  }
}

.mobile-only {
  display: none;
}
@media (max-width: 767px) {
  .mobile-only {
    display: block;
  }
}

@media (max-width: 767px) {
  .hidden-mobile {
    display: none !important;
  }
}

.theme-modal {
  position: fixed;
  overflow-x: auto;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch; /*iOS fix*/
  left: -150%;
  top: 0;
  width: 100%;
  height: 100%;
  z-index: 30;
  background: #060108;
  color: #ffffff;
}
.theme-modal.nav-uses-modal {
  z-index: 20;
}
.theme-modal.theme-modal--fullscreen .modal-close {
  position: fixed;
  top: 15px;
  right: 13px;
  font-size: 31px;
  width: 44px;
  height: 44px;
  text-align: center;
  opacity: 0;
  visibility: hidden;
  color: #000;
  border-radius: 50%;
  background: #fff;
  line-height: 31px;
  font-family: Tahoma;
  z-index: 9;
  transition: opacity 0.3s, visibility 0.3s;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (min-width: 768px) {
  .theme-modal.theme-modal--fullscreen .modal-close {
    line-height: 41px;
    display: block;
  }
}
body:not(.user-is-tabbing) .theme-modal.theme-modal--fullscreen .modal-close {
  outline: none;
}
.theme-modal.theme-modal--fullscreen.scrollbar-visible .modal-close {
  right: 30px;
}
.theme-modal.theme-modal--fullscreen.reveal .modal-close {
  opacity: 1;
  visibility: visible;
  transition-duration: 1s;
  transition-delay: 0.4s;
}
@media (max-width: 767px) {
  .theme-modal .theme-modal {
    background: #060108;
  }
}
.theme-modal.theme-modal--small {
  background: rgba(0, 0, 0, 0.3);
  left: 0;
  opacity: 0;
  visibility: hidden;
  transform: translate3d(0, -50px, 0);
  transition: opacity 0.4s, visibility 0.4s, transform 0.4s;
  height: calc(100% + 100px);
}
.theme-modal.theme-modal--small.reveal {
  animation: none;
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
}
.theme-modal.theme-modal--small.unreveal {
  animation: none;
}
.theme-modal.theme-modal--small > .inner {
  position: absolute;
  height: auto;
  display: inline-block;
  min-height: auto;
  top: 75px;
  right: 0;
  background: #060108;
  padding: 24px !important;
  border-top: 1px solid #5b0f79;
  left: 0;
  width: 100%;
}
@media (min-width: 768px) {
  .theme-modal.theme-modal--small > .inner {
    left: auto;
    right: 25px;
    width: 420px;
  }
}
.theme-modal.theme-modal--small > .inner h4, .theme-modal.theme-modal--small > .inner .under-cart .subtotal, .under-cart .theme-modal.theme-modal--small > .inner .subtotal, .theme-modal.theme-modal--small > .inner blockquote {
  padding-right: 50px;
  font-size: 14px;
  text-align: left;
}
.theme-modal.theme-modal--small > .inner h4 svg, .theme-modal.theme-modal--small > .inner .under-cart .subtotal svg, .under-cart .theme-modal.theme-modal--small > .inner .subtotal svg, .theme-modal.theme-modal--small > .inner blockquote svg {
  height: 20px;
  width: 20px;
  position: relative;
  top: -2px;
  margin-right: 7px;
}
.theme-modal.theme-modal--small > .inner .cart-product {
  display: flex;
  margin: 24px 0 12px;
}
.theme-modal.theme-modal--small > .inner .cart-product .cart-product__image {
  width: 84px;
}
.theme-modal.theme-modal--small > .inner .cart-product .cart-product__content {
  padding: 0 24px;
  flex: 1;
}
.theme-modal.theme-modal--small > .inner .cart-product .cart-product__content p {
  margin-top: 0;
  margin-bottom: 0.5em;
  line-height: 1.25em;
}
.theme-modal.theme-modal--small > .inner .cart-product .cart-product__content p.cart-product__content__title {
  font-weight: 500;
  font-size: 1.2em;
}
.theme-modal.theme-modal--small > .inner .cart-product .cart-product__content p.cart-product__content__meta {
  opacity: 0.5;
}
.theme-modal.theme-modal--small > .inner .links {
  margin-bottom: 0;
}
.theme-modal.theme-modal--small > .inner .links .button {
  text-align: center;
  word-break: break-word;
}
.theme-modal.theme-modal--small > .inner .links.links--no-checkout .button--checkout {
  display: none;
}
.theme-modal.theme-modal--small > .inner .links.links--no-checkout .button {
  width: 100%;
}
.theme-modal.theme-modal--small > .inner .links:not(.links--no-checkout) {
  margin-left: -5px;
  margin-right: -5px;
}
.theme-modal.theme-modal--small > .inner .links:not(.links--no-checkout) .button {
  margin: 0 5px;
  width: calc(50% - 10px);
}
@media (max-width: 450px) {
  .theme-modal.theme-modal--small > .inner .links:not(.links--no-checkout) .button {
    width: calc(100% - 10px);
  }
  .theme-modal.theme-modal--small > .inner .links:not(.links--no-checkout) .button.button--checkout {
    margin-top: 10px;
  }
}
.theme-modal.theme-modal--small > .inner .modal-close {
  position: absolute;
  right: 0;
  top: 0;
  height: 44px;
  width: 44px;
  font-size: 26px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.theme-modal.theme-modal--small > .inner .modal-close:active, .theme-modal.theme-modal--small > .inner .modal-close:focus {
  outline: none;
}
.user-is-tabbing .theme-modal.theme-modal--small > .inner .modal-close:active, .user-is-tabbing .theme-modal.theme-modal--small > .inner .modal-close:focus {
  border: 2px solid #1f61cc;
}
.theme-modal .theme-modal__loading {
  display: flex;
  height: 100%;
}
.theme-modal:active, .theme-modal:focus {
  outline: none;
}
.theme-modal:not(.theme-modal--quickbuy) svg {
  fill: #ffffff;
}
.theme-modal.-light {
  background-color: #fff;
}
.theme-modal > .inner-scroller {
  position: relative;
  transition: opacity 1s, visibility 1s;
}
.theme-modal > .inner-scroller.-out {
  opacity: 0;
  visibility: hidden;
}
.theme-modal > .inner {
  min-height: 100%;
  padding: 70px 0 50px;
}
.theme-modal > .inner, .theme-modal > .inner .growth-area {
  display: flex;
  flex-direction: column;
}
.theme-modal > .inner .growth-area {
  flex-grow: 1;
  justify-content: flex-start;
  width: 100%;
  padding: 0;
}
.theme-modal > .inner .growth-area .growth-area {
  padding: 0 20px;
}
.theme-modal:not(.theme-modal--quickbuy) h1, .theme-modal:not(.theme-modal--quickbuy) h2, .theme-modal:not(.theme-modal--quickbuy) h3, .theme-modal:not(.theme-modal--quickbuy) h4, .theme-modal:not(.theme-modal--quickbuy) .under-cart .subtotal, .under-cart .theme-modal:not(.theme-modal--quickbuy) .subtotal, .theme-modal:not(.theme-modal--quickbuy) blockquote, .theme-modal:not(.theme-modal--quickbuy) h5, .theme-modal:not(.theme-modal--quickbuy) h6 {
  color: #ffffff;
}
.theme-modal:not(.theme-modal--quickbuy) .container {
  cursor: initial;
}
.no-js .theme-modal {
  visibility: hidden;
}
.no-js .theme-modal:target {
  left: 0;
  opacity: 1;
  visibility: visible;
}
.theme-modal.reveal {
  left: 0;
  -webkit-animation: reveal 300ms ease-out;
  animation: reveal 300ms ease-out;
}
.theme-modal.unreveal {
  -webkit-animation: unreveal 250ms ease-out;
  animation: unreveal 250ms ease-out;
}
.theme-modal.top-padded > .inner {
  padding-top: 200px;
}

html:not(.no-js) .modal-close--no-js {
  display: none;
}

/*only one scrollable container allowed at a time*/
body.modal-active {
  overflow: hidden;
}

#search-modal {
  background-color: #060108;
}
#search-modal .inner {
  padding: 0 !important;
}
#search-modal .inner .growth-area {
  justify-content: center;
  padding: 0 20px;
}
#search-modal .search-form {
  margin: 0 auto;
  width: 100%;
}
#search-modal .search-form .inline-mini-form {
  color: #ffffff;
  width: 90%;
  margin: 0 auto;
}
@media (min-width: 768px) {
  #search-modal .search-form .inline-mini-form {
    width: 70%;
  }
}
@media (min-width: 1200px) {
  #search-modal .search-form .inline-mini-form {
    width: 60%;
  }
}
#search-modal .search-form .inline-mini-form input {
  color: transparent;
  font-size: 24px;
  text-overflow: ellipsis;
  padding-right: 50px;
}
@media (min-width: 768px) {
  #search-modal .search-form .inline-mini-form input {
    font-size: 33px;
  }
}
#search-modal .search-form .inline-mini-form::after {
  width: 0;
  background-color: transparent;
}
#search-modal .search-form .inline-mini-form button {
  opacity: 0;
  visibility: hidden;
  right: 0;
}
#search-modal .search-form .inline-mini-form button svg {
  height: 30px;
  width: 30px;
}
@media (min-width: 768px) {
  #search-modal .search-form .inline-mini-form button svg {
    height: 38px;
    width: 38px;
  }
}
#search-modal .search-form .inline-mini-form button svg > g {
  stroke: #ffffff;
}
#search-modal.-in .inline-mini-form::after {
  width: 100%;
  background-color: currentColor;
}
#search-modal.-in .inline-mini-form input {
  color: currentColor;
}
#search-modal.-in .inline-mini-form button {
  opacity: 1;
  visibility: visible;
  transform: translate3d(0, 0, 0);
}

[data-modal-id=product-image] .theme-modal img.zoom-image {
  width: 100%;
  height: auto;
}

.nav-inline #added-to-cart {
  z-index: 10000;
}
#added-to-cart > .inner {
  display: flex;
  justify-content: center;
}

.theme-gallery {
  overflow: hidden;
  white-space: nowrap;
}
.theme-gallery.theme-gallery--loner .theme-img {
  margin: 0 auto;
}
.theme-gallery.theme-gallery--loner .swiper-pagination-bullets, .theme-gallery.theme-gallery--loner .swiper-button-next, .theme-gallery.theme-gallery--loner .swiper-button-prev {
  display: none;
}
.theme-gallery .theme-images {
  position: relative;
  height: 100%;
}
.theme-gallery .theme-images img {
  display: block;
}
.theme-gallery .theme-images .theme-img,
.theme-gallery .theme-images .rimage-wrapper,
.theme-gallery .theme-images img {
  height: auto;
}
.theme-gallery .theme-images .rimage-wrapper {
  overflow: hidden;
}
@media (min-width: 768px) {
  .theme-gallery.theme-gallery--zoom-enabled.cursor-plus-light .product-media--image:hover {
    cursor: url("data:image/svg+xml;base64,PHN2ZyBkYXRhLW5hbWU9IkxheWVyIDEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgd2lkdGg9IjQ0LjA1IiBoZWlnaHQ9IjQ0LjA1IiB2aWV3Qm94PSIwIDAgNDQuMDUgNDQuMDUiPjxwYXRoIGQ9Ik00NS4wNSwyM2EyMiwyMiwwLDEsMC0yMiwyMkEyMiwyMiwwLDAsMCw0NS4wNSwyM1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xIC0xKSIgc3R5bGU9ImZpbGw6I2ZmZiIvPjxwYXRoIGQ9Ik0yMywxNi42NVYyOS40TTI5LjQsMjNIMTYuNjUiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC0xIC0xKSIgc3R5bGU9ImZpbGw6bm9uZTtzdHJva2U6IzAwMDtzdHJva2UtbGluZWNhcDpyb3VuZDtzdHJva2UtbGluZWpvaW46cm91bmQiLz48L3N2Zz4=") 22 22, zoom-in;
  }
  .theme-gallery.theme-gallery--zoom-enabled.cursor-plus-dark .product-media--image:hover {
    cursor: url("data:image/svg+xml,%3Csvg id='Layer_1' data-name='Layer 1' xmlns='http://www.w3.org/2000/svg' width='42' height='42' viewBox='0 0 42 42'%3E%3Cdefs%3E%3Cstyle%3E.cls-1,.cls-2%7Bfill:none;stroke:%23000;stroke-width:2px;%7D.cls-1%7Bstroke-miterlimit:10;%7D.cls-2%7Bstroke-linecap:round;stroke-linejoin:round;%7D%3C/style%3E%3C/defs%3E%3Cpath class='cls-1' d='M41,21A20,20,0,1,0,21,41,20,20,0,0,0,41,21Z'/%3E%3Cpath class='cls-2' d='M21,12.67V29.33M29.33,21H12.67'/%3E%3C/svg%3E") 21 21, zoom-in;
  }
  .theme-gallery.theme-gallery--zoom-enabled.cursor-standard .product-media--image:hover {
    cursor: zoom-in;
  }
}
.theme-gallery .product-media--frame {
  position: relative;
  height: 100%;
  overflow: hidden;
}
.theme-gallery .product-media--frame object,
.theme-gallery .product-media--frame embed,
.theme-gallery .product-media--frame video,
.theme-gallery .product-media--frame model-viewer,
.theme-gallery .product-media--frame .shopify-model-viewer-ui,
.theme-gallery .product-media--frame .media-item,
.theme-gallery .product-media--frame .plyr {
  height: auto;
  width: 100%;
}
.theme-gallery .product-media--frame.product-media--model {
  width: 100%;
  transition: opacity 0.5s, visibility 0.5s;
  visibility: hidden;
  opacity: 0;
  transition-delay: 0.7s;
}
@media (max-width: 767px) {
  .theme-gallery .product-media--frame.product-media--model {
    height: 300px;
  }
}
@media (min-width: 768px) {
  .theme-gallery .product-media--frame.product-media--model {
    height: 600px;
    width: 100%;
  }
  .theme-gallery .product-media--frame.product-media--model[data-column-count="1"] {
    height: 400px;
  }
}
.theme-gallery .product-media--frame.product-media--model model-viewer {
  height: 100%;
}
@media (max-width: 767px) {
  .theme-gallery .product-media--frame.product-media--model model-viewer {
    width: 100vw;
    height: 300px;
  }
}
.theme-gallery .product-media--frame.product-media--model.product-media--model-loaded {
  visibility: visible;
  opacity: 1;
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing):hover .shopify-model-viewer-ui__button {
  color: rgba(0, 0, 0, 0.55);
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-left,
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-right {
  position: absolute;
  top: 0;
  bottom: 0;
  width: calc(50% - 35px);
  z-index: 2;
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-left {
  left: 0;
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-right {
  right: 0;
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-bottom,
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-top {
  position: absolute;
  left: 0;
  right: 0;
  height: calc(50% - 35px);
  z-index: 2;
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-top {
  top: 0;
}
.theme-gallery .product-media--frame.product-media--model:not(.product-media-model--playing) .product-media--model-mask-bottom {
  bottom: 0;
}
.theme-gallery .product-media--frame.product-media--video {
  height: 100%;
  transition: opacity 0.5s;
  visibility: hidden;
  opacity: 0;
}
.theme-gallery .product-media--frame.product-media--video.product-media--video-loaded {
  visibility: visible;
  opacity: 1;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] {
  height: auto;
  position: relative;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] iframe {
  position: absolute;
  max-width: none;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-left,
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-right {
  position: absolute;
  width: calc(50% - 34px);
  z-index: 1;
  top: 0;
  bottom: 0;
}
@media (min-width: 768px) {
  .theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-left,
  .theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-right {
    top: 70px;
    bottom: 70px;
  }
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-left {
  left: 0;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-right {
  right: 0;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-bottom,
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-top {
  position: absolute;
  left: 0;
  right: 0;
  height: calc(50% - 95px);
  z-index: 1;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-top {
  top: 70px;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external] .product-media--video-mask-bottom {
  bottom: 70px;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-left {
  bottom: 50px;
  width: 50%;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-right {
  bottom: 50px;
  width: 50%;
  right: 55px;
}
.theme-gallery .product-media--frame.product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-top {
  top: 0;
  right: 55px;
}
.theme-gallery .product-media--frame html.no-js .product-media {
  visibility: visible;
  opacity: 1;
}
.theme-gallery .product-media--frame button svg {
  margin: auto;
  background-color: #ffffff;
}
.theme-gallery .product-media--frame .plyr.plyr__tab-focus,
.theme-gallery .product-media--frame model-viewer.focus-visible {
  outline: none;
}
.theme-gallery .product-media--frame .plyr.plyr__tab-focus::after,
.theme-gallery .product-media--frame model-viewer.focus-visible::after {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  box-shadow: 0 0 1px 1px #000000 inset;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui {
  /* hack for some model-viewer 'quirks' */
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui model-viewer {
  text-align: left;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui model-viewer .model-viewer,
.theme-gallery .product-media--frame .shopify-model-viewer-ui model-viewer .model-viewer:hover {
  border-radius: 0;
  background-color: transparent;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui model-viewer .container {
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui:not(.shopify-model-viewer-ui--fullscreen) {
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  .theme-gallery .product-media--frame .shopify-model-viewer-ui:not(.shopify-model-viewer-ui--fullscreen) {
    height: 100%;
    width: 100%;
  }
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui button[hidden] {
  display: none;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.05);
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: #000000;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button:focus {
  z-index: 1;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: rgba(0, 0, 0, 0.55);
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active, .theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: rgba(0, 0, 0, 0.55);
  background: rgba(0, 0, 0, 0.05);
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  border-color: rgba(0, 0, 0, 0.05);
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background: #ffffff;
  border-color: rgba(0, 0, 0, 0.05);
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover, .theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  color: rgba(0, 0, 0, 0.55);
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .theme-event-proxy {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  cursor: pointer;
  z-index: 1;
}
.theme-gallery .product-media--frame .shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area--playing + .theme-event-proxy {
  display: none;
}

.view-in-space {
  box-sizing: border-box;
  display: block;
  width: 100%;
  color: #000000;
  border: none;
  background: rgba(0, 0, 0, 0.08);
  border-radius: 0;
}
.view-in-space:hover {
  color: #000000;
  border: none;
  background-color: rgba(0, 0, 0, 0.08) !important;
}
.view-in-space:hover svg {
  fill: none !important;
}
.view-in-space[data-shopify-xr-hidden] {
  display: none;
}
.view-in-space .icon {
  height: 1.8em;
  width: 1.8em;
  fill: transparent;
  vertical-align: middle;
}
.view-in-space .icon .icon-3d-badge-full-color-outline,
.view-in-space .icon .icon-video-badge-full-color-outline {
  display: none;
}
.view-in-space .icon .icon-3d-badge-full-color-element,
.view-in-space .icon .icon-video-badge-full-color-element {
  fill: currentColor;
}
.view-in-space .view-in-space__text {
  vertical-align: middle;
}

#page-bg {
  left: 0;
  width: 100%;
  top: 0;
  height: 100%;
  z-index: 0;
  background: #ffffff;
  background-repeat: no-repeat;
}

#page-content {
  position: relative;
  z-index: 5;
}
#page-content:has(.cc-product-filter.-in) {
  z-index: unset;
}
#page-content .central {
  margin: 0 auto 0;
  width: 850px;
  max-width: 100%;
  zoom: 1;
}
#page-content .central::before {
  content: "";
  display: table;
}
#page-content .central::after {
  content: "";
  display: table;
  clear: both;
}
@media (min-width: 768px) {
  #page-content .central {
    padding-left: 70px;
    padding-right: 70px;
  }
}
@media (min-width: 1441px) {
  #page-content .central {
    padding-left: 90px;
    padding-right: 90px;
  }
}
#page-content .central.small-gap-top {
  margin-top: 4em;
}
#page-content .central.footer {
  border-top: 1px solid #bfbfbf;
  margin-top: 50px;
  padding-top: 50px;
}
#page-content .central.wide {
  width: 1200px;
  padding-left: 20px;
  padding-right: 20px;
}
#page-content .central.wide .inner {
  width: 328px;
  max-width: 100%;
  float: left;
}
#page-content .central.wide .inner.right {
  float: right;
}
#page-content .central.wide .inner.middle {
  float: none;
  margin-left: auto;
  margin-right: auto;
}
.template-index #page-content {
  padding-bottom: 0;
  padding-top: 0;
}
#page-content .content {
  background: #FFFFFF;
  padding: 50px;
  zoom: 1;
  -webkit-border-radius: 2px;
  -ms-border-radius: 2px;
  -moz-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
}
#page-content .content::before {
  content: "";
  display: table;
}
#page-content .content::after {
  content: "";
  display: table;
  clear: both;
}
#page-content .content.transparent {
  background: transparent;
  padding: 0;
}
#page-content .content.bottomless {
  padding-bottom: 0;
  -webkit-border-radius: 2px 2px 0 0;
  -ms-border-radius: 2px 2px 0 0;
  -moz-border-radius: 2px 2px 0 0;
  -o-border-radius: 2px 2px 0 0;
  border-radius: 2px 2px 0 0;
}
#page-content .content.halfgutter {
  padding-left: 25px;
  padding-right: 25px;
}
#page-content .no-side-pad {
  margin-left: -50px;
  margin-right: -50px;
}
@media (max-width: 767px) {
  #page-content .central,
  #page-content .central.wide {
    padding-left: 20px;
    padding-right: 20px;
  }
  #page-content .no-side-pad {
    margin-left: -20px;
    margin-right: -20px;
  }
  .template-product #page-content .central.wide {
    padding-left: 0;
    padding-right: 0;
  }
  #page-content .central.wide .inner,
  #page-content .central.wide .inner.right {
    float: none;
    margin-left: auto;
    margin-right: auto;
    width: auto;
  }
  #page-content .content,
  #page-content .content.bottomless {
    -webkit-border-radius: 0;
    -ms-border-radius: 0;
    -moz-border-radius: 0;
    -o-border-radius: 0;
    border-radius: 0;
  }
}
@media screen and (max-width: 480px) {
  #page-content .content {
    padding: 30px 20px;
  }
  #page-content .no-side-pad {
    margin-left: -20px;
    margin-right: -20px;
  }
  #page-content .content.halfgutter {
    padding-left: 20px;
    padding-right: 20px;
  }
}

.feature-header, .shopify-policy__title h1 {
  line-height: 1.25em;
}
.feature-header:not(.feature-header__no-gap), .shopify-policy__title h1:not(.feature-header__no-gap) {
  margin-bottom: 0.75em;
}
.feature-header.feature-header__no-line::after, .shopify-policy__title h1.feature-header__no-line::after {
  display: none;
}
.feature-header.align-left, .shopify-policy__title h1.align-left {
  text-align: left;
}
.feature-header.align-left::after, .shopify-policy__title h1.align-left::after {
  margin-left: 0;
}
.feature-header.align-right, .shopify-policy__title h1.align-right {
  text-align: right;
}
.feature-header.align-right::after, .shopify-policy__title h1.align-right::after {
  margin-right: 0;
}
.feature-header--visible:after, .shopify-policy__title h1--visible:after {
  width: 36px;
}

.feature-subheader, #comments .comment .comment-date {
  margin-bottom: 0.5em;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.feature-subheader.feature-subheader--small, #comments .comment .feature-subheader--small.comment-date {
  font-size: 0.75em;
}
@media (max-width: 767px) {
  .feature-subheader, #comments .comment .comment-date {
    font-size: 12px;
  }
}

.use-custom-bg, .use-custom-bg h1, .use-custom-bg h2, .use-custom-bg h3, .use-custom-bg h4, .use-custom-bg .under-cart .subtotal, .under-cart .use-custom-bg .subtotal, .use-custom-bg blockquote, .use-custom-bg h5, .use-custom-bg .rte a:not(.button-custom), .use-custom-bg #comments a:not(.button-custom), .use-custom-bg #template a:not(.button-custom), .use-custom-bg #address_tables a:not(.button-custom), .use-custom-bg .button:not(.button-custom), .use-custom-bg .link-display {
  color: var(--cust-text-color);
  border-color: var(--cust-text-color);
}
.use-custom-bg .button:not(.button-custom) {
  background-color: transparent;
  border-color: var(--cust-text-color);
}
.use-custom-bg .button:not(.button-custom):hover {
  background-color: var(--cust-text-color);
  color: var(--cust-text-color);
  border-color: transparent;
}
.use-custom-bg .feature-header:after {
  border-top-color: var(--cust-text-color);
}

.button-row {
  margin-top: 2em;
}

@media (max-width: 767px) {
  .next-prev-page {
    display: none;
  }
}
.shopify-section-group-header-group:not(.section-header):has(~ .section-header) {
  position: relative;
  z-index: 30;
}

.section-header:has(.site-control.fixed) {
  position: -webkit-sticky;
  position: sticky;
  z-index: 25;
  top: 0;
  overflow: initial;
  padding-top: 0.1px; /* prevent margin collapse so pill keeps its top gap while sticky */
}

.section-header:has(.site-control.fixed) .site-control.fixed {
  position: relative;
}

.section-header:has(.site-control.scrolls-with-page) {
  overflow: initial;
}

.section-header:has(.site-control.scrolls-with-page) .site-control.scrolls-with-page {
  position: relative;
}

.section-header:has(.site-control.nav-hidden) {
  pointer-events: none;
}

.header-section-overlap:not(.nav-opaque):not(:has(.section-header ~ .shopify-section-group-header-group)) #page-content:has(.header-overlap-section) {
  margin-top: calc(var(--nav-height, 0) * -1);
}

.logo {
  position: relative;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 25px;
  line-height: 1.4em;
  color: #ffffff;
  word-break: break-word;
  max-width: calc(100% - 120px);
  transition: opacity 0.4s, visibility 0.4s;
}
@media (min-width: 768px) {
  .logo {
    font-size: 30px;
  }
}
@media (min-width: 1100px) {
  .nav-inline-desktop .logo {
    width: 190px;
    text-align: left;
  }
  .nav-inline-desktop .logo img {
    max-width: 190px;
  }
}
@media (min-width: 1400px) {
  .nav-inline-desktop .logo {
    width: 250px;
  }
  .nav-inline-desktop .logo img {
    max-width: none;
  }
}
.logo img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  -webkit-transition: opacity 400ms;
  -ms-transition: opacity 400ms;
  -moz-transition: opacity 400ms;
  -o-transition: opacity 400ms;
  transition: opacity 400ms;
}
@media (min-width: 1100px) {
  .nav-inline-desktop .logo img {
    margin-left: 0;
  }
}
.logo .alt-logo {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: opacity 400ms;
  -ms-transition: opacity 400ms;
  -moz-transition: opacity 400ms;
  -o-transition: opacity 400ms;
  transition: opacity 400ms;
}

.use-alt-logo .site-control:not(.nav-opaque) .logo {
  color: #ffffff;
}
.use-alt-logo .site-control:not(.nav-opaque) .logo.logo--has-alt-logo > img, .use-alt-logo .site-control:not(.nav-opaque) .logo.logo--has-alt-logo > h1 > img {
  opacity: 0;
}
.use-alt-logo .site-control:not(.nav-opaque) .logo .alt-logo {
  opacity: 1;
}
.use-alt-logo .site-control:not(.nav-opaque) .site-control__inner a, .use-alt-logo .site-control:not(.nav-opaque) .site-control__inner .disclosure__toggle {
  color: #ffffff;
}
.use-alt-logo .site-control:not(.nav-opaque) .site-control__inner svg, .use-alt-logo .site-control:not(.nav-opaque) .site-control__inner .cart {
  fill: #ffffff;
  color: #ffffff;
}
.use-alt-logo .site-control:not(.nav-opaque) .site-control__inner .menu .icon-menu .icon-menu__bar {
  background: #ffffff;
}

.modal-active[data-modal-id=page-menu] .alt-logo-when-active.site-control .logo, .modal-active[data-modal-id=added-to-cart] .alt-logo-when-active.site-control .logo, .nav-mega-open .alt-logo-when-active.site-control .logo {
  color: #ffffff !important;
}
.modal-active[data-modal-id=page-menu] .alt-logo-when-active.site-control .logo.logo--has-alt-logo > img, .modal-active[data-modal-id=added-to-cart] .alt-logo-when-active.site-control .logo.logo--has-alt-logo > img, .nav-mega-open .alt-logo-when-active.site-control .logo.logo--has-alt-logo > img, .modal-active[data-modal-id=page-menu] .alt-logo-when-active.site-control .logo.logo--has-alt-logo > h1 > img, .modal-active[data-modal-id=added-to-cart] .alt-logo-when-active.site-control .logo.logo--has-alt-logo > h1 > img, .nav-mega-open .alt-logo-when-active.site-control .logo.logo--has-alt-logo > h1 > img {
  opacity: 0;
}
.modal-active[data-modal-id=page-menu] .alt-logo-when-active.site-control .logo .alt-logo, .modal-active[data-modal-id=added-to-cart] .alt-logo-when-active.site-control .logo .alt-logo, .nav-mega-open .alt-logo-when-active.site-control .logo .alt-logo {
  opacity: 1;
}
.modal-active[data-modal-id=page-menu] .main-logo-when-active.site-control .logo.logo--has-alt-logo > img, .modal-active[data-modal-id=added-to-cart] .main-logo-when-active.site-control .logo.logo--has-alt-logo > img, .nav-mega-open .main-logo-when-active.site-control .logo.logo--has-alt-logo > img, .modal-active[data-modal-id=page-menu] .main-logo-when-active.site-control .logo.logo--has-alt-logo > h1 > img, .modal-active[data-modal-id=added-to-cart] .main-logo-when-active.site-control .logo.logo--has-alt-logo > h1 > img, .nav-mega-open .main-logo-when-active.site-control .logo.logo--has-alt-logo > h1 > img {
  opacity: 1;
}
.modal-active[data-modal-id=page-menu] .main-logo-when-active.site-control .logo .alt-logo, .modal-active[data-modal-id=added-to-cart] .main-logo-when-active.site-control .logo .alt-logo, .nav-mega-open .main-logo-when-active.site-control .logo .alt-logo {
  opacity: 0;
}
.modal-active[data-modal-id=page-menu] .site-control .site-control__inner a, .modal-active[data-modal-id=added-to-cart] .site-control .site-control__inner a, .nav-mega-open .site-control .site-control__inner a, .modal-active[data-modal-id=page-menu] .site-control .site-control__inner .disclosure__toggle, .modal-active[data-modal-id=added-to-cart] .site-control .site-control__inner .disclosure__toggle, .nav-mega-open .site-control .site-control__inner .disclosure__toggle {
  color: #ffffff !important;
}
.modal-active[data-modal-id=page-menu] .site-control .site-control__inner svg, .modal-active[data-modal-id=added-to-cart] .site-control .site-control__inner svg, .nav-mega-open .site-control .site-control__inner svg, .modal-active[data-modal-id=page-menu] .site-control .site-control__inner .cart, .modal-active[data-modal-id=added-to-cart] .site-control .site-control__inner .cart, .nav-mega-open .site-control .site-control__inner .cart {
  fill: #ffffff !important;
  color: #ffffff !important;
}
.modal-active[data-modal-id=page-menu] .site-control .site-control__inner .menu .icon-menu .icon-menu__bar, .modal-active[data-modal-id=added-to-cart] .site-control .site-control__inner .menu .icon-menu .icon-menu__bar, .nav-mega-open .site-control .site-control__inner .menu .icon-menu .icon-menu__bar {
  background: #ffffff !important;
}

.nav-mega-open.template-product .site-control .site-control__inner .cart, .nav-mega-open.template-product .site-control .site-control__inner .cart svg,
.modal-active[data-modal-id=page-menu].template-product .site-control .site-control__inner .cart,
.modal-active[data-modal-id=page-menu].template-product .site-control .site-control__inner .cart svg,
.modal-active[data-modal-id=added-to-cart].template-product .site-control .site-control__inner .cart,
.modal-active[data-modal-id=added-to-cart].template-product .site-control .site-control__inner .cart svg {
  color: #ffffff;
  fill: #ffffff;
}

.site-control {
  padding: 0;
  margin: 0;
  left: 0;
  right: 0;
  top: 0;
  z-index: 25;
  text-align: center;
  background-clip: content-box;
  transition: padding-top 0.3s, background 0.3s, transform 0.5s, opacity 0.3s, visibility 0.3s,
    max-width 0.4s ease, border-radius 0.4s ease, box-shadow 0.3s, margin 0.3s;
  will-change: padding-top, transform, opacity, visibility, max-width, border-radius;
  position: absolute;
  /* Icon mode */
  /* Text mode */
}
.site-control.fixed {
  position: fixed;
}
body.cc-popup-no-scroll-pad-right .site-control.fixed {
  right: 15px;
}
.modal-active[data-modal-id=page-menu] .site-control, .modal-active[data-modal-id=added-to-cart] .site-control {
  background-color: #060108 !important;
}
.modal-opening .site-control {
  transition: padding-top 0.3s, background 0.3s 0.3s, transform 0.5s, opacity 0.3s, visibility 0.3s,
    max-width 0.4s ease, border-radius 0.4s ease, box-shadow 0.3s, margin 0.3s;
}
.modal-closing .site-control {
  transition: padding-top 0.3s, background 0s, transform 0.5s, opacity 0.3s, visibility 0.3s,
    max-width 0.4s ease, border-radius 0.4s ease, box-shadow 0.3s, margin 0.3s;
}
@media (min-width: 768px) {
  .nav-mega-open .site-control.nav-inline-desktop, .site-control.nav-inline-desktop:hover {
    background-color: #060108 !important;
  }
  .nav-mega-open .site-control.nav-inline-desktop.alt-logo-when-active .logo, .site-control.nav-inline-desktop:hover.alt-logo-when-active .logo {
    color: #ffffff;
  }
  .nav-mega-open .site-control.nav-inline-desktop.alt-logo-when-active .logo.logo--has-alt-logo > img, .nav-mega-open .site-control.nav-inline-desktop.alt-logo-when-active .logo.logo--has-alt-logo > h1 > img, .site-control.nav-inline-desktop:hover.alt-logo-when-active .logo.logo--has-alt-logo > img, .site-control.nav-inline-desktop:hover.alt-logo-when-active .logo.logo--has-alt-logo > h1 > img {
    opacity: 0;
  }
  .nav-mega-open .site-control.nav-inline-desktop.alt-logo-when-active .logo .alt-logo, .site-control.nav-inline-desktop:hover.alt-logo-when-active .logo .alt-logo {
    opacity: 1;
  }
  .nav-mega-open .site-control.nav-inline-desktop.main-logo-when-active .logo.logo--has-alt-logo > img, .nav-mega-open .site-control.nav-inline-desktop.main-logo-when-active .logo.logo--has-alt-logo > h1 > img, .site-control.nav-inline-desktop:hover.main-logo-when-active .logo.logo--has-alt-logo > img, .site-control.nav-inline-desktop:hover.main-logo-when-active .logo.logo--has-alt-logo > h1 > img {
    opacity: 1;
  }
  .nav-mega-open .site-control.nav-inline-desktop.main-logo-when-active .logo .alt-logo, .site-control.nav-inline-desktop:hover.main-logo-when-active .logo .alt-logo {
    opacity: 0;
  }
  .nav-mega-open .site-control.nav-inline-desktop .site-control__inner a, .nav-mega-open .site-control.nav-inline-desktop .site-control__inner .disclosure__toggle, .site-control.nav-inline-desktop:hover .site-control__inner a, .site-control.nav-inline-desktop:hover .site-control__inner .disclosure__toggle {
    color: #ffffff !important;
  }
  .nav-mega-open .site-control.nav-inline-desktop .site-control__inner svg, .nav-mega-open .site-control.nav-inline-desktop .site-control__inner .cart, .site-control.nav-inline-desktop:hover .site-control__inner svg, .site-control.nav-inline-desktop:hover .site-control__inner .cart {
    fill: #ffffff !important;
    color: #ffffff !important;
  }
  .nav-mega-open .site-control.nav-inline-desktop .site-control__inner .menu .icon-menu .icon-menu__bar, .site-control.nav-inline-desktop:hover .site-control__inner .menu .icon-menu .icon-menu__bar {
    background: #ffffff !important;
  }
}
.site-control .site-control__inner {
  display: flex;
  justify-content: center;
  align-items: center;
}
.site-control .site-control__inner a, .site-control .site-control__inner .disclosure__toggle {
  pointer-events: auto;
  display: inline-block;
  color: #ffffff;
  vertical-align: middle;
}
.site-control .site-control__inner svg {
  vertical-align: top;
  fill: #ffffff;
  width: 35px;
  height: 35px;
  transition: fill 0.4s, color 0.4s;
}
.site-control .site-control__inner .nav-search {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  right: 55px;
}
@media (min-width: 768px) {
  .site-control .site-control__inner .nav-search {
    margin-right: 5px;
  }
}
@media (min-width: 1441px) {
  .site-control .site-control__inner .nav-search {
    right: 69px;
  }
}
.site-control .site-control__inner .nav-search svg {
  width: 24px;
  height: 24px;
}
.site-control .site-control__inner .nav-account {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
}
.site-control .site-control__inner .nav-account svg {
  width: 24px;
  height: 24px;
}
.site-control .site-control__inner .nav-globe {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  padding: 0;
}
.site-control .site-control__inner .nav-globe svg {
  width: 24px;
  height: 24px;
}
.site-control.nav-opaque {
  /* Floating pill */
  background-color: rgba(0, 0, 0, 0.72);
  -webkit-backdrop-filter: blur(18px) saturate(1.4);
  backdrop-filter: blur(18px) saturate(1.4);
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  margin-top: 14px;
  border-radius: 100px;
  box-shadow: 0 4px 24px rgba(0, 0, 0, 0.10);
  background-clip: border-box;
  overflow: hidden;
}
/* Homepage: flatten pill bottom so it connects with the tab bar below */
.template-index .site-control.nav-opaque {
  border-radius: 100px 100px 0 0;
  margin-bottom: 0;
  box-shadow: none;
}
/* Compact pill inner */
.site-control.nav-opaque .site-control__inner {
  min-height: 44px;
  padding: 8px 10px;
}
/* Pull right-side icons inward so cart badge clears the rounded corners */
.site-control.nav-opaque .site-control__inner .nav-right-side {
  right: 22px;
}
.site-control.nav-opaque .site-control__inner svg {
  width: 18px;
  height: 18px;
}
.site-control.nav-opaque .logo img,
.site-control.nav-opaque .logo svg {
  transform: scale(0.68);
  transform-origin: center;
}
.site-control.nav-opaque .site-control__inner .nav-account svg,
.site-control.nav-opaque .site-control__inner .nav-globe svg {
  width: 16px;
  height: 16px;
}
/* Globe icon in pill */
.site-control.nav-opaque .nav-globe svg {
  width: 16px;
  height: 16px;
}
/* Shrink nav search icon */
.site-control.nav-opaque .nav-search svg {
  width: 16px;
  height: 16px;
}
/* Shrink hamburger menu icon */
.site-control.nav-opaque .menu .icon-menu {
  transform: scale(0.68);
  transform-origin: center;
}
/* Shrink cart icon in pill */
.site-control.nav-opaque .cart svg {
  width: 16px !important;
  height: 16px !important;
}
.site-control.nav-opaque .cart div {
  top: 0;
  right: 2px;
  min-width: 14px;
  height: 14px;
  line-height: 14px;
  font-size: 8px;
}
@media (max-width: 767px) {
  .site-control.nav-opaque {
    max-width: 90%;
    margin-top: 10px;
  }
  .site-control.nav-opaque .site-control__inner {
    min-height: 40px;
    padding-top: 6px;
    padding-bottom: 6px;
  }
}

/* ─── Pill: extra breathing room when sticky (no banner pages) ─── */
.site-control.nav-opaque {
  margin-top: 18px;
}

/* ─── Flatten pill when banner exists — homepage only (sandwiched between banner & tabs) ─── */
body.template-index:has(.section-scrolling-banner) .site-control.nav-opaque {
  border-radius: 0;
  margin-top: 0;
  margin-bottom: 0;
}

/* ─── Flatten pill bottom when collection-nav exists (pill + subnav form one card) ─── */
body:has(.section-collection-nav) .site-control.nav-opaque {
  border-radius: 100px 100px 0 0;
  margin-bottom: 0;
  box-shadow: none;
  overflow: visible;
}

/* ─── Push header group below the banner ─── */
body:has(.section-scrolling-banner) .section-header:has(.site-control.fixed) {
  top: var(--banner-total-height, 0px);
}

/* ─── Scrolling banner: sticky at viewport top, above pill ─── */
.section-scrolling-banner {
  position: sticky;
  top: 0;
  z-index: 26;
  transition: opacity 0.25s ease;
}

.section-scrolling-banner > [data-section-type="scrolling-banner"] {
  max-width: 860px;
  margin: 0 auto;
  border-radius: 14px 14px 0 0;
  overflow: hidden;
  margin-top: 8px;
}

/* ─── Reduce banner font to slim promo strip ─── */
.section-scrolling-banner .marquee-text {
  font-size: 11px !important;
  letter-spacing: 0.08em;
}

@media (max-width: 767px) {
  .section-scrolling-banner > [data-section-type="scrolling-banner"] {
    max-width: 90%;
  }
}
.site-control.nav-opaque[data-opacity=opaque_on_scroll_alt] .logo {
  color: #ffffff;
}
.site-control.nav-opaque[data-opacity=opaque_on_scroll_alt] .logo.logo--has-alt-logo > img, .site-control.nav-opaque[data-opacity=opaque_on_scroll_alt] .logo.logo--has-alt-logo > h1 > img {
  opacity: 0;
}
.site-control.nav-opaque[data-opacity=opaque_on_scroll_alt] .logo .alt-logo {
  opacity: 1;
}
.site-control.nav-hidden {
  transform: translate3d(0, -100%, 0);
}
.site-control.nav-fade-out {
  opacity: 0 !important;
  visibility: hidden !important;
}
.site-control.icons .site-control__inner a .text-link {
  display: none;
}
.site-control.text .site-control__inner a svg {
  display: none;
}
.site-control .menu,
.site-control .cart {
  position: absolute;
  top: 50%;
}
.site-control .site-control__inner .cart {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.site-control .cart {
  right: 10px;
  margin-top: -19px;
  height: 44px;
  width: 44px;
}
@media (min-width: 768px) {
  .site-control .cart.nav-search {
    margin-top: -19px;
  }
}
@media (max-width: 767px) {
  .site-control .cart {
    margin-top: -18px;
  }
  .site-control .cart svg {
    height: 24px;
    width: 24px;
  }
}
@media (min-width: 992px) {
  .site-control .cart {
    right: 11px;
  }
}
@media (min-width: 1441px) {
  .site-control .cart {
    right: 22px;
  }
}
.site-control .cart div {
  position: absolute;
  top: 2px;
  right: 0;
  left: auto;
  transform: none;
  min-width: 16px;
  height: 16px;
  line-height: 16px;
  text-align: center;
  padding: 0 4px;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 10px;
  border-radius: 100px;
  background: #060108;
  color: #ffffff;
}
@media (min-width: 768px) {
  .site-control .cart.cart-icon--basket2 svg {
    height: 24px;
    width: 24px;
  }
}
.site-control .menu {
  left: 12px;
  margin-top: -21px;
  margin-left: -2px;
  height: 44px;
  width: 44px;
  border-radius: 50%;
  display: flex !important;
  align-items: center;
  justify-content: center;
  background-color: transparent;
  transition: background-color 0.5s;
}
@media (min-width: 768px) {
  .site-control .menu {
    margin-top: -22px;
    margin-left: 1px;
  }
}
@media (min-width: 1441px) {
  .site-control .menu {
    margin-left: 4px;
    left: 18px;
  }
}
.site-control .menu .icon-menu {
  position: relative;
  display: inline-block;
  width: 30px;
  height: 30px;
  transition: transform 0.5s;
}
.site-control .menu .icon-menu .icon-menu__bar {
  position: absolute;
  left: 3px;
  width: 23px;
  height: 2px;
  background: #ffffff;
}
.site-control .menu .icon-menu .icon-menu__bar-1 {
  top: 6px;
  transition: transform 500ms ease 100ms, background 400ms ease 0ms;
}
.site-control .menu .icon-menu .icon-menu__bar-2 {
  top: 14px;
  transition: opacity 500ms ease, background 400ms ease;
}
.site-control .menu .icon-menu .icon-menu__bar-3 {
  top: 22px;
  transition: transform 500ms ease 100ms, background 400ms ease 0ms;
}
.modal-active[data-modal-id=page-menu] .site-control .menu .icon-menu__bar-1 {
  transform: rotate(45deg) translate3d(6px, 5.5px, 0);
}
@media (max-width: 767px) {
  .modal-active[data-modal-id=page-menu] .site-control .menu .icon-menu__bar-1 {
    top: 6.5px;
    left: 3px;
  }
}
.modal-active[data-modal-id=page-menu] .site-control .menu .icon-menu__bar-2 {
  opacity: 0;
}
.modal-active[data-modal-id=page-menu] .site-control .menu .icon-menu__bar-3 {
  transform: rotate(-45deg) translate3d(5.5px, -5px, 0);
}
.site-control::before {
  content: "";
  background: transparent;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  opacity: 0;
  transition: opacity 400ms;
}
@media (max-width: 1099px) {
  .site-control .site-control__inner .nav-right-side {
    position: absolute;
    right: 0;
  }
}
.site-control .nav-right-side {
  transition: opacity 0.5s, visibility 0.5s, width 0.1s 0.5s;
  white-space: nowrap;
}
/* Flex layout for nav-right-side in burger mode */
.site-control:not(.nav-inline-desktop) .nav-right-side {
  display: flex;
  align-items: center;
  position: absolute;
  right: 10px;
  top: 50%;
  transform: translateY(-50%);
}
/* Compact icons on mobile to fit globe + search + account + cart */
@media (max-width: 767px) {
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-globe,
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-account,
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-search,
  .site-control:not(.nav-inline-desktop) .nav-right-side .cart {
    width: 34px;
    height: 34px;
  }
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-globe svg,
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-search svg,
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-account svg {
    width: 20px;
    height: 20px;
  }
  .site-control:not(.nav-inline-desktop) .nav-right-side .cart svg {
    width: 20px;
    height: 20px;
  }
  .site-control:not(.nav-inline-desktop) .nav-right-side .cart div {
    top: 0;
    right: -2px;
    min-width: 14px;
    height: 14px;
    line-height: 14px;
    font-size: 8px;
  }
  .site-control.nav-opaque .nav-right-side .cart div {
    right: 2px;
  }
}
/* ─── Globe icon on the left, mobile only ─── */
@media (max-width: 767px) {
  .site-control:not(.nav-inline-desktop) .nav-right-side {
    left: 56px;
    right: 0;
    width: auto;
    pointer-events: none;
  }
  .site-control:not(.nav-inline-desktop) .nav-right-side > * {
    pointer-events: auto;
  }
  .site-control:not(.nav-inline-desktop) .nav-right-side .nav-globe {
    margin-right: auto;
  }
}
.site-control:not(.nav-inline-desktop) .nav-right-side .cart {
  position: relative;
  right: auto;
  top: auto;
  margin-top: 0;
}
.site-control:not(.nav-inline-desktop) .nav-right-side .nav-search {
  position: relative;
  right: auto;
  top: auto;
  margin-top: 0;
}
.site-control.nav-inline-desktop .site-control__inline-links {
  display: none;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
}
.site-control.nav-inline-desktop .site-control__inline-links .modal-active[data-modal-id=page-menu] {
  transition: opacity 0.5s, visibility 0.5s;
  opacity: 0;
  visibility: hidden;
}
@media (min-width: 1100px) {
  .site-control.nav-inline-desktop .site-control__inline-links {
    display: block;
  }
}
@media (min-width: 1100px) {
  .site-control.nav-inline-desktop .nav-right-side {
    width: 210px;
    text-align: right;
  }
  .site-control.nav-inline-desktop .cart {
    position: relative;
    margin-top: 0;
    text-align: center;
  }
  .site-control.nav-inline-desktop .nav-search {
    right: 10px;
  }
}
@media (min-width: 1100px) and (min-width: 1441px) {
  .site-control.nav-inline-desktop .nav-search {
    right: 20px;
  }
}
@media (min-width: 1100px) {
  .site-control.nav-inline-desktop .site-control__inner {
    justify-content: space-between;
    transition: background-color 0.3s;
    /*Nav*/
  }
  .site-control.nav-inline-desktop .site-control__inner .menu {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s, visibility 0.2s;
  }
  .site-control.nav-inline-desktop .site-control__inner .menu .icon-menu, .site-control.nav-inline-desktop .site-control__inner .menu .icon-menu__bar {
    transition-delay: 2s;
  }
  .modal-active[data-modal-id=page-menu] .site-control.nav-inline-desktop .site-control__inner .menu {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.5s, visibility 0.5s;
  }
  .modal-active[data-modal-id=page-menu] .site-control.nav-inline-desktop .site-control__inner .menu .icon-menu, .modal-active[data-modal-id=page-menu] .site-control.nav-inline-desktop .site-control__inner .menu .icon-menu__bar {
    transition: none;
    transition-delay: 0s;
  }
  .site-control.nav-inline-desktop .site-control__inner .logo {
    left: 20px !important;
    z-index: 1;
  }
  .site-control.nav-inline-desktop .site-control__inner .site-control__inline-links {
    color: inherit;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row {
    text-align: center;
    line-height: 1.5em;
    font-size: 14px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row ul {
    margin: 0;
    padding-left: 0;
    display: inline-block;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row ul li {
    vertical-align: top;
    margin: 0;
    display: inline-block;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row a {
    padding: 0.5em 1.2em;
    display: inline-block;
    font-size: 15.3px;
    word-break: break-word;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row a:focus:hover {
    box-shadow: none !important;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row ul ul {
    display: none;
  }
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-2,
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-3 {
    position: absolute;
    z-index: 10;
    top: calc(100% - 20px);
    border-top: 20px solid #060108;
    left: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 0.3s, background-color 2s;
  }
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-2 ul.nav-columns ul a:not(.column-title),
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-3 ul.nav-columns ul a:not(.column-title) {
    font-size: 15.3px;
    line-height: 1.5em;
    transition: opacity 0.4s;
  }
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-2 ul.nav-columns ul a:not(.column-title):hover,
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-3 ul.nav-columns ul a:not(.column-title):hover {
    opacity: 0.7;
  }
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-2.tier-appeared,
  .site-control.nav-inline-desktop .site-control__inner .multi-level-nav.reveal-on-hover .tier-3.tier-appeared {
    opacity: 1;
    background-color: #060108;
    transition: opacity 0.3s, background-color 0.3s;
    max-height: 75vh;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta {
    background-color: transparent;
    overflow: hidden;
    width: 300px;
    padding: 40px 10px;
    font-family: Helvetica, Arial, sans-serif;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta > .inner {
    height: 100%;
    display: block;
    white-space: normal;
    position: relative;
    padding: 0;
    overflow: hidden;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta > .inner .line-1 {
    margin-top: 0;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta > .inner .feature-subheader ~ .line-1, .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta > .inner #comments .comment .comment-date ~ .line-1, #comments .comment .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta > .inner .comment-date ~ .line-1 {
    margin-top: 20px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-ctas__cta > .inner .overlay-type {
    height: 100%;
  }
  .site-control.nav-inline-desktop .site-control__inner li.contains-children:not(.contains-mega-menu) > ul > li:not(.nav-ctas__cta) {
    width: 100%;
    min-width: 190px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children {
    position: relative;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows {
    position: absolute;
    top: 100%;
    left: 1.2em;
    visibility: hidden;
    opacity: 0;
    transition: none;
    background-color: #060108;
    display: block;
    border-top: 20px solid #060108;
    padding: 20px 15px;
    background-clip: padding-box;
    text-align: left;
    z-index: 1;
    max-width: 350px;
    max-height: 0;
    overflow-y: auto;
    overflow-x: hidden;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows .contains-children > a .arr {
    display: inline;
    height: 15.3px;
    width: 15.3px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows .contains-children > a .arr svg {
    height: 15.3px;
    width: 15.3px;
    margin-top: 3px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows .contains-children ul {
    padding-left: 15px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows a {
    padding-left: 0.5em;
    padding-right: 0.5em;
    transition: opacity 0.3s;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows a:hover {
    opacity: 0.7;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows a:after {
    display: none;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children .nav-rows .nav-ctas__cta {
    padding: 0;
    margin-top: 20px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:hover .nav-rows {
    opacity: 1;
    visibility: visible;
    max-height: 75vh;
    transition: opacity 0.4s, visibility 0.4s;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .reveal-child > .nav-rows {
    opacity: 1;
    visibility: visible;
    max-height: 75vh;
    transition: opacity 0.4s, visibility 0.4s;
  }
  .no-js .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:focus-within .nav-columns,
  .no-js .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:focus-within .nav-rows {
    display: block;
    position: absolute;
    background: #060108;
    top: 100%;
    left: 0;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.4s, visibility 0.4s;
    color: #ffffff;
    max-height: none;
  }
  .no-js .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:focus-within .nav-columns a,
  .no-js .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:focus-within .nav-rows a {
    color: inherit;
  }
  .no-js .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:focus-within .nav-columns ul,
  .no-js .site-control.nav-inline-desktop .site-control__inner .nav-row .contains-children:focus-within .nav-rows ul {
    display: block;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns {
    display: flex;
    margin: 0 -10px;
    padding: 40px 70px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns .column-title {
    display: block;
    padding-bottom: 20px;
    white-space: normal;
    text-align: left;
    opacity: 0.8;
    transition: opacity 0.4s;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns .column-title:hover {
    opacity: 0.6;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns .column-title .arr {
    display: none;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li {
    padding: 0 10px;
    text-align: left;
    flex: 1 1 200px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li.nav-ctas__cta {
    flex-basis: 300px;
    width: auto;
    padding: 0;
    margin-left: 20px;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li a {
    padding-left: 0;
    padding-right: 0;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li > a {
    padding-top: 0;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li > ul {
    display: block;
    padding-bottom: 20px;
    text-align: left;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li > ul > li {
    display: block;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns > li > ul > li > a {
    display: block;
    padding-top: 7px;
    padding-bottom: 7px;
    white-space: normal;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns.nav-columns--count-5-or-more {
    flex-wrap: wrap;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns.nav-columns--count-5-or-more > li {
    flex: 0 0 25%;
    margin-bottom: 2em;
  }
}
@media (min-width: 1100px) and (min-width: 1200px) {
  .site-control.nav-inline-desktop .site-control__inner .nav-row .nav-columns.nav-columns--count-5-or-more > li {
    flex: 0 0 20%;
  }
}
@media (min-width: 1100px) {
  .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 {
    padding: 0 2em;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 ul > li > a {
    position: relative;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 ul > li > a::after {
    content: "";
    position: absolute;
    width: calc(100% - 2.4em);
    bottom: 0;
    left: 50%;
    background-color: transparent;
    height: 2px;
    transform: translateX(-50%);
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 ul > li > a:hover::after, .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 ul > li > a.expanded::after, .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 ul > li > a.active::after {
    background-color: currentColor;
  }
  .site-control.nav-inline-desktop .site-control__inner .nav-row .tier-1 .nav-columns {
    display: none;
  }
}
@media (min-width: 1400px) {
  .site-control.nav-inline-desktop .nav-right-side {
    width: 270px;
  }
}
@media (min-width: 1441px) {
  .site-control.nav-inline-desktop .nav-row .nav-columns {
    padding-left: 90px;
    padding-right: 90px;
  }
}
@media (max-width: 1200px) {
  .site-control.nav-inline-desktop .nav-row .nav-columns.nav-columns--cta-count-2.nav-columns--count-2:not(.nav-columns--count-5-or-more) > .nav-ctas__cta:last-child {
    display: none;
  }
  .site-control.nav-inline-desktop .nav-row .nav-columns.nav-columns--count-3.nav-columns--cta-count-1:not(.nav-columns--count-5-or-more) > .nav-ctas__cta, .site-control.nav-inline-desktop .nav-row .nav-columns.nav-columns--count-3-or-more:not(.nav-columns--count-5-or-more) > .nav-ctas__cta {
    display: none;
  }
}
body.modal-active[data-modal-id=product-image] .site-control, body.modal-active[data-modal-id=quick-buy] .site-control, body.modal-active[data-modal-id=search-modal] .site-control {
  opacity: 0;
  visibility: hidden;
}

.site-control__inner {
  position: relative;
  padding-top: 20px;
  padding-bottom: 20px;
  min-height: 75px;
}
@media (max-width: 767px) {
  .site-control__inner {
    min-height: 65px;
  }
}

.nav-ctas__cta {
  display: inline-block;
  width: 100%;
  margin: 20px 0;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .nav-ctas__cta .placeholder-image.placeholder--banner {
    height: 100%;
  }
}
.nav-ctas__cta a {
  display: inline-block;
  width: 100%;
  height: 100%;
}
.user-is-tabbing .nav-ctas__cta a:focus .overlay-type {
  border: 2px solid #1f61cc;
}
.nav-ctas__cta a .rimage-outer-wrapper {
  transition: transform 0.6s cubic-bezier(0, 0.14, 0.19, 1);
}
@media (min-width: 768px) {
  .nav-ctas__cta a:hover .rimage-outer-wrapper {
    transform: scale(1.05);
  }
}
.nav-ctas__cta .rimage-outer-wrapper, .nav-ctas__cta .placeholder-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  object-fit: cover;
}
.nav-ctas__cta .overlay-type {
  padding: 30px;
  position: relative;
  min-height: 250px;
  display: flex;
  align-items: center;
  background-color: transparent;
}
.nav-ctas__cta .overlay-type .overlay__content {
  color: #ffffff;
}
.nav-ctas__cta .overlay-type .feature-subheader, .nav-ctas__cta .overlay-type #comments .comment .comment-date, #comments .comment .nav-ctas__cta .overlay-type .comment-date {
  margin-bottom: -10px;
}
.nav-ctas__cta .overlay-type .line-1 {
  font-size: 30px;
  margin-top: 20px;
}
.site-control .nav-ctas__cta .overlay-type .rte a, .site-control .nav-ctas__cta .overlay-type #comments a, .site-control .nav-ctas__cta .overlay-type #template a, .site-control .nav-ctas__cta .overlay-type #address_tables a {
  display: inline;
  color: #ffffff !important;
  padding: 0 !important;
  font-size: 1em;
}
#page-menu .nav-ctas__cta .overlay-type .rte a, #page-menu .nav-ctas__cta .overlay-type #comments a, #page-menu .nav-ctas__cta .overlay-type #template a, #page-menu .nav-ctas__cta .overlay-type #address_tables a {
  display: inline;
}

#page-menu {
  text-align: center;
  color: #ffffff;
  background-color: #060108;
}
#page-menu svg, #page-menu svg g {
  fill: #ffffff;
}
#page-menu .pretty-select svg, #page-menu .disclosure .disclosure__toggle svg, .disclosure #page-menu .disclosure__toggle svg, #page-menu .pretty-select svg g, #page-menu .disclosure .disclosure__toggle svg g, .disclosure #page-menu .disclosure__toggle svg g {
  fill: #000000;
}
#page-menu:focus {
  outline: none;
}
#page-menu a {
  color: inherit;
  position: relative;
}
#page-menu a .arr {
  position: absolute;
  right: -27px;
  top: calc(50% + 0.03em);
  transform: translateY(-50%);
  margin-left: 10px;
}
@media (min-width: 768px) {
  #page-menu a .arr {
    right: -40px;
  }
}
#page-menu a .arr.arr--small {
  margin-left: 2px;
}
#page-menu a .arr:not(.arr--small) {
  height: 1em;
  width: 1em;
}
#page-menu a .arr.arr--left {
  left: auto;
  right: 100%;
  margin-right: 10px;
}
#page-menu a .arr.arr--left.arr--small {
  margin-right: 2px;
}
#page-menu .container {
  width: 100%;
}
#page-menu .nav-search {
  text-align: left;
}
@media (max-width: 767px) {
  #page-menu .nav-search {
    margin-top: -21px;
  }
}
#page-menu .main-nav {
  margin-top: 5px;
  margin-bottom: 20px;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 30px;
  line-height: 1.4em;
  text-align: left;
}
#page-menu .main-nav ul {
  margin-bottom: 10px;
  padding: 0;
}
#page-menu .main-nav li {
  display: block;
  margin: 0 0 0.6em 0;
}
@media (min-width: 768px) {
  #page-menu .main-nav li {
    margin: 0 0 0.5em 0;
  }
}
#page-menu .main-nav li.main-nav__back {
  font-size: 14px;
  margin-top: 10px;
  color: #ffffff;
  margin-bottom: 1.5em;
}
@media (min-width: 768px) {
  #page-menu .main-nav li.main-nav__back {
    font-size: 17px;
  }
}
#page-menu .main-nav li.main-nav__back a .arr--left {
  margin-right: 0.2em;
}
#page-menu .main-nav li.main-nav__back a .arr--left svg, #page-menu .main-nav li.main-nav__back a .arr--left svg g {
  fill: currentColor;
}
#page-menu .main-nav li ul {
  margin-top: 10px;
  margin-bottom: 10px;
}
#page-menu .main-nav li li {
  display: block;
}
#page-menu .main-nav li li a {
  padding: 0.18em 0 0.1em;
  color: #ffffff;
  font-size: 30px;
  line-height: 1.4em;
}
#page-menu .main-nav li li a .arr svg, #page-menu .main-nav li li a .arr svg g {
  fill: currentColor;
}
#page-menu .main-nav li li.main-nav__mega-title {
  margin-top: 2em;
}
#page-menu .main-nav li li.main-nav__mega-title:first-child {
  margin-top: 0;
}
#page-menu .main-nav li li.main-nav__mega-title a {
  opacity: 0.6;
  font-size: 14px;
}
@media (min-width: 768px) {
  #page-menu .main-nav li li.main-nav__mega-title a {
    font-size: 17px;
  }
}
#page-menu .main-nav li li.main-nav__mega-title a .arr {
  opacity: 0.6;
}
#page-menu .main-nav li a {
  border-bottom: 2px solid transparent;
  transition: border 150ms;
  display: inline-block;
}
#page-menu .main-nav li a:hover {
  border-bottom-color: inherit;
}
#page-menu .main-nav .horizontal-nav {
  margin-bottom: 50px;
}
#page-menu .main-nav .horizontal-nav a {
  padding: 0.18em 0 0.1em;
  color: #ffffff;
  font-size: 17px;
  line-height: 1.2em;
}
#page-menu .main-nav .horizontal-nav__image-link {
  display: block;
  border-bottom: 0 !important;
}
#page-menu .main-nav .horizontal-nav__link {
  display: inline-block;
}
#page-menu .main-nav ul.cols-four > li,
#page-menu .main-nav ul.cols-three > li,
#page-menu .main-nav ul.cols-two > li {
  vertical-align: top;
  display: inline-block;
  margin: 0;
  padding: 0 2% 2%;
}
#page-menu .main-nav ul.cols-four > li {
  width: 20.5%;
}
#page-menu .main-nav ul.cols-three > li {
  width: 28.5%;
}
#page-menu .main-nav ul.cols-two > li {
  width: 45.5%;
}
#page-menu.nav-uses-modal .main-nav li.has-children > ul {
  display: none;
}
#page-menu > .inner {
  padding-left: 40px;
  padding-right: 40px;
  max-width: 1100px;
  margin: 0 auto;
}
@media (min-width: 768px) {
  #page-menu > .inner {
    padding-left: 70px;
    padding-right: 70px;
  }
}
@media (min-width: 1441px) {
  #page-menu > .inner {
    padding-left: 90px;
    padding-right: 90px;
  }
}
#page-menu .nav-footer-links, #page-menu .nav-ctas {
  padding-top: 40px;
}
#page-menu .nav-body {
  width: 100%;
  max-width: none;
}
#page-menu .nav-container {
  display: flex;
  flex-direction: column;
  position: relative;
}
@media (min-width: 768px) {
  #page-menu .nav-container {
    margin-top: 4vw;
  }
}
@media (min-width: 768px) {
  #page-menu .nav-footer-links, #page-menu .nav-body {
    width: 58%;
    padding-right: 70px;
    margin: 0;
  }
}
#page-menu .nav-ctas {
  margin: -20px 0;
}
#page-menu .nav-ctas .nav-ctas__container[data-for-nav-item] {
  display: none;
}
#page-menu .nav-ctas .nav-ctas__container[data-for-nav-item=_root] {
  display: block;
}
@media (min-width: 768px) {
  #page-menu .nav-ctas {
    width: 42%;
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media (min-width: 768px) {
  #page-menu .nav-footer-links {
    padding-top: 20px;
  }
}
#page-menu .nav-footer-links .nav-footer-links__link, #page-menu .nav-footer-links .selectors-form__item {
  display: block;
  padding: 1em 0;
  margin: 0;
  text-align: left;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  border-top: 2px solid #514d52;
}
@media (min-width: 768px) {
  #page-menu .nav-footer-links .nav-footer-links__link, #page-menu .nav-footer-links .selectors-form__item {
    border: none;
    padding: 0.5em 0;
  }
}
#page-menu .nav-footer-links .disclosure__toggle {
  font-weight: inherit;
}
#page-menu .customer-links,
#page-menu .social-links {
  margin: 1em 0 0;
}
#page-menu .customer-links a,
#page-menu .social-links a {
  margin: 0 10px;
}
#page-menu .social-links {
  margin-top: 50px;
}
#page-menu .social-links .social-links__list {
  margin-bottom: 0;
}
#page-menu .social-links .social-links__list li {
  opacity: 1;
  margin: 0 0 1em 1em;
}
#page-menu .social-links .social-links__list li:hover {
  opacity: 0.75;
}
#page-menu .localization {
  margin-top: 0;
}

#site-control .featured-link > a,
#page-menu .featured-link > a {
  color: #807497 !important;
}

@media screen and (max-width: 510px) {
  .site-control .logo {
    width: 150px;
  }
  #page-menu .main-nav ul.cols-four > li,
  #page-menu .main-nav ul.cols-three > li,
  #page-menu .main-nav ul.cols-two > li {
    display: block;
    width: auto;
    padding: 0;
  }
}
@media screen and (max-width: 510px) and (max-width: 767px) {
  #page-menu .main-nav {
    font-size: 22px;
  }
  #page-menu .main-nav li li a {
    font-size: 80%;
  }
  #page-menu .main-nav ul.cols-four > li,
  #page-menu .main-nav ul.cols-three > li,
  #page-menu .main-nav ul.cols-two > li {
    width: 45.5%;
  }
}
@media (min-width: 1100px) {
  .site-control.nav-inline-desktop .site-control__inner .logo-h1 {
    max-width: none;
    margin: 0;
    left: 0 !important;
  }
}

.logo-h1 {
  max-width: none !important;
  margin: 0 !important;
}


body:not(.header-section-overlap) .site-control:not(.nav-opaque) .logo {
  color: #000000;
}
body:not(.header-section-overlap) .site-control:not(.nav-opaque) .site-control__inner a, body:not(.header-section-overlap) .site-control:not(.nav-opaque) .site-control__inner .disclosure__toggle {
  color: #000000;
}
body:not(.header-section-overlap) .site-control:not(.nav-opaque) .site-control__inner svg, body:not(.header-section-overlap) .site-control:not(.nav-opaque) .site-control__inner .cart {
  fill: #000000;
  color: #000000;
}
body:not(.header-section-overlap) .site-control:not(.nav-opaque) .site-control__inner .menu .icon-menu .icon-menu__bar {
  background: #000000;
}


.image-overlay {
  position: relative;
  color: #ffffff;
}
.image-overlay.image-overlay--bg-full::after, .image-overlay.image-overlay--bg-full .image-overlay__veil {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(11, 11, 11, 0.27);
  position: absolute;
  z-index: 1;
  pointer-events: none;
}
.image-overlay.image-overlay--bg-full::after {
  content: "";
}
.image-overlay.image-overlay--bg-full[data-video-id=_9VUPq3SxOc] .image-overlay__veil {
  background: rgba(17, 17, 17, 0.44);
}
@media (max-width: 767px) {
  .image-overlay.image-overlay--bg-full.overlay-text-static-xs::after {
    display: none;
  }
}
.image-overlay.image-overlay--bg-box .overlay__content {
  display: inline-block;
  vertical-align: top;
  padding: 0;
  min-width: 0;
}
.image-overlay.image-overlay--bg-box .overlay__content .feature-subheader, .image-overlay.image-overlay--bg-box .overlay__content #comments .comment .comment-date, #comments .comment .image-overlay.image-overlay--bg-box .overlay__content .comment-date, .image-overlay.image-overlay--bg-box .overlay__content .line-1, .image-overlay.image-overlay--bg-box .overlay__content .line-2 {
  margin-bottom: 20px;
  margin-top: 0;
}
.image-overlay.image-overlay--bg-box .overlay__content > *:last-child {
  margin-bottom: 0;
}
.image-overlay .overlay__content {
  word-break: break-word;
}
body:not(.nav-opaque) #page-content .shopify-section:first-child.header-overlap-section .image-overlay .overlay__content, body:not(.nav-opaque) #page-content .shopify-section:first-child .header-overlap-section .image-overlay .overlay__content {
  padding-top: 50px;
}
body:not(.nav-opaque).showing-announcement #page-content .shopify-section:first-child.header-overlap-section .image-overlay .overlay__content, body:not(.nav-opaque).showing-announcement #page-content .shopify-section:first-child .header-overlap-section .image-overlay .overlay__content {
  padding-top: 80px;
}
.image-overlay .overlay__content .line-1 {
  color: inherit;
}
.image-overlay .overlay__content .link-display {
  font-size: 14px;
}
.image-overlay .overlay__content > *:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .image-overlay.overlay-text-static-xs .overlay__content {
    padding-top: 0 !important;
  }
}

.overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  text-align: center;
}
.overlay .inner {
  display: table;
  width: 100%;
  height: 100%;
}
.overlay .inner > * {
  line-height: 1px;
  display: table-cell;
  vertical-align: middle;
}
.overlay .inner .line-1 {
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .overlay-text-static-xs .overlay {
    position: static;
    color: #000000;
  }
}
.overlay.position-lower-left {
  padding: 20px;
}
@media (min-width: 768px) {
  .overlay.position-lower-left {
    padding: 70px;
  }
}
@media (min-width: 1441px) {
  .overlay.position-lower-left {
    padding: 90px;
  }
}
.overlay.position-lower-left .inner > * {
  vertical-align: bottom;
}
.overlay.position-lower-left .line-1, .overlay.position-lower-left .line-2, .overlay.position-lower-left .line-3 {
  text-align: left;
  margin-left: 0;
}
@media (max-width: 767px) {
  .overlay.position-lower-left {
    padding-bottom: 20px;
  }
}
.overlay.position--left .inner > * {
  text-align: left;
}
.overlay.position--left .line-1, .overlay.position--left .line-2, .overlay.position--left .line-3 {
  text-align: left;
  margin-left: 0;
}
.overlay.position--right .inner > * {
  text-align: right;
}
.overlay.position--right .line-1, .overlay.position--right .line-2, .overlay.position--right .line-3 {
  text-align: right;
  margin-right: 0;
}
.overlay.position--top .inner > * {
  vertical-align: top;
}
.overlay.position--bottom .inner > * {
  vertical-align: bottom;
}
@media (max-width: 767px) {
  .overlay.position--bottom {
    padding-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .overlay.position--left-xs .inner > *,
  .overlay.position--left-xs .line-1, .overlay.position--left-xs .line-2, .overlay.position--left-xs .line-3 {
    text-align: left;
  }
  .overlay.position--left-xs .line-1, .overlay.position--left-xs .line-2 {
    margin-left: 0;
    margin-right: auto;
  }
  .overlay.position--hcenter-xs .inner > *,
  .overlay.position--hcenter-xs .line-1, .overlay.position--hcenter-xs .line-2, .overlay.position--hcenter-xs .line-3 {
    text-align: center;
  }
  .overlay.position--hcenter-xs .line-1, .overlay.position--hcenter-xs .line-2 {
    margin-left: auto;
    margin-right: auto;
  }
  .overlay.position--right-xs .inner > *,
  .overlay.position--right-xs .line-1, .overlay.position--right-xs .line-2, .overlay.position--right-xs .line-3 {
    text-align: right;
  }
  .overlay.position--right-xs .line-1, .overlay.position--right-xs .line-2 {
    margin-left: auto;
    margin-right: 0;
  }
  .overlay.position--top-xs .inner > * {
    vertical-align: top;
  }
  .overlay.position--vcenter-xs .inner > * {
    vertical-align: middle;
  }
  .overlay.position--bottom-xs .inner > * {
    vertical-align: bottom;
  }
}

.overlay-type {
  position: absolute;
  left: 0;
  right: 0;
  padding: 70px 20px;
  text-align: center;
  z-index: 2;
}
@media (max-width: 767px) {
  .overlay-type.small-padding-xs {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media (min-width: 768px) {
  .overlay-type {
    padding-left: 70px;
    padding-right: 70px;
  }
}
@media (min-width: 1441px) {
  .overlay-type {
    padding-left: 90px;
    padding-right: 90px;
  }
}
.overlay-type .line-1, .overlay-type .line-2, .overlay-type .line-3 {
  text-align: center;
}
.overlay-type .line-1 {
  line-height: 1.25em;
  margin-bottom: 20px;
}
.overlay-type .line-1.line-1--large {
  line-height: 1.3em;
}
@media (max-width: 767px) {
  .overlay-type .line-1 {
    font-size: 1.9em;
  }
  .overlay-type .line-1 br {
    display: none;
  }
}
.overlay-type .line-2 {
  max-width: 35em;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  .overlay-type .line-2.large-text {
    font-size: 1.5em;
  }
}
.overlay-type .line-3 {
  margin-top: 30px;
}
.overlay-type .button:not(.overlay-type-ignore) {
  font-size: 14px;
  background-color: rgba(0,0,0,0);
  color: #fafafa;
  border-color: rgba(0,0,0,0);
}
.overlay-type .button:not(.overlay-type-ignore) svg {
  fill: #fafafa;
}
.overlay-type .button:not(.overlay-type-ignore):not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover {
  background-color: #fafafa;
  color: rgba(0,0,0,0);
  border-color: #fafafa;
}
.overlay-type .button:not(.overlay-type-ignore):not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):not([disabled=disabled]):hover svg {
  fill: rgba(0,0,0,0);
}
@media (max-width: 767px) {
  .overlay-text-static-xs .overlay-type .button:not(.overlay-type-ignore), .overlay-text-static-xs .overlay-type .button:not(.overlay-type-ignore):hover {
    background-color: #060108;
    color: #ffffff;
    border-color: #060108;
  }
  .overlay-text-static-xs .overlay-type .button:not(.overlay-type-ignore) svg, .overlay-text-static-xs .overlay-type .button:not(.overlay-type-ignore):hover svg {
    fill: #ffffff;
  }
}
.overlay-type a:not(.overlay-type-ignore), .overlay-type .link-display:not(.overlay-type-ignore) {
  display: inline-block;
  color: inherit;
  border-color: inherit;
}
.overlay-type a:not(.overlay-type-ignore):not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):hover, .overlay-type .link-display:not(.overlay-type-ignore):not(.hover-grow):not(.no-hover):not(input[type=submit].textbutton):not(button.textbutton):hover {
  color: inherit;
  border-color: inherit;
}

.inline-mini-form {
  display: inline-block;
  white-space: nowrap;
  border: 1px solid #bfbfbf;
  background: #ffffff;
  overflow: hidden;
}
.inline-mini-form input {
  padding: 18px 30px;
  line-height: 1.6em;
  border: none;
  background: transparent;
  width: 300px;
  margin-bottom: -10px;
}
@media (min-width: 768px) {
  .inline-mini-form input {
    padding: 18px 30px;
  }
}
.inline-mini-form input:-webkit-autofill, .inline-mini-form input:-webkit-autofill:hover, .inline-mini-form input:-webkit-autofill:focus, .inline-mini-form input:-webkit-autofill:active {
  -webkit-box-shadow: 0 0 0 30px #ffffff inset;
}
.inline-mini-form input:-webkit-autofill + button, .inline-mini-form input:-webkit-autofill:hover + button, .inline-mini-form input:-webkit-autofill:focus + button, .inline-mini-form input:-webkit-autofill:active + button {
  color: #000000;
}
.inline-mini-form button {
  margin: -1px -1px -1px 0;
  border: none;
  color: #ffffff;
}
.inline-mini-form button:hover {
  color: #060108;
}
@media (max-width: 767px) {
  .inline-mini-form:not(.inline-mini-form--arrow) {
    white-space: normal;
    border: none;
    background: transparent;
  }
  .inline-mini-form:not(.inline-mini-form--arrow) input {
    border: 1px solid #bfbfbf;
    background: #ffffff;
    width: 100%;
    margin: 0 0 20px;
  }
  .inline-mini-form:not(.inline-mini-form--arrow) button {
    margin: 0;
    width: 100%;
  }
}
.inline-mini-form.inline-mini-form--arrow {
  display: block;
  margin: 1em auto 0;
  position: relative;
  background-color: transparent;
  border: none;
  color: currentColor;
  width: 70%;
}
@media (min-width: 768px) {
  .inline-mini-form.inline-mini-form--arrow {
    width: 400px;
  }
  .inline-mini-form.inline-mini-form--arrow:not(.mt-0) {
    margin-top: 2em;
  }
}
.inline-mini-form.inline-mini-form--arrow::after {
  content: "";
  display: inline-block;
  height: 2px;
  width: 100%;
  background-color: currentColor;
  position: absolute;
  bottom: 0;
  left: 0;
  transition: width 1s cubic-bezier(0, 0.14, 0.19, 1), background-color 0.5s cubic-bezier(0, 0.14, 0.19, 1);
}
.inline-mini-form.inline-mini-form--arrow input {
  margin-bottom: 0;
  padding: 0.5em 0;
  width: 100%;
  color: currentColor;
  transition: color 2s;
  transition-delay: 0.2s;
}
@media (min-width: 768px) {
  .inline-mini-form.inline-mini-form--arrow input {
    font-size: 20px;
  }
}
.inline-mini-form.inline-mini-form--arrow input::placeholder {
  color: currentColor;
}
.inline-mini-form.inline-mini-form--arrow button {
  position: absolute;
  right: -35px;
  height: 100%;
  width: 44px;
  top: 0;
  padding: 0;
  transition: opacity 0.9s, visibility 0.9s, transform 0.6s cubic-bezier(0, 0.14, 0.19, 1);
  transition-delay: 0.6s;
  transform: translate3d(-30px, 0, 0);
  background: transparent;
  color: currentColor;
}
.inline-mini-form.inline-mini-form--arrow button:hover {
  color: currentColor;
}
.inline-mini-form.inline-mini-form--arrow button svg {
  height: 25px;
  width: 25px;
}
.inline-mini-form.inline-mini-form--arrow button svg > g {
  stroke: currentColor;
}

.form {
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
.form input, .form textarea {
  width: 100%;
}
.form .wide-action {
  margin-top: 40px;
}
.form .wide-action input[type=submit], .form .wide-action button {
  width: 100%;
  margin-bottom: 20px;
}

.input-row {
  margin: 20px 0;
}

.input-row__message small {
  display: block;
}

.with-payment-button .button {
  min-height: 48px;
}

.shopify-payment-button {
  margin: 10px auto 0;
  transition: max-height 0.3s 0.2s, opacity 0.3ms;
  max-height: 100px;
  overflow: hidden;
}
.variant-status--unavailable .shopify-payment-button {
  min-height: 0;
  max-height: 0;
}
@media (max-width: 767px) {
  .shopify-payment-button {
    max-width: 100%;
    margin: 10px 0 0 0;
  }
}
.shopify-payment-button .shopify-payment-button__button {
  transition: all 0.4s;
  line-height: 1.25em;
  min-height: 48px;
  font-weight: 400;
  overflow: hidden;
}
.shopify-payment-button .shopify-payment-button__button--unbranded {
  height: 44px;
  min-height: 44px;
  background-color: #060108;
  color: #ffffff;
  border: 1px solid #060108;
  border-radius: var(--btn-border-radius, 0);
  padding: 0 30px;
}
@media (min-width: 768px) {
  .shopify-payment-button .shopify-payment-button__button--unbranded {
    padding: 0 30px;
  }
}
.shopify-payment-button .shopify-payment-button__button--unbranded:hover:not([disabled]) {
  background-color: #ffffff;
  color: #060108;
}
.shopify-payment-button shopify-accelerated-checkout {
  font-size: 0.86em;
  --shopify-accelerated-checkout-button-block-size: 44px;
  --shopify-accelerated-checkout-button-border-radius: var(--btn-border-radius, 0);
  --shopify-accelerated-checkout-button-box-shadow: none;
  --shopify-accelerated-checkout-skeleton-background-color: rgba(0, 0, 0, 0);
  --shopify-accelerated-checkout-skeleton-animation-opacity-start: 0;
  --shopify-accelerated-checkout-skeleton-animation-opacity-end: 0;
  --shopify-accelerated-checkout-skeleton-animation-duration: 0s;
}
.shopify-payment-button .shopify-payment-button__more-options {
  background: transparent;
  border: none;
  padding: 0 15%;
  color: #6f6f6f;
  font-size: 0.9em;
}
.shopify-payment-button .shopify-payment-button__more-options.shopify-payment-button__button--hidden {
  display: none;
}

.cc-checkbox {
  margin: 0;
  font-size: 1em;
  line-height: initial;
  letter-spacing: initial;
  text-transform: none;
  padding-left: 35px;
}
@media (min-width: 768px) {
  .cc-checkbox {
    padding-left: 30px;
  }
}

.cc-checkbox__label {
  display: flex;
  align-items: center;
  color: inherit;
  position: relative;
  cursor: pointer;
  top: 3px;
  min-height: 25px;
}
@media (min-width: 768px) {
  .cc-checkbox__label {
    top: 0;
    min-height: 20px;
  }
}
.cc-checkbox__label::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 25px;
  height: 25px;
  left: -35px;
  background-color: #eee;
  border-radius: 25px;
}
@media (min-width: 768px) {
  .cc-checkbox__label::before {
    width: 20px;
    height: 20px;
    border-radius: 20px;
    left: -30px;
    top: 0;
  }
}
.cc-checkbox__label::after {
  content: "";
  position: absolute;
  left: -25px;
  width: 5px;
  height: 10px;
  border: solid #222;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) scale(0.9);
  transition: opacity 0.4s, transform 0.4s;
  opacity: 0;
}
@media (min-width: 768px) {
  .cc-checkbox__label::after {
    left: -22px;
    top: 4px;
  }
}
@media (min-width: 768px) {
  .cc-checkbox__label:hover::after {
    opacity: 0.5;
  }
}
.cc-checkbox__input:checked + .cc-checkbox__label::after {
  opacity: 1;
  transform: rotate(45deg) scale(1);
}
.cc-checkbox__input:disabled + .cc-checkbox__label {
  opacity: 0.7;
  cursor: default;
}
.cc-checkbox__input:disabled + .cc-checkbox__label::after {
  opacity: 0;
}

.cc-checkbox__input {
  position: absolute;
  opacity: 0;
  height: 0;
  width: 0;
}

.rimage-outer-wrapper {
  margin-left: auto;
  margin-right: auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center center;
}
.rimage-outer-wrapper.fade-in {
  opacity: 0;
  transition: opacity 0.8s;
}
.rimage-outer-wrapper.fade-in.lazyloaded {
  opacity: 1;
}
.no-js .rimage-outer-wrapper.fade-in {
  opacity: 1;
}

.rimage-wrapper {
  position: relative;
  transition: background 150ms;
}
.rimage-wrapper.lazyload--placeholder {
  background: rgba(0, 0, 0, 0.05);
}
.rimage-wrapper .rimage__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.rimage-wrapper .fade-in {
  opacity: 0;
  transition: opacity 0.8s;
}
.rimage-wrapper .fade-in.lazyloaded {
  opacity: 1;
}
.rimage-wrapper .blur-in {
  -webkit-filter: blur(10px);
  filter: blur(10px);
  transition: filter 400ms, -webkit-filter 400ms;
}
.rimage-wrapper .blur-in.lazyloaded {
  -webkit-filter: blur(0);
  filter: blur(0);
}
.rimage-wrapper .cover {
  object-fit: cover;
}

.rimage-background {
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
}
.rimage-background[data-parent-fit=contain] {
  background-size: contain;
}
.rimage-background.fade-in {
  opacity: 0;
  transition: opacity 500ms;
}
.rimage-background.fade-in.lazyloaded {
  opacity: 1;
}

/* Onboarding placeholder */
.placeholder-image {
  position: relative;
  padding-top: 100%;
  height: 0px;
  overflow: hidden;
  background: #f5f5f5;
}
.placeholder-image.dark {
  background: #acadae;
}
.placeholder-image.dark svg, .placeholder-image.dark svg g {
  fill: #777777;
}
.placeholder-image.landscape {
  padding-top: 55%;
}
.placeholder-image.placeholder--banner {
  padding-top: 475px;
}
@media (max-width: 767px) {
  .placeholder-image.placeholder--banner {
    padding-top: 55%;
  }
}
.fill-viewport .placeholder-image.placeholder--banner {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  padding-top: 0;
}
.placeholder-image svg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.placeholder-image svg, .placeholder-image svg g {
  fill: #777777;
}

.merge-remove-wrapper {
  /* note: JS expects second units */
  --fade-duration: 0.5s;
  --slide-duration: 0.25s;
  overflow: hidden;
  transition: opacity var(--fade-duration) cubic-bezier(0, 0, 0.14, 0.96), height var(--slide-duration) cubic-bezier(0, 0, 0.14, 0.96);
  pointer-events: none;
}

.merge-remove-wrapper--fade {
  opacity: 0;
}

.merge-remove-wrapper--slide {
  height: 0 !important;
}

.merge-add-wrapper {
  /* note: JS expects second units */
  --fade-duration: 0.2s;
  --slide-duration: 0.5s;
  transition: opacity var(--fade-duration) cubic-bezier(0, 0, 0.14, 0.96), height var(--slide-duration) cubic-bezier(0, 0, 0.14, 0.96);
  opacity: 0;
}

.merge-add-wrapper:not(.merge-add-wrapper--slide) {
  height: 0 !important;
}

.merge-add-wrapper--fade {
  opacity: 1;
}

[data-merge-list-item] {
  --fade-duration: 0.15s;
  --slide-duration: 0.25s;
  position: relative;
  transition: opacity var(--fade-duration) cubic-bezier(0, 0, 0.14, 0.96), height var(--slide-duration) cubic-bezier(0, 0, 0.14, 0.96);
}

.merge-item-refreshing {
  opacity: 0.5;
  pointer-events: none;
}
.merge-item-refreshing::after {
  content: "";
  position: absolute;
  top: calc(50% - 12px);
  left: calc(50% - 12px);
  width: 24px;
  height: 24px;
  animation: spin 1s linear infinite;
  border: 2px solid transparent;
  border-radius: 100%;
  border-left-color: currentColor;
}

.section-image-with-text-overlay {
  position: relative;
  overflow: hidden;
}
.section-image-with-text-overlay .rimage-outer-wrapper {
  max-height: none !important;
  max-width: none !important;
}
.section-image-with-text-overlay img {
  width: 100%;
  vertical-align: top;
}
@media (min-width: 768px) {
  .section-image-with-text-overlay a .rimage-outer-wrapper {
    transition: opacity 0.8s, filter 2s, transform 1s !important;
  }
  .section-image-with-text-overlay a:hover .rimage-outer-wrapper {
    transform: scale(1.05);
  }
}

.image-with-text {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
}
.image-with-text .image-with-text__text {
  float: left;
  width: 50%;
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-flex: 0 0 auto;
  -moz-box-flex: 0 0 auto;
  -webkit-flex: 0 0 auto;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto;
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  align-items: center;
}
.image-with-text .image-with-text__text .image-with-text__text__wrap {
  width: 100%;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
}
.image-with-text .image-with-text__text .image-with-text__text__wrap.align-left {
  margin-right: auto;
  margin-left: unset;
}
.image-with-text .image-with-text__text .image-with-text__text__wrap.align-right {
  margin-left: auto;
  margin-right: unset;
}
.image-with-text .image-with-text__text.align-center .feature-header {
  margin-left: auto;
  margin-right: auto;
}
.image-with-text .image-with-text__text.align-right .feature-header {
  margin-left: auto;
}
.image-with-text .image-with-text__image {
  position: relative;
  float: left;
  width: 50%;
  -webkit-box-flex: 1 1 auto;
  -moz-box-flex: 1 1 auto;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  -webkit-flex-basis: 50%;
  -moz-flex-basis: 50%;
  -ms-flex-preferred-size: 50%;
  flex-basis: 50%;
  display: flex;
}
.image-with-text .image-with-text__image .image-with-text__image__inner {
  display: inline-block;
  height: auto;
  width: 100%;
  margin: auto;
}
@media (min-width: 768px) {
  .image-with-text .image-with-text__image .image-with-text__image__inner {
    height: 100%;
  }
}
.image-with-text .image-with-text__image .image-with-text__image__inner .rimage-outer-wrapper {
  background-size: contain;
}
.image-with-text .image-with-text__image .image-with-text__image__inner .video-container {
  height: auto;
}
.image-with-text .image-with-text__image .image-with-text__image__inner .video-container video {
  height: 100%;
  width: 100%;
  object-fit: contain;
  position: static;
}
@media (max-width: 767px) {
  .image-with-text .image-with-text__image .image-with-text__image__inner .video-container video {
    position: static;
  }
}
.image-with-text .image-with-text__image .image-with-text__image__inner .video-container .rimage-outer-wrapper {
  background-size: cover;
}
.image-with-text .image-with-text__image .rimage-outer-wrapper,
.image-with-text .image-with-text__image .placeholder-image {
  min-height: 100%;
  flex-grow: 1;
}
.image-with-text .image-with-text__image .rimage-outer-wrapper {
  max-width: none !important;
  max-height: none !important;
  transition: filter 250ms;
}
.image-with-text .image-with-text__image .rimage-outer-wrapper.fade-in {
  transition: opacity 0.8s, filter 120ms;
}
.image-with-text .image-with-text__image a {
  display: flex;
  flex-grow: 1;
}
.image-with-text .image-with-text__image a:hover .rimage-outer-wrapper {
  filter: brightness(92%);
}
.image-with-text .image-with-text__image--natural {
  display: block;
  align-self: center;
}
.image-with-text .image-with-text__image--natural .rimage-outer-wrapper {
  flex-grow: 0;
  min-height: 0;
}
.image-with-text .image-with-text__image {
  overflow: hidden;
}
@media (min-width: 768px) {
  .image-with-text a .rimage-outer-wrapper {
    transition: opacity 0.8s, filter 2s, transform 1s !important;
  }
  .image-with-text a:hover .rimage-outer-wrapper {
    transform: scale(1.05);
  }
}
@media (max-width: 767px) {
  .image-with-text {
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  .image-with-text .image-with-text__text,
  .image-with-text .image-with-text__image {
    float: none;
    width: auto;
    display: block;
    -webkit-flex-basis: 100%;
    -moz-flex-basis: 100%;
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
  }
  .image-with-text .image-with-text__text {
    -webkit-box-ordinal-group: 2;
    -moz-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
  }
  .image-with-text .image-with-text__image {
    -webkit-box-ordinal-group: 1;
    -moz-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    text-align: center;
  }
  .image-with-text .image-with-text__image img {
    width: auto;
  }
  .image-with-text .image-with-text__image--using-bg {
    background-image: none !important;
  }
  .image-with-text .image-with-text__image--using-bg img {
    visibility: visible;
  }
}
@media (min-width: 768px) {
  .image-with-text.image-with-text--cover .image-with-text__image__inner .video-container {
    height: 100%;
  }
  .image-with-text.image-with-text--cover .image-with-text__image__inner .video-container video {
    object-fit: cover;
    position: absolute;
  }
}
.image-with-text.image-with-text--cover .image-with-text__image__inner .rimage-outer-wrapper {
  background-size: cover;
}
@media (min-width: 768px) {
  .image-with-text.image-with-text--cover .image-with-text__image__inner .rimage-outer-wrapper {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
  }
}

.slideshow .rimage-outer-wrapper {
  opacity: 1;
}
.slideshow.fill-viewport .rimage-outer-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.slideshow.fill-viewport .slide > a {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.slideshow .slick-next, .slideshow .slick-prev {
  top: 50%;
  transform: translateY(-50%);
  height: 44px;
  width: 44px;
}
.slideshow .slick-next:hover, .slideshow .slick-next:focus, .slideshow .slick-prev:hover, .slideshow .slick-prev:focus {
  background: transparent !important;
}
.slideshow .slick-next svg, .slideshow .slick-prev svg {
  height: 100%;
  width: 100%;
  color: #ffffff;
}
.slideshow .slick-next svg:hover, .slideshow .slick-prev svg:hover {
  color: #ffffff;
}
.slideshow .slick-next {
  left: auto;
  right: 8px;
}
.slideshow .slick-prev {
  right: auto;
  left: 8px;
}
@media (min-width: 768px) {
  .slideshow[data-transition=slide] .slide {
    opacity: 1 !important;
  }
  .slideshow[data-transition=slide] .slide .rimage-outer-wrapper {
    will-change: transform, opacity;
    transform: translateX(10vw);
    opacity: 0;
  }
  .slideshow[data-transition=slide] .slide .feature-subheader, .slideshow[data-transition=slide] .slide #comments .comment .comment-date, #comments .comment .slideshow[data-transition=slide] .slide .comment-date, .slideshow[data-transition=slide] .slide .line-1, .slideshow[data-transition=slide] .slide .line-2, .slideshow[data-transition=slide] .slide .line-3 {
    opacity: 0;
    transition: opacity 0.7s;
  }
  .slideshow[data-transition=slide] .slide .feature-subheader, .slideshow[data-transition=slide] .slide #comments .comment .comment-date, #comments .comment .slideshow[data-transition=slide] .slide .comment-date {
    transition-delay: 0.2s;
  }
  .slideshow[data-transition=slide] .slide .line-1 {
    transition-delay: 0.4s;
  }
  .slideshow[data-transition=slide] .slide .line-2 {
    transition-delay: 0.6s;
  }
  .slideshow[data-transition=slide] .slide .line-3 {
    transition-delay: 0.8s;
  }
  .slideshow[data-transition=slide] .slide.slick-active .feature-subheader, .slideshow[data-transition=slide] .slide.slick-active #comments .comment .comment-date, #comments .comment .slideshow[data-transition=slide] .slide.slick-active .comment-date, .slideshow[data-transition=slide] .slide.slick-active .line-1, .slideshow[data-transition=slide] .slide.slick-active .line-2, .slideshow[data-transition=slide] .slide.slick-active .line-3 {
    transition-duration: 1.5s;
    opacity: 1;
  }
  .slideshow[data-transition=slide] .slide.slick-active .rimage-outer-wrapper {
    transition: transform 0.9s cubic-bezier(0, 0.14, 0.19, 1), opacity 0.9s;
    opacity: 1;
    transform: translateX(0);
  }
  .slideshow[data-transition=slide] .slide.slick--out .rimage-outer-wrapper {
    transition: transform 0.9s cubic-bezier(0, 0.14, 0.19, 1) 75ms, opacity 0.9s;
    transform: translateX(-4vw);
    opacity: 0;
  }
  .slideshow[data-transition=slide] .slide.slick--out .overlay-type {
    transition: opacity 0.3s, transform 0.5s;
    transform: translateX(-5vw);
    opacity: 0;
  }
  .slideshow[data-transition=slide] .slide.slick--leaving .rimage-outer-wrapper {
    transition: transform 0.9s cubic-bezier(0, 0.14, 0.19, 1) 75ms, opacity 0.9s;
    transform: translateX(-4vw);
    opacity: 0.8;
  }
  .slideshow[data-transition=slide] .slide.slick--leaving .overlay-type {
    transition: opacity 0.3s, transform 0.5s;
    transform: translateX(-5vw);
    opacity: 0;
  }
}
.slideshow[data-transition=zoom] .slide .rimage-outer-wrapper {
  will-change: transform;
  transform: scale(1.2);
  transition: transform 2s cubic-bezier(0, 0.14, 0.19, 1);
}
.slideshow[data-transition=zoom] .slide .overlay-type.position--hcenter.position--vcenter {
  transition: transform 0.5s cubic-bezier(0, 0.14, 0.19, 1) 0.5s;
  will-change: transform;
  transform: scale(1.2);
}
.slideshow[data-transition=zoom] .slide .feature-subheader, .slideshow[data-transition=zoom] .slide #comments .comment .comment-date, #comments .comment .slideshow[data-transition=zoom] .slide .comment-date, .slideshow[data-transition=zoom] .slide .line-1, .slideshow[data-transition=zoom] .slide .line-2, .slideshow[data-transition=zoom] .slide .line-3 {
  opacity: 0;
  transition: opacity 0.7s;
}
.slideshow[data-transition=zoom] .slide .feature-subheader, .slideshow[data-transition=zoom] .slide #comments .comment .comment-date, #comments .comment .slideshow[data-transition=zoom] .slide .comment-date {
  transition-delay: 0.2s;
}
.slideshow[data-transition=zoom] .slide .line-1 {
  transition-delay: 0.5s;
}
.slideshow[data-transition=zoom] .slide .line-2 {
  transition-delay: 0.8s;
}
.slideshow[data-transition=zoom] .slide .line-3 {
  transition-delay: 1.1s;
}
.slideshow[data-transition=zoom] .slide.slick-active .rimage-outer-wrapper {
  transform: scale(1);
}
.slideshow[data-transition=zoom] .slide.slick-active .overlay-type.position--hcenter.position--vcenter {
  transition-duration: 1.2s;
  transform: scale(1);
}
.slideshow[data-transition=zoom] .slide.slick-active .feature-subheader, .slideshow[data-transition=zoom] .slide.slick-active #comments .comment .comment-date, #comments .comment .slideshow[data-transition=zoom] .slide.slick-active .comment-date, .slideshow[data-transition=zoom] .slide.slick-active .line-1, .slideshow[data-transition=zoom] .slide.slick-active .line-2, .slideshow[data-transition=zoom] .slide.slick-active .line-3 {
  transition-duration: 1.5s;
  opacity: 1;
}
@media (max-width: 767px) {
  .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .overlay-type, .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .feature-subheader, .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide #comments .comment .comment-date, #comments .comment .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .comment-date, .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .line-1, .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .line-2, .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .line-3, .slideshow[data-transition=zoom].slick-slider-dots-light-xs .slide .rimage-outer-wrapper {
    transition: none !important;
    animation: none !important;
    transform: scale(1) !important;
  }
}
@media (max-width: 767px) {
  .slideshow .overlay.position--bottom {
    padding-bottom: 70px;
  }
  .slideshow .overlay.position-lower-left {
    padding-bottom: 65px;
  }
  .slideshow .slick-dots {
    padding: 0 24px;
  }
}
@media (min-width: 1441px) {
  .slideshow .overlay.position--bottom {
    padding-bottom: 110px;
  }
}

/* Map section */
@media (max-width: 767px) {
  .map-section .wide-container {
    padding: 0;
  }
}
@media (max-width: 767px) {
  .map-section {
    margin-bottom: 0;
    padding-bottom: 0;
    padding-top: 0;
  }
}

.map-section__wrapper {
  position: relative;
}
.map-section__wrapper .errors {
  padding: 20px;
}

.map-section__text {
  margin-left: 50%;
}

.map-section__map {
  position: absolute;
  left: 0;
  top: 0;
  width: 50%;
  height: 100%;
}

@media (max-width: 767px) {
  .map-section--display-map {
    padding-bottom: 0;
  }
}

.map-section__image {
  height: 100%;
  background-size: cover;
  background-position: center;
}
.map-section--display-map .map-section__image {
  display: none !important;
}

.map-section__placeholder {
  height: 100%;
  padding: 0;
}
.map-section--display-map .map-section__placeholder {
  display: none !important;
}

.map-section__map-container {
  height: 100%;
}

@media (max-width: 767px) {
  .map-section__wrapper {
    display: flex;
    flex-direction: column;
  }
  .map-section__text {
    margin-left: 0;
  }
  .map-section__map {
    position: static;
    width: auto;
    order: 2;
  }
  .map-section__placeholder,
  .map-section__map-container {
    height: 55vh;
  }
}
.section-newsletter {
  position: relative;
}
.section-newsletter .wide-container {
  overflow: hidden;
}
.section-newsletter .rimage-outer-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  object-fit: cover;
  object-position: center;
  z-index: -1;
}
.section-newsletter .contact-form {
  padding: 4vw 0;
  max-width: 700px;
  margin: 0 auto;
}
.section-newsletter .overlay-type {
  position: relative;
  padding-top: 0;
  padding-bottom: 0;
}
.section-newsletter .signup-form__response {
  line-height: 1.5em;
}

.section-rich-text .feature-header {
  letter-spacing: -0.01em;
}
.section-rich-text .feature-header.align-center {
  margin-left: auto;
  margin-right: auto;
}
.section-rich-text .feature-header.align-right {
  margin-left: auto;
}
.section-rich-text .feature-header.feature-header--large {
  line-height: 1.3em;
}
.section-rich-text .feature-header:not(.feature-header__no-gap) {
  margin-bottom: 0.5em;
}
.section-rich-text .section-rich-text__image {
  margin-bottom: 1.5em;
  margin-left: auto;
  margin-right: auto;
}
.section-rich-text .section-rich-text__image .rimage-outer-wrapper {
  max-width: 100% !important;
}
@media (min-width: 768px) {
  .section-rich-text .section-rich-text__image .rimage-outer-wrapper {
    max-width: none !important;
  }
}
.section-rich-text.align-left .section-rich-text__image {
  margin-left: 0;
}
.section-rich-text.align-right .section-rich-text__image {
  margin-right: 0;
}

.section-text-columns-with-images .text-column .text-column__image {
  margin-bottom: 1.5em;
  margin-left: auto;
  margin-right: auto;
}
.section-text-columns-with-images .text-column .text-column__image .section-background-video--inline video {
  position: static;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-landscape .section-background-video--inline .video-container__video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-square .section-background-video--inline .video-container__video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait .section-background-video--inline .video-container__video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_tall .section-background-video--inline .video-container__video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_taller .section-background-video--inline .video-container__video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-landscape .section-background-video--inline video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-square .section-background-video--inline video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait .section-background-video--inline video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_tall .section-background-video--inline video, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_taller .section-background-video--inline video {
  position: absolute;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-landscape .rimage__image, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-square .rimage__image, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait .rimage__image, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_tall .rimage__image, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_taller .rimage__image {
  object-fit: cover;
  object-position: center center;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-landscape .video-container--background, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-landscape .rimage-wrapper, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-landscape .placeholder-image {
  padding-top: 66.6% !important;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-square .video-container--background, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-square .rimage-wrapper, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-square .placeholder-image {
  padding-top: 100% !important;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait .video-container--background, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait .rimage-wrapper, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait .placeholder-image {
  padding-top: 150% !important;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_tall .video-container--background, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_tall .rimage-wrapper, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_tall .placeholder-image {
  padding-top: 125% !important;
}
.section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_taller .video-container--background, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_taller .rimage-wrapper, .section-text-columns-with-images .text-column .text-column__image.text-column__image--shape-portrait_taller .placeholder-image {
  padding-top: 177.8% !important;
}
.section-text-columns-with-images .text-column.align-left .text-column__image {
  margin-left: 0;
}
.section-text-columns-with-images .text-column.align-right .text-column__image {
  margin-right: 0;
}
.section-text-columns-with-images .text-column__button-row {
  margin-top: 1em;
}
.section-text-columns-with-images .text-column__text p:first-child {
  margin-top: 0.6em;
}
.section-text-columns-with-images .text-column__button-row--link {
  margin-top: 0.5em;
}
.text-column__title + .section-text-columns-with-images .text-column__button-row--link {
  margin-top: -0.1em;
}

@media (max-width: 767px) {
  .section-testimonials .section-heading {
    justify-content: center;
  }
  .section-testimonials .section-heading h2 {
    padding-right: 0;
  }
}
.section-testimonials .section-heading.centered {
  justify-content: center;
}
.section-testimonials .section-heading.centered h2 {
  padding-right: 0;
}
.section-testimonials .cc-testimonial {
  display: flex;
  margin-left: 0;
  margin-right: 0;
  padding-bottom: 50px;
}
.section-testimonials .cc-testimonial:first-child {
  padding-top: 0;
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial {
    margin-left: -25px;
    margin-right: -25px;
    padding-bottom: 100px;
  }
}
@media (min-width: 1200px) {
  .section-testimonials .cc-testimonial {
    margin-left: -35px;
    margin-right: -35px;
  }
}
@media (max-width: 767px) {
  .section-testimonials .cc-testimonial {
    flex-direction: column-reverse !important;
  }
}
.section-testimonials .cc-testimonial.cc-testimonial--align-left {
  flex-direction: row-reverse;
}
.section-testimonials .cc-testimonial.cc-testimonial--one-image {
  align-items: center;
}
.section-testimonials .cc-testimonial .cc-testimonial__content .rte a, .section-testimonials .cc-testimonial .cc-testimonial__content #comments a, .section-testimonials .cc-testimonial .cc-testimonial__content #template a, .section-testimonials .cc-testimonial .cc-testimonial__content #address_tables a {
  white-space: pre;
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial.cc-testimonial--two-images .cc-testimonial__image-with-caption--small {
    margin-bottom: 30px;
  }
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial.cc-testimonial--two-images .cc-testimonial__content {
    padding-top: 100px;
    padding-bottom: 100px;
  }
  .section-testimonials .cc-testimonial.cc-testimonial--two-images .cc-testimonial__content .line-2 {
    width: 70%;
  }
  .section-testimonials .cc-testimonial.cc-testimonial--two-images .cc-testimonial__image-with-caption--small {
    width: 70%;
    margin-top: 30px;
    margin-bottom: 0;
  }
  .section-testimonials .cc-testimonial.cc-testimonial--two-images.cc-testimonial--align-left {
    text-align: right;
  }
}
.section-testimonials .cc-testimonial .cc-testimonial__column {
  flex: 1 0;
  padding-left: 0;
  padding-right: 0;
}
@media (max-width: 767px) {
  .section-testimonials .cc-testimonial .cc-testimonial__column {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial .cc-testimonial__column {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 1200px) {
  .section-testimonials .cc-testimonial .cc-testimonial__column {
    padding-left: 35px;
    padding-right: 35px;
  }
}
.section-testimonials .cc-testimonial .overlay-type {
  position: static;
  padding: 0;
}
.section-testimonials .cc-testimonial .overlay-type .line-1 {
  margin-bottom: 0.5em;
  line-height: 1.25em;
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial .overlay-type .line-1 {
    font-size: 1.4rem;
  }
}
@media (min-width: 992px) {
  .section-testimonials .cc-testimonial .overlay-type .line-1 {
    font-size: 1.8rem;
  }
}
.section-testimonials .cc-testimonial .overlay-type .line-2 {
  font-size: 14px;
}
@media (max-width: 767px) {
  .section-testimonials .cc-testimonial .overlay-type .button-row {
    margin-top: 1em;
  }
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial:not(.cc-testimonial--no-images) .overlay-type {
    text-align: left;
  }
  .section-testimonials .cc-testimonial:not(.cc-testimonial--no-images) .overlay-type .line-1, .section-testimonials .cc-testimonial:not(.cc-testimonial--no-images) .overlay-type .line-2, .section-testimonials .cc-testimonial:not(.cc-testimonial--no-images) .overlay-type .line-3 {
    text-align: left;
    margin-left: 0;
    margin-right: 0;
  }
}
.section-testimonials .cc-testimonial .cc-testimonial__image-with-caption {
  display: inline-block;
  width: 100%;
  margin: 1em 0 0 0;
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial .cc-testimonial__image-with-caption {
    margin: 0;
  }
}
.section-testimonials .cc-testimonial .cc-testimonial__image-with-caption .cc-testimonial__image-wrapper {
  overflow: hidden;
}
.section-testimonials .cc-testimonial .cc-testimonial__image-with-caption .cc-testimonial__image-wrapper > div {
  position: relative;
  top: 20px;
}
@media (max-width: 767px) {
  .section-testimonials .cc-testimonial .cc-testimonial__image-with-caption .cc-testimonial__image-wrapper > div {
    transform: translateY(0) !important;
  }
}
.section-testimonials .cc-testimonial .cc-testimonial__image-with-caption .rimage-outer-wrapper {
  max-width: none !important;
  width: 100%;
}
.section-testimonials .cc-testimonial .cc-testimonial__image-with-caption .cc-testimonial__image-with-caption__caption {
  text-align: center;
  display: block;
  margin-top: 1em;
  font-weight: 500;
}
.section-testimonials .cc-testimonial .cc-testimonial__star-rating {
  margin: 0 -0.1em 0.9em;
}
@media (min-width: 768px) {
  .section-testimonials .cc-testimonial .cc-testimonial__star-rating {
    margin-bottom: 1.3em;
  }
}
.section-testimonials .cc-testimonial .cc-testimonial__star-rating .cc-testimonial__star {
  margin: 0 0.1em;
}
.section-testimonials .cc-testimonial .cc-testimonial__star-rating .cc-testimonial__star svg {
  fill: rgb(128, 116, 151);
}
.section-testimonials .section-testimonials--no-images {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
  justify-content: center;
}
@media (min-width: 768px) {
  .section-testimonials .section-testimonials--no-images {
    max-width: 1210px;
  }
}
@media (min-width: 1200px) {
  .section-testimonials .section-testimonials--no-images {
    max-width: 1250px;
  }
}
.section-testimonials .section-testimonials--no-images .cc-testimonial {
  padding-bottom: 50px;
  padding-left: 0;
  padding-right: 0;
  margin: 0;
  flex: 1 1 300px;
  max-width: 500px;
}
@media (min-width: 992px) {
  .section-testimonials .section-testimonials--no-images .cc-testimonial {
    flex-basis: 400px;
  }
}
.section-testimonials .section-testimonials--no-images .cc-testimonial .cc-testimonial__column {
  padding: 0;
}
@media (min-width: 768px) {
  .section-testimonials .section-testimonials--no-images .cc-testimonial {
    padding-bottom: 50px;
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 1200px) {
  .section-testimonials .section-testimonials--no-images .cc-testimonial {
    padding-bottom: 90px;
    padding-left: 45px;
    padding-right: 45px;
  }
}

.section-accordion:not(.has-alt-bg):not([data-found-count="0"]) + .section-accordion:not(.has-alt-bg):not([data-found-count="0"]),
.section-accordion.has-alt-bg:not([data-found-count="0"]) + .section-accordion.has-alt-bg:not([data-found-count="0"]),
.faq-search-active .section-accordion:not(.has-alt-bg):not(.faq-first-answer) {
  margin-top: -50px;
}
@media (min-width: 768px) {
  .section-accordion:not(.has-alt-bg):not([data-found-count="0"]) + .section-accordion:not(.has-alt-bg):not([data-found-count="0"]),
  .section-accordion.has-alt-bg:not([data-found-count="0"]) + .section-accordion.has-alt-bg:not([data-found-count="0"]),
  .faq-search-active .section-accordion:not(.has-alt-bg):not(.faq-first-answer) {
    margin-top: -100px;
  }
}
.section-accordion:not(.has-alt-bg):not([data-found-count="0"]) + .section-accordion:not(.has-alt-bg):not([data-found-count="0"]) .section-spacing,
.section-accordion.has-alt-bg:not([data-found-count="0"]) + .section-accordion.has-alt-bg:not([data-found-count="0"]) .section-spacing,
.faq-search-active .section-accordion:not(.has-alt-bg):not(.faq-first-answer) .section-spacing {
  padding-top: 0;
}
.section-accordion:not(.has-alt-bg):not([data-found-count="0"]) + .section-accordion:not(.has-alt-bg):not([data-found-count="0"]) .accordion-container:not(.no-title),
.section-accordion.has-alt-bg:not([data-found-count="0"]) + .section-accordion.has-alt-bg:not([data-found-count="0"]) .accordion-container:not(.no-title),
.faq-search-active .section-accordion:not(.has-alt-bg):not(.faq-first-answer) .accordion-container:not(.no-title) {
  padding-top: 40px;
}
@media (min-width: 768px) {
  .section-accordion:not(.has-alt-bg):not([data-found-count="0"]) + .section-accordion:not(.has-alt-bg):not([data-found-count="0"]) .accordion-container:not(.no-title),
  .section-accordion.has-alt-bg:not([data-found-count="0"]) + .section-accordion.has-alt-bg:not([data-found-count="0"]) .accordion-container:not(.no-title),
  .faq-search-active .section-accordion:not(.has-alt-bg):not(.faq-first-answer) .accordion-container:not(.no-title) {
    padding-top: 70px;
  }
}

.section-accordion .section-heading {
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .section-accordion .section-heading {
    margin-bottom: 20px;
  }
}
.section-accordion.has-alt-bg .cc-accordion-item {
  border-color: #423f3f;
}
.section-accordion.has-alt-bg .cc-icon {
  fill: #423f3f;
}

.marquee {
  overflow: hidden;
  white-space: nowrap;
  position: relative;
  display: flex;
}
.marquee .image-overlay, .marquee .rimage-outer-wrapper {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 0;
  color: currentColor;
}

.marquee-text {
  display: inline-block;
  padding-right: 0.2em;
  will-change: transform;
  white-space: nowrap;
}

.marquee--animate .marquee-text {
  animation: marquee var(--duration) linear infinite;
}
@media (prefers-reduced-motion: reduce) {
  .marquee--animate .marquee-text {
    animation: marquee calc(var(--duration) * 2) linear infinite;
  }
}

.marquee--right .marquee-text {
  animation-direction: reverse;
}

.marquee--spaced .marquee-text {
  padding-right: 1em;
}

.marquee--heading-font .marquee-text {
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
}

.marquee--overlay-color .marquee-text {
  color: #ffffff;
}

.marquee--stencil .marquee-text, .marquee--stencil-this {
  --stencil-shadow-offset-one-axis: 0.012em;
  --stencil-shadow-offset-two-axes: 0.008em;
  color: transparent;
  text-shadow: 0 0 rgb(var(--bg-color)), calc(-1 * var(--stencil-shadow-offset-one-axis)) 0 rgb(var(--text-color)), var(--stencil-shadow-offset-one-axis) 0 rgb(var(--text-color)), 0 calc(-1 * var(--stencil-shadow-offset-one-axis)) rgb(var(--text-color)), 0 var(--stencil-shadow-offset-one-axis) rgb(var(--text-color)), calc(-1 * var(--stencil-shadow-offset-two-axes)) calc(-1 * var(--stencil-shadow-offset-two-axes)) rgb(var(--text-color)), calc(-1 * var(--stencil-shadow-offset-two-axes)) var(--stencil-shadow-offset-two-axes) rgb(var(--text-color)), var(--stencil-shadow-offset-two-axes) calc(-1 * var(--stencil-shadow-offset-two-axes)) rgb(var(--text-color)), var(--stencil-shadow-offset-two-axes) var(--stencil-shadow-offset-two-axes) rgb(var(--text-color));
}

@keyframes marquee {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
.sharing {
  margin: 15px 0;
  overflow: hidden;
}
.sharing .sharing-label {
  display: none;
}
.sharing ul {
  margin: 0 -1em;
}
.sharing ul li {
  margin: 0 1em !important;
}
.sharing ul li svg {
  width: 17px;
  height: 17px;
}
.sharing ul li svg, .sharing ul li svg g {
  fill: #6f6f6f !important;
}

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

.social-icons .div {
  vertical-align: middle;
  margin: 0 2px;
}
.social-icons a {
  margin: 0 0.5em;
  font-size: 18px;
  vertical-align: middle;
  display: inline-block;
  border-radius: 100px;
  opacity: 0.75;
  -webkit-transition: color 150ms;
  -ms-transition: color 150ms;
  -moz-transition: color 150ms;
  -o-transition: color 150ms;
  transition: color 150ms;
}
.social-icons a:hover {
  opacity: 1;
}
.social-icons a span {
  display: none;
}
.social-icons a svg {
  width: 20px;
  height: 20px;
}
.social-icons a svg, .social-icons a svg g {
  fill: #000000;
}
.social-icons.size-large a {
  font-size: 22px;
  line-height: 1em;
}

.social-links .social-links__list {
  padding: 0;
}
.social-links li {
  list-style: none;
  display: inline-block;
  margin-left: 1em;
  opacity: 0.75;
}
.social-links li:first-child {
  margin-left: 0;
}
.social-links li:hover {
  opacity: 1;
}
.social-links svg {
  fill: #000000;
  width: 20px;
  height: 20px;
}
.social-links svg g {
  fill: #000000;
}
.social-links img {
  height: 20px;
  width: auto;
  vertical-align: middle;
}

.product-list {
  zoom: 1;
  text-align: center;
}
.product-list::before {
  content: "";
  display: table;
}
.product-list::after {
  content: "";
  display: table;
  clear: both;
}
/* The grid's row gap. This margin sits ABOVE each block, so what it actually
   measures is the distance from the previous row's price to this row's image —
   the columns are spaced by the 20px gutter instead, and a block's own title
   is 12px below its image (see .product-block .title). Those two numbers are
   what the setting's range is bounded against: below ~16px the title stops
   reading as belonging to the image above it.

   Note this also spaces the FIRST row from whatever precedes the grid, since
   every block carries the margin. That is the existing behaviour, kept. */
.product-list .product-block, .product-list .collection-block {
  margin-top: 20px;
  max-width: 100%;
  vertical-align: top;
}
@media (min-width: 768px) {
  .product-list .product-block, .product-list .collection-block {
    margin-top: 24px;
  }
}
@media (max-width: 767px) {
  .product-list.grid--uniform .product-block, .product-list.grid--uniform .collection-block {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 767px) {
  .product-list .swiper-button-next, .product-list .swiper-button-prev {
    display: none;
  }
}

.product-list .product-block:not(.collection-block) .rimage__image, .product-list .collection-block:not(.collection-block) .rimage__image {
  display: inline-block;
}



.product-list .collection-block .image {
  height: 0;
  padding-top: 150%;
  position: relative;
}
.product-list .collection-block .image .image-inner,
.product-list .collection-block .image .placeholder-image {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
}
.product-list .collection-block .image .image__first,
.product-list .collection-block .image .rimage-outer-wrapper,
.product-list .collection-block .image .rimage-wrapper,
.product-list .collection-block .image .rimage__image {
  display: inline-block;
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.product-list .collection-block .image .rimage__image {
  object-fit: cover;
  object-position: center center;
}
.product-list .collection-block .image .image__first {
  min-height: 0 !important;
}
.product-list .collection-block .image .rimage-outer-wrapper {
  max-width: none !important;
}
.product-list .collection-block .image .rimage-wrapper,
.product-list .collection-block .image .placeholder-image {
  padding: 0 !important;
}


.product-list-small-title {
  margin-bottom: -20px;
}

.thumbnail__badge {
  width: 20px;
  height: 20px;
  position: absolute;
  right: 4px;
  top: 4px;
  pointer-events: none;
}
.thumbnail__badge .icon {
  fill: #ffffff;
  width: 100%;
  height: 100%;
  vertical-align: baseline;
}
.thumbnail__badge .icon .icon-3d-badge-full-color-outline,
.thumbnail__badge .icon .icon-video-badge-full-color-outline {
  stroke: rgba(0, 0, 0, 0.05);
}
.thumbnail__badge .icon .icon-3d-badge-full-color-element,
.thumbnail__badge .icon .icon-video-badge-full-color-element {
  fill: #000000;
}
@media only screen and (min-width: 750px) {
  .thumbnail__badge .product-single__thumbnail-badge {
    width: 26px;
    height: 26px;
  }
}

.plyr.plyr--full-ui.plyr--video {
  color: #000000;
  background-color: transparent;
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
  /* stylelint-disable-next-line */
}
.plyr.plyr--full-ui.plyr--video .plyr__poster,
.plyr.plyr--full-ui.plyr--video .plyr__video-wrapper {
  background-color: transparent;
  width: 100%;
  height: 100%;
  text-align: center;
}
.plyr.plyr--full-ui.plyr--video:fullscreen video {
  height: 100%;
  width: 100%;
}
.plyr.plyr--full-ui.plyr--video:fullscreen .plyr__video-wrapper .plyr.plyr--full-ui.plyr--video:fullscreen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video:-webkit-full-screen .plyr__video-wrapper, .plyr.plyr--full-ui.plyr--video:-webkit-full-screen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video:-moz-full-screen .plyr__video-wrapper, .plyr.plyr--full-ui.plyr--video:-moz-full-screen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video:-ms-fullscreen .plyr__video-wrapper, .plyr.plyr--full-ui.plyr--video:-ms-fullscreen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video .plyr--fullscreen-fallback .plyr__video-wrapper,
.plyr.plyr--full-ui.plyr--video .plyr--fullscreen-fallback .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid {
  background-color: #ffffff;
  border-color: rgba(0, 0, 0, 0.05);
}
.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid.plyr__tab-focus, .plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid:hover {
  color: rgba(0, 0, 0, 0.55);
}
.plyr.plyr--full-ui.plyr--video .plyr__controls {
  background-color: #ffffff;
  border-color: rgba(0, 0, 0, 0.05);
}
.plyr.plyr--full-ui.plyr--video .plyr__controls .plyr__control:hover,
.plyr.plyr--full-ui.plyr--video .plyr__controls .plyr__control.focus-visible,
.plyr.plyr--full-ui.plyr--video .plyr__controls .plyr__controls__item:hover,
.plyr.plyr--full-ui.plyr--video .plyr__controls .plyr__controls__item.focus-visible {
  color: #000000;
}
.plyr.plyr--full-ui.plyr--video .plyr__controls .plyr__control:focus {
  z-index: 1;
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:focus {
  outline: none;
  border: 1px solid #000000;
  border-radius: 0;
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-thumb {
  box-shadow: 2px 0 0 0 #ffffff;
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-thumb {
  box-shadow: 2px 0 0 0 #ffffff;
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-thumb {
  box-shadow: 2px 0 0 0 #ffffff;
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-track {
  background-color: rgba(0, 0, 0, 0.6);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-fill-upper {
  background-color: rgba(0, 0, 0, 0.6);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-moz-range-track {
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-ms-track {
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-ms-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress .plyr__tooltip {
  background-color: #000000;
  color: #ffffff;
}
.plyr.plyr--full-ui.plyr--video .plyr__progress .plyr__tooltip::before {
  border-top-color: #000000;
}
.plyr.plyr--full-ui.plyr--video.plyr--loading .plyr__progress__buffer {
  background-image: linear-gradient(-45deg, rgba(0, 0, 0, 0.6) 25%, transparent 25%, transparent 50%, rgba(0, 0, 0, 0.6) 50%, rgba(0, 0, 0, 0.6) 75%, transparent 75%, transparent);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range] {
  color: #ffffff;
  position: relative;
  top: -5px;
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:focus {
  outline: none;
  border: 1px solid #fff;
  border-radius: 0;
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-moz-range-thumb {
  box-shadow: 2px 0 0 0 #000000;
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-ms-thumb {
  box-shadow: 2px 0 0 0 #000000;
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-webkit-slider-thumb {
  box-shadow: 2px 0 0 0 #000000;
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-moz-range-track, .plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-ms-fill-upper {
  background-color: rgba(0, 0, 0, 0.6);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-moz-range-track {
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-ms-track {
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-ms-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px rgba(0, 0, 0, 0.25);
}

.cc-announcement {
  background-color: #ffffff;
  color: #060108;
  position: relative;
  text-align: center;
  transition: max-height 1s, opacity 0.5s, visibility 0.5s;
}
#site-control.fixed .cc-announcement {
  overflow: hidden;
  max-height: 200px;
}
#site-control.announcement-hidden .cc-announcement {
  max-height: 0;
  transition: max-height 0.5s;
}
.cc-announcement .cc-announcement__inner {
  padding: 0.7em;
}
@media (max-width: 767px) {
  .cc-announcement .cc-announcement__inner {
    line-height: 1.2em;
    max-height: 4.7em;
    overflow: auto;
  }
}
.cc-announcement a {
  display: block;
  color: inherit;
  text-decoration: none;
  transition: background 100ms;
}
.cc-announcement a:hover {
  color: inherit;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.1);
}

.product-block, .collection-block {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition: opacity 0.8s, transform 0.5s;
}
.product-block.pre-trans, .pre-trans.collection-block {
  opacity: 0;
  transform: translate3d(0, 30px, 0);
}
.product-block .image, .collection-block .image {
  position: relative;
}
.product-block .image .image-inner, .collection-block .image .image-inner {
  display: block;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .product-block .image .image-inner, .collection-block .image .image-inner {
    outline: none;
  }
}
.product-block .image .image-inner::after, .collection-block .image .image-inner::after {
  content: " ";
  position: absolute;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: rgba(11, 11, 11, 0.27);
  opacity: 0;
  box-shadow: inset 0 0 0px rgba(11, 11, 11, 0.27);
  transition: opacity 0.4s, box-shadow 0.5s;
}
@media (min-width: 1025px) {
  .product-block.product-block--marquee-on-hover:hover .product-label.product-label--marquee, .product-block--marquee-on-hover.collection-block:hover .product-label.product-label--marquee {
    transition: left 30s linear, opacity 250ms;
    left: -500%;
  }
}
.product-block.product-block--quickbuy .cc-quick-buy-btn-container, .product-block--quickbuy.collection-block .cc-quick-buy-btn-container {
  position: relative;
}
.product-block.product-block--quickbuy .cc-quick-buy-btn, .product-block--quickbuy.collection-block .cc-quick-buy-btn {
  position: absolute;
  top: 0;
  left: 1px;
  right: 1px;
  z-index: 2;
  opacity: 0;
  transform: translateY(-5px);
  visibility: hidden;
  will-change: opacity, visibility, transform;
  transition: opacity 0.4s, visibility 0.4s, transform 0.4s, color 0.3s, background-color 0.3s, border-color 0.3s;
  margin-top: 10px;
  background-color: transparent;
  border-color: rgba(0,0,0,0);
  color: rgba(0,0,0,0);
}
html.touch .product-block.product-block--quickbuy .cc-quick-buy-btn, html.touch .product-block--quickbuy.collection-block .cc-quick-buy-btn {
  display: none;
}
@media (max-width: 767px) {
  .product-block.product-block--quickbuy .cc-quick-buy-btn, .product-block--quickbuy.collection-block .cc-quick-buy-btn {
    display: none;
  }
}
@media (min-width: 768px) {
  .product-block.product-block--quickbuy .cc-quick-buy-btn, .product-block--quickbuy.collection-block .cc-quick-buy-btn {
    padding-top: 13px;
    padding-bottom: 13px;
  }
  .product-block.product-block--quickbuy .cc-quick-buy-btn:hover, .product-block--quickbuy.collection-block .cc-quick-buy-btn:hover {
    border-color: rgba(0,0,0,0);
    background-color: rgba(0,0,0,0);
    color: rgba(0,0,0,0);
  }
}
.product-block.product-block--quickbuy.product-block--has-swatches .cc-quick-buy-btn, .product-block--quickbuy.product-block--has-swatches.collection-block .cc-quick-buy-btn {
  margin-top: 12px;
}
.use-alt-bg .product-block.product-block--quickbuy .cc-quick-buy-btn, .use-alt-bg .product-block--quickbuy.collection-block .cc-quick-buy-btn, .product-recommendations-container .product-block.product-block--quickbuy .cc-quick-buy-btn, .product-recommendations-container .product-block--quickbuy.collection-block .cc-quick-buy-btn {
  border-color: #423f3f;
  color: #423f3f;
}
.use-alt-bg .product-block.product-block--quickbuy .cc-quick-buy-btn:hover, .use-alt-bg .product-block--quickbuy.collection-block .cc-quick-buy-btn:hover, .product-recommendations-container .product-block.product-block--quickbuy .cc-quick-buy-btn:hover, .product-recommendations-container .product-block--quickbuy.collection-block .cc-quick-buy-btn:hover {
  background-color: #423f3f !important;
  color: #ffffff;
}
@media (min-width: 768px) {
  html:not(.touch) .product-block.product-block--quickbuy:hover .cc-quick-buy-btn, html:not(.touch) .product-block--quickbuy.collection-block:hover .cc-quick-buy-btn {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
  html:not(.touch) .product-block.product-block--quickbuy:hover:not(.hover-info) .caption, html:not(.touch) .product-block--quickbuy.collection-block:hover:not(.hover-info) .caption, html:not(.touch) .product-block.product-block--quickbuy:hover:not(.hover-info) .themed-product-reviews, html:not(.touch) .product-block--quickbuy.collection-block:hover:not(.hover-info) .themed-product-reviews {
    opacity: 0;
    visibility: hidden;
  }
}
@media (min-width: 768px) {
  .product-block.product-block--video .product-block__inner:hover .product-label:not(.product-label--marquee), .product-block--video.collection-block .product-block__inner:hover .product-label:not(.product-label--marquee) {
    opacity: 0;
  }
}
.product-block .section-background-video .video-container--background video, .collection-block .section-background-video .video-container--background video {
  position: static;
  width: calc(100% + 1px);
  height: calc(100% + 1px);
}
.product-block .product-label:not(.product-label--marquee), .collection-block .product-label:not(.product-label--marquee) {
  position: absolute;
  top: 10px;
  left: 10px;
  -webkit-transition: opacity 250ms;
  -ms-transition: opacity 250ms;
  -moz-transition: opacity 250ms;
  -o-transition: opacity 250ms;
  transition: opacity 250ms;
}
@media (min-width: 1200px) {
  .product-block .product-label:not(.product-label--marquee), .collection-block .product-label:not(.product-label--marquee) {
    top: 20px;
    left: 20px;
  }
}
.product-block.layout-right .product-label, .layout-right.collection-block .product-label {
  left: auto;
  right: 30px;
}
.product-block .caption, .collection-block .caption {
  text-align: left;
}
.product-block .caption, .collection-block .caption, .product-block .themed-product-reviews, .collection-block .themed-product-reviews {
  transition: color 150ms, background-color 150ms, opacity 0.4s, visibility 0.4s;
}
.product-block .title, .collection-block .title, .product-block .vendor, .collection-block .vendor, .product-block .price, .collection-block .price {
  line-height: 1.3em;
}
.product-block .title, .collection-block .title {
  display: block;
  margin: 0;
  padding: 12px 0 0;
}
.product-block .vendor, .collection-block .vendor {
  display: block;
  margin: 0;
  padding: 5px 0;
}
.product-block .price, .collection-block .price {
  display: block;
  text-align: left;
  padding: 6px 0 0;
}
.product-block .price.collection-count, .collection-block .price.collection-count {
  text-align: center;
}
.product-block .themed-product-reviews, .collection-block .themed-product-reviews {
  text-align: left;
  display: block;
  margin-top: 0.2em;
}
.product-block .themed-product-reviews [data-rating="0.0"], .collection-block .themed-product-reviews [data-rating="0.0"] {
  display: none;
}
.product-block .unit-price, .collection-block .unit-price {
  margin-top: 5px;
}
.product-block[data-product-images] .image__first, [data-product-images].collection-block .image__first {
  position: relative;
  z-index: 1;
}
.product-block[data-product-images] .image__first.-out, [data-product-images].collection-block .image__first.-out {
  visibility: hidden;
  opacity: 0;
  transition-delay: 0.3s;
}
.product-block .image__first, .collection-block .image__first, .product-block .image__second, .collection-block .image__second {
  transition: opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.4s, visibility 0.5s;
}
.product-block .product-marquee, .collection-block .product-marquee {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2em;
  overflow: hidden;
  z-index: 2;
}
.product-block .image__second, .collection-block .image__second {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  width: calc(100% + 0.5px);
  height: calc(100% + 0.5px);
  opacity: 0;
  overflow: hidden;
  pointer-events: none;
  display: none;
}
@media (min-width: 768px) {
  .product-block .image__second, .collection-block .image__second {
    display: block;
  }
}
.product-block .image__second .rimage-outer-wrapper, .collection-block .image__second .rimage-outer-wrapper,
.product-block .image__second .rimage-wrapper,
.collection-block .image__second .rimage-wrapper {
  height: 100%;
  width: 100%;
  max-width: none !important;
}
.product-block .image__second .rimage-wrapper, .collection-block .image__second .rimage-wrapper {
  padding: 0 !important;
}
.product-block .rimage__image, .collection-block .rimage__image {
  object-fit: contain;
  object-position: center center;
}
@media (min-width: 1025px) {
  .product-block.hover-info .price, .hover-info.collection-block .price, .product-block.hover-info .caption, .hover-info.collection-block .caption {
    text-align: center;
  }
  .product-block.hover-info .caption.upper, .hover-info.collection-block .caption.upper {
    position: absolute;
    z-index: 5;
    left: 10px;
    right: 10px;
    opacity: 0;
    transition: opacity 0.4s, transform 0.3s;
    top: 50%;
    transform: translateY(-50%) scale(1.07);
    color: #ffffff;
    font-size: 1.25rem;
    max-width: 80%;
    margin: 0 auto;
  }
  .product-block.hover-info .caption.upper .title, .hover-info.collection-block .caption.upper .title, .product-block.hover-info .caption.upper .price, .hover-info.collection-block .caption.upper .price, .product-block.hover-info .caption.upper .vendor, .hover-info.collection-block .caption.upper .vendor {
    color: inherit;
  }
  .product-block.hover-info .caption.upper .title, .hover-info.collection-block .caption.upper .title {
    line-height: 1.25em;
    margin-bottom: 0.2em;
    max-height: 12em;
    overflow: hidden;
  }
  .product-block.hover-info .caption.upper .vendor, .hover-info.collection-block .caption.upper .vendor {
    opacity: 1;
  }
  .product-block.hover-info .caption.upper .price, .hover-info.collection-block .caption.upper .price {
    margin-top: 1em;
  }
  .product-block.hover-info .caption.upper .collection-count, .hover-info.collection-block .caption.upper .collection-count {
    margin-top: 0.5em;
  }
  .product-block.hover-info .themed-product-reviews, .hover-info.collection-block .themed-product-reviews {
    position: absolute;
    bottom: 5px;
    right: 0;
    left: 0;
    text-align: center;
    opacity: 0;
    transition: opacity 0.4s, transform 0.3s;
    transform: translateY(20px);
    color: #ffffff;
    z-index: 5;
  }
  .product-block .caption, .collection-block .caption {
    text-align: left;
  }
  .product-block .caption.upper, .collection-block .caption.upper {
    display: inline-block;
    width: 100%;
  }
  .user-is-tabbing .product-block .caption.upper:focus, .user-is-tabbing .collection-block .caption.upper:focus {
    box-shadow: 0 0 0 1px #1f61cc inset;
    outline: none;
  }
  .product-block:hover.hover-info .caption.upper, .collection-block:hover.hover-info .caption.upper, .user-is-tabbing .product-block.hover-info .caption.upper, .user-is-tabbing .hover-info.collection-block .caption.upper {
    opacity: 1;
    transform: translateY(-50%) scale(1);
  }
  .product-block:hover.hover-info .image .image-inner:after, .collection-block:hover.hover-info .image .image-inner:after, .user-is-tabbing .product-block.hover-info .image .image-inner:after, .user-is-tabbing .hover-info.collection-block .image .image-inner:after {
    opacity: 0.9;
  }
  .product-block:hover.hover-info .image-inner:after, .collection-block:hover.hover-info .image-inner:after, .user-is-tabbing .product-block.hover-info .image-inner:after, .user-is-tabbing .hover-info.collection-block .image-inner:after {
    box-shadow: inset 0 0 150px rgba(0, 0, 0, 0.5);
  }
  .product-block:hover.hover-info .themed-product-reviews, .collection-block:hover.hover-info .themed-product-reviews, .user-is-tabbing .product-block.hover-info .themed-product-reviews, .user-is-tabbing .hover-info.collection-block .themed-product-reviews {
    opacity: 1;
    transform: translateY(0);
  }
  .product-block:hover.hover-image .image--hover-second .image__first, .collection-block:hover.hover-image .image--hover-second .image__first, .user-is-tabbing .product-block.hover-image .image--hover-second .image__first, .user-is-tabbing .hover-image.collection-block .image--hover-second .image__first {
    transform: scale(1.02);
    opacity: 0;
    transition-delay: 0.1s;
  }
  .product-block:hover.hover-image .image--hover-second .image__second, .collection-block:hover.hover-image .image--hover-second .image__second, .user-is-tabbing .product-block.hover-image .image--hover-second .image__second, .user-is-tabbing .hover-image.collection-block .image--hover-second .image__second {
    opacity: 1;
    transform: scale(1.04);
  }
}
.product-block .placeholder-image, .collection-block .placeholder-image {
  width: 800px;
  max-width: 100%;
}
@media screen and (max-width: 1024px) {
  .product-block.hover-info .upper .title, .hover-info.collection-block .upper .title, .product-block.hover-info .price, .hover-info.collection-block .price {
    display: block;
    position: static;
    opacity: 1;
    padding: 0;
  }
}
@media screen and (max-width: 1024px) and (max-width: 767px) {
  .product-block.hover-info .vendor, .hover-info.collection-block .vendor {
    padding-top: 0;
  }
}
@media screen and (max-width: 1024px) {
  .product-block.hover-info .upper .title, .hover-info.collection-block .upper .title, .product-block.hover-info:hover .upper .title {
    margin: 10px 0 6px;
  }
}
@media screen and (max-width: 1024px) and (min-width: 768px) {
  .product-block.hover-info .upper .title .title, .hover-info.collection-block .upper .title .title, .product-block.hover-info:hover .upper .title .title {
    margin: 0 0 10px;
  }
}
@media screen and (max-width: 1024px) {
  .product-block.hover-info .price, .hover-info.collection-block .price, .product-block.hover-info:hover .price {
    margin: 0 0 10px;
  }
}
.product-block .product-block--slide, .collection-block .product-block--slide {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  object-position: center center;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s, visibility 0.5s;
  transition-delay: 0.3s;
}
.product-block .product-block--slide.-in, .collection-block .product-block--slide.-in {
  opacity: 1;
  visibility: visible;
  transition-delay: 0s;
  z-index: 1;
}
.product-block.all-images .image, .all-images.collection-block .image {
  overflow: hidden;
}
.product-block.all-images .loading-bar, .all-images.collection-block .loading-bar {
  position: absolute;
  left: 0;
  bottom: 0;
  height: 2px;
  z-index: 1;
  width: 0;
  background-color: #000000;
  opacity: 1;
  will-change: width;
  transition: width 1s linear, opacity 0.3s;
}
.product-block.all-images .loading-bar.-in, .all-images.collection-block .loading-bar.-in {
  width: 100%;
  opacity: 1;
}

.product-block__inner {
  position: relative;
  transform: translateZ(0);
}

.collection-block .caption.upper {
  text-align: center;
}
@media (max-width: 1024px) {
  .collection-block .caption.upper .title {
    font-size: 14px;
  }
}
.collection-block .caption.upper .button {
  display: none;
}
.collection-block .product-block__inner {
  overflow: hidden;
}
@media (min-width: 1025px) {
  .collection-block.hover-info .image {
    will-change: transform;
    transition: transform 0.6s ease-out;
  }
  .collection-block.hover-info .image-inner::after {
    opacity: 1;
    box-shadow: none;
  }
  .collection-block.hover-info .caption.upper {
    opacity: 1;
    transform: translate3d(0, -50%, 0);
    transition: transform 0.5s;
    will-change: transform;
  }
  .collection-block.hover-info .caption.upper .title {
    word-break: break-word;
    font-weight: 400;
    font-style: normal;
    font-family: Helvetica, Arial, sans-serif;
  }
  .collection-block.hover-info .caption.upper .collection-count {
    transition: color 0.4s;
    color: transparent;
    top: -10px;
    position: relative;
  }
  .collection-block.hover-info .caption.upper .button {
    display: block;
    position: absolute;
    bottom: 0;
    left: 50%;
    font-size: 16px;
    transform: translate3d(-50%, 110%, 0);
    opacity: 0;
    transition: opacity 0.6s;
    border-color: transparent;
    pointer-events: none;
  }
  .collection-block.hover-info:hover .image, .user-is-tabbing .collection-block.hover-info .image {
    transform: scale(1.07);
  }
  .collection-block.hover-info:hover .image-inner::after, .user-is-tabbing .collection-block.hover-info .image-inner::after {
    opacity: 0.3 !important;
  }
  .collection-block.hover-info:hover .caption.upper, .user-is-tabbing .collection-block.hover-info .caption.upper {
    transform: translate3d(0, -100%, 0);
  }
  .collection-block.hover-info:hover .caption.upper .collection-count, .user-is-tabbing .collection-block.hover-info .caption.upper .collection-count {
    color: #ffffff;
  }
  .collection-block.hover-info:hover .caption.upper .button, .user-is-tabbing .collection-block.hover-info .caption.upper .button {
    opacity: 1;
  }
}

.localization {
  text-align: center;
  margin-top: 50px;
}
.localization .selectors-form__item {
  display: inline-block;
  margin: 20px 10px;
}

.disclosure {
  position: relative;
}
.disclosure .disclosure__toggle {
  padding: 0 45px 0 0;
  position: relative;
  letter-spacing: normal;
  background: transparent;
  border: none;
  color: currentColor;
}
.disclosure .disclosure__toggle:hover {
  background: transparent !important;
  background-color: transparent !important;
  color: currentColor !important;
}
.disclosure .disclosure__toggle:hover svg {
  fill: currentColor !important;
}
.disclosure .disclosure__toggle-arrow {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
  margin-top: 3px;
}
.disclosure .disclosure__toggle-arrow svg {
  fill: currentColor;
  width: 17px;
  height: 17px;
}
.disclosure .disclosure-list {
  background-color: #ffffff;
  color: #000000;
  bottom: 140%;
  padding: 11px 0px;
  position: absolute;
  transition: opacity 0.2s ease, visibility 0.2s ease;
  opacity: 0;
  visibility: hidden;
  will-change: opacity, visibility, transform;
  min-height: 60px;
  max-height: 50vh;
  overflow-y: auto;
  margin: 0;
  z-index: 5;
  box-shadow: 0px 0px 4px 2px rgba(180, 180, 180, 0.5);
  border: none;
}
@media (max-width: 767px) {
  .disclosure .disclosure-list {
    max-width: calc(100vw - 80px);
  }
}
.disclosure .disclosure-list:focus {
  outline: none;
}
.disclosure .disclosure-list.disclosure-list--visible {
  opacity: 1;
  visibility: visible;
}
.disclosure .disclosure-list .disclosure-list__item {
  border-bottom: 1px solid transparent;
  white-space: nowrap;
  padding: 7px 18px;
  text-align: left;
}
.disclosure .disclosure-list .disclosure-list__item a {
  font-weight: normal;
  font-family: Helvetica, Arial, sans-serif;
}
.disclosure .disclosure-list .disclosure-list__option:focus, .disclosure .disclosure-list .disclosure-list__option:hover {
  color: #807497;
}
.disclosure .disclosure-list .disclosure-list__item--current .disclosure-list__option {
  text-decoration: underline;
}

.original-selector {
  display: none;
}

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

.no-js .original-selector {
  display: inline;
}

.product-detail__form__description p:not(.sku):first-of-type {
  margin-top: 0;
}

.error-message {
  display: none;
  border: 1px solid #d32d2d;
  background-color: #fff5f5;
  border-radius: 50px;
  padding: 0.2em 3em;
  font-size: 14px;
  text-align: left;
  color: #d32d2d;
  margin-top: 1em;
  margin-bottom: 1em;
}

.cart-item .error-message {
  opacity: 0;
  max-width: 432px;
  margin: 1em auto;
  width: 100%;
}

.product-detail__form__options,
.product-detail__custom-option {
  text-align: left;
}
.product-detail__form__options label, .product-detail__form__options .sharing-label,
.product-detail__form__options .social-label,
.product-detail__custom-option label,
.product-detail__custom-option .sharing-label,
.product-detail__custom-option .social-label {
  margin-top: 0;
  text-transform: none;
}
.product-detail__form__options .option-selectors .pretty-select, .product-detail__form__options .option-selectors .disclosure .disclosure__toggle, .disclosure .product-detail__form__options .option-selectors .disclosure__toggle,
.product-detail__custom-option .option-selectors .pretty-select,
.product-detail__custom-option .option-selectors .disclosure .disclosure__toggle,
.disclosure .product-detail__custom-option .option-selectors .disclosure__toggle {
  width: 100%;
}
.product-detail__form__options .option-selectors .selector-wrapper,
.product-detail__custom-option .option-selectors .selector-wrapper {
  margin: 2em 0 1em;
}
.product-detail__form__options .option-selectors .selector-wrapper.has-pretty-select,
.product-detail__custom-option .option-selectors .selector-wrapper.has-pretty-select {
  margin-top: 1em;
}
.product-detail__form__options .option-selectors .selector-wrapper:first-child,
.product-detail__custom-option .option-selectors .selector-wrapper:first-child {
  margin-top: 0;
}
.product-detail__form__options .option-selectors .selector-wrapper:last-child,
.product-detail__custom-option .option-selectors .selector-wrapper:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .product-detail__form__options .option-selectors.options-2 .selector-wrapper,
  .product-detail__custom-option .option-selectors.options-2 .selector-wrapper {
    width: auto;
    margin-bottom: 1em;
  }
}
@media (max-width: 767px) {
  .product-detail__form__options .option-selectors.options-3 .selector-wrapper,
  .product-detail__custom-option .option-selectors.options-3 .selector-wrapper {
    width: auto;
    margin-bottom: 1em;
  }
}
@media (max-width: 767px) {
  .product-detail__form__options .option-selectors .selector-wrapper,
  .product-detail__custom-option .option-selectors .selector-wrapper {
    padding-right: 0;
  }
}
@media (max-width: 960px) {
  .product-detail__form__options,
  .product-detail__custom-option {
    zoom: 1;
    float: none;
    width: auto;
  }
  .product-detail__form__options::before,
  .product-detail__custom-option::before {
    content: "";
    display: table;
  }
  .product-detail__form__options::after,
  .product-detail__custom-option::after {
    content: "";
    display: table;
    clear: both;
  }
}

.product-detail__form__options label, .product-detail__form__options .sharing-label,
.product-detail__form__options .social-label {
  margin-bottom: 10px;
}

@media (max-width: 767px) {
  .product-detail__form__options--with-quantity .quantity-wrapper,
  .product-detail__form__options--with-quantity .option-selectors {
    float: none;
    text-align: center;
    margin: 0 0 10px 0;
    clear: both;
  }
  .product-detail__form__options--with-quantity .option-selectors {
    width: auto;
    margin: 0 auto 20px;
  }
  .product-detail__form__options--with-quantity .selector-wrapper.single-option {
    margin-bottom: 10px;
  }
}
@media (min-width: 992px) {
  .product-detail__form__options--with-quantity {
    display: flex;
    flex-wrap: wrap;
  }
  .product-detail__form__options--with-quantity .quantity-wrapper {
    width: 180px;
    margin-bottom: 0;
    margin-right: 10px;
    flex-basis: 130px;
  }
  .product-detail__form__options--with-quantity > button {
    flex: 1;
  }
  .product-detail__form__options--with-quantity .shopify-payment-button {
    width: 100%;
  }
}

.selector-wrapper.single-option label, .selector-wrapper.single-option .sharing-label,
.selector-wrapper.single-option .social-label {
  display: inline-block;
}

@media (max-width: 960px) {
  .product-detail__form__options--no-options .quantity-wrapper {
    float: none;
    margin: 0 auto 20px;
  }
}
.cc-animate-enabled .section-product-template,
.section-product-template {
  overflow: unset;
}

.quantity-wrapper {
  position: relative;
  width: 120px;
  border: 1px solid #bbb;
  color: #060108;
  text-align: center;
  white-space: nowrap;
  margin: 0 0 10px 0;
}
.quantity-wrapper a {
  z-index: 1;
  line-height: 44px;
  width: 44px;
  height: 44px;
  font-weight: 500;
  text-align: center;
  left: 3px;
  padding: 0 0 0 5px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  color: #000000;
  font-size: 17px;
  font-family: Tahoma;
}
.quantity-wrapper a[data-quantity=up] {
  margin-top: -1px;
  left: auto;
  right: 0;
  padding: 0 5px 0 0;
}
.quantity-wrapper a[data-quantity=down] {
  margin-top: -2px;
  font-size: 20px;
}
.quantity-wrapper input {
  border: none;
  background: none;
  padding: 18px 30px;
  padding-left: 0;
  padding-right: 0;
  width: 32px;
  text-align: center;
  font-size: inherit;
  line-height: 1.25em;
  letter-spacing: 0.05em;
  color: #000000;
  position: relative;
  font-weight: 400;
}
@media (min-width: 768px) {
  .quantity-wrapper input {
    padding: 18px 30px;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 992px) {
  .quantity-wrapper input {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate3d(-50%, -50%, 0);
  }
}

.product-detail__form__action button {
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
}
@media (max-width: 767px) {
  .product-detail__form__action {
    float: none;
    width: auto;
    text-align: left;
    clear: both;
    padding-top: 0;
  }
  .product-detail__form__action button {
    max-width: 100%;
  }
}

.backorder, .subscription-description {
  text-align: left;
  margin-top: 1em;
}
.other-products {
  margin-top: 50px;
  position: relative;
  overflow: hidden;
}
.other-products .other-products__products a {
  display: flex;
  align-items: center;
}
.other-products .other-products__products .next a {
  justify-content: flex-end;
}
.other-products .other-products__label {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  -webkit-align-items: center;
  -moz-align-items: center;
  align-items: center;
  position: absolute;
  z-index: 1;
  top: 20px;
  bottom: 20px;
  left: 50%;
  padding: 20px;
  text-align: center;
  transform: translateX(-50%);
  margin: 0;
  font-size: 1.25rem;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.other-products .other-products__label a {
  -webkit-box-flex: 1;
  -webkit-flex-grow: 1;
  -moz-flex-grow: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}
.other-products .other-products__link {
  display: flex;
  align-items: center;
  height: 100px;
}
.other-products .other-products__product {
  display: block;
  float: left;
  width: 50%;
}
.other-products .other-products__product.next {
  float: right;
  text-align: right;
}
.other-products .other-products__product.next .other-products__link {
  justify-content: flex-end;
}
.other-products .other-products__product__image {
  vertical-align: middle;
  max-width: 150px;
  max-height: 100%;
}
.other-products .other-products__product__image.previous {
  margin-right: 20px;
}
.other-products .other-products__product__image.next {
  margin-left: 20px;
}
.other-products .other-products__product__arrow {
  height: 100px;
  width: 30px;
  position: relative;
}
.other-products .other-products__product__arrow .arr {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
}
.other-products .other-products__product__title {
  width: auto;
  margin-bottom: 2px;
}
@media (max-width: 767px) {
  .other-products .other-products__product__arrow {
    height: 20px;
    width: 20px;
  }
}
@media (max-width: 900px) {
  .other-products .other-products__label {
    position: static;
    transform: none;
    display: block;
    margin: 0;
    width: auto;
  }
  .other-products .other-products__label::before, .other-products .other-products__label::after {
    display: none;
  }
}
@media (max-width: 767px) {
  .other-products .other-products__link {
    height: auto;
  }
  .other-products .other-products__product {
    padding: 10px;
  }
  .other-products .other-products__product__image {
    display: none;
  }
  .other-products .other-products__product__title {
    width: auto;
    font-size: 1em;
    line-height: 1em;
  }
}

.product-area {
  position: relative;
  z-index: 3;
  margin-bottom: 50px;
}
@media (min-width: 768px) {
  .product-area {
    margin-bottom: 100px;
    display: flex;
  }
}
.product-area.product-area--one-col {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .product-area.product-area--one-col .product-area__details__inner {
    padding-bottom: 30px;
  }
}
@media (min-width: 768px) {
  .product-area.product-area--two-col .product-area__details__inner:not(.cc-sticky-scroll-direction), .product-area.product-area--collage .product-area__details__inner:not(.cc-sticky-scroll-direction) {
    padding-bottom: 0 !important;
  }
}
.product-area [data-media-count="1"] .swiper-button-next, .product-area [data-media-count="1"] .swiper-button-prev, .product-area [data-media-count="1"] .swiper-pagination {
  display: none;
}
.product-area.product-area--carousel .product-media--video[data-video-type=external] {
  width: auto !important;
}
.product-area.product-area--carousel .product-media--video.product-media--host-vimeo {
  background-color: #000;
}
@media (min-width: 768px) {
  .product-area.product-area--carousel {
    margin-bottom: 0;
  }
  .product-area.product-area--carousel .product-area__media {
    height: 100%;
    position: -webkit-sticky;
    position: sticky;
    top: var(--nav-height);
  }
  .product-area.product-area--carousel .product-media, .product-area.product-area--carousel .rimage-wrapper, .product-area.product-area--carousel .rimage__image, .product-area.product-area--carousel .plyr, .product-area.product-area--carousel .plyr__video-wrapper, .product-area.product-area--carousel video, .product-area.product-area--carousel .plyr__poster,
  .product-area.product-area--carousel object, .product-area.product-area--carousel embed, .product-area.product-area--carousel model-viewer, .product-area.product-area--carousel .shopify-model-viewer-ui {
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
  .product-area.product-area--carousel .product-media--video[data-video-type=external] {
    height: 100%;
    padding: 0 !important;
    width: 100% !important;
  }
  .product-area.product-area--carousel .product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-bottom {
    bottom: 0;
  }
  .product-area.product-area--carousel .product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-top {
    right: 0;
  }
  .product-area.product-area--carousel .product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-right, .product-area.product-area--carousel .product-media--video[data-video-type=external].product-media--host-vimeo .product-media--video-mask-left {
    display: none;
  }
  .product-area.product-area--carousel .plyr__poster {
    background-size: cover;
  }
  .product-area.product-area--carousel .theme-gallery .rimage-wrapper {
    padding-top: 0 !important;
  }
  .product-area.product-area--carousel .theme-gallery[data-media-crop=top] .rimage__image, .product-area.product-area--carousel .theme-gallery[data-media-crop=top] .plyr__poster, .product-area.product-area--carousel .theme-gallery[data-media-crop=top] video {
    object-position: top;
  }
  .product-area.product-area--carousel .theme-gallery[data-media-crop=bottom] .rimage__image, .product-area.product-area--carousel .theme-gallery[data-media-crop=bottom] .plyr__poster, .product-area.product-area--carousel .theme-gallery[data-media-crop=bottom] video {
    object-position: bottom;
  }
  .product-area.product-area--carousel .theme-gallery .theme-images {
    height: calc(100vh - var(--nav-height));
  }
}
@media (min-width: 1200px) {
  .product-area.product-area--carousel [data-media-count="2"] .swiper-button-next, .product-area.product-area--carousel [data-media-count="2"] .swiper-button-prev, .product-area.product-area--carousel [data-media-count="2"] .swiper-pagination {
    display: none;
  }
}
@media (min-width: 768px) {
  .nav-transparent .product-area.product-area--carousel:not(.product-area--restrict-width) .product-area__media {
    top: 0;
  }
  .nav-transparent .product-area.product-area--carousel:not(.product-area--restrict-width) .theme-images {
    height: 100vh;
  }
}
.product-area .slick-prev:hover, .product-area .slick-prev:focus {
  transform: translate(-50%, 0) rotate(180deg);
}
.product-area .slick-next:hover, .product-area .slick-next:focus {
  transform: translate(-50%, 0);
}
.product-area .cc-tabs {
  margin-top: 0;
}
.product-area hr {
  height: 0;
}
.product-area hr.divider__line-false {
  visibility: hidden;
}
.product-area hr.divider__gap-above-none {
  margin-top: 0;
}
.product-area hr.divider__gap-above-small {
  margin-top: 8px;
}
.product-area hr.divider__gap-above-medium {
  margin-top: 16px;
}
.product-area hr.divider__gap-above-large {
  margin-top: 24px;
}
.product-area hr.divider__gap-below-none {
  margin-bottom: 0;
}
.product-area hr.divider__gap-below-small {
  margin-bottom: 8px;
}
.product-area hr.divider__gap-below-medium {
  margin-bottom: 16px;
}
.product-area hr.divider__gap-below-large {
  margin-bottom: 24px;
}
.product-area .product-detail__gap-lg {
  padding-top: 24px;
  padding-bottom: 24px;
}
.product-area .store-availability-container-outer {
  margin-top: 24px;
  margin-bottom: 24px;
}
.product-area .product-detail__gap-sm {
  padding-top: 8px;
  padding-bottom: 8px;
}
.product-area .product-detail__form__options--no-options {
  padding: 0;
}
.product-area .product-detail__form__options--no-options .selector-wrapper {
  padding-top: 8px;
  padding-bottom: 8px;
}
.product-area .product-area__text-block.feature-subheader, .product-area #comments .comment .product-area__text-block.comment-date, #comments .comment .product-area .product-area__text-block.comment-date {
  margin-bottom: 0;
}
.product-area .product-area__rich-text-block p {
  margin-top: 0;
}
.product-area .product-detail__trust-img {
  display: inline-flex;
  align-items: flex-end;
}
.product-area .product-detail__trust-icons {
  display: flex;
  margin-left: -8px;
  margin-right: -8px;
  overflow-x: auto;
}
.product-area .product-detail__trust-icons + .product-detail__trust-icons {
  padding-top: 0;
}
.product-area .product-detail__trust-icon {
  padding: 0 8px;
  text-align: center;
  flex-basis: 25%;
  margin: 0;
}
.product-area .product-detail__trust-caption {
  padding-top: 0.25em;
  text-align: center;
  font-size: 0.875em;
}
.product-area .product-detail__trust-caption p {
  line-height: 1.3em;
}
.product-area .product-detail__trust-caption p:first-child {
  margin-top: 0;
}
.product-area .product-detail__trust-caption p:last-child {
  margin-bottom: 0;
}
.product-area .product-area__details__header {
  position: relative;
  padding: 20px 0 0 0;
  text-align: left;
}
@media (min-width: 768px) {
  .product-area .product-area__details__header {
    border-top: none;
    padding: 30px 0 0 0;
  }
}
@media (min-width: 768px) {
  .template-product #page-content .shopify-section:not(:nth-child(1)) .product-area .product-area__details__header {
    padding-top: 40px;
  }
}
@media (min-width: 1441px) {
  .template-product #page-content .shopify-section:not(:nth-child(1)) .product-area .product-area__details__header {
    padding-top: 60px;
  }
}
.product-area .vendor, .product-area .product-area__details__title, .product-area .price-area, .product-area .product-area__text-block {
  line-height: 1em;
  display: inline-block;
  width: 100%;
}
.product-area .product-area__text-block {
  line-height: 1.5em;
}
.product-area .clickyboxes {
  margin-bottom: -8px;
}
.product-area .product-area__details__title {
  text-align: left;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: 400;
  font-style: normal;
  color: #060108;
  line-height: 1.25em;
  padding-top: 0;
}
.product-area .price-area .current-price, .product-area .price-area .unit-price, .product-area .price-area .price {
  display: inline-block;
}
.product-area .price-area .current-price, .product-area .price-area .was-price, .product-area .price-area .price {
  font-size: 1.65em;
  font-weight: 500;
}
.product-area .price-area .was-price {
  margin-right: 0.4em;
}
.product-area .price-area .unit-price {
  padding-left: 0.5em;
}
.product-area .price-area .unit-price::before {
  content: "(";
}
.product-area .price-area .unit-price::after {
  content: ")";
}
.product-area .product-media .lazyload--placeholder {
  background: transparent;
}
.product-area .product-area__media {
  background-color: #ffffff;
  width: 100%;
}
.product-area .product-area__media .theme-img[aria-hidden=false] {
  animation: fadeIn 0.4s;
}
.product-area .product-area__media .theme-img[aria-hidden=true] {
  display: none;
}
.product-area .product-area__media .swiper-container.swiper-container-horizontal .swiper-slide[aria-hidden=true] {
  display: block;
}
@media (max-width: 767px) {
  .header-section-overlap:not(.nav-opaque) .product-area .product-area__media {
    margin-top: var(--nav-height);
  }
  .header-section-overlap:not(.nav-opaque) .section-featured-product .product-area .product-area__media {
    margin-top: 0;
  }
  .product-area .product-area__media .theme-img {
    height: auto;
  }
  .product-area .product-area__media .rimage-wrapper img {
    max-width: none;
    width: 100%;
    height: auto;
  }
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .theme-images,
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .theme-img,
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .theme-img .rimage__image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .theme-img:not(.theme-img-1), .no-js .product-area .product-area__media .theme-img:not(.theme-img-1) {
    display: none;
  }
}
.product-area .product-area__media [data-swiper-nav-style=dots] .swiper-button-prev,
.product-area .product-area__media [data-swiper-nav-style=dots] .swiper-button-next {
  display: none;
}
@media (min-width: 768px) {
  .product-area .product-area__media {
    width: 50%;
  }
  .product-area .product-area__media .product-media .rimage-wrapper,
  .product-area .product-area__media .product-media .rimage-wrapper img,
  .product-area .product-area__media .product-media iframe {
    width: 100%;
  }
  .product-area .product-area__media .product-media iframe {
    height: auto;
  }
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) {
    height: auto !important;
  }
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .swiper-button-prev,
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .swiper-button-next,
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .swiper-pagination-bullets {
    display: none;
  }
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .swiper-wrapper {
    transform: none;
    display: block;
  }
  .product-area .product-area__media .swiper-container:not(.swiper-container-horizontal) .swiper-wrapper img {
    width: 100% !important;
    height: auto !important;
  }
}
@media (min-width: 992px) {
  .product-area .product-area__media {
    width: calc(100% - 500px);
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] {
    margin: 0 -10px;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .product-media::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    height: 2px;
    background-color: transparent;
    transition: background-color 0.2s;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .product-media.product-media--active-variant::after {
    background-color: #000000;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .theme-images {
    padding: 40px 0 0 0;
    background-color: #ffffff;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .theme-images .theme-img--collage-full {
    margin: 0 10px 20px 10px;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .theme-images .theme-img--collage-last {
    margin: 20px 10px 0 10px;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .theme-images .media-column {
    vertical-align: top;
    display: inline-block;
    padding-left: 10px;
    padding-right: 10px;
    transition: height 0.3s;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .theme-images .media-column .theme-img {
    margin-bottom: 20px;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .theme-images .media-column .theme-img:last-child {
    margin-bottom: 0;
  }
  .product-area .product-area__media .theme-gallery[data-variant-image-grouping=true] .product-media--active-variant:after {
    display: none;
  }
  .product-area .product-area__media .theme-gallery[data-column-count="2"] .media-column {
    width: 50%;
  }
}
@media (min-width: 1441px) {
  .product-area .product-area__media {
    width: calc(100% - 600px);
  }
}
@media (min-width: 992px) {
  .product-area .product-area__media.multi-column {
    padding-left: 70px;
  }
}
@media (min-width: 1441px) {
  .product-area .product-area__media.multi-column {
    padding-left: 90px;
  }
}
.product-area .product-area__thumbs {
  display: none;
  position: -webkit-sticky;
  position: sticky;
  z-index: 2;
  width: 65px;
  left: 30px;
  top: calc(var(--nav-height) + 60px);
  padding-bottom: 65px;
}
.product-area .product-area__thumbs.cc-animate-complete {
  transition: none;
}
@media (min-width: 992px) {
  .product-area .product-area__thumbs {
    display: block;
  }
}
.product-area .product-area__thumbs .carousel-wrapper {
  display: inline-block;
  height: 100%;
  width: 100%;
}
.product-area .product-area__thumbs__thumb {
  display: inline-block;
  margin: 0;
  width: 100%;
}
.product-area .product-area__thumbs__thumb .rimage-outer-wrapper {
  width: 100%;
  height: auto;
}
.product-area .product-area__thumbs__thumb .rimage-outer-wrapper .rimage-wrapper > img {
  width: 100%;
  border-radius: 2px;
  box-shadow: 0 0 2px 1px rgba(167, 167, 167, 0.6);
}
.product-area .product-area__thumbs__thumb a {
  display: inline-block;
  width: 100%;
  border: 1px solid transparent;
  outline: none;
  position: relative;
}
.product-area .product-area__thumbs__thumb a::after {
  content: "";
  transition: background-color 0.5s;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: rgba(255, 255, 255, 0.3);
  pointer-events: none;
}
.product-area .product-area__thumbs__thumb a:hover::after, .product-area .product-area__thumbs__thumb a.thumb-active::after {
  background-color: rgba(255, 255, 255, 0);
}
.product-area .product-area__thumbs__thumb a.focus-visible {
  outline: none;
  border: 1px solid #000000;
}
.product-area .product-area__details {
  text-align: center;
  z-index: 1;
  width: 100%;
  padding: 20px 20px 0;
  transition: height 0.3s;
}
@media (min-width: 768px) {
  .product-area .product-area__details {
    width: 50%;
  }
  .section-product-template .product-area .product-area__details .product-area__details__inner:not(.product-area__details__inner--not-sticky) {
    position: -webkit-sticky;
    position: sticky;
    top: calc(var(--nav-height) + 20px);
  }
  .header-section-overlap:not(.nav-opaque) .product-area .product-area__details .product-area__details__inner--not-sticky {
    position: relative;
    top: var(--nav-height);
  }
}
@media (min-width: 992px) {
  .product-area .product-area__details {
    width: auto;
    padding-left: 0;
    padding-right: 0;
  }
}
.product-area .product-area__details .product-area__details__inner {
  width: 100%;
}
@media (min-width: 768px) {
  .product-area .product-area__details .product-area__details__inner {
    padding-bottom: 70px;
    padding-left: 40px;
    padding-right: 40px;
  }
  .header-section-overlap:not(.nav-opaque):not(:has(.section-header ~ .shopify-section-group-header-group)) .product-area .product-area__details .product-area__details__inner:not(.product-area__details__inner--not-sticky) {
    margin-top: var(--nav-height);
  }
  .section-featured-product .product-area .product-area__details .product-area__details__inner {
    margin-top: 0 !important;
  }
}
@media (min-width: 992px) {
  .product-area .product-area__details .product-area__details__inner {
    width: 500px;
    padding-left: 70px;
    padding-right: 70px;
    padding-bottom: 70px;
  }
}
@media (min-width: 1441px) {
  .product-area .product-area__details .product-area__details__inner {
    width: 600px;
    padding-left: 90px;
    padding-right: 90px;
    padding-bottom: 90px;
  }
}
.product-area .product-area__details .product-inventory-notice {
  text-align: left;
  font-style: italic;
  transition: visibility 0.4s, opacity 0.4s;
}
.product-area .product-area__details .product-inventory-notice.product-inventory-notice--no-inventory {
  visibility: hidden;
  opacity: 0;
}
.product-area .product-area__details .product-inventory-notice__indicator {
  height: 6px;
  margin-top: 3px;
  display: block;
  background-color: rgba(133, 133, 133, 0.2);
  border-radius: 4px;
  position: relative;
}
.product-area .product-area__details .product-inventory-notice__indicator span {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  height: 100%;
  border-radius: inherit;
  transition: width 0.4s cubic-bezier(0, 0.14, 0.19, 1), background-color 0.4s;
}
.product-area .product-area__details .product-detail__title-and-price {
  float: right;
  width: 50%;
  text-align: left;
  padding: 0 26px;
}
.product-area .product-area__details .product-title {
  margin: 13px 0 0;
  text-align: left;
}
.product-area .product-area__details .unit-price {
  font-style: normal;
  color: #6f6f6f;
}
.product-area .product-area__details .product-detail__form__options label,
.product-area .product-area__details .product-detail__form__options .social-label,
.product-area .product-area__details .has-clickyboxes label,
.product-area .product-area__details .has-clickyboxes .social-label,
.product-area .product-area__details .sharing-label,
.product-area .product-area__details .product-detail__custom-option label,
.product-area .product-area__details .product-detail__custom-option .social-label,
.product-area .product-area__details .product-detail__custom-option-legend {
  font-size: 14px;
  line-height: 1.2em;
  letter-spacing: 0;
}
.product-area .product-area__details .product-detail__form__options .option-selectors label,
.product-area .product-area__details .product-detail__form__options .option-selectors .social-label,
.product-area .product-area__details .product-detail__form__options .selector-wrapper label,
.product-area .product-area__details .product-detail__form__options .selector-wrapper .social-label,
.product-area .product-area__details .product-detail__custom-option-legend,
.product-area .product-area__details .has-clickyboxes label,
.product-area .product-area__details .has-clickyboxes .social-label,
.product-area .product-area__details .sharing-label {
  margin-bottom: 1em;
  font-weight: 600;
}
.product-area .product-area__details .product-detail__custom-option-legend {
  padding-left: 0.5em;
  padding-right: 0.5em;
}
.product-area .product-area__details .product-detail__form__options fieldset label, .product-area .product-area__details .product-detail__form__options fieldset .sharing-label,
.product-area .product-area__details .product-detail__form__options fieldset .social-label {
  font-weight: normal !important;
  margin-bottom: 0 !important;
}
.product-area .product-area__details .product-detail__form__options legend {
  font-weight: 600;
}
.product-area .product-area__details .has-clickyboxes label, .product-area .product-area__details .has-clickyboxes .sharing-label,
.product-area .product-area__details .has-clickyboxes .social-label {
  display: flex;
  justify-content: space-between;
}
.product-area .product-area__details .product-policies {
  font-style: italic;
}
.product-area .product-area__details .product-policies p {
  margin: 0;
}
.product-area .product-area__details .sku {
  font-size: 0.8em;
}
.product-area .product-area__details .sku.sku--no-sku {
  display: none;
}
.product-area .product-area__details .product-detail__tab-container {
  display: inline-block;
  width: 100%;
}
.product-area .product-area__details .sharing {
  margin: 0;
}
.product-area .product-area__details .product-detail__more_details {
  color: #6f6f6f;
  margin: 15px 0 25px;
}
@media (min-width: 1200px) {
  .product-area.product-area--restrict-width.product-area--carousel {
    margin-bottom: 40px;
    margin-top: 40px;
  }
  .product-area.product-area--restrict-width.product-area--carousel .product-area__details {
    padding: 0;
  }
  .product-area.product-area--restrict-width.product-area--carousel .product-area__details__inner {
    padding-bottom: 40px;
  }
  .product-area.product-area--restrict-width.product-area--carousel .product-media::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    height: 2px;
    background-color: transparent;
    transition: background-color 0.2s;
  }
  .product-area.product-area--restrict-width.product-area--carousel .product-media.product-media--active-variant::after {
    background-color: #000000;
  }
}
.product-area .product-detail__more_details {
  display: none;
}
.product-area .product-detail__more_details a {
  color: #807497;
  border-bottom: 1px solid #807497;
}
.product-area .product-area__link {
  margin-top: 8px;
  margin-bottom: 8px;
  margin-right: 8px;
  display: inline-block;
}
.product-area .product-area__link:not(.button) {
  color: #807497;
  border-bottom: 1px solid #807497;
}
@media (max-width: 767px) {
  .product-area .product-area__media ~ .product-area__details {
    padding-top: 0px;
  }
  .product-area .product-detail__title-and-price {
    float: none;
    width: auto;
    text-align: left;
  }
}
.product-area.product-area--restrict-width {
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 1130px) {
  .product-area.product-area--restrict-width.product-area--one-col {
    max-width: 1100px;
  }
  .product-area.product-area--restrict-width.product-area--one-col .product-area__media {
    padding-left: 90px;
  }
  .product-area.product-area--restrict-width.product-area--one-col .theme-images {
    padding-top: 40px;
    padding-bottom: 14px;
  }
  .product-area.product-area--restrict-width.product-area--one-col .product-media {
    margin-bottom: 26px;
  }
  .product-area.product-area--restrict-width.product-area--one-col .theme-img:last-child .product-media {
    margin-bottom: 100px;
  }
}
@media (min-width: 1441px) {
  .product-area.product-area--restrict-width.product-area--one-col .product-area__details__inner {
    width: 500px;
    padding-left: 70px;
    padding-right: 70px;
    padding-bottom: 70px;
  }
  .product-area.product-area--restrict-width.product-area--one-col .product-area__media {
    width: calc(100% - 500px);
  }
}
@media (min-width: 1130px) {
  .product-area.product-area--restrict-width.product-area--one-col .product-area__thumbs {
    margin-left: -73px;
    top: calc(var(--nav-height) + 38px);
  }
  .product-area.product-area--restrict-width.product-area--one-col .product-area__thumbs .rimage-outer-wrapper .rimage-wrapper > img {
    box-shadow: none;
    border: none;
  }
  .product-area.product-area--restrict-width.product-area--one-col .product-area__thumbs .slick-prev {
    margin-top: 11px;
  }
}
.product-area.product-area--restrict-width.product-area--two-col, .product-area.product-area--restrict-width.product-area--collage {
  max-width: 1300px;
}
@media (min-width: 1200px) {
  .product-area.product-area--restrict-width.product-area--carousel {
    padding-left: 70px;
  }
  .product-area.product-area--restrict-width.product-area--carousel .product-area__media {
    top: calc(40px + var(--nav-height));
  }
  .product-area.product-area--restrict-width.product-area--carousel .theme-images {
    height: calc(100vh - 80px - var(--nav-height));
  }
}
@media (min-width: 1441px) {
  .product-area.product-area--restrict-width.product-area--carousel {
    padding-left: 90px;
  }
}
@media (min-width: 768px) {
  .product-area.product-area--restrict-width.product-area--carousel.product-area--loner {
    max-width: 1160px;
    padding-left: 0;
    padding-right: 0;
  }
  .product-area.product-area--restrict-width.product-area--carousel.product-area--loner .product-media--active-variant:after {
    display: none;
  }
}
.product-area .product-detail-accordion {
  margin-top: 24px;
  margin-bottom: 24px;
}
.product-area .product-detail-accordion + .product-detail-accordion {
  margin-top: -24px;
}

@media screen and (max-width: 480px) {
  .product-form .selector-wrapper.has-pretty-select {
    margin-left: -20px;
    margin-right: -20px;
  }
}
#shopify-product-reviews {
  background: #FFFFFF;
  padding-top: 0;
  margin: 0 !important;
  padding-left: 2px;
  -webkit-border-radius: 0 0 2px 2px;
  -ms-border-radius: 0 0 2px 2px;
  -moz-border-radius: 0 0 2px 2px;
  -o-border-radius: 0 0 2px 2px;
  border-radius: 0 0 2px 2px;
}
#shopify-product-reviews .spr-container {
  border: none;
  padding-left: 0;
  padding-right: 0;
}
#shopify-product-reviews .spr-header-title {
  font-size: 120%;
  line-height: 1.4em;
}
#shopify-product-reviews .spr-icon {
  font-size: 100%;
}
#shopify-product-reviews .spr-summary-actions-newreview {
  float: none;
  display: inline-block;
  margin-top: 0.5em;
}
#shopify-product-reviews .spr-review-header-title {
  text-align: left;
}
#shopify-product-reviews .spr-pagination-page {
  margin: 0 2px;
}
#shopify-product-reviews .spr-form-message-success:focus {
  outline: none;
}

/* Custom options */
.product-detail__custom-option .label__text-beside-input {
  vertical-align: middle;
}

.product-detail__custom-option input[type=checkbox] {
  margin-right: 3px;
}

.product-detail__custom-option .pretty-select, .product-detail__custom-option .disclosure .disclosure__toggle, .disclosure .product-detail__custom-option .disclosure__toggle,
.product-detail__custom-option input[type=text],
.product-detail__custom-option textarea {
  width: 100%;
}

/* Gift card recipient */
gift-card-recipient ::placeholder {
  color: #000000;
}

.product-detail__custom-option label.label, .product-detail__custom-option .label.sharing-label,
.product-detail__custom-option .label.social-label {
  margin-bottom: 0.5em;
  font-weight: 600;
}

.product-recommendations-container {
  background: #ffffff;
  overflow: hidden;
}
.product-recommendations-container, .product-recommendations-container h2 {
  color: #423f3f;
  text-align: left;
}

.product-slider {
  overflow: hidden;
  position: relative;
}
.product-slider .button-row {
  margin-bottom: 50px;
}
@media (min-width: 768px) {
  .product-slider .button-row {
    margin-bottom: 100px;
  }
}
.product-slider .product-list {
  padding-bottom: 30px;
  margin-left: 0 !important;
  margin-right: 0 !important;
}
@media (max-width: 767px) {
  .product-slider .product-list {
    margin-top: 0 !important;
  }
}
@media (min-width: 768px) {
  .product-slider .product-list.hover-info {
    padding-bottom: 50px;
  }
}
.product-slider .product-list .product-block, .product-slider .product-list .collection-block {
  margin-top: 0;
}
.product-slider .swiper-container {
  overflow: visible;
}
.product-slider .swiper-container .swiper-wrapper {
  margin: 30px 0 0;
}
@media (min-width: 768px) {
  .product-slider .swiper-container .swiper-wrapper {
    margin-top: 40px;
  }
}
.section-featured-product .product-slider .swiper-container .swiper-wrapper, .section-product-template .product-slider .swiper-container .swiper-wrapper {
  margin: 0;
}
.product-slider .swiper-container .swiper-scrollbar {
  background: #dfdfdf;
  border-radius: 10px;
  height: 4px;
  bottom: -12px;
  transition: opacity 0.4s;
  left: 10%;
  width: 80%;
}
@media (min-width: 768px) {
  .product-slider .swiper-container .swiper-scrollbar {
    left: 17%;
    width: 66%;
  }
}
.product-slider .swiper-container .swiper-scrollbar .swiper-scrollbar-drag {
  border-radius: 10px;
}
.product-slider .swiper-container .swiper-button-prev,
.product-slider .swiper-container .swiper-button-next {
  margin-top: -30px;
  transition: opacity 0.4s, transform 0.3s;
}
.product-slider .swiper-container .swiper-button-prev:not(.swiper-button-disabled):hover,
.product-slider .swiper-container .swiper-button-next:not(.swiper-button-disabled):hover {
  transform: scale(1.06);
}
.product-slider .swiper-container[data-products-in-view="4"] .swiper-button-prev,
.product-slider .swiper-container[data-products-in-view="4"] .swiper-button-next {
  margin-top: -55px;
}
@media (max-width: 767px) {
  .product-slider .swiper-container[data-swiper-nav-style=dots] .swiper-button-prev,
  .product-slider .swiper-container[data-swiper-nav-style=dots] .swiper-button-next,
  .product-slider .swiper-container[data-swiper-nav-style=dots] .swiper-scrollbar {
    display: none;
  }
}
@media (min-width: 1025px) {
  .product-slider .swiper-container[data-swiper-nav-style=dots] .swiper-button-prev,
  .product-slider .swiper-container[data-swiper-nav-style=dots] .swiper-button-next,
  .product-slider .swiper-container[data-swiper-nav-style=dots] .swiper-scrollbar {
    opacity: 0;
  }
}
@media (min-width: 768px) {
  .product-slider .swiper-container .swiper-button-prev {
    margin-left: 30px;
  }
  .product-slider .swiper-container .swiper-button-next {
    margin-right: 30px;
  }
}
@media (min-width: 1025px) {
  .product-slider:hover .swiper-button-prev,
  .product-slider:hover .swiper-button-next,
  .product-slider:hover .swiper-scrollbar {
    opacity: 1;
  }
  .product-slider:hover .swiper-button-prev.swiper-button-disabled,
  .product-slider:hover .swiper-button-next.swiper-button-disabled,
  .product-slider:hover .swiper-scrollbar.swiper-button-disabled {
    opacity: 0.35;
  }
}
.product-slider .product-list.hover-info .swiper-scrollbar {
  bottom: 0;
}

.product-slider--small {
  margin-right: -20px;
  padding-bottom: 18px;
}
.product-slider--small .section-heading {
  margin-right: 20px;
}
@media (min-width: 768px) {
  .product-slider--small {
    margin-right: calc(-40px - 20px);
    padding-right: calc(40px + 20px);
  }
  .product-slider--small .section-heading {
    margin-right: 0;
  }
}
@media (min-width: 992px) {
  .product-slider--small {
    margin-right: -70px;
    padding-right: 70px;
  }
}
@media (min-width: 1441px) {
  .product-slider--small {
    margin-right: -90px;
    padding-right: 90px;
  }
}
@media (min-width: 1200px) {
  .product-area--restrict-width .product-slider--small {
    margin-right: 0;
    padding-right: 0;
  }
}
.product-slider--small .product-list {
  padding-bottom: 10px;
}

.product-slider__title,
.section-heading .product-slider__title {
  margin-bottom: 18px;
}

.section-featured-product {
  overflow: unset !important;
}
.section-featured-product .product-area.product-area--carousel {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
}
.section-featured-product .product-area.product-area--carousel .product-area__details {
  padding: 0;
}
.section-featured-product .product-area.product-area--carousel .product-area__media {
  top: calc(100px + var(--nav-height));
}
.nav-inline .section-featured-product .product-area.product-area--carousel .product-area__media {
  top: 100px;
}
@media (min-width: 992px) {
  .section-featured-product .product-area.product-area--carousel .product-area__media {
    width: calc(100% - 500px + 70px);
  }
}
@media (min-width: 1441px) {
  .section-featured-product .product-area.product-area--carousel .product-area__media {
    width: calc(100% - 600px + 90px);
  }
}
@media (min-width: 768px) {
  .section-featured-product .product-area.product-area--carousel .product-area__media .theme-gallery .swiper-container .theme-images {
    height: calc(100vh - 200px - var(--nav-height));
  }
  .nav-inline .section-featured-product .product-area.product-area--carousel .product-area__media .theme-gallery .swiper-container .theme-images {
    height: calc(100vh - 200px);
  }
}
.section-featured-product .product-area.product-area--carousel .product-area__media .theme-gallery .swiper-container .placeholder-image {
  height: 100%;
}
.section-featured-product .product-area.product-area--carousel .product-area__media .theme-gallery .swiper-container:not(.swiper-container-horizontal) .theme-images {
  overflow-x: scroll;
  white-space: nowrap;
}
.section-featured-product .product-area.product-area--carousel .product-area__media .theme-gallery .swiper-container:not(.swiper-container-horizontal) .theme-images .swiper-slide {
  display: inline-block;
}
.section-featured-product .product-area.product-area--carousel .product-area__media .theme-gallery .swiper-container:not(.swiper-container-horizontal) .theme-images .placeholder-image {
  height: 100%;
  width: 500px;
}
@media (min-width: 768px) {
  .section-featured-product .product-area.product-area--carousel .product-area__details__inner {
    padding-bottom: 30px;
  }
}

.section-gallery .section-heading {
  padding-bottom: 25px;
}
@media (min-width: 768px) {
  .section-gallery .section-heading {
    padding-bottom: 0;
  }
}
.section-gallery .section-spacing .section-heading {
  padding-left: 0;
  padding-right: 0;
  padding-top: 0;
}
.section-gallery .cc-gallery.slick-slider {
  margin-top: 0;
  padding-top: 0;
  margin-bottom: 0;
}
.section-gallery .cc-gallery.slick-slider .gallery__item {
  margin-bottom: 0;
}
.section-gallery .cc-gallery.slick-slider .gallery__item .overlay-type {
  padding-top: 20px;
}
.section-gallery .cc-gallery.slick-slider .gallery__item .overlay-type.position--bottom {
  padding-bottom: 60px;
}
.section-gallery .cc-gallery .gallery__item {
  position: relative;
  flex: 1 1 320px;
  width: 100%;
  transition: background-color 0.15s, opacity 0.7s;
  overflow: hidden;
}
.section-gallery .cc-gallery .gallery__item.image-overlay--bg-full::after {
  transition: opacity 0.6s;
}
.section-gallery .cc-gallery .gallery__item .image-overlay__image-link {
  display: inline-block;
  height: 100%;
  width: 100%;
}
@media (min-width: 1025px) {
  .section-gallery .cc-gallery .gallery__item .image-overlay__image-link .gallery__image, .section-gallery .cc-gallery .gallery__item .image-overlay__image-link .section-background-video--inline {
    will-change: transform;
    transition: transform 0.6s cubic-bezier(0, 0.14, 0.19, 1);
  }
  .section-gallery .cc-gallery .gallery__item .image-overlay__image-link:hover .gallery__image, .section-gallery .cc-gallery .gallery__item .image-overlay__image-link:hover .section-background-video--inline {
    transform: scale(1.05);
  }
}
@media (min-width: 1025px) {
  .section-gallery .cc-gallery .gallery__item:hover.image-overlay--bg-full::after {
    opacity: 0;
  }
}
.section-gallery .cc-gallery .gallery__item .gallery__image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
}
.section-gallery .cc-gallery .gallery__item.lazyload--placeholder {
  background-color: #fff;
}
@media (max-width: 767px) {
  .section-gallery .cc-gallery.gallery--with-margins:not(.gallery--mobile-carousel) .gallery__item {
    margin-bottom: 20px;
  }
}
@media (min-width: 768px) {
  .section-gallery .cc-gallery {
    margin-left: 0;
    margin-right: 0;
  }
  .section-gallery .cc-gallery.gallery--with-vertical-outer-padding {
    padding: 70px;
  }
  .section-gallery .cc-gallery.gallery--with-margins:not(.gallery--with-vertical-outer-padding) {
    padding: 0;
  }
  .section-gallery .cc-gallery.gallery--with-margins .gallery__row {
    margin: 0 -10px;
  }
  .section-gallery .cc-gallery.gallery--with-margins .gallery__item {
    margin: 10px;
  }
}
@media (min-width: 768px) and (min-width: 1441px) {
  .section-gallery .cc-gallery.gallery--with-margins:not(.gallery--not-full-width) .gallery__row {
    margin: 0 10px;
  }
}
@media (min-width: 768px) {
  .section-gallery .cc-gallery.gallery--with-title {
    padding-top: 35px !important;
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .section-gallery .cc-gallery.gallery--with-margins {
    margin-bottom: 0;
  }
  .section-gallery .cc-gallery.gallery--with-margins.gallery--with-title:not(.gallery--not-full-width) {
    padding-bottom: 100px;
  }
}
@media (min-width: 768px) {
  .section-gallery .cc-gallery .gallery__row {
    display: flex;
    flex-wrap: wrap;
  }
  .section-gallery .cc-gallery .gallery__row .gallery__item .overlay-type {
    padding: 40px;
  }
  .section-gallery .cc-gallery.gallery--grid-2 .gallery__item.gallery__item--enlarged {
    flex-grow: 2;
  }
  .section-gallery .cc-gallery.gallery--grid-3 .gallery__item.gallery__item--enlarged {
    flex-grow: 3;
  }
  .section-gallery .cc-gallery.gallery--grid-4 .gallery__item {
    flex-basis: 40%;
  }
}
@media (min-width: 768px) and (min-width: 1200px) {
  .section-gallery .cc-gallery.gallery--grid-4 .gallery__item {
    flex-basis: 20%;
  }
}
@media (min-width: 768px) {
  .section-gallery .cc-gallery.gallery--grid-4 .gallery__item.gallery__item--enlarged {
    flex-grow: 4;
  }
  .section-gallery .cc-gallery .overlay__content.has-button {
    position: relative;
  }
  .section-gallery .cc-gallery .overlay__content.has-button .line-1 {
    margin-bottom: 0;
    transition: padding-bottom 0.6s cubic-bezier(0, 0.14, 0.19, 1);
  }
  .section-gallery .cc-gallery .overlay__content.has-button .line-3 {
    opacity: 0;
    transition: opacity 0.6s, bottom 0.6s cubic-bezier(0, 0.14, 0.19, 1);
    position: absolute;
    bottom: -70px;
    pointer-events: none;
  }
  .section-gallery .cc-gallery .overlay__content.has-button .line-3 .button {
    white-space: nowrap;
  }
  .section-gallery .cc-gallery .position--hcenter .overlay__content.has-button .line-3 {
    left: 50%;
    transform: translate3d(-50%, 0, 0);
  }
  .section-gallery .cc-gallery .position--left .overlay__content.has-button .line-3 {
    left: 0;
  }
  .section-gallery .cc-gallery .position--right .overlay__content.has-button .line-3 {
    right: 0;
  }
  .section-gallery .cc-gallery .gallery__item:hover .overlay__content.has-button .line-1 {
    padding-bottom: 70px;
  }
  .section-gallery .cc-gallery .gallery__item:hover .overlay__content.has-button .line-3 {
    bottom: 0;
    opacity: 1;
  }
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.video-container iframe, .video-container object, .video-container embed {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.video-container .overlay-type {
  transition: opacity 0.5s, visibility 0.5s;
}
.video-container .video-container__cover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
  background: #eee;
  transition: opacity 0.5s, visibility 0.5s;
}
.video-container .video-container__cover .rimage-outer-wrapper,
.video-container .video-container__cover .placeholder-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
}
.video-container .video-container__cover.video-container__cover--playing {
  opacity: 0;
  visibility: hidden;
}
.video-container .video-container__play {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: -9px 0 0 -9px;
}
.video-container .video-container__play svg {
  width: 18px;
  height: 18px;
  stroke: #fff;
}
.video-container .video-container__play svg polygon {
  fill: #fff;
}

.section-video .rte, .section-video #comments, .section-video #template, .section-video #address_tables {
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .section-video .overlay-type {
    padding-top: 70px !important;
    padding-bottom: 70px !important;
  }
}
.section-video .video-container .video-container__play {
  position: static;
  margin: 0;
}
@media (max-width: 767px) {
  .section-video .video-container .video-container__play {
    margin-top: -10px;
  }
}
.section-video .video-container .video-container__play svg {
  stroke: #ffffff;
  margin: -4px 4px 0 7px;
  padding-right: 4px;
}
@media (min-width: 768px) {
  .section-video .video-container .video-container__play svg {
    margin: -5px 5px 0 -4px;
  }
}
.section-video .video-container .video-container__play svg polygon {
  fill: #ffffff;
}
.section-video .video-container .video-container__stop {
  display: none;
}
@media (max-width: 767px) {
  .section-video .video-container.video-container--modal-mobile {
    padding-bottom: 0 !important;
    height: auto;
  }
  .section-video .video-container.video-container--modal-mobile::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 10000;
    pointer-events: none;
    background: #000;
    opacity: 0;
    transition: opacity 350ms;
  }
  .section-video .video-container.video-container--modal-mobile .video-container__video {
    position: fixed;
    z-index: 10001;
    top: 50%;
    left: 20px;
    width: calc(100% - 40px);
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    opacity: 0;
    pointer-events: none;
    background: #000;
    transition: opacity 350ms;
  }
  .section-video .video-container.video-container--modal-mobile .video-container__stop {
    display: block;
    position: fixed;
    top: 0;
    left: 0;
    color: #fff;
    z-index: 10002;
    padding: 19px;
    pointer-events: none;
    opacity: 0;
    transition: opacity 350ms;
  }
  .section-video .video-container.video-container--modal-mobile .video-container__stop svg {
    stroke: currentColor;
    height: 29px;
    width: 29px;
  }
  .section-video .video-container.video-container--modal-mobile .overlay-type {
    position: relative;
    height: auto;
    padding-top: 20px;
    padding-bottom: 20px;
  }
  .section-video .video-container[data-video-type=mp4] .video-container__video {
    padding: 0;
    height: 100%;
  }
  .section-video .video-container[data-video-type=mp4] .video-container__video video {
    object-fit: contain;
  }
}
.section-video .video-container.video-container--playing::before,
.section-video .video-container.video-container--playing .video-container__video,
.section-video .video-container.video-container--playing .video-container__stop {
  opacity: 1;
  pointer-events: auto;
}
.section-video .video-container.video-container--playing .video-container__cover {
  opacity: 0;
  visibility: hidden;
}
.section-video .video-container.video-container--playing .video-container__cover + .overlay-type {
  opacity: 0;
  visibility: hidden;
}
.section-video .video-container.video-container--playing.image-overlay--bg-full::after {
  opacity: 0;
}
.section-video .video-container .video-container__video {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  max-width: 100%;
}
.section-video .video-container .video-container__video iframe,
.section-video .video-container .video-container__video object,
.section-video .video-container .video-container__video embed,
.section-video .video-container .video-container__video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.section-background-video.section-background-video--inline {
  position: relative;
}
.section-background-video.section-background-video--inline, .section-background-video.section-background-video--inline .video-container {
  height: 100%;
  width: 100%;
  background: rgba(0, 0, 0, 0.05);
}
.section-background-video .video-container--background {
  background: #000;
  padding: 0 !important;
}
.section-background-video .video-container--background .video-container__video {
  position: relative;
  height: 100%;
}
.section-background-video .video-container--background .video-container__fallback {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: opacity 0.5s, visibility 0.5s;
}
.section-background-video .video-container--background.video-container--playing .video-container__fallback {
  opacity: 0;
  visibility: hidden;
}
.section-background-video .video-container--background div.video-container__video-element {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.section-background-video .video-container--background video {
  object-fit: cover;
  object-position: 50% 50%;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.section-background-video .image-overlay::after {
  display: none;
}

.section-footer {
  color: #ffffff;
  background: #000000;
  overflow: visible !important;
}
.section-footer.disclosure--open {
  z-index: 6;
}
.section-footer ul:not(.disclosure-list) {
  list-style: none;
  padding: 0;
  margin: 0;
}
.section-footer p {
  margin-top: 0;
}
@media (max-width: 767px) {
  .section-footer .copyright {
    margin-bottom: 10px;
  }
}
.section-footer ul.social-links__list {
  display: flex;
  flex-wrap: wrap;
  margin: -10px -12px;
}
.section-footer ul.social-links__list li {
  margin: 10px 12px;
}
.section-footer ul.social-links__list a svg, .section-footer ul.social-links__list a svg g {
  fill: currentColor;
}
.section-footer .section-footer__row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .section-footer .section-footer__row {
    margin-left: -10px;
    margin-right: -10px;
  }
}
.section-footer .section-footer__row--sub-footer {
  align-items: center;
}
@media (min-width: 768px) {
  .section-footer .section-footer__row--sub-footer {
    margin-top: 20px;
  }
}
.section-footer .section-footer__row--sub-footer .section-footer__row__col {
  text-align: center;
}
@media (min-width: 768px) {
  .section-footer .section-footer__row--sub-footer .section-footer__row__col:nth-child(1) {
    text-align: left;
  }
}
@media (min-width: 768px) {
  .section-footer .section-footer__row--sub-footer .section-footer__row__col:nth-child(2) {
    text-align: right;
  }
}
.section-footer .section-footer__row--blocks {
  padding-top: 20px;
  padding-bottom: 20px;
}
.section-footer .section-footer__row--blocks .section-footer__row__col:not(:last-child) {
  margin-bottom: 20px;
}
@media (min-width: 768px) {
  .section-footer .section-footer__row--blocks {
    padding-top: 100px;
    padding-bottom: 0;
  }
  .section-footer .section-footer__row--blocks .section-footer__row__col:not(:last-child) {
    margin-bottom: 40px;
  }
  .section-footer .section-footer__row--blocks .section-footer__row__col {
    margin-bottom: 50px;
  }
}
@media (min-width: 768px) and (max-width: 992px) {
  .section-footer .section-footer__row--blocks[data-num-blocks="4"] .section-footer__row__col {
    flex-basis: 50%;
  }
}
@media (min-width: 992px) {
  .section-footer .section-footer__row--blocks[data-num-blocks="4"] {
    flex-wrap: nowrap;
  }
}
.section-footer .section-footer__row__col {
  flex: 0 1 100%;
  padding: 10px 0;
}
@media (min-width: 768px) {
  .section-footer .section-footer__row__col {
    padding: 0 20px;
    flex-basis: auto;
  }
}
.section-footer .section-footer__title {
  margin-bottom: 10px;
  text-align: left;
  font-weight: bold;
  font-size: 14px;
  font-family: Helvetica, Arial, sans-serif;
  color: inherit;
}
@media (min-width: 768px) {
  .section-footer .section-footer__title {
    margin-bottom: 20px;
  }
}
@media (min-width: 768px) {
  .section-footer .section-footer__text-block .social-links {
    white-space: nowrap;
  }
  .section-footer .section-footer__text-block--with-text {
    flex-basis: 350px;
  }
}
@media (min-width: 992px) {
  .section-footer .section-footer__text-block--with-text {
    max-width: 460px;
    flex-grow: 1;
  }
}
.section-footer .section-footer__text {
  margin-bottom: 24px;
}
.section-footer .section-footer__menu-block {
  flex-shrink: 2;
}
.section-footer .section-footer__menu-block__menu {
  list-style: none;
  padding: 0;
  margin: 0;
}
.section-footer .section-footer__menu-block__menu li {
  margin-bottom: 0.5em;
  list-style: none;
}
@media (min-width: 768px) {
  .section-footer .section-footer__newsletter-block {
    flex: 0 1 350px;
  }
}
.section-footer .section-footer__newsletter-block .social-links {
  padding-top: 1.5em;
}
.section-footer .section-footer__newsletter-block .signup-form {
  margin-left: 0;
}
.section-footer .section-footer__newsletter-block .signup-form form {
  position: relative;
}
.section-footer .section-footer__newsletter-block .signup-form form input {
  width: 100%;
  background: transparent;
  border: none;
  border-bottom: 1px solid #ffffff;
  padding: 0.8em 0;
  color: #ffffff;
}
.section-footer .section-footer__newsletter-block .signup-form form input:-webkit-autofill {
  -webkit-text-fill-color: #ffffff;
  -webkit-box-shadow: 0 0 0px 1000px #000000 inset;
}
.section-footer .section-footer__newsletter-block .signup-form form input ::placeholder {
  color: #ffffff;
}
.section-footer .section-footer__newsletter-block .signup-form form button {
  position: absolute;
  background: none;
  border: none;
  padding: 0;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
.section-footer .section-footer__newsletter-block .signup-form form button svg {
  height: 20px;
  width: 20px;
}
.section-footer .section-footer__newsletter-block .signup-form form button svg > g {
  stroke: #ffffff;
}
.section-footer .section-footer__newsletter-block .signup-form .signup-form__email {
  width: 100%;
}
.section-footer .section-footer__newsletter-block .signup-form .signup-form__email::placeholder {
  color: currentColor;
}
.section-footer .section-footer__text-block__image:not(:last-child) {
  display: inline-block;
  margin-bottom: 20px;
}
.section-footer .section-footer__text-block__image .rimage-outer-wrapper {
  margin-left: 0;
  max-width: 100%;
}
.section-footer .section-footer__text-block__social:not(:last-child) {
  margin-bottom: 30px;
}
.section-footer .section-footer__text-block__follow-on-shop {
  margin-bottom: 0.5em;
  padding-bottom: 4px;
}
.section-footer .section-footer__text-block__follow-on-shop:not(:last-child) {
  margin-bottom: 30px;
}
.section-footer .section-footer__localization {
  margin-top: 0;
  margin-bottom: 15px;
}
.section-footer .section-footer__localization .selectors-form__item {
  display: block;
  margin: 0 10px 20px 0;
}
@media (min-width: 768px) {
  .section-footer .section-footer__localization .selectors-form__item {
    display: inline-block;
  }
}
.section-footer .section-footer__lower-menu {
  margin-bottom: 10px;
}
.section-footer .section-footer__lower-menu__list {
  margin: 0 -5px !important;
}
@media (min-width: 768px) {
  .section-footer .section-footer__lower-menu__list {
    text-align: right;
  }
}
.section-footer .section-footer__lower-menu__list li {
  display: inline-block;
  list-style: none;
  margin: 0 5px 10px;
}
.section-footer .section-footer__lower-menu__list li a {
  white-space: nowrap;
}
.section-footer .section-footer__payment-icons {
  margin-bottom: calc(3.8em - 30px);
  margin-left: -2px;
  margin-right: -2px;
}
.section-footer__row-container--with-localization .section-footer .section-footer__payment-icons {
  margin-top: 0.9em;
}
@media (min-width: 768px) {
  .section-footer .section-footer__payment-icons {
    text-align: right;
  }
}
.section-footer .section-footer__payment-icons .section-footer__payment-icon {
  margin: 0 2px 0.5em;
  width: auto;
  height: 25px;
  fill: none;
}
.section-footer .section-footer__payment-icons .section-footer__payment-icon.payment-icon--custom {
  border: 1px solid #ddd;
  border-radius: 4px;
}
.section-footer .section-footer__sub-footer-menu {
  margin: 0 -10px;
}
.section-footer .section-footer__sub-footer-menu li {
  display: inline-block;
  margin: 0 10px;
}
.section-footer .section-footer__row-lower {
  padding-top: 30px;
  padding-bottom: 50px;
  font-size: 0.85em;
  line-height: 1.4em;
}
@media (min-width: 768px) {
  .section-footer .section-footer__row-lower {
    flex-wrap: nowrap;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .section-footer .section-footer__row-lower .section-footer__row__col:first-child {
    order: 1;
  }
}

footer.giftcard-footer {
  padding: 3em 0 0;
}

.section-featured-blog .swiper-container .article-block__image .rimage-outer-wrapper {
  max-width: none !important;
}
@media (min-width: 768px) {
  .section-featured-blog .swiper-container[data-first-post-big=true] .rimage-wrapper, .section-featured-blog .swiper-container[data-first-post-big=true] .placeholder-image {
    padding-top: 0 !important;
    width: 100%;
    height: 40vw;
  }
}
@media (min-width: 1441px) {
  .section-featured-blog .swiper-container[data-first-post-big=true] .rimage-wrapper, .section-featured-blog .swiper-container[data-first-post-big=true] .placeholder-image {
    height: 30vw;
  }
}
@media (min-width: 768px) {
  .section-featured-blog .swiper-container[data-first-post-big=true] .swiper-slide {
    width: calc(34% - 20px) !important;
  }
  .section-featured-blog .swiper-container[data-first-post-big=true] .swiper-slide:first-child {
    width: 66% !important;
  }
}
@media (min-width: 1441px) {
  .section-featured-blog .swiper-container[data-first-post-big=true] .swiper-slide {
    width: calc(25% - 15px) !important;
  }
  .section-featured-blog .swiper-container[data-first-post-big=true] .swiper-slide:first-child {
    width: calc(50% - 10px) !important;
  }
}
.section-featured-blog .slideshow-blog {
  position: relative;
}
.section-featured-blog .slideshow-blog .overlay-type .inner {
  transition: padding-bottom 0.2s;
}
@media (min-width: 768px) {
  .section-featured-blog .slideshow-blog .overlay-type .inner .line-1 {
    max-width: 500px;
  }
}
@media (min-width: 992px) {
  .section-featured-blog .slideshow-blog .overlay-type .inner .line-1 {
    max-width: 50%;
  }
}
.section-featured-blog .slideshow-blog .overlay-type .inner .line-1 a {
  line-height: 1.3em;
}
@media (max-width: 767px) {
  .section-featured-blog .slideshow-blog .overlay-type {
    padding-top: 25px;
  }
}
.section-featured-blog .slideshow-blog .slideshow-blog__title {
  position: absolute;
  top: 0;
  left: 0;
  right: auto;
  color: #ffffff;
  font-weight: normal;
}
.section-featured-blog .slideshow-blog .slideshow-blog__view-all {
  position: absolute;
  top: 0;
  right: 0;
  left: auto;
  color: #ffffff;
}
@media (min-width: 768px) {
  .section-featured-blog .slideshow-blog .slick-dots {
    display: none !important;
  }
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles {
  position: absolute;
  bottom: 0;
  left: 0;
  list-style-type: none;
  text-align: left;
  color: #ffffff;
  margin: 0 -10px;
  display: none;
}
@media (min-width: 768px) {
  .section-featured-blog .slideshow-blog .slideshow-blog__titles {
    display: flex;
  }
}
@media (min-width: 1200px) {
  .section-featured-blog .slideshow-blog .slideshow-blog__titles {
    max-width: 1200px;
  }
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li {
  margin: 0 10px;
  position: relative;
  padding-top: 10px;
  flex-grow: 0;
  flex-basis: 175px;
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li a {
  transition: opacity 0.4s;
  opacity: 0.4;
  font-size: 14px;
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li:not(.slideshow-blog__titles__active) .slideshow-blog__titles__progress {
  transition-duration: 0s !important;
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li:hover a, .section-featured-blog .slideshow-blog .slideshow-blog__titles li.slideshow-blog__titles__active a {
  opacity: 1;
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li::before, .section-featured-blog .slideshow-blog .slideshow-blog__titles li .slideshow-blog__titles__progress {
  height: 2px;
  display: inline-block;
  background-color: #ffffff;
  position: absolute;
  top: 0;
  left: 0;
  transition: width 0.5s linear;
  width: 0;
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li::before {
  content: "";
  width: 100%;
  opacity: 0.4;
}
.section-featured-blog .slideshow-blog .slideshow-blog__titles li.slideshow-blog__titles__active .slideshow-blog__titles__progress {
  width: 100%;
}
.section-featured-blog .slideshow-blog.slideshow--paused .slideshow-blog__titles__progress {
  transition-duration: 0s !important;
}

body.header-section-overlap.nav-transparent #page-content .shopify-section:first-child.section-featured-blog .slideshow-blog .slideshow-blog__title, body.header-section-overlap.nav-transparent #page-content .shopify-section:first-child.section-featured-blog .slideshow-blog .slideshow-blog__view-all {
  top: var(--nav-height);
  padding-top: 20px;
}

.size-chart-link {
  margin-left: 1em;
  text-transform: none;
  color: #6f6f6f;
  font-weight: 600;
}
.selector-wrapper.has-pretty-select .size-chart-link {
  display: block;
  margin: 5px 0 0 0;
  font-size: 0.8em;
}
.selector-wrapper.has-pretty-select .size-chart-link::before {
  content: none;
}
.single-option .size-chart-link {
  margin-left: 0;
}
.single-option .size-chart-link::before {
  content: "(";
}
.single-option .size-chart-link::after {
  content: ")";
}

.size-chart-container {
  display: inline-block;
  padding-left: 0.25em;
}

.size-chart {
  padding: 20px;
  max-width: 84vw;
  width: 750px;
}
@media (max-width: 767px) {
  .size-chart {
    padding: 10px;
  }
  .size-chart table {
    display: flex;
    overflow: auto;
    width: 100%;
  }
}

.size-chart__inner {
  width: 100%;
  overflow: auto;
  text-align: center;
}
.size-chart__inner table {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
}
.size-chart__inner th,
.size-chart__inner td {
  text-align: center;
}

/* Accordion blocks rendered as popup trigger (open_as_popup): hide the +/-
   chevron affordance and show an arrow-up-right icon instead so the row
   signals "opens elsewhere" rather than "expands inline". */
.product-detail-accordion--popup .cc-accordion-item__title::before,
.product-detail-accordion--popup .cc-accordion-item__title::after {
  display: none;
}
/* The popup trigger reuses `.size-chart-link` so the existing Colorbox handler
   picks it up, but that class is styled for the inline variant-picker context
   (margin-left, lighter color, different weight). Reset those so the trigger
   row lines up with sibling accordion titles. */
.cc-accordion-item__title.size-chart-link {
  margin-left: 0;
  color: inherit;
  font-weight: 500;
  text-decoration: none;
}
/* Selector matches `.cc-accordion-item__title svg` specificity (line ~3770)
   plus one extra class to win the cascade and free the icon for abs-positioning. */
.cc-accordion-item__title svg.product-detail-accordion__popup-icon {
  position: absolute;
  top: 50%;
  right: 0;
  width: 13px;
  height: 13px;
  max-width: none;
  margin: 0;
  transform: translateY(-50%);
  color: currentColor;
  pointer-events: none;
  flex: none;
}

.cc-swatches label, .cc-swatches .sharing-label,
.cc-swatches .social-label {
  justify-content: flex-start !important;
}
.cc-swatches label .cc-swatches__label, .cc-swatches .sharing-label .cc-swatches__label,
.cc-swatches .social-label .cc-swatches__label {
  padding-left: 0.3em;
  font-weight: normal;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li, .cc-product-filter .cc-swatches li, .product-block .cc-swatches li, .collection-block .cc-swatches li {
  padding-right: 0.5em;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox, .cc-product-filter .cc-swatches li a, .cc-product-filter .cc-swatches li button, .cc-product-filter .cc-swatches li .cc-checkbox, .product-block .cc-swatches li a, .collection-block .cc-swatches li a, .product-block .cc-swatches li button, .collection-block .cc-swatches li button, .product-block .cc-swatches li .cc-checkbox, .collection-block .cc-swatches li .cc-checkbox {
  display: inline-block;
  overflow: hidden;
  position: relative;
  text-indent: -1000px;
  opacity: 1;
  padding: 2px;
  margin-right: 4px;
  border: 2px solid #ffffff;
  border-radius: 100%;
  box-shadow: 0 0 0 2px #d9d9d9;
  transition: box-shadow 0.5s;
  height: 35px;
  width: 35px;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a:hover, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button:hover, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox:hover, .cc-product-filter .cc-swatches li a:hover, .cc-product-filter .cc-swatches li button:hover, .cc-product-filter .cc-swatches li .cc-checkbox:hover, .product-block .cc-swatches li a:hover, .collection-block .cc-swatches li a:hover, .product-block .cc-swatches li button:hover, .collection-block .cc-swatches li button:hover, .product-block .cc-swatches li .cc-checkbox:hover, .collection-block .cc-swatches li .cc-checkbox:hover {
  box-shadow: 0 0 0 2px #6f6f6f;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a.active, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button.active, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox.active, .cc-product-filter .cc-swatches li a.active, .cc-product-filter .cc-swatches li button.active, .cc-product-filter .cc-swatches li .cc-checkbox.active, .product-block .cc-swatches li a.active, .collection-block .cc-swatches li a.active, .product-block .cc-swatches li button.active, .collection-block .cc-swatches li button.active, .product-block .cc-swatches li .cc-checkbox.active, .collection-block .cc-swatches li .cc-checkbox.active {
  box-shadow: 0 0 0 2px #000000;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a::before, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button::before, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox::before, .cc-product-filter .cc-swatches li a::before, .cc-product-filter .cc-swatches li button::before, .cc-product-filter .cc-swatches li .cc-checkbox::before, .product-block .cc-swatches li a::before, .collection-block .cc-swatches li a::before, .product-block .cc-swatches li button::before, .collection-block .cc-swatches li button::before, .product-block .cc-swatches li .cc-checkbox::before, .collection-block .cc-swatches li .cc-checkbox::before {
  box-sizing: border-box;
  content: "";
  display: inline-block;
  height: 100%;
  width: 100%;
  border-radius: 100%;
  background-color: #d9d9d9;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a::after, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button::after, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox::after, .cc-product-filter .cc-swatches li a::after, .cc-product-filter .cc-swatches li button::after, .cc-product-filter .cc-swatches li .cc-checkbox::after, .product-block .cc-swatches li a::after, .collection-block .cc-swatches li a::after, .product-block .cc-swatches li button::after, .collection-block .cc-swatches li button::after, .product-block .cc-swatches li .cc-checkbox::after, .collection-block .cc-swatches li .cc-checkbox::after {
  display: none;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a.unavailable::before, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button.unavailable::before, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox.unavailable::before, .cc-product-filter .cc-swatches li a.unavailable::before, .cc-product-filter .cc-swatches li button.unavailable::before, .cc-product-filter .cc-swatches li .cc-checkbox.unavailable::before, .product-block .cc-swatches li a.unavailable::before, .collection-block .cc-swatches li a.unavailable::before, .product-block .cc-swatches li button.unavailable::before, .collection-block .cc-swatches li button.unavailable::before, .product-block .cc-swatches li .cc-checkbox.unavailable::before, .collection-block .cc-swatches li .cc-checkbox.unavailable::before {
  opacity: 1;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li a.unavailable::after, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li button.unavailable::after, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li .cc-checkbox.unavailable::after, .cc-product-filter .cc-swatches li a.unavailable::after, .cc-product-filter .cc-swatches li button.unavailable::after, .cc-product-filter .cc-swatches li .cc-checkbox.unavailable::after, .product-block .cc-swatches li a.unavailable::after, .collection-block .cc-swatches li a.unavailable::after, .product-block .cc-swatches li button.unavailable::after, .collection-block .cc-swatches li button.unavailable::after, .product-block .cc-swatches li .cc-checkbox.unavailable::after, .collection-block .cc-swatches li .cc-checkbox.unavailable::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 1;
  background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' version='1.1' preserveAspectRatio='none' viewBox='0 0 100 100'><path vector-effect='non-scaling-stroke' d='M100 0 L0 100 ' stroke='white' stroke-width='2'/></svg>");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% 100%, auto;
}
.cc-swatches select[data-colour-swatch=true] + .clickyboxes li.active a, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li.active button, .cc-swatches select[data-colour-swatch=true] + .clickyboxes li.active .cc-checkbox, .cc-product-filter .cc-swatches li.active a, .cc-product-filter .cc-swatches li.active button, .cc-product-filter .cc-swatches li.active .cc-checkbox, .product-block .cc-swatches li.active a, .collection-block .cc-swatches li.active a, .product-block .cc-swatches li.active button, .collection-block .cc-swatches li.active button, .product-block .cc-swatches li.active .cc-checkbox, .collection-block .cc-swatches li.active .cc-checkbox {
  box-shadow: 0 0 0 2px #000000;
}
.cc-swatches li[data-swatch-native] .cc-checkbox::before {
  display: none;
}
.cc-swatches li[data-swatch-native] .cc-checkbox .swatch-sample {
  box-sizing: border-box;
  display: inline-block;
  height: 100%;
  width: 100%;
  border-radius: 100%;
  background-color: #d9d9d9;
  background-position: center;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
}
.cc-swatches li[data-swatch-native] .cc-checkbox .swatch-sample .swatch-sample__img {
  display: block;
  width: 100%;
  max-width: none;
  height: 100%;
  object-fit: cover;
}
.cc-swatches .size-chart-link {
  margin-left: 0;
  font-size: 0.8em;
}

.cc-product-filter .cc-swatches {
  display: flex;
  flex-wrap: wrap;
}
.cc-product-filter .cc-swatches li {
  flex: 0 0 35px;
}
@media (min-width: 768px) {
  .cc-product-filter .cc-swatches {
    margin-right: -8px;
  }
  .cc-product-filter .cc-swatches li {
    flex: 0 0 25%;
    padding-right: 8px;
  }
  .cc-product-filter .cc-swatches li .cc-checkbox {
    margin: 0;
  }
}
@media (min-width: 992px) {
  .cc-product-filter .cc-swatches li {
    flex: 0 0 20%;
  }
}


.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button,
.product-block .cc-swatches-prod-img li a,
.collection-block .cc-swatches-prod-img li a,
.product-block .cc-swatches-prod-img li button,
.collection-block .cc-swatches-prod-img li button {
  border: none;
  padding-right: 0;
  margin-right: 0;
  width: 48px;
}
@media (min-width: 768px) {
  .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button,
  .product-block .cc-swatches-prod-img li a,
  .collection-block .cc-swatches-prod-img li a,
  .product-block .cc-swatches-prod-img li button,
  .collection-block .cc-swatches-prod-img li button {
    width: 64px;
  }
}
.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a.unavailable, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button.unavailable,
.product-block .cc-swatches-prod-img li a.unavailable,
.collection-block .cc-swatches-prod-img li a.unavailable,
.product-block .cc-swatches-prod-img li button.unavailable,
.collection-block .cc-swatches-prod-img li button.unavailable {
  opacity: 0.5;
}
.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a.unavailable:before, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button.unavailable:before,
.product-block .cc-swatches-prod-img li a.unavailable:before,
.collection-block .cc-swatches-prod-img li a.unavailable:before,
.product-block .cc-swatches-prod-img li button.unavailable:before,
.collection-block .cc-swatches-prod-img li button.unavailable:before {
  display: block;
}
.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a:not(.active), .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button:not(.active),
.product-block .cc-swatches-prod-img li a:not(.active),
.collection-block .cc-swatches-prod-img li a:not(.active),
.product-block .cc-swatches-prod-img li button:not(.active),
.collection-block .cc-swatches-prod-img li button:not(.active) {
  box-shadow: none;
}


.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button,
.cc-product-filter .cc-swatches-prod-img li a,
.cc-product-filter .cc-swatches-prod-img li button,
.product-block .cc-swatches-prod-img li a,
.collection-block .cc-swatches-prod-img li a,
.product-block .cc-swatches-prod-img li button,
.collection-block .cc-swatches-prod-img li button {
  height: auto;
  line-height: 0;
  border-radius: 0;
}
.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li a::before, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button, .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li button::before,
.cc-product-filter .cc-swatches-prod-img li a,
.cc-product-filter .cc-swatches-prod-img li a::before,
.cc-product-filter .cc-swatches-prod-img li button,
.cc-product-filter .cc-swatches-prod-img li button::before,
.product-block .cc-swatches-prod-img li a,
.collection-block .cc-swatches-prod-img li a,
.product-block .cc-swatches-prod-img li a::before,
.collection-block .cc-swatches-prod-img li a::before,
.product-block .cc-swatches-prod-img li button,
.collection-block .cc-swatches-prod-img li button,
.product-block .cc-swatches-prod-img li button::before,
.collection-block .cc-swatches-prod-img li button::before {
  border-radius: 0;
}

body .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes a {
  padding-top: 120%;
}


.cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes li {
  margin-right: 8px;
  margin-bottom: 8px;
  padding-right: 0;
}
.product-detail__form__options .cc-swatches-prod-img select[data-colour-swatch=true] + .clickyboxes .active::before {
  z-index: -1;
}

.product-block .cc-swatches-prod-img li a, .collection-block .cc-swatches-prod-img li a, .product-block .cc-swatches-prod-img li button, .collection-block .cc-swatches-prod-img li button {
  box-shadow: none;
  border: 1px solid #ffffff;
  transition: border-color 0.4s;
}
.product-block .cc-swatches-prod-img li a:hover, .collection-block .cc-swatches-prod-img li a:hover, .product-block .cc-swatches-prod-img li button:hover, .collection-block .cc-swatches-prod-img li button:hover {
  box-shadow: none !important;
  border-color: #000000;
}



ul.cc-swatches {
  list-style-type: none;
  margin: 0 0 -10px 0;
  padding: 2px;
}
ul.cc-swatches li {
  padding-left: 0;
  display: inline-block;
  margin-bottom: 10px;
}
ul.cc-swatches .cc-checkbox {
  cursor: pointer;
}
ul.cc-swatches .cc-checkbox.disabled {
  pointer-events: none;
  opacity: 0.5;
}
.product-block ul.cc-swatches, .collection-block ul.cc-swatches {
  margin: 0 -8px -8px 1px;
  text-align: left;
  padding: 12px 0 0;
  display: flex;
}
.product-block ul.cc-swatches.cc-swatches-prod-img-square, .collection-block ul.cc-swatches.cc-swatches-prod-img-square, .product-block ul.cc-swatches.cc-swatches-prod-img-natural, .collection-block ul.cc-swatches.cc-swatches-prod-img-natural {
  margin-left: 0;
}
.product-block ul.cc-swatches .product-block__more-label, .collection-block ul.cc-swatches .product-block__more-label {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  margin-right: 0;
}
.product-block ul.cc-swatches .product-block__more-label span, .collection-block ul.cc-swatches .product-block__more-label span {
  height: 23px;
  width: 23px;
  line-height: 23px;
  display: inline-block;
  box-shadow: none;
  background-color: transparent;
  overflow: hidden;
}
.product-block ul.cc-swatches li, .collection-block ul.cc-swatches li {
  margin-bottom: 8px;
  margin-right: 8px;
  padding-right: 0;
  height: 24px;
  width: 24px;
}
.product-block ul.cc-swatches a, .collection-block ul.cc-swatches a {
  height: 23px;
  width: 23px;
  padding: 0;
  margin-right: 0;
  background-color: #d9d9d9;
  background-position: center;
  background-size: cover;
  box-shadow: 0 0 0 1px #d9d9d9;
}
.product-block ul.cc-swatches a::before, .collection-block ul.cc-swatches a::before {
  display: none;
}
.product-block ul.cc-swatches a.unavailable::before, .collection-block ul.cc-swatches a.unavailable::before {
  opacity: 0.5;
}
.product-block ul.cc-swatches a.unavailable::after, .collection-block ul.cc-swatches a.unavailable::after {
  content: "";
  border-width: 1px;
}
.product-block ul.cc-swatches a:hover, .collection-block ul.cc-swatches a:hover {
  box-shadow: 0 0 0 1px #6f6f6f;
}
.product-block ul.cc-swatches.cc-swatches-prod-img li a, .collection-block ul.cc-swatches.cc-swatches-prod-img li a {
  height: 100%;
  width: 100%;
}
.product-block ul.cc-swatches.cc-swatches-prod-img-square li, .collection-block ul.cc-swatches.cc-swatches-prod-img-square li, .product-block ul.cc-swatches.cc-swatches-prod-img-circle li, .collection-block ul.cc-swatches.cc-swatches-prod-img-circle li, .product-block ul.cc-swatches.cc-swatches-prod-img-natural li, .collection-block ul.cc-swatches.cc-swatches-prod-img-natural li {
  width: 36px;
  height: 36px;
}
.product-block ul.cc-swatches.cc-swatches-prod-img-square li a, .collection-block ul.cc-swatches.cc-swatches-prod-img-square li a, .product-block ul.cc-swatches.cc-swatches-prod-img-square li a:hover, .product-block ul.cc-swatches.cc-swatches-prod-img-circle li a, .collection-block ul.cc-swatches.cc-swatches-prod-img-circle li a, .product-block ul.cc-swatches.cc-swatches-prod-img-circle li a:hover, .product-block ul.cc-swatches.cc-swatches-prod-img-natural li a, .collection-block ul.cc-swatches.cc-swatches-prod-img-natural li a, .product-block ul.cc-swatches.cc-swatches-prod-img-natural li a:hover {
  box-shadow: none;
  border: none;
}
.product-block ul.cc-swatches.cc-swatches-prod-img-natural li, .collection-block ul.cc-swatches.cc-swatches-prod-img-natural li {
  height: auto;
}

:root {
  --payment-terms-background-color: #ffffff;
}

shopify-payment-terms {
  display: inline-block;
  width: 100%;
  margin: 1em 0;
}

#quick-buy-modal {
  color: #000000;
  background-color: #ffffff;
}
#quick-buy-modal .product-area.product-area--one-col .product-area__thumbs {
  top: 60px;
}
@media (min-width: 1100px) {
  #quick-buy-modal .product-area.product-area--restrict-width.product-area--one-col .theme-images {
    padding-top: 60px;
  }
}
#quick-buy-modal .product-area__details__header {
  margin-top: 64px !important;
}
#quick-buy-modal .product-area__details__header, #quick-buy-modal .product-area__details {
  padding-top: 0;
}
#quick-buy-modal .cc-tabs {
  margin-top: 0;
}
#quick-buy-modal h1 {
  margin-bottom: 0;
}
#quick-buy-modal .product-detail__more_details {
  display: block;
}

.theme-filter-container .cc-product-filter-container {
  position: relative;
}
.theme-filter-container .cc-product-filter-container .cc-accordion {
  transition: opacity 0.3s;
}
@media (min-width: 768px) {
  .theme-filter-container .cc-product-filter-container:not(.pt-0) {
    padding-top: 30px;
  }
}
.theme-filter-container .cc-product-filter-container::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
  opacity: 0;
  visibility: hidden;
  background-color: #ffffff;
  transition: opacity 0.2s, visibility 0.2s;
}
@media (min-width: 768px) {
  .theme-filter-container .cc-product-filter-container {
    display: flex;
    align-items: flex-start;
  }
}
.theme-filter-container .cc-product-filter-container.cc-product-filter-container--loading {
  pointer-events: none;
}
.theme-filter-container .cc-product-filter-container.cc-product-filter-container--loading::after {
  opacity: 0.6;
  visibility: visible;
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter-container.cc-product-filter-container--loading .cc-accordion {
    opacity: 0.4;
  }
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter-container .product-list-container {
    padding-top: 10px;
  }
}
@media (min-width: 768px) {
  .theme-filter-container .cc-product-filter-container .product-list-container {
    flex: 1 0;
    position: relative;
  }
  .theme-filter-container .cc-product-filter-container .product-list-container.product-list-container--with-sidebar {
    margin-left: 50px;
  }
  .theme-filter-container .cc-product-filter-container .product-list-container.no-filters {
    margin-left: 0;
  }
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .active-filter-controls-container {
    position: relative;
    width: 100%;
  }
  .theme-filter-container .cc-product-filter-container .product-list-container .active-filter-controls-container::after {
    content: "";
    pointer-events: none;
    width: 30px;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
  }
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list {
    margin-top: -18px;
  }
}
@media (min-width: 768px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list {
    padding-bottom: 15px;
  }
}
@media (min-width: 1441px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list.jiggly-split:not([data-result-count="0"]) {
    margin-top: 60px !important;
  }
}
@media (min-width: 500px) and (max-width: 1199px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows {
    display: flex;
    flex-wrap: wrap;
    margin-left: -10px;
    margin-right: -10px;
  }
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows .product-block, .theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows .collection-block {
    width: calc(50% - 1px);
    padding-left: 10px;
    padding-right: 10px;
    margin-left: 0;
    margin-right: 0;
  }
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows.mob-two-col:not(.jiggly-split) .product-block, .theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows.mob-two-col:not(.jiggly-split) .collection-block {
    margin-top: 30px;
  }
}
.theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows .loading {
  position: absolute;
  top: 200px;
  left: 50%;
  transform: translateX(-50%);
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows .loading {
    position: fixed;
    z-index: 100;
  }
}
.theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows .loading svg {
  background: transparent !important;
  height: 50px;
  width: 50px;
}
.theme-filter-container .cc-product-filter-container .product-list-container .product-list.product-list--rows .loading svg circle {
  stroke: #000000;
}
.theme-filter-container .active-filter-controls {
  list-style-type: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 767px) {
  .theme-filter-container .active-filter-controls {
    margin-top: 20px;
    white-space: nowrap;
    overflow: auto;
  }
}
@media (min-width: 768px) {
  .theme-filter-container .active-filter-controls {
    margin-top: 40px;
  }
}
@media (min-width: 1441px) {
  .theme-filter-container .active-filter-controls {
    margin-top: 60px;
  }
}
.theme-filter-container .active-filter-controls li {
  display: inline-block;
  margin-right: 5px;
  margin-bottom: 7px;
}
@media (min-width: 768px) {
  .theme-filter-container .active-filter-controls li.active-filter-controls__clear-left {
    display: none;
  }
}
@media (max-width: 767px) {
  .theme-filter-container .active-filter-controls li.active-filter-controls__clear-right {
    display: none;
  }
}
.theme-filter-container .active-filter-controls li a {
  background-color: #eee;
  padding: 6px 12px;
  transition: opacity 0.3s;
  opacity: 0.8;
  font-size: 14px;
  line-height: 14px;
  display: block;
}
.theme-filter-container .active-filter-controls li a:not(.active-filter-controls__clear) {
  color: #333;
}
@media (min-width: 768px) {
  .theme-filter-container .active-filter-controls li a:hover {
    opacity: 1;
  }
}
.theme-filter-container .active-filter-controls li a::after {
  content: "×";
  font-weight: bold;
  padding: 0 0 0 7px;
}
.theme-filter-container .active-filter-controls li a.active-filter-controls__clear {
  background-color: transparent;
  text-decoration: underline;
}
.theme-filter-container .active-filter-controls li a.active-filter-controls__clear::after {
  display: none;
}
@media (max-width: 767px) {
  .theme-filter-container .cc-product-filter {
    transition: visibility 0.4s, opacity 0.4s, transform 0.3s;
    visibility: hidden;
    opacity: 0;
    transform: translate3d(0, 50px, 0) scale(1.05);
    position: fixed;
    z-index: 99;
    top: 0 !important;
    right: 0;
    left: 0;
    bottom: 65px;
    padding: 20px;
    overflow: auto;
    background-color: #ffffff;
    box-shadow: 0px -2px 4px 1px rgba(90, 90, 90, 0.2);
    height: auto !important;
  }
  .theme-filter-container .cc-product-filter.-in {
    visibility: visible;
    opacity: 1;
    transform: translate3d(0, 0, 0) scale(1);
  }
}
@media (min-width: 768px) {
  .theme-filter-container .cc-product-filter {
    display: block;
    margin-top: 40px;
    flex: 0 0 170px;
    padding-top: 0 !important;
  }
  .theme-filter-container .cc-product-filter.cc-product-filter--sticky-true {
    position: -webkit-sticky;
    position: sticky;
    top: var(--nav-height);
    overflow: auto;
  }
  .theme-filter-container .cc-product-filter #FacetsForm > .cc-accordion:first-child {
    margin-top: -20px;
  }
  .theme-filter-container .cc-product-filter #FacetsForm > .cc-accordion:last-of-type .cc-accordion-item {
    border-bottom: none;
  }
}
@media (min-width: 992px) {
  .theme-filter-container .cc-product-filter {
    flex-basis: 240px;
  }
}
.theme-filter-container .cc-product-filter .cc-checkbox {
  margin-bottom: 15px;
  display: flex;
}
@media (min-width: 768px) {
  .theme-filter-container .cc-product-filter .cc-checkbox {
    margin-bottom: 8px;
  }
}
.theme-filter-container .cc-product-filter .cc-checkbox__label {
  flex-grow: 1;
  word-break: break-word;
}
.theme-filter-container .cc-product-filter .cc-checkbox__count {
  font-size: 0.9em;
  opacity: 0.8;
  padding-left: 1em;
}
.theme-filter-container .cc-product-filter__sort-by {
  padding-left: 0;
  margin-top: 0;
}

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

.template-customers-login #customer_login_guest {
  text-align: center;
}
.template-customers-login .sign-in-with-shop {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.template-customers-login .sign-in-with-shop p {
  margin: 20px 0 0;
  text-align: center;
}

.template-customer-area .order_section_title {
  text-align: left;
}
@media (max-width: 767px) {
  .template-customer-area #customer_orders, .template-customer-area .order-details-wrapper {
    overflow-y: auto;
  }
}

.cart-list {
  margin: 0;
  padding: 0;
}
.cart-list .cart-item {
  list-style: none;
  margin: 2em 0;
}
.cart-list .col-image {
  flex: 0 0 auto;
  width: 66px;
  margin-right: 24px;
}
.cart-list .col-notimage {
  display: flex;
  flex-grow: 1;
  text-align: right;
}
.cart-list .desc {
  flex-grow: 1;
  text-align: left;
  margin-right: 24px;
}
.cart-list .desc .product-title {
  font-weight: 600;
  display: block;
  margin-bottom: 0.5em;
}
.cart-list .item-price {
  width: 160px;
}
.cart-list .quantity-and-remove {
  margin: 0 24px;
  text-align: center;
  width: 128px;
}
.cart-list .quantity {
  flex: 0 0 auto;
  display: inline-block;
  position: relative;
  padding: 3px 44px;
  background: #FFFFFF;
  color: #000000;
  border: 1px solid #bfbfbf;
  overflow: hidden;
  width: 128px;
}
@media (min-width: 768px) {
  .cart-list .quantity {
    width: 100%;
  }
}
.cart-list .quantity .plus,
.cart-list .quantity .minus {
  position: absolute;
  top: 0;
  height: 100%;
  text-align: center;
  width: 44px;
}
.cart-list .quantity .plus span,
.cart-list .quantity .minus span {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  line-height: 1em;
  margin-top: calc(-0.5em - 1px);
  font-weight: 500;
  color: #6b6b6b;
  font-size: 17px;
  font-family: Tahoma;
}
.cart-list .quantity .minus {
  left: 0;
}
.cart-list .quantity .plus {
  right: 0;
}
.cart-list .quantity .plus span {
  margin-top: calc(-0.5em - 1px);
}
.cart-list .quantity input {
  text-align: center;
  background: #FFFFFF;
  color: #000000;
  border: none;
  color: inherit;
  padding: 0.7em 0;
  width: 55px;
}
@media (min-width: 768px) {
  .cart-list .quantity input {
    width: 3em;
  }
}
.cart-list .cart-item__remove {
  display: inline-block;
  border-bottom: 1px solid;
  line-height: 1.2em;
  opacity: 0.6;
  font-size: 80%;
}
.cart-list .cart-item__remove:hover {
  opacity: 1;
}
.cart-list .line-total {
  flex: 0 0 auto;
  width: 100px;
}
@media (max-width: 767px) {
  .cart-list .cart-list-header {
    display: none;
  }
  .cart-list .col-notimage {
    display: block;
  }
  .cart-list .desc,
  .cart-list .item-price,
  .cart-list .quantity-and-remove {
    width: auto;
    margin: 0;
    text-align: left;
  }
  .cart-list .item-price {
    margin-top: 0.5em;
  }
  .cart-list .quantity-and-remove {
    margin-top: 1em;
  }
  .cart-list .quantity {
    vertical-align: middle;
  }
  .cart-list .cart-item__remove {
    margin-left: 1em;
    vertical-align: middle;
  }
  .cart-list .line-total {
    display: none;
  }
}
.cart-list .product-label {
  box-shadow: 0 0 2px 0 rgba(90, 90, 90, 0.2);
  margin: 0.5em 0;
}

.cart-form--refreshing .js-disable-while-updating,
.cart-list--loading .js-disable-while-updating {
  opacity: 0.5;
  pointer-events: none;
  cursor: default;
}

.cart-list-header {
  padding-bottom: 0.5em;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
}

.update-continue {
  margin: 1em 0;
  text-align: center;
}
.update-continue input {
  vertical-align: baseline;
}
.update-continue span {
  margin: 0 0.2em;
}

.under-cart__subtotal {
  text-align: center;
}
.under-cart__subtotal .rte, .under-cart__subtotal #comments, .under-cart__subtotal #template, .under-cart__subtotal #address_tables {
  text-align: inherit;
}

.under-cart .terms {
  margin-bottom: 0;
}
.under-cart .terms label, .under-cart .terms .sharing-label,
.under-cart .terms .social-label {
  display: inline;
}

.under-cart .subtotal-row {
  padding: 1em 0;
  border-top: 1px solid;
  border-bottom: 1px solid;
}

.under-cart .subtotal {
  display: flex;
  justify-content: space-between;
}

.under-cart .note-area {
  margin-top: 1em;
}
.under-cart .note-area textarea {
  display: block;
  margin: 0 auto;
}

.under-cart .cart-policies {
  margin-top: 1em;
}

.under-cart .checkout-btn {
  width: 100%;
  max-width: 432px;
  margin: 1.4em 0 0;
}
@media (min-width: 768px) {
  .under-cart .checkout-btn {
    width: auto;
    max-width: none;
  }
}

.under-cart .additional-checkout-buttons {
  margin: 1.4em auto;
}

.under-cart__gap-lg,
.under-cart__accordion {
  margin-top: 1.4em;
  margin-bottom: 1.4em;
}

.under-cart__accordion + .under-cart__accordion {
  margin-top: -1.4em;
}

.under-cart__gap-lg:first-child,
.under-cart__rich-text > :first-child {
  margin-top: 0;
}

.under-cart__gap-lg:last-child,
.under-cart__rich-text > :last-child {
  margin-bottom: 0;
}

.under-cart__rich-text > ul,
.under-cart__rich-text > ol {
  display: inline-block;
  padding-left: 0;
  list-style-position: inside;
  text-align: left;
}

.under-cart__text {
  line-height: 1.5em;
}

.under-cart__link {
  display: inline-block;
}
.under-cart__link:not(.button) {
  color: #807497;
  border-bottom: 1px solid #807497;
}

.under-cart__image {
  margin-inline: auto;
}
.under-cart__image.align-left {
  margin-inline-start: 0;
}
.under-cart__image.align-right {
  margin-inline-end: 0;
}

.cart-discount-list {
  margin: 1em 0;
  padding: 0;
}
.cart-discount-list:first-child {
  margin-top: 0;
}
.cart-discount-list:last-child {
  margin-bottom: 0;
}

.cart-discount {
  list-style: none;
}
.cart-discount:not(:last-child) {
  margin-bottom: 0.5em;
}

.cart-discount--inline .cart-discount__label {
  margin-right: 1em;
}

.select-on-focus {
  -moz-appearance: textfield;
}

.additional-checkout-buttons {
  width: 100%;
  max-width: 432px;
  margin: 0 auto;
}
.additional-checkout-buttons shopify-accelerated-checkout-cart {
  --shopify-accelerated-checkout-button-block-size: 57px;
  --shopify-accelerated-checkout-button-inline-size: 57px;
  --shopify-accelerated-checkout-button-border-radius: var(--btn-border-radius, 0);
  --shopify-accelerated-checkout-button-box-shadow: none;
  --shopify-accelerated-checkout-inline-alignment: center;
  --wallet-button-container-margin-vertical: 0px;
  --shopify-accelerated-checkout-row-gap: 16px;
  --shopify-accelerated-checkout-skeleton-background-color: rgba(0, 0, 0, 0);
  --shopify-accelerated-checkout-skeleton-animation-opacity-start: 0;
  --shopify-accelerated-checkout-skeleton-animation-opacity-end: 0;
  --shopify-accelerated-checkout-skeleton-animation-duration: 0s;
}

.template-blog [data-section-type=blog-template].content {
  padding-top: 0 !important;
}
.template-blog .blog-read-more {
  border-bottom: 1px solid;
}
.template-blog .blog-read-more:hover {
  color: #000000;
}
.template-blog .feature-header {
  position: relative;
  margin-bottom: 0.25em;
}
.template-blog .feature-header span {
  position: relative;
}
.template-blog .feature-header .rsslink {
  position: absolute;
  top: -20px;
  right: -30px;
}
.template-blog .rsslink:not(.no-filter) {
  margin-right: 1em;
}
.template-blog .option {
  display: inline-block;
}
.template-blog .article-block__title {
  color: #000000;
}
.template-blog .blog-toolbar {
  margin-top: 1em;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (min-width: 768px) {
  .template-blog .blog-toolbar {
    margin-top: 0;
    justify-content: flex-end;
  }
}

.section-featured-blog .wide-container:not(.use-alt-bg) .article-block__title {
  color: #000000;
}

.article-block {
  width: 100%;
  display: inline-block;
  text-align: left;
}
@media (min-width: 768px) {
  html:not(.touch) .article-block:hover .article-block__image .placeholder-image, html:not(.touch) .article-block:hover .article-block__image .rimage__image {
    transform: scale(1.07);
  }
  html:not(.touch) .article-block:hover .article-block__image.image-overlay::after {
    opacity: 1;
  }
  html:not(.touch) .article-block:hover .article-block__image.image-overlay .article-block__excerpt {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
  }
}
.article-block .cc-bullet {
  font-size: 0.5em;
  position: relative;
  top: -0.25em;
}
.article-block .article-block__meta {
  line-height: 1em;
  margin-bottom: 0.5em;
}
.article-block .article-block__title {
  font-family: Helvetica, Arial, sans-serif;
  font-weight: ;
  font-size: 14px;
  font-style: normal;
  line-height: 1.5em;
}
.article-block.article-block--excerpt-below .article-block__excerpt {
  max-width: 550px;
}
.article-block.article-block--excerpt-below .article-block__excerpt p:first-child {
  margin-top: 0.55em;
}
.article-block .feature-subheader, .article-block #comments .comment .comment-date, #comments .comment .article-block .comment-date {
  text-align: left;
  font-size: 0.75em;
}

.article-block__image {
  margin-bottom: 0.75em;
  position: relative;
  overflow: hidden;
}
.article-block__image.image-overlay::after {
  transition: opacity 0.4s;
  opacity: 0;
}
.article-block__image .placeholder-image {
  object-fit: cover;
  height: 100%;
  width: 100%;
  padding-top: 0;
  object-position: center;
  min-height: 250px;
}
.article-block__image .rimage__image {
  object-fit: cover;
  object-position: center center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.article-block__image .placeholder-image, .article-block__image .rimage__image {
  will-change: transform;
  transition: transform 0.6s ease-out;
}
.article-block__image.article-block__image--landscape .rimage-wrapper, .article-block__image.article-block__image--landscape .placeholder-image {
  padding-top: 66.6% !important;
}
.article-block__image.article-block__image--square .rimage-wrapper, .article-block__image.article-block__image--square .placeholder-image {
  padding-top: 100% !important;
}
.article-block__image.article-block__image--portrait .rimage-wrapper, .article-block__image.article-block__image--portrait .placeholder-image {
  padding-top: 150% !important;
}
.article-block__image.article-block__image--portrait_tall .rimage-wrapper, .article-block__image.article-block__image--portrait_tall .placeholder-image {
  padding-top: 125% !important;
}
.article-block__image .article-block__excerpt {
  display: none;
  opacity: 0;
  visibility: hidden;
  padding: 20px;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 2;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  transform: translateY(20px);
  will-change: transform, opacity, visibility;
  transition: opacity 0.5s, visibility 0.5s, transform 0.5s ease-out;
}
.article-block__image .article-block__excerpt p {
  font-size: 14px;
  margin: 0 0 16px 0;
  max-height: calc(100% - 60px);
  overflow: hidden;
  max-width: 32em;
}
.article-block__image .article-block__excerpt .button {
  border: none;
}
@media (min-width: 768px) {
  html:not(.touch) .article-block__image .article-block__excerpt {
    display: flex;
  }
}

@media (max-width: 767px) {
  .cc-articles:not(.mob-two-col) .article-block {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
.cc-articles .article-block .rimage-outer-wrapper {
  max-width: none !important;
}
@media (min-width: 768px) {
  .cc-articles .article-block {
    padding-top: 20px;
    padding-bottom: 20px;
  }
}
@media (min-width: 992px) {
  .cc-articles.product-list--collage .article-block .rimage-wrapper, .cc-articles.product-list--collage .article-block .placeholder-image {
    padding-top: 0 !important;
    height: 29vw;
  }
  .cc-articles.product-list--collage .article-column {
    clear: none !important;
  }
  .cc-articles.product-list--collage .article-column:nth-child(1), .cc-articles.product-list--collage .article-column:nth-child(6), .cc-articles.product-list--collage .article-column:nth-child(11), .cc-articles.product-list--collage .article-column:nth-child(16), .cc-articles.product-list--collage .article-column:nth-child(21) {
    width: 50%;
  }
  .cc-articles.product-list--collage .article-column:nth-child(4), .cc-articles.product-list--collage .article-column:nth-child(7), .cc-articles.product-list--collage .article-column:nth-child(11), .cc-articles.product-list--collage .article-column:nth-child(14), .cc-articles.product-list--collage .article-column:nth-child(17), .cc-articles.product-list--collage .article-column:nth-child(21), .cc-articles.product-list--collage .article-column:nth-child(24) {
    clear: left !important;
  }
}

.template-collection .collection-header {
  position: relative;
  overflow: hidden;
}
.template-collection .collection-header .rimage-outer-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}
.template-collection .collection-header .overlay-type {
  position: relative;
}
.template-collection .collection-header .overlay-type .central {
  padding: 1em 0 2em;
}
@media (min-width: 768px) {
  .template-collection .collection-header .overlay-type .central {
    padding: 3em 0 5em;
  }
}
@media (min-width: 1200px) {
  .template-collection .collection-header .overlay-type .central {
    padding: 5em 0 7em;
  }
}
.template-collection .collection-header .overlay-type .central .feature-header:after {
  border-color: #ffffff;
}

/* Override to globally-hosted search.css on the /search page */
#searchresults {
  margin: 0;
}
#searchresults input {
  width: auto;
}

.jiggly-split:not([data-result-count="0"]) .search-result {
  border-bottom: 40px solid transparent;
}
.search-result .search-result__title {
  text-align: left;
  font-family: Helvetica, Arial, sans-serif;
  font-weight: ;
  font-size: 14px;
  font-style: normal;
  line-height: 1.5em;
}

/* Shopify's customer templates */
#template .title, #address_tables .title {
  margin-top: 1em;
}
#template #customer, #address_tables #customer {
  width: 100%;
}
#template #forgot_password, #address_tables #forgot_password {
  margin: 1em 0;
}
#page-content .content #template, #page-content .content #address_tables {
  background: transparent;
  padding: 0;
}
#page-content .content #template input[type=text], #page-content .content #address_tables input[type=text],
#page-content .content #template input[type=email],
#page-content .content #address_tables input[type=email],
#page-content .content #template input[type=address],
#page-content .content #address_tables input[type=address],
#page-content .content #template input[type=number],
#page-content .content #address_tables input[type=number],
#page-content .content #template input[type=date],
#page-content .content #address_tables input[type=date],
#page-content .content #template input[type=search],
#page-content .content #address_tables input[type=search],
#page-content .content #template input[type=url],
#page-content .content #address_tables input[type=url],
#page-content .content #template input[type=password],
#page-content .content #address_tables input[type=password],
#page-content .content #template textarea,
#page-content .content #address_tables textarea {
  width: 380px;
}

#address_tables table {
  width: auto !important;
  max-width: 100%;
}
#address_tables .customer_address_table label, #address_tables .customer_address_table .sharing-label,
#address_tables .customer_address_table .social-label {
  margin-top: 0;
  margin-bottom: 0;
  white-space: nowrap;
}

.action_bottom {
  margin: 0 0 1em;
}
.action_bottom.right {
  text-align: right;
}
.action_bottom.right input {
  margin-right: 0;
  margin-left: 0.5em;
}
.action_bottom input {
  margin-right: 0.5em;
}

.customer_address {
  margin: 60px 0 0;
}

.customer_address_table {
  margin: 0 auto;
}
.customer_address_table td {
  padding: 0.5em;
  text-align: left;
}
.customer_address_table select, .customer_address_table .value input:not([type=checkbox]) {
  width: 100%;
}
@media (max-width: 767px) {
  .customer_address_table .label {
    width: 50px;
  }
}

.action_link.action_return {
  margin-bottom: 2em;
}
.action_link.action_return a {
  margin: 0 5px;
}

.address_actions .action_link {
  padding: 0 0.5em 0 0.7em;
  border-left: 1px solid;
}
.address_actions .action_link:first-child {
  border-left: 0;
}

/* All auto-acct page areas */
#template, #address_tables {
  text-align: left;
  padding: 35px 0;
  margin-bottom: 1em;
  zoom: 1;
  background: #FFFFFF;
  -webkit-border-radius: 2px;
  -ms-border-radius: 2px;
  -moz-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
}
@media (min-width: 768px) {
  #template, #address_tables {
    padding: 35px 30px;
  }
}
#template table, #address_tables table {
  width: 100%;
}
#template::before, #address_tables::before {
  content: "";
  display: table;
}
#template::after, #address_tables::after {
  content: "";
  display: table;
  clear: both;
}

#admin_header {
  text-align: center;
}

#order_details {
  width: 100%;
}
#order_details td {
  vertical-align: top;
}

#add_address tr, #add_address td,
#address_tables tr,
#address_tables td {
  border: none;
}

#order_address {
  text-align: left;
}

@media (max-width: 600px) {
  #order_details .product {
    min-width: 60vw;
  }
}
#recover-password {
  width: 100%;
}

#comments {
  margin-top: 2em;
}
#comments > ul {
  padding: 0;
  margin-bottom: 0;
}
#comments > ul > li {
  list-style: none;
}
#comments h2 {
  margin-bottom: 0;
}
#comments .comment {
  margin-bottom: 3em;
}
#comments .comment .comment-author {
  font-size: 14px;
  font-weight: 600;
  text-align: left;
}
#comments #add-comment-title {
  margin-top: 2em;
}

.feedback {
  color: #000000;
  background: #ebebeb;
  border: 1px solid #808080;
  padding: 1em 1.5em;
  font-style: italic;
  -webkit-border-radius: 2px;
  -ms-border-radius: 2px;
  -moz-border-radius: 2px;
  -o-border-radius: 2px;
  border-radius: 2px;
}

.template-article #page-content {
  padding-bottom: 0;
}
.template-article #page-content .article-header {
  position: relative;
  overflow: hidden;
}
.template-article #page-content .article-header .rimage-outer-wrapper {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  left: 0;
}
.template-article #page-content .article-header .overlay-type {
  position: relative;
}
@media (max-width: 767px) {
  .template-article #page-content .article-header .overlay-type {
    padding-bottom: 30px;
    padding-top: 9em;
  }
}
@media (min-width: 768px) {
  .template-article #page-content .article-header .overlay-type {
    padding: 50px 0;
  }
}
@media (min-width: 1200px) {
  .template-article #page-content .article-header .overlay-type {
    padding-bottom: 70px;
  }
}
.template-article #page-content .article-header .overlay-type .content.central {
  background: transparent;
  text-align: left;
}
@media (max-width: 767px) {
  .template-article #page-content .article-header .overlay-type .content.central {
    padding: 0;
  }
}
@media (min-width: 768px) {
  .template-article #page-content .article-header .overlay-type .content.central {
    padding: 15vw 50px 0;
    width: 850px;
    max-width: 100%;
  }
}
@media (min-width: 992px) {
  .template-article #page-content .article-header .overlay-type .content.central {
    padding-left: 50px;
    padding-right: 50px;
  }
}
.template-article #page-content .article-header .overlay-type .content.central .line-1 {
  text-align: left;
}
.template-article #page-content .article-header .overlay-type .content.central .feature-subheader:last-child, .template-article #page-content .article-header .overlay-type .content.central #comments .comment .comment-date:last-child, #comments .comment .template-article #page-content .article-header .overlay-type .content.central .comment-date:last-child {
  margin-bottom: 0;
}
.template-article #page-content .article-header .overlay-type .content.central .feature-header::after {
  border-color: #ffffff;
}
@media (min-width: 768px) {
  .template-article .article-container.central {
    padding-top: 50px;
  }
}
.template-article .article .feature-subheader, .template-article .article #comments .comment .comment-date, #comments .comment .template-article .article .comment-date {
  text-align: center;
  margin-top: 1em;
}
.template-article .article .sharing {
  text-align: center;
  margin-bottom: 2em;
  margin-top: 3em;
}
.template-article .rte, .template-article #template, .template-article #address_tables, .template-article #comments {
  margin-top: 2em;
}
.template-article .rte p:first-child, .template-article #template p:first-child, .template-article #address_tables p:first-child, .template-article #comments p:first-child {
  margin-top: 0;
}
.template-article .rte.wide-image, .template-article .wide-image#template, .template-article .wide-image#address_tables, .template-article .wide-image#comments {
  margin-top: 0;
}
.template-article .other-products--articles .previous {
  padding-left: 1em;
}
.template-article .other-products--articles .next {
  padding-right: 1em;
}
.template-article .other-products--articles .other-products__product__arrow .arr {
  width: 23px;
  height: 23px;
  margin-top: -1px;
}
.template-article .other-products--articles .other-products__label,
.template-article .other-products--articles .other-products__product__title {
  font-size: 14px;
}

.template-password {
  height: auto;
}
.template-password body {
  min-height: 100vh;
  font-size: 15px;
  line-height: 1.3em;
  text-align: center;
  position: relative;
}
.template-password body::before {
  z-index: -1;
}
.template-password .password-container {
  display: table;
  height: 100%;
  width: 100%;
}
.template-password .password-store-name,
.template-password .password-main,
.template-password .password-footer {
  display: table-row;
}
.template-password .password-store-name-inner,
.template-password .password-main-inner,
.template-password .password-footer-inner {
  display: table-cell;
  padding: 20px;
}
.template-password .password-store-name {
  height: 1px;
}
.template-password .password-main {
  height: 100%;
}
.template-password .password-main-inner {
  vertical-align: middle;
}
.template-password .password-footer {
  height: 1px;
}
.template-password .password-login-link {
  margin: 20px 0 40px;
  text-align: right;
}
.template-password .password-login-link svg {
  width: 10px;
  height: 12px;
  margin-right: 4px;
  margin-top: -2px;
}
.template-password .password-container h1, .template-password .storefront-password-form h1 {
  font-size: 2em;
}
.template-password .password-container h1 a:hover, .template-password .storefront-password-form h1 a:hover {
  text-decoration: none;
}
.template-password .password-container h2, .template-password .password-container .h2, .template-password .storefront-password-form h2, .template-password .storefront-password-form .h2 {
  font-size: 4em;
}
.template-password .password-container h5, .template-password .storefront-password-form h5 {
  margin-bottom: 0.5em;
}
.template-password .password-container input[type=text], .template-password .password-container input[type=password], .template-password .storefront-password-form input[type=text], .template-password .storefront-password-form input[type=password] {
  height: 30px;
  padding: 4px;
  margin: 0 5px 0 0;
  color: #666;
  background: #fff;
  border: 1px solid #ccc;
  vertical-align: top;
  -webkit-border-radius: 3px;
  -moz-border-radius: 3px;
  border-radius: 3px;
}
.template-password .password-container input[type=submit], .template-password .storefront-password-form input[type=submit] {
  display: inline-block;
  background-color: #060108;
  color: #ffffff;
  vertical-align: top;
  border: 1px solid transparent;
  margin: 0;
  padding: 4px 14px;
  font-size: 90%;
  height: 30px;
  cursor: pointer;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
}
.template-password .password-container input[type=submit]:hover, .template-password .storefront-password-form input[type=submit]:hover {
  border-color: #060108;
}
.template-password .password-container .shopify-name, .template-password .storefront-password-form .shopify-name {
  display: none;
}
.template-password .password-message {
  margin-bottom: 2em;
}
.template-password .password-signup {
  margin-bottom: 4em;
}
.template-password .password-signup input[type=submit] {
  box-sizing: content-box;
  font-size: 16px;
  line-height: 36px;
  height: 36px;
  padding: 4px 18px;
  border: 1px solid #060108;
  -webkit-border-radius: 0 3px 3px 0;
  -ms-border-radius: 0 3px 3px 0;
  -moz-border-radius: 0 3px 3px 0;
  -o-border-radius: 0 3px 3px 0;
  border-radius: 0 3px 3px 0;
}
@media only screen and (max-width: 420px) {
  .template-password .password-signup input[type=submit] {
    margin: 0 0 10px;
    -webkit-border-radius: 3px;
    -ms-border-radius: 3px;
    -moz-border-radius: 3px;
    -o-border-radius: 3px;
    border-radius: 3px;
  }
}
.template-password .password-social .social-links__list {
  margin-left: -1em;
  margin-bottom: -1em;
}
.template-password .password-social .social-links__list li {
  margin-left: 1em;
  margin-bottom: 1em;
}
.template-password .password-social .social-links__list svg,
.template-password .password-social .social-links__list svg g {
  fill: currentColor;
}
.template-password .password-footer-inner {
  padding-top: 150px;
  line-height: 2em;
}
.template-password .password-footer-inner .powered-by, .template-password .password-footer-inner svg {
  vertical-align: top;
}
.template-password .password-footer-inner svg {
  margin: 0 0 0 5px;
  width: 80px;
  height: 23px;
}
.template-password #password-login {
  width: 300px;
  padding: 1em 0;
}
.template-password #password-login, .template-password #password-login a, .template-password #password-login a:link, .template-password #password-login a:visited, .template-password #password-login a:hover {
  color: #333;
}
.template-password #password-login label, .template-password #password-login .sharing-label,
.template-password #password-login .social-label {
  display: block;
  margin: 0 0 1.5em;
}
.template-password #password-login input[type=password] {
  width: 150px;
}
.template-password #password-login .password-owner {
  margin-top: 1.5em;
}
.template-password #cboxWrapper, .template-password #cboxContent {
  background-color: #fff;
}
.template-password .sharing-label {
  display: block;
}

.template-suffix-contact .form input[type=submit] {
  margin-bottom: 0;
}
.template-suffix-contact .errors {
  max-width: 500px;
  margin: 50px auto 0;
}

/*================ Giftcard Template ================*/
.template-giftcard {
  background: #ffffff;
  text-align: center;
  padding: 15px 0;
}

.giftcard {
  margin: 15px auto;
  max-width: 500px;
  padding: 20px;
}

.giftcard__illustration {
  position: relative;
  margin: 20px 0;
  overflow: hidden;
  border-radius: 0;
}
.giftcard__illustration img {
  display: block;
}

.giftcard__code {
  background: #fff;
  border-radius: 0;
  color: #484848;
  position: absolute;
  bottom: 10%;
  right: 50%;
  transform: translateX(50%);
  padding: 10px 20px;
  font-size: 22px;
  line-height: 1em;
  white-space: nowrap;
}

.giftcard-qr-row {
  margin: 15px 0;
}

.giftcard-qr {
  display: inline-block;
  background: #fff;
  padding: 10px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  overflow: hidden;
  border-radius: 0;
}
.giftcard-qr img {
  display: block;
  margin: 0 auto;
}

.giftcard-apple-wallet {
  margin: 15px 0;
}

.apple-wallet-image {
  display: block;
  margin: 0 auto;
}

.giftcard-button-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 15px;
}

.print-giftcard svg {
  margin-left: -10px;
  fill: none !important;
  stroke: currentColor !important;
  stroke-width: 2 !important;
}

/*================ Print Giftcard Styles ================*/
@media print {
  @page {
    margin: 0.5cm;
  }
  p {
    orphans: 3;
    widows: 3;
  }
  html,
  body {
    background-color: #fff;
    color: #000;
  }
  .print-giftcard,
  .apple-wallet {
    display: none;
  }
}
.template-search .no-results, .template-collection .no-results {
  margin-top: 50px;
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .template-search .no-results, .template-collection .no-results {
    width: 90%;
  }
}
.template-search #page-content > .shopify-section, .template-collection #page-content > .shopify-section {
  overflow: unset;
}
.template-search .pager-button, .template-search .pagination, .template-collection .pager-button, .template-collection .pagination {
  width: auto !important;
}
.template-search .footer-button-xs, .template-collection .footer-button-xs {
  z-index: 100;
}
.template-search h1, .template-collection h1 {
  margin-bottom: 0.75em;
}
.template-search .central .content .rte, .template-search .central .content #template, .template-search .central .content #address_tables, .template-search .central .content #comments, .template-collection .central .content .rte, .template-collection .central .content #template, .template-collection .central .content #address_tables, .template-collection .central .content #comments {
  text-align: center;
}

.template-faq .inline-mini-form {
  width: 100%;
}
.template-faq .inline-mini-form button svg {
  height: 21px;
  width: 21px;
}
@media (min-width: 768px) {
  .template-faq .accordion-container {
    max-width: none;
    padding-left: 50px;
    padding-right: 50px;
    width: 768px;
  }
}
@media (min-width: 992px) {
  .template-faq .accordion-container {
    width: 850px;
  }
}
.template-faq .accordion-container .container {
  width: 100%;
}
.template-faq .section-faq-accordion:not(.has-alt-bg) .section-spacing {
  padding-top: 0;
}
.template-faq .section-faq-accordion.has-alt-bg + .section-faq-accordion:not(.has-alt-bg) {
  padding-top: 50px;
}
@media (min-width: 768px) {
  .template-faq .section-faq-accordion.has-alt-bg + .section-faq-accordion:not(.has-alt-bg) {
    padding-top: 100px;
  }
}
.no-js .template-faq [data-section-type=faq] .inline-mini-form {
  display: none;
}
.template-faq .faq-search__no_results {
  margin-top: 2em;
  margin-bottom: 1em;
  display: none;
}
@media (min-width: 768px) {
  .template-faq .faq-search__no_results {
    margin-bottom: 5em;
  }
}
.template-faq .faq-no-results .faq-search__no_results {
  display: block;
}

@media (min-width: 768px) {
  #page-content .template-faq .section-faq {
    margin-bottom: 20px;
  }
  #page-content .template-faq .section-faq .content {
    width: 768px;
  }
  #page-content .template-faq .section-faq .content > *:first-child {
    margin-top: 0;
  }
}
@media (min-width: 992px) {
  #page-content .template-faq .section-faq .content {
    width: 850px;
  }
}

#page-content.faq-search-active .section-accordion[data-found-count="0"] {
  display: none;
}

@media (min-width: 768px) {
  .faq-sidebar-enabled #page-content .section-faq-accordion .accordion-container, .faq-sidebar-enabled #page-content .section-faq .content {
    padding-left: calc(200px + 50px);
  }
  .faq-sidebar-enabled #page-content .section-faq, .faq-sidebar-enabled #page-content .section-accordion {
    position: relative;
  }
}
@media (min-width: 992px) {
  .faq-sidebar-enabled #page-content .section-faq-accordion .accordion-container, .faq-sidebar-enabled #page-content .section-faq .content {
    padding-left: calc(220px + 50px);
  }
}
@media (min-width: 1200px) {
  .faq-sidebar-enabled #page-content .section-faq-accordion .accordion-container, .faq-sidebar-enabled #page-content .section-faq .content {
    padding-left: 50px;
    max-width: 775px;
    position: relative;
    right: -110px;
  }
}

.faq-sidebar {
  display: none;
}
@media (min-width: 768px) {
  .faq-sidebar {
    width: 200px;
    position: absolute;
    left: calc(50% - 200px - 35px);
    z-index: 1;
    transform: translateX(-50%);
    padding-bottom: 100px;
    padding-top: 50px;
    transition: top 0.2s, height 0.2s;
  }
  .faq-sidebar .faq-sidebar__inner {
    position: -webkit-sticky;
    position: sticky;
    top: 50px;
    max-height: 90vh;
    overflow: auto;
  }
  .faq-sidebar h3 {
    text-align: left;
    font-size: 14px;
    margin-bottom: 1em;
  }
  .faq-sidebar ol {
    padding: 0;
    margin: 0;
    list-style-type: none;
  }
  .faq-sidebar ol li {
    margin-bottom: 0.75em;
    padding-right: 20px;
  }
  .faq-sidebar a {
    transition: opacity 0.4s;
    opacity: 0.5;
  }
  .faq-sidebar a.faq-sidebar--active {
    opacity: 1;
  }
  .faq-sidebar a.faq-sidebar--disabled {
    pointer-events: none;
  }
  .faq-sidebar-enabled .faq-sidebar {
    display: inline-block;
  }
  .no-js .faq-sidebar {
    display: none;
  }
}
@media (min-width: 992px) {
  .faq-sidebar {
    width: 220px;
    left: calc(50% - 220px - 45px);
  }
}
@media (min-width: 1200px) {
  .faq-sidebar {
    width: 220px;
    left: calc(50% - 338px);
  }
}

/*************    ---                   ---                   ---   *************/
/*************    |     ENTER YOUR CUSTOM CODE BELOW HERE       |   *************/
/*************    ---                   ---                   ---   *************/
/* SALES discount rectangle — sits in the price row of cards (.price-line) and the
   product page (.price-area). On cards it's a sibling of .price so the card's
   .price{opacity:.7} can't dim it. Colour from theme: Product prices > Sale badge. */
.caption__row .price-line {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.5rem;
  width: 100%;
}
.product-block .price-line .price-badge,
.price-area .price-badge {
  display: inline-block;
  background: #FF7800;        /* theme: Product prices > Sale badge background */
  color: #ffffff;        /* theme: Product prices > Sale badge text */
  opacity: 1;                              /* stay vivid even though the card price is dimmed */
  font-weight: 700;
  font-size: 0.8rem;
  line-height: 1.2;
  letter-spacing: 0.02em;
  text-transform: uppercase;
  white-space: nowrap;
  padding: 0.15rem 0.45rem;
  border-radius: 4px;
  vertical-align: middle;
}

/* Current price — real card selector: span.theme-money inside .price, excluding the strikethrough (was phantom .price-main) */
.product-block .price > .theme-money:not(.was-price) {
  color: #000000 !important;   /* theme: Product prices > Price */
  font-weight: 400 !important;   /* theme: Product prices > Price font weight */
}

/* Current price — product page, all layouts: price text in .price-area that isn't the strikethrough
   (.price.theme-money in simple layout, .current-price.theme-money in three-col) */
.price-area .theme-money:not(.was-price) {
  color: #000000 !important;   /* theme: Product prices > Price */
  font-weight: 400 !important;   /* theme: Product prices > Price font weight */
}

/* PRECIO ANTERIOR TACHADO: colección + producto */
.product-block .price .was-price.theme-money,
.price-area .was-price.theme-money {
  color: #ff7800 !important;   /* theme: Product prices > Compare-at. .price-area = real product-page container (was phantom .product-page-price) */
  opacity: 1 !important;   /* override base .was-price{opacity:.5} so the opacity slider controls full range */
  font-weight: 400 !important;   /* theme: Product prices > Compare-at font weight */
  text-decoration: line-through;
  margin-right: 0.25rem;
}

.price--red {
  color: #000000 !important;
  font-weight: bold; /* optional */
}

.current-price .theme-money {
  color: #000000 !important;
  font-weight: bold; /* optional */
}

/* ============================================================
   FAST ADD-TO-CART
   ============================================================ */

/* --- Caption row: title left, price right --- */
.caption__row {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1px;
  width: 100%;
}
.caption__row .title {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}
.caption__row .price {
  flex-shrink: 0;
  white-space: nowrap;
  text-align: left;
  margin: 0;
  opacity: 0.7;
  font-size: 0.95em;
}

/* --- Desktop overlay --- */
.fast-add {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 4;
  opacity: 0;
  transform: translateY(8px);
  transition: opacity 0.2s ease, transform 0.2s ease;
  pointer-events: none;
}
html:not(.touch) .product-block:hover .fast-add {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}
.fast-add__sizes {
  display: flex;
  flex-wrap: nowrap;
  gap: 6px;
  padding: 10px 12px;
  background: rgba(0,0,0,0.55);
  overflow-x: auto;
  justify-content: space-between;
  align-items: center;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  -ms-overflow-style: none;
}
.fast-add__sizes::-webkit-scrollbar {
  display: none;
}
.fast-add__size-btn {
  flex-shrink: 0;
  min-width: 36px;
  height: 32px;
  padding: 0 8px;
  border: none;
  background: transparent;
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  cursor: pointer;
  position: relative;
  transition: background 0.15s, color 0.15s, border-color 0.15s;
}
.fast-add__size-btn:hover:not(:disabled):not(.is-loading) {
  background: rgba(255,255,255,0.2);
  color: #fff;
}
.fast-add__size-btn:disabled {
  opacity: 0.35;
  cursor: not-allowed;
  text-decoration: line-through;
}
.fast-add__size-btn.is-loading {
  color: transparent;
  pointer-events: none;
}
.fast-add__size-btn.is-loading::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 14px;
  height: 14px;
  margin: -7px 0 0 -7px;
  border: 2px solid #fff;
  border-top-color: transparent;
  border-radius: 50%;
  animation: fa-spin 0.6s linear infinite;
}
.fast-add__size-btn.is-success {
  background: rgba(255,255,255,0.25);
  color: transparent;
  pointer-events: none;
}
.fast-add__size-btn.is-success::after {
  content: "\2713";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  color: #fff;
  font-size: 14px;
}
.fast-add__size-btn.is-error {
  border-color: #c92424;
  animation: fa-shake 0.4s ease;
}
@keyframes fa-spin {
  to { transform: rotate(360deg); }
}
@keyframes fa-shake {
  0%, 100% { transform: translateX(0); }
  25% { transform: translateX(-3px); }
  75% { transform: translateX(3px); }
}

/* --- Close button inside size bar --- */
.fast-add__close {
  flex-shrink: 0;
  background: none;
  border: none;
  color: #fff;
  font-size: 18px;
  cursor: pointer;
  padding: 0 2px;
  line-height: 1;
  opacity: 0.7;
}
.fast-add__close:hover {
  opacity: 1;
}

/* --- Mobile trigger (+ button) --- */
.fast-add__mobile-trigger {
  display: none;
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 5;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  width: auto;
  height: auto;
  border-radius: 0;
  border: none;
  background: none;
  color: #fff;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  padding: 0;
}
.fast-add__mobile-trigger svg {
  filter:
    drop-shadow(0 0 1px rgba(0, 0, 0, 0.45))
    drop-shadow(0 1px 2px rgba(0, 0, 0, 0.35));
}
@media (max-width: 767px) {
  .fast-add__mobile-trigger,
  .fast-add__mobile-trigger:only-child {
    display: flex;
  }
}

/* --- Mobile bottom sheet --- */
.fast-add__sheet-backdrop {
  position: fixed;
  inset: 0;
  z-index: 2147483646;
  background: rgba(0,0,0,0.4);
  opacity: 0;
  transition: opacity 0.25s ease;
}
.fast-add__sheet-backdrop.is-active {
  opacity: 1;
}
.fast-add__sheet {
  position: fixed;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 2147483647;
  background: #fff;
  border-radius: 12px 12px 0 0;
  padding: 20px 16px;
  padding-bottom: calc(20px + env(safe-area-inset-bottom, 0px));
  transform: translateY(100%);
  transition: transform 0.3s cubic-bezier(0.32, 0.72, 0, 1);
}
.fast-add__sheet.is-active {
  transform: translateY(0);
}
.fast-add__sheet-header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 16px;
}
.fast-add__sheet-title {
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.05em;
  text-transform: uppercase;
}
.fast-add__sheet-close {
  background: none;
  border: none;
  font-size: 22px;
  cursor: pointer;
  padding: 0;
  line-height: 1;
  color: #000000;
}
.fast-add__sheet-sizes {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.fast-add__sheet-sizes .fast-add__size-btn {
  min-width: 48px;
  height: 40px;
  font-size: 13px;
}

/* --- Mobile: slim bottom bar instead of full sheet --- */
@media (max-width: 767px) {
  .fast-add__sheet-backdrop {
    display: none;
  }
  .fast-add__sheet {
    border-radius: 0;
    padding: 12px 16px;
    padding-bottom: calc(12px + env(safe-area-inset-bottom, 0px));
    background: rgba(34,34,34,0.95);
  }
  .fast-add__sheet-header {
    display: none;
  }
  .fast-add__sheet-sizes {
    flex-wrap: nowrap;
    overflow-x: auto;
    justify-content: space-between;
    padding-right: 36px;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
  }
  .fast-add__sheet-sizes::-webkit-scrollbar {
    display: none;
  }
  .fast-add__sheet-sizes .fast-add__size-btn {
    min-width: 40px;
    height: 36px;
    font-size: 13px;
    flex-shrink: 0;
    color: #fff;
    border-color: rgba(255,255,255,0.4);
  }
  .fast-add__sheet-sizes .fast-add__size-btn:disabled {
    color: rgba(255,255,255,0.3);
    border-color: rgba(255,255,255,0.15);
  }
  .fast-add__sheet-sizes .fast-add__sheet-close {
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 20px;
    color: #fff;
    padding: 0 4px;
  }
  .fast-add__sheet {
    position: fixed;
  }
}

/* --- Override quickbuy when fast-add is active --- */
.product-block--has-fast-add .cc-quick-buy-btn-container {
  display: none !important;
}
.product-block--has-fast-add:hover .caption {
  opacity: 1 !important;
  visibility: visible !important;
}

/* --- .image needs position:relative for overlays --- */
.product-block .image {
  position: relative;
}

/* --- Collection row spinner --- */
.section-collection-row .collection-row__swiper {
  position: relative;
}
.section-collection-row .collection-row__spinner {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  z-index: 10;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
  color: #000000;
}
.section-collection-row .collection-row__spinner--visible {
  opacity: 1;
}

/* Mobile: vertical grid layout instead of Swiper carousel */
.collection-row__swiper--native {
  overflow: visible !important;
}
.collection-row__swiper--native .swiper-wrapper {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 10px;
  transform: none !important;
}
.collection-row__swiper--native .swiper-slide {
  width: auto !important;
}
.collection-row__swiper--native .swiper-scrollbar,
.collection-row__swiper--native .swiper-button-prev,
.collection-row__swiper--native .swiper-button-next {
  display: none !important;
}

/* ─── Localization Drawer ─── */
.localization-drawer {
  position: fixed;
  inset: 0;
  z-index: 9999;
  visibility: hidden;
  pointer-events: none;
}
.localization-drawer.is-open {
  visibility: visible;
  pointer-events: auto;
}
.localization-drawer__backdrop {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.45);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.localization-drawer.is-open .localization-drawer__backdrop {
  opacity: 1;
}
.localization-drawer__panel {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 360px;
  max-width: 100%;
  background: #ffffff;
  color: #000000;
  transform: translateX(100%);
  transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  display: flex;
  flex-direction: column;
}
.localization-drawer.is-open .localization-drawer__panel {
  transform: translateX(0);
}
.localization-drawer__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 20px;
  border-bottom: 1px solid #eee;
}
.localization-drawer__title {
  font-size: 15px;
  font-weight: 600;
  letter-spacing: 0.02em;
}
.localization-drawer__close {
  background: none;
  border: none;
  font-size: 28px;
  line-height: 1;
  cursor: pointer;
  padding: 0 4px;
  color: #000000;
}
.localization-drawer__form {
  flex: 1;
  overflow-y: auto;
}
.localization-drawer__section {
  padding: 16px 20px;
}
.localization-drawer__section + .localization-drawer__section {
  border-top: 1px solid #eee;
}
.localization-drawer__section-title {
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: #808080;
  margin: 0 0 10px;
  font-weight: 600;
}
.localization-drawer__list {
  list-style: none;
  margin: 0;
  padding: 0;
}
.localization-drawer__list li + li {
  margin-top: 2px;
}
.localization-drawer__option {
  display: block;
  padding: 8px 10px;
  border-radius: 6px;
  text-decoration: none;
  color: #000000;
  font-size: 14px;
  transition: background 0.15s;
}
.localization-drawer__option:hover {
  background: #f5f5f5;
  color: #000000;
}
.localization-drawer__option--active {
  background: #111;
  color: #fff;
}
.localization-drawer__option--active:hover {
  background: #222;
  color: #fff;
}
@media (max-width: 767px) {
  .localization-drawer__panel {
    width: 100%;
  }
}

/* ===================================================================
   THREE-COLUMN PRODUCT LAYOUT (.product-area--three-col)
   =================================================================== */

/* --- Desktop: 3-column flex layout (992px+) --- */
@media (min-width: 992px) {
  .product-area--three-col {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    gap: 0;
    padding: 0;
    margin-top: calc(-1 * var(--header-section-height, 62px));
  }
  .product-area--three-col .product-area__col-left {
    width: 30%;
    min-width: 200px;
    order: 1;
    padding: calc(var(--header-section-height, 62px) + var(--collection-nav-height, 49px)) 20px 40px 30px;
  }
  .product-area--three-col .product-area__media {
    width: 40%;
    order: 2;
    flex-shrink: 0;
    padding-top: calc(var(--header-section-height, 62px) + var(--collection-nav-height, 49px));
  }
  .product-area--three-col .product-area__col-right {
    width: 30%;
    min-width: 200px;
    order: 3;
    padding: calc(var(--header-section-height, 62px) + var(--collection-nav-height, 49px)) 30px 40px 20px;
  }

  /* Sticky columns */
  .product-area--three-col .product-area__col-left__inner {
    position: sticky;
    top: calc(50vh - 200px);
    /* Same correction as the thumbnail rail below: clearance is the card's
       bottom edge (--header-section-height), not its bare height. */
    max-height: calc(100vh - var(--header-section-height) - var(--collection-nav-height));
    overflow-y: auto;
    padding-top: 16px;
    scrollbar-width: none;
    -ms-overflow-style: none;
  }
  .product-area--three-col .product-area__col-right__inner {
    position: sticky;
    top: calc(var(--header-section-height) + var(--collection-nav-height) + 10px);
    padding-top: 0;
  }
  .product-area--three-col .product-area__col-left__inner::-webkit-scrollbar {
    display: none;
  }
}

/* --- Tablet: 2-column fallback (768–991px) --- */
@media (min-width: 768px) and (max-width: 991px) {
  .product-area--three-col {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
  }
  .product-area--three-col .product-area__media {
    width: 55%;
    order: 1;
  }
  .product-area--three-col .product-area__col-right {
    width: 45%;
    order: 2;
    padding: 20px 20px 20px 16px;
  }
  .product-area--three-col .product-area__col-left {
    width: 100%;
    order: 3;
    padding: 20px;
  }
}

/* --- Mobile: single column stack, max-width 767px --- */
@media (max-width: 767px) {
  .product-area--three-col {
    display: flex;
    flex-direction: column;
    padding: 0;
    margin-top: calc(-1 * var(--header-section-height, 58px));
  }
  .product-area--three-col .product-area__media {
    width: 100%;
    order: 1;
    margin-top: 0;
  }
  .product-area--three-col .product-area__col-right {
    width: 100%;
    order: 2;
    padding: 16px 16px 0;
  }
  .product-area--three-col .product-area__col-left {
    width: 100%;
    order: 3;
    padding: 0 16px 16px;
  }
  /* Hide original title & price in left col — mobile header in right col shows them instead */
  .product-area--three-col .product-area__col-left .product-area__details__title,
  .product-area--three-col .product-area__col-left .price-area {
    display: none;
  }
}

@media (max-width: 767px) {
  .section-product-template .product-area--three-col {
    margin-top: calc(-1 * var(--header-section-height, 58px));
    padding-top: 0;
  }
}

/* --- Mobile-only product header (title + price inside right col) --- */
.product-area__mobile-header {
  display: none;
}
@media (max-width: 767px) {
  .product-area__mobile-header {
    display: block;
    margin-bottom: 8px;
  }
  .product-area__mobile-header .product-area__details__title {
    margin: 0 0 4px;
  }
  .product-area__mobile-header .price-area {
    margin: 0;
  }
}

/* --- Breadcrumb --- */
.product-area--three-col .product-breadcrumb {
  font-size: 0.8em;
  margin-bottom: 16px;
  opacity: 1;
  color: #808080;
}
.product-area--three-col .product-breadcrumb a {
  color: #808080;
  text-decoration: none;
}
.product-area--three-col .product-breadcrumb a:hover {
  text-decoration: underline;
}
.product-area--three-col .product-breadcrumb span {
  margin: 0 4px;
}

/* --- Left column typography --- */
.product-area--three-col .product-area__col-left .product-area__details__title {
  font-size: 1.45em;
  font-weight: 400;
  line-height: 1.15;
  margin-bottom: 6px;
  color: #060108;
}
.product-area--three-col .product-area__col-left .price-area {
  font-size: 0.92em;
  margin-bottom: 24px;
  color: #000000;
}
.product-area--three-col .product-area__col-left .product-detail-accordion {
  margin-top: 4px;
}
.product-area--three-col .product-detail-accordion .cc-accordion-item__title {
  font-size: 0.8em;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 14px 30px 14px 0;
  color: #000000;
}
.product-area--three-col .product-detail-accordion .cc-accordion-item__content {
  font-size: 0.82em;
  color: #808080;
  line-height: 1.55;
}
.product-area--three-col .product-detail-accordion .cc-accordion-item__content p {
  color: #808080;
}
.product-area--three-col .product-detail-accordion .cc-accordion {
  border-top-color: #e3e3e3;
}
.product-area--three-col .product-detail-accordion .cc-accordion-item {
  border-bottom-color: #e3e3e3;
}

/* --- Pill-style size buttons --- */
.product-area--three-col .clickyboxes {
  margin: 0.3em 0 0.6em;
}
.product-area--three-col .clickyboxes li {
  padding: 0 0.6em 0 0;
  margin: 0 0 0.4em 0;
}
.product-area--three-col .clickyboxes li a,
.product-area--three-col .clickyboxes li label {
  border-radius: 20px;
  min-width: 28px;
  height: 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 10px;
  border: 1px solid rgba(200,200,200,0.5);
  font-size: 0.7em;
  font-weight: 400;
  color: #000000;
  transition: all 0.15s ease;
}
.product-area--three-col .clickyboxes li a:hover,
.product-area--three-col .clickyboxes li label:hover {
  background: rgba(0,0,0,0.06);
  border-color: rgba(0,0,0,0.25);
}
.product-area--three-col .clickyboxes li a.active,
.product-area--three-col .clickyboxes li label.active,
.product-area--three-col .clickyboxes li a[aria-checked="true"],
.product-area--three-col .clickyboxes li label[aria-checked="true"] {
  background: #000;
  color: #fff;
  border-color: #000;
}
.product-area--three-col .clickyboxes li a.unavailable,
.product-area--three-col .clickyboxes li label.unavailable {
  opacity: 0.35;
  text-decoration: line-through;
}
.product-area--three-col .clickyboxes li.cc-hover-line {
  display: none;
}
.product-area--three-col .clickyboxes li a.unavailable::before,
.product-area--three-col .clickyboxes li label.unavailable::before {
  display: none;
}
.product-area--three-col .clickyboxes li a.unavailable::after,
.product-area--three-col .clickyboxes li label.unavailable::after {
  display: none;
}

/* --- Black ATC button with price --- */
.product-area--three-col .product-atc-main {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background: #111;
  color: #fff;
  width: 100%;
  height: 44px;
  min-height: 44px;
  padding: 0 18px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  font-size: 0.76em;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.03em;
  transition: none;
}
.product-area--three-col .product-atc-main:hover,
.product-area--three-col .product-atc-main:focus,
.product-area--three-col .product-atc-main:focus-visible {
  background: #F97000 !important;
  color: #fff !important;
  border-color: #F97000 !important;
}
.product-area--three-col .product-atc-main[disabled] {
  opacity: 0.5;
  cursor: not-allowed;
}
.product-area--three-col .product-atc-main__label {
  text-transform: uppercase;
}
.product-area--three-col .product-atc-main__price {
  opacity: 1;
  color: #fff;
}

.product-area--three-col .product-atc-main,
.product-area--three-col .product-atc-main *,
.product-area--three-col .product-atc-main:hover *,
.product-area--three-col .product-atc-main:focus *,
.product-area--three-col .product-atc-main:focus-visible * {
  color: #fff !important;
}

/* --- Gray image background --- */
.product-area--three-col .product-area__media {
  background-color: #f2f2f2;
}

/* --- Right column spacing --- */
.product-area--three-col .product-area__col-right .product-detail__gap-sm {
  margin-top: 8px;
  font-size: 0.82em;
  color: #808080;
}
.product-area--three-col .product-area__col-right .product-detail__gap-lg {
  margin-top: 20px;
}
.product-area--three-col .product-area__col-right .product-detail__form__action {
  margin-top: 24px;
}

/* --- Variant picker label styling --- */
.product-area--three-col .selector-wrapper label {
  font-size: 0.92em;
  text-transform: none;
  letter-spacing: normal;
  font-weight: 500;
  margin-bottom: 12px;
  display: block;
  color: #000000;
}

/* --- Inventory notice in right column --- */
.product-area--three-col .product-inventory-notice {
  font-size: 0.82em;
  color: #808080;
}

/* --- Hide duplicate header overlap for three-col --- */
.product-area--three-col.header-overlap-section {
  margin-top: 0;
}

/* --- Thumbnail strip adjustments for three-col --- */
@media (min-width: 992px) {
  .product-area--three-col .product-area__media {
    position: relative;
  }
  .product-area--three-col .product-area__thumbs {
    position: sticky;
    /* --nav-height is the bar's HEIGHT (50px). That was the same thing as its
       bottom edge back when the header sat flush at the top of the page, but
       the card is inset, so its bottom is inset + height. Using the height
       alone parked the first thumbnail 18px behind the card.
       --header-section-height carries the full clearance. */
    top: calc(var(--header-section-height) + var(--collection-nav-height) + 12px);
    width: 54px;
    z-index: 3;
    max-height: calc(100vh - var(--header-section-height) - var(--collection-nav-height) - 24px);
    overflow-y: auto;
    float: left;
    margin-top: 12px;
    margin-left: 12px;
    margin-right: -66px; /* -(width + margin-left) so gallery goes full-width underneath */
  }
  .product-area--three-col .product-area__thumbs .product-area__thumbs__thumb .rimage-outer-wrapper .rimage-wrapper > img {
    box-shadow: none;
    border-radius: 4px;
    border: 1px solid rgba(0,0,0,0.08);
  }
  .product-area--three-col .product-area__thumbs .product-area__thumbs__thumb a.thumb-active .rimage-outer-wrapper .rimage-wrapper > img,
  .product-area--three-col .product-area__thumbs .product-area__thumbs__thumb a:hover .rimage-outer-wrapper .rimage-wrapper > img {
    border-color: rgba(0,0,0,0.4);
  }
  .product-area--three-col .product-area__thumbs .product-area__thumbs__thumb a::after {
    border-radius: 4px;
  }
  .product-area--three-col .theme-gallery--thumbs-enabled {
    margin-left: 0;
    flex: 1;
    min-width: 0;
  }
}

/* =============================================
   Homepage Hero Sticky Scroll
   (EME Studios-style scroll-through reveal)
   ============================================= */
body.template-index #page-content > .shopify-section:first-child {
  position: sticky;
  top: 0;
  z-index: 0;
}

body.template-index #page-content > .shopify-section:first-child ~ .shopify-section {
  position: relative;
  z-index: 1;
  background-color: #ffffff;
}

body.template-index #page-content > .shopify-section:first-child + .shopify-section {
  border-radius: 1rem 1rem 0 0;
  display: flow-root;
}

/* =============================================
   Collection page mobile: fixed header overlay
   (match product page behaviour)
   ============================================= */
@media (max-width: 767px) {
  /* Pull collection content up behind the fixed header */
  body.template-collection .section-collection-nav + .shopify-section,
  body.template-list-collections .section-collection-nav + .shopify-section {
    margin-top: calc(-1 * var(--header-section-height, 58px));
  }

  /* Pad so visible content starts below header + nav */
  body.template-collection .section-collection-nav + .shopify-section > [data-section-type="collection-template"],
  body.template-list-collections .section-collection-nav + .shopify-section > [data-section-type="list-collections"] {
    padding-top: calc(var(--header-section-height, 58px) + var(--collection-nav-height, 49px) + 10px) !important;
  }
}

/* --- UI audit batch 3: mobile refinements --- */
@media (max-width: 767px) {
  /* Hero CTA: bump "WORLDWIDE"-style button text from 13px to 15px.
     !important because the .button base rule carries a higher-specificity size. */
  [data-section-type="background-video"] .overlay__content a.button,
  [data-section-type="background-video"] .overlay__content .button {
    font-size: 15px !important;
    padding: 14px 28px;
    letter-spacing: 0.08em;
  }

  /* NOTE: the 44x44 header icon tap-target rule that lived here was removed on
     2026-08-03 by the compact header card work. The card spec adopts EME's
     16px icons in 32px targets as an explicit, recorded trade-off; this rule
     was higher-specificity and would have silently defeated it.
     See docs/superpowers/specs/2026-08-03-compact-header-card-design.md */
}

/* Unify product-detail accordion heights.
   Base .cc-accordion has border-top:1px; a sibling rule strips it from
   subsequent accordions only, leaving the first one 1px taller. Each
   accordion already has a bottom border for separation, so strip all
   top borders on product-detail accordions to normalize heights. */
.product-detail-accordion .cc-accordion {
  border-top: none;
}

/* --- Product tile + grid tightening (competitor parity) --- */

/* Uppercase tile titles for consistency even when merchant stores "Title Case".
   Smaller + lighter than default to match reference / Eme Studios / Becay tile type. */
.product-block .title,
.collection-block .title {
  text-transform: uppercase;
  letter-spacing: 0.04em;
  font-weight: 400;
  font-size: 11px;
  line-height: 1.15;
}
@media (min-width: 768px) {
  .product-block .title,
  .collection-block .title {
    font-size: 12px;
  }
}
@media (min-width: 1441px) {
  .product-block .title,
  .collection-block .title {
    font-size: 13px;
  }
}

/* Tighter side margins + inter-tile gap on home + collection grids.
   .tabbed-collection has no .wide-container wrapper — apply padding directly.
   Default gutter is 20px per tile side (40 total gap); tighten to 6px per side (12 total). */
@media (min-width: 768px) {
  .tabbed-collection,
  [data-section-type="collection-template"] .wide-container {
    padding-left: 32px;
    padding-right: 32px;
  }
  .tabbed-collection .product-list .column.quarter,
  [data-section-type="collection-template"] .product-list .column.quarter {
    padding-left: 6px;
    padding-right: 6px;
  }
  /* Neutralize the half-gutter negative margin so tiles don't crash into the edge padding */
  .tabbed-collection .product-list {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}
@media (min-width: 1441px) {
  .tabbed-collection,
  [data-section-type="collection-template"] .wide-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}/* ============================================================
   COMPACT HEADER CARD
   Spec: docs/superpowers/specs/2026-08-03-compact-header-card-design.md
   Geometry and surface both replicate emestudios.com; the surface recipe is
   read out of their bundle rather than eyeballed — see the note above the
   variables. Marks stay white (LOGOBLANCO.png is the only logo asset), which
   is the one place this departs from EME, who swap to black text per page
   theme. See the contrast note further down.
   ============================================================ */

/* Inset and radius scale with the viewport. EME's 16px/4.25px encode a
   PROPORTION at 390px (4.1% of width), not a universal constant. Held fixed,
   they fall to 0.8% at 2000px and the card stops reading as a floating object
   and starts reading as a full-bleed bar. Declared on :root so the content
   offset below, and the clearance scripts in collection-nav.liquid /
   tabbed-collection.liquid, all pick up the scaled values. */
:root {
  --header-card-h: 50px;
  --header-card-inset: 16px;
  --header-card-radius: 4.25px;

  /* Announcement bar height, 0 when the bar is off. sections/header.liquid
     raises this to 30px on :root from its own inline <style> when the bar
     actually renders — a class on #site-control could not do it, because
     #page-content is not a descendant of the header and needs the same
     number for its top clearance.

     --header-card-full is therefore "the whole card", announcement included,
     and is what every offset, transform and sticky top should be derived
     from. --header-card-h stays the NAV ROW alone, for the grid inside. */
  --header-announcement-h: 0px;
  --header-card-full: calc(var(--header-announcement-h) + var(--header-card-h));

  /* The three-column product layout budgets its top clearance as
     --header-section-height + --collection-nav-height, and both were only ever
     set by the JS in collection-nav.liquid. With the category strip removed
     from templates/product.json that script no longer runs on product pages,
     so both fell back to their hard-coded 62px/49px — reserving 49px of space
     for a strip that is not there and leaving a white band under the card.

     Declared here as the card-derived truth. collection-nav.liquid still sets
     both inline on the templates that do render a strip, and an inline style
     on the root element outranks this, so those pages are unaffected. */
  --header-section-height: calc(var(--header-card-inset) + var(--header-card-full));
  --collection-nav-height: 0px;
}

@media (min-width: 768px) {
  :root { --header-card-inset: 24px; --header-card-radius: 8px; }
}

@media (min-width: 1440px) {
  :root { --header-card-inset: 32px; --header-card-radius: 12px; }
}

@media (min-width: 1920px) {
  :root { --header-card-inset: 40px; --header-card-radius: 16px; }
}

#site-control.site-control {
  position: fixed;
  top: var(--header-card-inset);
  left: var(--header-card-inset);
  right: var(--header-card-inset);
  /* A theme rule puts margin-top:18px on the bar. `top` positions the MARGIN
     box, so without this the card renders at y=34 instead of y=16. */
  margin: 0;
  width: auto;
  height: var(--header-card-full);
  border-radius: var(--header-card-radius);
  background-color: rgba(255, 255, 255, 0.18);
  background-image: linear-gradient(to bottom right, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0) 100%);
  -webkit-backdrop-filter: blur(14px)
;
  backdrop-filter: blur(14px)
;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
  overflow: hidden;
  z-index: 100;
  /* The theme's own nav_opacity / nav_positioning states are ignored (see the
     reset below); hide-on-scroll is driven by .header-hidden instead.
     0.8s cubic-bezier(0.4,0,0.2,1) is EME's exact transform timing. */
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1), height 0.3s ease;
}

/* Neutralise the theme's scroll-state classes: the card is constant.

   This must reset GEOMETRY, not just colour. styles.css.liquid:5898 carries an
   earlier "floating pill" design that fires on .nav-opaque (added on scroll):
   max-width:860px, margin:auto, border-radius:100px, box-shadow. Left alone it
   clamps the card to 860px mid-scroll, and because margin:0 above kills the
   auto-centring that pill relied on, it pins to the left edge — the card both
   shrinks and stops being centred. Reset every property it sets. */
#site-control.site-control.nav-opaque,
#site-control.site-control.nav-hidden,
#site-control.site-control.fixed,
.template-index #site-control.site-control.nav-opaque {
  background-color: rgba(255, 255, 255, 0.18);
  background-image: linear-gradient(to bottom right, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0) 100%);
  max-width: none;
  margin: 0;
  border-radius: var(--header-card-radius);
  /* Not `none`: the reset has to restate EME's shadow, or scrolling the
     homepage silently drops it and the card loses its lift halfway down. */
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(14px)
;
  backdrop-filter: blur(14px)
;
}

/* The second thing that moved on scroll, and the subtler one. theme.js:6156
   collapses the announcement to max-height:0 once you pass ~50px whenever
   positioning is sticky/peek — correct for the old in-flow header, where the
   bar sat above the nav and giving its height back to the page was the point.

   The card does not work that way: its height comes from --header-card-full,
   not from its contents, so collapsing the bar does not shrink the card. It
   just empties the top 30px of it and leaves the nav row sitting low in a
   part-empty card. Keep the bar at its height and let the card stay constant,
   which is what .header-hidden is for when hiding IS wanted. */
#site-control.has-announcement.announcement-hidden .cc-announcement {
  max-height: none;
}

/* transform:none is split out and scoped to :not(.header-hidden). Kept in the
   block above it would win against the hide rule by class count — on the
   homepage theme.js adds .nav-opaque on scroll, making the reset (1,3,0)
   against the hide rule's (1,2,1), which silently pinned the card in place. */
html:not(.header-hidden) #site-control.site-control.nav-opaque,
html:not(.header-hidden) #site-control.site-control.nav-hidden,
html:not(.header-hidden) #site-control.site-control.fixed,
html:not(.header-hidden) .template-index #site-control.site-control.nav-opaque {
  transform: none;
}

/* The card no longer changes surface when the menu opens (2026-08-04). It
   used to become the drawer; the drawer is now a stack of separate cards
   below it, and they carry the deeper surface instead — see .drawer-card.
   The bar stays exactly the bar in every state. */

/* --- Inner pages: darken the backdrop so the marks survive ---------------
   See the long note above header_card_lens_inner. Short version: clear glass
   takes its contrast from the page behind it, and every template except the
   homepage is white — where white marks measure 1.00:1.

   Scoped to :not(.template-index) so the homepage keeps the untouched
   replica over its hero. Specificity is deliberate: body:not(...) adds
   (0,1,1) to #site-control.site-control.nav-opaque's (1,2,0), giving (1,3,1)
   — one more than the .nav-opaque reset's (1,3,0), which is the rule that
   would otherwise reinstate the undarkened lens the moment theme.js adds
   .nav-opaque on scroll. Dropping any of these four selectors reintroduces
   the invisible header mid-scroll only, which is a horrible bug to find. */
body:not(.template-index) #site-control.site-control,
body:not(.template-index) #site-control.site-control.nav-opaque,
body:not(.template-index) #site-control.site-control.nav-hidden,
body:not(.template-index) #site-control.site-control.fixed {
  -webkit-backdrop-filter: blur(14px)
;
  backdrop-filter: blur(14px)
;
}

/* Keep collection navigation on the same glass lens as the header */
body:not(.template-index) .collection-nav {
  -webkit-backdrop-filter: blur(14px)
;
  backdrop-filter: blur(14px)
;
}

/* --- Hide on scroll (collection / list templates only) ------------------
   EME slides the header fully off-screen when scrolling DOWN past ~240px on
   browsing pages, and reveals it on the first upward scroll. Home and product
   never hide, so the cart stays reachable while viewing an item.
   Driven by a .header-hidden class on the root element, set from
   assets/header-drawer.js.

   html-qualified so it outranks the .nav-opaque / .fixed reset above, which
   sets transform:none at the same class-count specificity. */
html.header-hidden #site-control.site-control {
  /* Full height plus the top inset, so it clears the viewport edge entirely —
     EME translates 97px on an 81px card inset by 16px. */
  transform: translateY(calc(-100% - var(--header-card-inset)));
}

/* --- Collection category strip: same width as the card -----------------
   sticky-pill-nav-styles.liquid caps this at 860px and centres it, from the era
   when the header itself was an 860px centred pill. Next to the full-width card
   it reads as a different object. Matched to the card's width, radius, tint and
   blur so the two read as one family, and it tracks the same breakpoint-scaled
   inset.

   body-qualified because sticky-pill-nav-styles.liquid emits its rules in an
   inline style block inside the section, which sits later in the document and
   would otherwise win at equal specificity. */
body .collection-nav {
  max-width: none;
  margin-left: var(--header-card-inset);
  margin-right: var(--header-card-inset);
  border-radius: var(--header-card-radius);
  background-color: rgba(255, 255, 255, 0.18);
  background-image: linear-gradient(to bottom right, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0) 100%);
  -webkit-backdrop-filter: blur(14px)
;
  backdrop-filter: blur(14px)
;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
}

/* The shared pill styles use space-between, which reads fine at 860px but
   strands the categories across the full card width. Cluster them from the
   left, aligned with the hamburger above. */
/* Card and strip form ONE continuous stack, exactly as EME's announcement bar
   and nav row meet with a 0px gap: rounded top on the upper piece, rounded
   bottom on the lower, and no doubled border where they touch. */
body.template-collection #site-control.site-control,
body.template-list-collections #site-control.site-control {
  border-radius: var(--header-card-radius) var(--header-card-radius) 0 0;
  border-bottom: 0;
}

body .collection-nav {
  border-radius: 0 0 var(--header-card-radius) var(--header-card-radius);
  border-top: 0;
}


/* --- Homepage tab strip -------------------------------------------------
   Same component family, same shared pill snippet. It kept 860px centred, a
   0.72 tint and a bottom-only 24px radius — all sized to butt against the old
   860px header pill, which no longer exists, leaving it with square top
   corners floating mid-page. Brought in line with the card.

   It keeps its own gap below the card rather than joining, because unlike the
   collection strip this is a section's own tab bar sitting under the hero, not
   a header sub-nav — so it reads as a second card, not a continuation. */
/* The section's own 30px gutter stacks with any margin here, so the strip
   would land 30px inside the card's edges. Drive the section gutter from the
   same variable and zero the strip's margin, so both edges resolve to exactly
   the card's inset at every breakpoint — and the tile grid below lines up with
   the header too. */
body .tabbed-collection {
  padding-left: var(--header-card-inset);
  padding-right: var(--header-card-inset);
}

body .tabbed-collection__header {
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  /* 16px gutter so the first tab starts where the hamburger does; this
     wrapper's horizontal padding computes to 0 despite the shared snippet. */
  padding: 10px 16px;
  border-radius: var(--header-card-radius);
  background-color: rgba(255, 255, 255, 0.18);
  background-image: linear-gradient(to bottom right, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0) 100%);
  -webkit-backdrop-filter: blur(14px)
;
  backdrop-filter: blur(14px)
;
  border: 1px solid rgba(255, 255, 255, 0.1);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
}

/* Inactive category labels ship at opacity 0.5 from sticky-pill-nav-styles,
   which reads as a faint ghost on any translucent surface. Raised as far as
   the design allows; it does not on its own resolve the note below. */
body .collection-nav .collection-nav__link,
body .tabbed-collection__header .tabbed-collection__tab {
  opacity: 0.82;
}

/* KNOWN LIMITATION — contrast, and it differs by card style.

   Tinted: white marks on a mid-orange composite near 2.5:1 where WCAG AA
   wants 4.5:1. That is a property of the colour pairing, not a value tunable
   here — darkening further turns the bar brown and loses the effect. The real
   remedies are dark text, or a materially deeper orange (about #A33F00
   carries white at 4.5:1).

   Clear glass: the surface has no colour of its own, so contrast tracks
   whatever page is behind it. Over the homepage hero video and other dark
   art it is comfortable; over the white collection and product pages the
   white logo and icons approach invisibility. This is inherent to the EME
   replica — EME solve it by switching header text to black per page theme,
   which needs a dark logo asset this theme does not have (the only logo is
   LOGOBLANCO.png). Until one exists, "Background darkening" in the theme
   editor is the lever: around 15-20% restores legibility over pale pages at
   the cost of a slightly smoked pane. Left at 0 by default because an exact
   replica is what was asked for.

   UPDATE 2026-08-05 — the bar is no longer invisible on inner pages. A
   visual pass confirmed white-on-white at 1.00:1 on collection, product,
   cart and search, and the darkening is now applied per template: home
   keeps the untouched replica over its dark hero, everything else gets 45%,
   the first step where icons clear WCAG's 3:1 for UI components. Text still
   falls short of 4.5:1 there and cannot reach it this way — that needs a
   dark logo asset and dark marks, which remains the open item.

   NOTE — this applies to the BAR only. The open menu was inverted on
   2026-08-04: light cards, dark text. At the default #111 on #F2F2F2/86%
   that measures 12.3:1 for the top-level links, 6.7:1 for children and
   5.7:1 for the utility pills over a dark page, and higher over a white
   one. All pass AA comfortably, in both directions — so the drawer is no
   longer part of this limitation, and dropping the card opacity below about
   70% is what would put it back. */

/* Desktop only. Below 768 the shared snippet sets gap:18px plus a right
   padding and fade mask for the horizontal scroll, which a blanket override
   would strip — leaving the tabs too spread out with no scroll affordance. */
@media (min-width: 768px) {
  body .tabbed-collection__header .tabbed-collection__tabs {
    justify-content: flex-start;
    gap: 32px;
    padding-left: 0;
    padding-right: 0;
  }
}

/* Desktop only, for the same reason as the tab strip above: the snippet's
   sub-768 rule supplies a tighter gap and the fade-mask padding. */
@media (min-width: 768px) {
  body .collection-nav .collection-nav__inner {
    justify-content: flex-start;
    gap: 32px;
    /* The .collection-nav wrapper already supplies the 16px gutter; adding it
       again here pushed the first category 16px past the hamburger above. */
    padding-left: 0;
    padding-right: 0;
  }
}

/* The homepage tab strip leaves with the card as well. Its sticky top is
   inset*2 + card height (it keeps a gap below the card rather than joining),
   so clearing the viewport needs that plus its own height. */
html.header-hidden .tabbed-collection__header {
  transform: translateY(calc(-100% - var(--header-card-inset) - var(--header-card-full)));
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Joined corners only while the strip is actually stuck against the card —
   .strip-stuck is set from header-drawer.js. Before it sticks the strip is a
   standalone card mid-page, so both keep their full radius. */
html.strip-stuck body.template-index #site-control.site-control {
  border-radius: var(--header-card-radius) var(--header-card-radius) 0 0;
  border-bottom: 0;
}

html.strip-stuck body.template-index .tabbed-collection__header {
  border-radius: 0 0 var(--header-card-radius) var(--header-card-radius);
  border-top: 0;
}

html.header-hidden .collection-nav {
  /* The strip leaves with the card rather than rising to take its place, so
     the whole stack clears the screen as one. Its top sits at
     inset + card height, so clearing the viewport needs that plus its own
     height (100%). Same timing as the card, so they move together. */
  transform: translateY(calc(-100% - var(--header-card-inset) - var(--header-card-full)));
  transition: transform 0.8s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Never hidden while the menu is open. */
html.header-hidden #site-control.site-control.drawer-open {
  transform: none;
}

/* --- Product page ------------------------------------------------------
   EME gives the product page its own card: solid, unblurred, shadowed. That
   distinction was implemented here and then removed on request — the merchant
   wants one header across the whole site, so the product page now inherits the
   translucent blurred card from the base rule with no override at all.

   The category strip is also gone from templates/product.json, so the card
   keeps its full radius here (the joined square-bottom rule is scoped to the
   collection and list templates) and floats over the gallery alone. */

/* --- Product gallery: flush to the top ---------------------------------
   The body carries .header-over-gallery, but three separate offsets were
   pushing the image down anyway: #page-content's clearance (excluded above),
   the three-column layout's negative pull, and the media column's own top
   padding. The negative margin and that padding were a matched pair — pull
   the whole row up under the old in-flow header, then pad each column back
   down — which nets out to nothing now that the header is a fixed card
   occupying no flow space. Zero both, and give the clearance back only to
   the text columns, which do have to clear the card. */
body.template-product .product-area--three-col {
  margin-top: 0;
}

body.template-product .product-area--three-col .product-area__media {
  padding-top: 0;
}

/* From 768px the right column (size picker, add to cart) sits alongside the
   gallery starting at y=0, so it has to clear the card. Below 992px the left
   column wraps underneath the gallery and needs nothing; from 992px it becomes
   the third column and does. */
@media (min-width: 768px) {
  body.template-product .product-area--three-col .product-area__col-right {
    padding-top: calc(var(--header-card-inset) + var(--header-card-full));
  }
}

@media (min-width: 992px) {
  body.template-product .product-area--three-col .product-area__col-left {
    padding-top: calc(var(--header-card-inset) + var(--header-card-full));
  }
}

/* Nav row: logo dead-centre regardless of how many icons flank it.
   EME uses 3fr 1fr 3fr, which yields a 42px centre column — too narrow for the
   65px Shameless wordmark. 1fr auto 1fr is the same idea, sized to the asset. */
#site-control .site-control__inner {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  height: var(--header-card-h);
  /* min-height:75px from the theme, sized for the old taller bar. min-height
     beats height no matter the specificity, so without this the row is 75px
     inside a 50px card: contents centre 14px below the card's centre line and
     the overflow is clipped. That is the "not centred" — vertically, not
     horizontally. */
  min-height: 0;
  padding: 0 16px;
  margin: 0;
}

/* The theme positions .menu and .nav-right-side absolutely. Absolutely
   positioned children are removed from grid flow — they never become grid
   items — which collapsed the centre track to 0px and left the logo centred
   inside column 1 instead of the card. Forcing them back in-flow is what makes
   the 1fr auto 1fr grid work at all. position:relative rather than static so
   the cart count badge still anchors to its link. */
#site-control .site-control__inner > .menu,
#site-control .site-control__inner > .logo,
#site-control .nav-right-side {
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  transform: none;
}

#site-control .site-control__inner > .menu { justify-self: start; }

/* max-width:none is load-bearing. The theme sets .logo{max-width:calc(100% - 120px)},
   written for when .logo was absolutely positioned across the whole bar (100% =
   bar width, less 120px for the icons). As a grid item, 100% resolves to the
   track width instead — 90px on desktop — so the calc goes negative and clamps
   the logo to 0x0. It still reported as perfectly centred, because a zero-width
   box sits exactly on the centre coordinate. */
#site-control .site-control__inner > .logo {
  justify-self: center;
  margin: 0;
  max-width: none;
}
#site-control .nav-right-side {
  justify-self: end;
  display: flex;
  align-items: center;
  gap: 0;
}

/* Icons: 16x16 ink in 32x32 targets, buttons flush (32px pitch).
   Accepted trade-off: clears WCAG 2.5.8 AA (24px), below Apple's 44pt. */
#site-control .site-control__inner .menu,
#site-control .nav-right-side > a {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0;
  margin: 0;
}

#site-control .site-control__inner .menu svg,
#site-control .nav-right-side > a svg {
  width: 16px;
  height: 16px;
}

/* Hide the text labels that sit beside icons in the default theme. */
#site-control .site-control__inner .text-link { display: none; }

/* --- White search and cart icons ---------------------------------------
   "Los iconos del menu, la lupa y el carrito tienen que ser blancos como el
   logo." They were rendering black against the orange.

   Both icons are drawn as stroke="currentColor" on an inner <g>
   (snippets/svg-search.liquid, svg-cart.liquid), so the ink follows the
   `color` property — setting fill or stroke here would do nothing, and
   forcing stroke would outline the shapes that are deliberately unstroked.
   Colour alone is the correct lever.

   Covers every state the theme swaps between (transparent over the hero,
   nav-opaque on scroll, drawer open) so the icons cannot revert to dark. */
#site-control .site-control__inner .nav-right-side a,
#site-control .site-control__inner .nav-right-side a svg,
#site-control.nav-opaque .site-control__inner .nav-right-side a,
#site-control.drawer-open .site-control__inner .nav-right-side a,
body.use-alt-logo #site-control .site-control__inner .nav-right-side a {
  color: #ffffff;
}

/* The hamburger is three CSS-drawn spans, coloured by background rather than
   currentColor, so it needs stating separately. */
#site-control .site-control__inner .menu .icon-menu .icon-menu__bar,
#site-control.nav-opaque .site-control__inner .menu .icon-menu .icon-menu__bar,
body.use-alt-logo #site-control .site-control__inner .menu .icon-menu .icon-menu__bar {
  background: #ffffff;
}

/* --- Announcement bar: the card's rounded top half. --------------------
   Height comes from --header-announcement-h, which sections/header.liquid
   raises on :root only when the bar actually renders — so the card, the
   content offsets and the sticky tops all resolve to 80px with the bar and
   50px without it, from one number. --- */

#site-control.has-announcement .cc-announcement {
  height: var(--header-announcement-h);
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 16px;
  background: #ffffff;
  color: #060108;
  border-radius: var(--header-card-radius) var(--header-card-radius) 0 0;
}

#site-control.has-announcement .cc-announcement a { color: inherit; }

#site-control.has-announcement .cc-announcement__inner {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  /* The base rule gives this 0.7em all round, which was harmless while the bar
     was a fixed 30px and the text sat centred inside the overflow. Now that the
     height is a setting, that padding is the thing that clips the text first:
     at 16px with 13px text the box wants ~31px and gets 16. The bar's own flex
     centring does the vertical placement, so the padding is only ever a
     liability here. Sides stay for the ellipsis to breathe. */
  padding-top: 0;
  padding-bottom: 0;
}

/* --- Infinite marquee ---------------------------------------------------
   EME's construction, read out of their bundle rather than guessed at:

     track  = two IDENTICAL halves, side by side
     motion = translateX(0) -> translateX(-50%), linear, infinite

   Shifting by exactly half the track lands copy 2 precisely where copy 1
   started, so the loop is seamless with no JS per frame. It only holds while
   the two halves are identical — which is why the fill below is built by
   duplicating a group rather than appending items until it looks full.

   How many copies per half, and how fast, are measured at runtime in
   assets/header-marquee.js. That is not decoration: with a fixed count the
   track is either shorter than a wide viewport (visible gap on every loop)
   or needlessly long on a phone. --- */

#site-control.has-announcement .cc-announcement--marquee {
  /* The marquee runs edge to edge; its own item padding supplies the rhythm,
     and a side padding here would clip the text mid-glide instead. */
  padding: 0;
}

/* .cc-announcement is a centring flex container, so an inline <a> wrapper
   sizes to its content — the marquee inside would resolve width:100% against
   a collapsed box and never fill the bar. Stretch the link (EME mark theirs
   w-full for the same reason), and allow both to shrink below their content
   width, or overflow:hidden has nothing to clip against. */
#site-control.has-announcement .cc-announcement--marquee > a,
#site-control.has-announcement .cc-announcement--marquee > .cc-marquee {
  display: block;
  flex: 1 1 auto;
  width: 100%;
  min-width: 0;
}

.cc-marquee {
  position: relative;
  width: 100%;
  min-width: 0;
  max-width: 100%;
  overflow: hidden;
}

.cc-marquee__track {
  display: flex;
  width: max-content;
  will-change: transform;
  animation-name: cc-marquee;
  animation-timing-function: linear;
  animation-iteration-count: infinite;
  /* Overwritten from the measured width. The fallback matters: if the script
     never runs, the single seed copy still scrolls rather than sitting
     frozen half-way across the bar. */
  animation-duration: 24s;
}

.cc-marquee__group {
  display: flex;
  flex-shrink: 0;
}

.cc-marquee__item {
  display: inline-flex;
  flex-shrink: 0;
  white-space: nowrap;
  /* EME space each copy with mx-[8rem] — 80px a side, 160px between two
     copies at their 62.5% root. Padding rather than margin so the measured
     offsetWidth includes the gap and the loop maths stays exact. */
  padding: 0 80px;
}

/* Measured off-screen. visibility:hidden rather than display:none — a
   display:none element has no offsetWidth to read.

   width:max-content is load-bearing, not tidiness: a block probe would report
   its PARENT's width, and an absolutely-positioned one shrink-to-fits, which
   clamps to the container when the text is wider than the bar. Either way a
   long announcement measures short, the copy count comes out too low, and a
   gap opens on every lap. max-content asks for the true text width. */
.cc-marquee__probe {
  position: absolute;
  top: 0;
  left: 0;
  width: max-content;
  visibility: hidden;
  pointer-events: none;
  white-space: nowrap;
  transform: translateX(-9999px);
}

@keyframes cc-marquee {
  from { transform: translateX(0); }
  to   { transform: translateX(-50%); }
}

/* EME carry the same opt-out. The script also declines to build the fill
   under reduced motion, so what remains is one static, centred copy rather
   than a frozen wall of repeats. */
@media (prefers-reduced-motion: reduce) {
  .cc-marquee__track {
    animation: none !important;
  }
}

/* --- Content offset ----------------------------------------------------
   The card is fixed, so it no longer occupies layout space. Templates with a
   full-bleed hero (index) intentionally let it overlay; every other template
   needs clearance: 16px inset + 50px card + 16px breathing room.

   The announcement bar IS handled, but not through the DOM: #site-control and
   #page-content are not siblings in layout/theme.liquid, so a ~ combinator
   would silently fail. --header-card-full carries the bar's height down from
   :root instead, so this arithmetic is right either way. --- */

/* Product is excluded alongside index: both lead with full-bleed imagery the
   card is meant to float over. Written into this selector rather than
   overridden below, because an override would land at identical specificity
   (1,1,1) and depend purely on source order. */
body:not(.template-index):not(.template-product) #page-content {
  /* inset above the card + card height + a matching gap below it.
     Scales with the breakpoint-driven inset above (82px at mobile). */
  padding-top: calc(var(--header-card-inset) * 2 + var(--header-card-full));
}

/* On collection pages the category strip is the first thing in the flow and
   must butt against the card's bottom edge with no gap, so the two read as one
   stack. Drop the trailing gutter — the strip's own sticky top is already
   inset + card height, and the content below it keeps its own clearance. */
body.template-collection #page-content,
body.template-list-collections #page-content {
  padding-top: calc(var(--header-card-inset) + var(--header-card-full));
}

/* --- Drawer: a stack of cards below the bar ----------------------------
   Replaces the expand-in-place card (2026-08-04). The bar keeps its shape
   and the menu arrives as separate floating cards beneath it, the way
   reference storefront does it.

   Fixed rather than absolute: #site-control is itself fixed, so the stack
   needs its own viewport anchor. Its top is the card's bottom edge plus the
   8px the cards keep between each other. --- */

#page-menu.header-drawer {
  position: fixed;
  top: calc(var(--header-card-inset) + var(--header-card-full) + 8px);
  left: var(--header-card-inset);
  right: var(--header-card-inset);
  /* EME's 103px gap under the open panel, kept as the bottom stop. */
  max-height: calc(100dvh - var(--header-card-inset) - var(--header-card-full) - 8px - 103px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
  /* Under the card, over the page: the bar must stay legible and clickable
     while the stack scrolls beneath it. */
  z-index: 99;
  display: flex;
  flex-direction: column;
  gap: 8px;
  /* Closed: unpainted, unfocusable, not hit-testable. visibility rather than
     display so there is something for the open transition to start from; the
     0.25s delay on the visibility leg holds it visible until the fade ends,
     then snaps it out of the tab order. */
  visibility: hidden;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s ease, visibility 0s linear 0.25s;
}

/* The sibling combinator only works because the drawer was moved out of the
   card; the html-level class is the path that survives if it ever moves
   again, and is what the JS actually sets first. */
#site-control.drawer-open ~ #page-menu.header-drawer,
html.drawer-open #page-menu.header-drawer {
  visibility: visible;
  opacity: 1;
  pointer-events: auto;
  transition: opacity 0.25s ease, visibility 0s linear 0s;
}

/* The theme gives .inner an explicit narrow width and 40px side padding,
   sized for the old full-screen modal — it left the menu in a 168px column
   indented 95px from the edge. The cards own their padding now, so this
   wrapper just gets out of the way. */
#page-menu.header-drawer > .inner,
#page-menu.header-drawer .nav-container,
#page-menu.header-drawer .nav-body,
#page-menu.header-drawer .main-nav {
  width: 100%;
  max-width: none;
  padding: 0;
  margin: 0;
  min-height: 0;
  overflow: visible;
}

/* The stack is the scroll container; nested scrollers would trap the gesture
   and strand the lower cards. */
#page-menu.header-drawer .nav-container,
#page-menu.header-drawer .nav-body {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

/* Hamburger: scale the theme's CSS-drawn bars from 30px to 16px so it matches
   the 16px search/cart icons. It is a span.icon-menu wrapping three bar
   spans (snippets/icon-menu.liquid), not an SVG. */
#site-control .site-control__inner .menu .icon-menu {
  width: 16px;
  height: 16px;
}

#site-control .site-control__inner .menu .icon-menu .icon-menu__bar {
  left: 1px;
  width: 14px;
  height: 1.5px;
}

#site-control .site-control__inner .menu .icon-menu .icon-menu__bar-1 { top: 3px; }
#site-control .site-control__inner .menu .icon-menu .icon-menu__bar-2 { top: 7.25px; }
#site-control .site-control__inner .menu .icon-menu .icon-menu__bar-3 { top: 11.5px; }

/* Bars animate into an X when open. The theme already ships this animation at
   styles.css.liquid:6172-6186, but gates it on body.modal-active[data-modal-id=
   page-menu] — a class the bypassed modal system never sets. These are the same
   transforms, re-gated on .drawer-open and recomputed for the 16px geometry. */
#site-control.drawer-open .site-control__inner .menu .icon-menu .icon-menu__bar-1 {
  transform: translate(0, 4.25px) rotate(45deg);
}
#site-control.drawer-open .site-control__inner .menu .icon-menu .icon-menu__bar-2 {
  opacity: 0;
}
#site-control.drawer-open .site-control__inner .menu .icon-menu .icon-menu__bar-3 {
  transform: translate(0, -4.25px) rotate(-45deg);
}

/* --- Open state: the bar clears itself ---------------------------------
   reference keep the bar's shape when the menu opens and strip it back to
   just the close mark and the logo. No second control is added for the X —
   the hamburger already animates into one above, and one element means the
   toggle, its aria-expanded state and the focus position stay in one place.

   The trailing icons go because with the page behind blurred out, search and
   cart lead somewhere the user can no longer see. Faded rather than
   display:none so they do not pop back at the end of the close transition. */
#site-control.drawer-open .site-control__inner .nav-right-side {
  opacity: 0;
  pointer-events: none;
}

#site-control .site-control__inner .nav-right-side {
  transition: opacity 0.2s ease;
}

/* The announcement is promotional; above an open menu it pushes the whole
   stack down 30px for a message nobody is reading. */
#site-control.drawer-open .cc-announcement {
  display: none;
}

/* Zeroing the variable is what keeps the three numbers agreeing: the card's
   own height, the stack's top offset and the hidden bar all derive from
   --header-announcement-h. Hiding the bar without this would leave the stack
   offset by 30px for something no longer on screen. */
html.drawer-open {
  --header-announcement-h: 0px;
}

/* The grid-template-rows 0fr->1fr collapse and its @supports fallback are
   gone with the expand-in-place card. The stack fades rather than grows, so
   there is no auto-height to animate and nothing to fall back to. */

/* --- The card in the stack --------------------------------------------
   Every card is the header card one step deeper: the DRAWER surface, not
   the bar surface. A full-height panel at the bar's near-zero alpha would
   put menu text straight onto page content, which is exactly the problem
   the deeper veil exists to solve — so do not "simplify" this to
   header_card_surface.

   The four-part glass recipe itself is never restated here; it stays
   defined once, at the top of this file. --- */

.drawer-card {
  /* One variable carries the text colour to every descendant rule, so the
     promo card can invert the whole card by overriding this single value
     rather than restating each selector. */
  --drawer-fg: #111111;

  border-radius: var(--header-card-radius);
  /* A white hairline is invisible on a light card; a faint dark edge does the
     same separating job. */
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
  background-color: rgba(242, 242, 242, 0.86);
  /* Sheen dropped with the dark veil: a white gradient over a light surface
     is invisible where it is strong and muddy where it is weak. The blur is
     what still ties these to the bar. */
  background-image: none;
  -webkit-backdrop-filter: blur(22px)
;
  backdrop-filter: blur(22px)
;
  color: var(--drawer-fg);
  padding: 20px 16px;
  /* Cards must not collapse when the stack has spare height, and must not
     stretch to fill it either — each one wraps its own content. */
  flex: 0 0 auto;
  /* Arrive in sequence rather than as one block: the stack reads as separate
     objects, so it should not move like a single panel. */
  transform: translateY(8px);
  opacity: 0;
  transition: transform 0.28s ease, opacity 0.28s ease;
}

html.drawer-open .drawer-card {
  transform: none;
  opacity: 1;
}

/* Delays keyed to the card, not to position. The cards are not all siblings
   — promo and menu sit inside .nav-body while the utility card is one level
   up in .nav-container — so any nth-child/nth-of-type rule counts within the
   wrong parent and gives two cards the same delay. */
html.drawer-open .drawer-card--promo   { transition-delay: 0s; }
html.drawer-open .drawer-card--menu    { transition-delay: 0.05s; }
html.drawer-open .drawer-card--utility { transition-delay: 0.1s; }

@media (prefers-reduced-motion: reduce) {
  .drawer-card {
    transition: none;
    transform: none;
  }
  html.drawer-open .drawer-card { transition-delay: 0s; }
}

/* The stack is the scroll container; the page behind it must not scroll with
   it. Both elements are set because html alone is unreliable on iOS Safari. */
html.drawer-open,
html.drawer-open body {
  overflow: hidden;
}

/* --- One panel, not a stack --------------------------------------------
   EME's drawer is a single surface: measured at 26px/32px padding with 24px
   between groups, and one <hr> before the small secondary links. Ours was
   three separate cards, which cost 3 x 20px of top and bottom padding — 120px
   of container chrome against their 52px — before any content.

   Implemented by promoting .nav-container to the panel and stripping the
   surface off the cards inside it, rather than by rewriting the markup. The
   the .drawer-card wrappers still exist for layout/animation, but every card
   is visually flattened into the same glass panel. The optional Special menu
   is also flat and differs only by its merchant-selected text colour. --- */

#page-menu.header-drawer .nav-container {
  border-radius: var(--header-card-radius);
  border: 1px solid rgba(0, 0, 0, 0.06);
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
  background-color: rgba(242, 242, 242, 0.86);
  -webkit-backdrop-filter: blur(22px)
;
  backdrop-filter: blur(22px)
;
  color: #111111;
  padding: 20px 16px;
  gap: 24px;
}

/* The cards keep their box for animation and colour purposes but stop being
   surfaces. Specificity is id-qualified so it outranks the .drawer-card base
   rule regardless of source order. */
#page-menu.header-drawer .drawer-card {
  background: none;
  background-color: transparent;
  border: 0;
  box-shadow: none;
  -webkit-backdrop-filter: none;
  backdrop-filter: none;
  border-radius: 0;
  padding: 0;
}

#page-menu.header-drawer .nav-body {
  gap: 24px;
}

/* --- Special menu ------------------------------------------------------
   This is intentionally NOT a card. It is a normal .main-nav accordion so it
   inherits the exact Shop/My order typography, spacing, child-link scale and
   +/- interaction. The only unique visual property is its merchant-selected
   text colour. ---------------------------------------------------------------- */

#page-menu.header-drawer .drawer-card--special-menu {
  --drawer-fg: var(--special-menu-color);
}

/* The general card reset above removes all surfaces from the special menu:
   no background, no border, no radius, no shadow and no extra padding. */

/* EME-style divider before Account / country / language. */
#page-menu.header-drawer .drawer-card.drawer-card--utility {
  border-top: 1px solid rgba(0, 0, 0, 0.10);
  padding-top: 24px;
}

/* --- Drawer content hierarchy ------------------------------------------
   Two type scales, not three: top-level entries read large, their children
   read at body scale, and nothing else competes. reference run the same
   relationship. --- */

#page-menu.header-drawer .main-nav > ul {
  list-style: none;
  margin: 0;
  /* The card supplies the padding now, so the list starts flush. */
  padding: 0;
}

/* A base theme rule spaces these list items, which put ~15px between rows on
   top of the anchor's own box. Measured pitch was 60px for 26px text. Zeroed
   here so the rhythm below is the only thing deciding it. */
#page-menu.header-drawer .main-nav > ul > li {
  margin: 0;
}

/* --- Row rhythm, measured off EME rather than estimated ------------------
   Read from their open drawer: 32px type, line-height exactly 32px, letter
   spacing -1.28px (-0.04em), weight 700, and consecutive rows 32px apart —
   which means zero padding and zero gap, rows sitting flush.

   The compactness is line-height and padding, not type size. Ours was 26px
   text costing 60px of height (1.25 line-height plus 6px top and bottom plus
   the list margin above) — the 60px was the problem, not the 26px.

   THE TWO BREAKPOINTS ARE NOT THE SAME SIZE. An earlier revision of this
   comment asserted EME run 32px everywhere; that was never measured and was
   wrong. Their desktop drawer is 32px at line-height 1.0 (measured directly).
   Their mobile drawer runs noticeably smaller type on a looser line — read off
   a phone screenshot, so these mobile numbers are estimates, not instrument
   readings, and are the ones to re-check if this still looks off.

   Base is therefore the MOBILE case, matching the mobile-first pattern used by
   the logo and announcement rules above; the 768px block restores the measured
   desktop values. --- */
#page-menu.header-drawer .main-nav > ul > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  /* No horizontal padding — the card's 16px gutter lines the labels up with
     the hamburger in the header row above. Vertical padding stays 0; the line
     box supplies the row height, so the rhythm has one source. */
  padding: 0;
  font-size: 26px;
  line-height: 1.4;
  letter-spacing: -0.02em;
  /* No font-weight. A previous revision forced 700 here, taken from the same
     bad measurement that produced the flush rows — both of their screenshots
     show medium-weight type, not bold. Removed rather than replaced with
     another guess, so this inherits the theme weight it had before any of
     this work. */
  text-transform: none;
  color: var(--drawer-fg);
  text-decoration: none;
}

/* Chevron: supplied by theme.js as a span.arr appended to li.has-children links
   (theme.js:6170). Do NOT add a CSS ::after chevron here — it would double up.
   Style the theme's span instead so it participates in drill-down. */
#page-menu.header-drawer .main-nav > ul > li.has-children > a .arr {
  /* The theme positions .arr absolutely, which takes it out of the flex row so
     justify-content and gap cannot place it. Forced back in-flow: on mobile
     space-between still pushes it to the card edge (matching EME), and desktop
     can then sit it beside the label. */
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  transform: none;
  flex: 0 0 auto;
  /* auto, not a fixed value: pushes the chevron to the end of the flex row so
     it lands on the card edge the way the old absolute positioning did.
     Desktop overrides this to sit it beside the label instead. */
  margin-left: auto;
  opacity: 0.6;
  display: inline-flex;
  align-items: center;
}

#page-menu.header-drawer .main-nav > ul > li.has-children > a .arr svg {
  width: 10px;
  height: 10px;
}

/* Spacing here is now owned entirely by the panel and the utility card above:
   the panel contributes a 24px group gap and .drawer-card--utility a 24px
   padding-top under its divider. This rule used to add a 20px margin and a
   16px padding on top of those, stacking FOUR sources into an 84px void
   between the last nav row and the first secondary link.

   Zeroed rather than reduced, so the group rhythm has one owner and cannot
   drift out of step with the other groups again. The border is dropped too —
   the utility card draws the divider now, and two lines rendered a doubled
   rule once the cards were flattened into one panel. */
#page-menu.header-drawer .nav-footer-links {
  margin-top: 0;
  padding: 0;
  border-top: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

#page-menu.header-drawer .nav-footer-links__link a,
#page-menu.header-drawer .nav-footer-links .localization a,
#page-menu.header-drawer .nav-footer-links .localization button {
  font-size: 12px;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--drawer-fg);
  opacity: 0.7;
  text-decoration: none;
}

#page-menu.header-drawer .nav-footer-links__link a:hover,
#page-menu.header-drawer .nav-footer-links .localization a:hover {
  opacity: 1;
}

/* Desktop: the card is ~1408px wide but the drawer's .container collapses its
   content to ~356px, which wraps "MY ORDER" and "ABOUT US" onto two lines and
   leaves a wide dead field. Give it a readable measure, left-aligned under the
   hamburger rather than centred, so the menu reads as anchored to its trigger. */
@media (min-width: 768px) {
  /* The drawer is the header card's panel, so it takes the card's width, not a
     reading measure of its own. Both sides use --header-card-inset, which is
     what positions the card itself, so the two edges line up at every
     breakpoint the inset steps through (24/32/40px) without restating numbers.

     This replaces a 560px cap. The reasoning behind that cap — that a wide
     panel holding a narrow column reads as a dead field — was about content
     alignment, and it is better solved by aligning the content than by
     shrinking the whole panel: at 1470px the cap made the drawer 381px against
     the card's 1406px, so the panel visibly failed to belong to the bar it
     drops from. */
  #page-menu.header-drawer {
    max-width: none;
    right: var(--header-card-inset);
  }

  #page-menu.header-drawer > .inner,
  #page-menu.header-drawer .nav-body.container {
    max-width: none;
    width: 100%;
    margin-left: 0;
    margin-right: auto;
    padding-left: 0;
    padding-right: 0;
  }

  /* Chevron sits next to its label. space-between is correct on a 358px phone
     card (that is where EME puts it) but strands the arrow ~350px away in a
     560px column. */
  /* Desktop. The earlier "32px on a flush 32px line box" here came from a bad
     read: two passes over the same element reported 13px/18px and 32px/32px,
     because they resolved different nodes (the <a> and an inner span). Rows
     were never flush.

     Re-derived from a screenshot of their desktop drawer using RATIOS, which
     survive not knowing the capture scale: row pitch is ~1.45x the type size,
     and the top links, the main nav and the small-caps list all share that one
     rhythm. So the line box carries the space, and it is not 1.0.

     Absolute size is set to the mobile 26px rather than a number estimated off
     the image — that size is already accepted, and guessing px from a
     screenshot is what produced the last two wrong answers. If it wants to be
     larger here, change this one value. */
  #page-menu.header-drawer .main-nav > ul > li > a {
    font-size: 20px;
    line-height: 1.2;
    letter-spacing: -0.01em;
    white-space: nowrap;
    justify-content: flex-start;
    gap: 14px;
  }

  #page-menu.header-drawer .main-nav > ul > li.has-children > a .arr {
    margin-left: 0;
  }

  /* Two columns: menu left, promo tiles right — the same arrangement EME uses
     at the foot of their drawer. Driven by the theme's existing nav-CTA blocks
     (sections/header.liquid renders .nav-ctas from section.blocks via the
     nav-call-to-action snippet), so this needs no new markup.

     Gated on :has() so it only engages once at least one CTA block exists.
     With none configured the drawer stays exactly as it is today rather than
     splitting into a column and a void. */
  #page-menu.header-drawer .nav-container:has(.nav-ctas > *) {
    display: flex;
    /* Explicit: the stack now sets flex-direction:column on .nav-container so
       the cards tile vertically, and without this the desktop two-column
       arrangement would inherit it and stay stacked. */
    flex-direction: row;
    align-items: flex-start;
    gap: 48px;
  }

  #page-menu.header-drawer .nav-container:has(.nav-ctas > *) > .nav-body {
    flex: 0 0 auto;
    width: min(480px, 40%);
  }

  #page-menu.header-drawer .nav-container:has(.nav-ctas > *) > .nav-ctas {
    flex: 1 1 auto;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 16px;
    padding-top: 16px;
  }

  #page-menu.header-drawer .nav-ctas__container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: var(--header-card-radius);
    display: block;
  }

  /* The inner column cap only exists to stop the menu stretching across an
     empty card; with tiles present the grid governs the widths instead. */
  #page-menu.header-drawer > .inner:has(.nav-ctas > *) {
    max-width: none;
  }
}

/* --- backdrop-filter fallback ------------------------------------------
   Browsers without backdrop-filter get a heavier solid tint so the card still
   separates from the hero.

   NOTE: the homepage hero is a playing video element (All_sales_020.mp4).
   EME's is a static JPEG, so they never pay this cost. Blur composited over live video
   every frame is a known cause of scroll jank on mid-range Android. FPS
   measurement is pending a dev-theme run; if blur-on is >10% slower than
   blur-off, add a body.template-index override dropping the blur there. --- */
@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
  #site-control.site-control {
    /* Glass has no colour of its own — at the default 0% card opacity there
       would be nothing left to see without the blur, so fall back to a
       neutral veil that still carries the white logo and icons. Tinted mode
       already has a colour, so it just goes near-opaque. */
    background: rgba(0, 0, 0, 0.55);
  }
}

/* ============================================================
   DRAWER — merchant feedback, 2026-08-04
   Numbering below matches the numbered points in that feedback.
   ============================================================ */

/* --- 3. Page blurs behind the open drawer ----------------------------
   "No me gusta que se vea la web por detrás del menú. Pondría un overlay
   difuminado para que se pueda intuir, pero no ver directamente."

   Done by blurring the page itself rather than laying a backdrop-filter scrim
   over it. A scrim has to be layered between the page and the card, and that
   is not achievable reliably here: the card sets z-index:100 but its wrapper
   (.shopify-section-group-header-group) is position:sticky with z-index:25 and
   so opens a stacking context, meaning the card's 100 only competes inside the
   wrapper and the whole header paints at 25 against the page. Any scrim value
   either covers the menu or sits under content that should be blurred.

   Blurring #page-content sidesteps layering entirely. Safe with position:fixed
   because the card lives in the header section group, NOT inside
   #page-content — a filtered ancestor would otherwise become its containing
   block and drag it out of place. */
html.drawer-open #page-content {
  /* Eased from 14px. The panel now blurs its own backdrop at 48px, so this
     only has to soften the page in the inset margin AROUND the card. Left at
     14px the two stacked to ~62px behind the panel and the background stopped
     being perceptible at all — the opposite of "que se intuya más el fondo". */
  filter: blur(8px) brightness(0.92);
  transition: filter 0.3s ease;
  /* Nothing behind the menu should be tappable while it is open. */
  pointer-events: none;
}

#page-content {
  transition: filter 0.3s ease;
}

/* --- 4. No underline on tap -----------------------------------------
   "No me gusta la RAYA blanca que aparece cuando seleccionas una opción."

   styles.css.liquid:6827 gives every drawer link a 2px transparent bottom
   border that turns opaque on :hover. On a touch screen :hover latches after
   a tap, so the line stays until you tap elsewhere — which is exactly the
   "raya blanca" in the screenshot. Removed rather than re-coloured. */
#page-menu.header-drawer .main-nav li a,
#page-menu.header-drawer .main-nav li a:hover,
#page-menu.header-drawer .main-nav li a:focus {
  border-bottom: 0;
}

/* --- 5. No separator rules; secondary links become pills -------------
   "Las rayas grises que separan las opciones de abajo no me gustan."

   Two sources: the theme's 2px border-top on each footer link and selector
   (styles.css.liquid:6943), and the 1px divider this file added above the
   group. Both go. The links then need their own shape to stay legible as
   discrete controls, so they become pills, per the reference reference. */
/* The drawer wrapper keeps the theme's modal background (col_nav_bar_bg,
   near-black), which would paint a black slab behind the whole stack.
   Transparent so only the cards themselves are visible surfaces. */
#page-menu.header-drawer {
  background: transparent;
}

#page-menu.header-drawer .nav-footer-links {
  border-top: 0;
  flex-direction: row;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px;
}

#page-menu.header-drawer .nav-footer-links .nav-footer-links__link,
#page-menu.header-drawer .nav-footer-links .selectors-form__item {
  border-top: 0;
  border: 0;
  padding: 0;
  margin: 0;
}

#page-menu.header-drawer .nav-footer-links .selectors-form {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

/* Were pills — a hairline-edged capsule per the earlier reference. Measured
   against EME, the pill was the second biggest source of drawer height after
   the row rhythm: 9px/15px padding plus a border made each one a 41px box to
   show 12px of text. Their equivalent secondary links are plain 13px text on
   an 18px line box, no chrome at all.

   Dropping the capsule costs the only thing that separated these from the
   surface, so they lean on the type instead: uppercase, tracked out, and the
   0.7 opacity set below carries the demotion. */
#page-menu.header-drawer .nav-footer-links__link a,
#page-menu.header-drawer .nav-footer-links .disclosure__toggle {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: none;
  font-size: 13px;
  line-height: 18px;
  color: var(--drawer-fg);
  letter-spacing: 0.06em;
  text-transform: uppercase;
  opacity: 1;
  white-space: nowrap;
  transition: background 0.2s ease;
}

#page-menu.header-drawer .nav-footer-links__link a:hover,
#page-menu.header-drawer .nav-footer-links .disclosure__toggle:hover {
  background: #fff;
  opacity: 1;
}

/* The country/language toggles are styled by the theme at a higher
   specificity than the pill rule above, which left them white-on-white at 0.7
   opacity — legible as a shape, unreadable as text. Restated here through the
   .disclosure wrapper so the pill's dark text and full opacity win. */
#page-menu.header-drawer .nav-footer-links .disclosure .disclosure__toggle {
  color: var(--drawer-fg);
  opacity: 1;
}

#page-menu.header-drawer .nav-footer-links .disclosure .disclosure__toggle-arrow svg {
  width: 9px;
  height: 9px;
  fill: var(--drawer-fg);
}

#page-menu.header-drawer .nav-footer-links .disclosure .disclosure__toggle-arrow svg path {
  fill: var(--drawer-fg);
}

/* The disclosure list pops over the pill. Pure white against the card's
   off-white so it still reads as a layer above it. */
#page-menu.header-drawer .nav-footer-links .disclosure-list {
  background: #fff;
  color: var(--drawer-fg);
  border-radius: 10px;
  border: 0;
  padding: 6px 0;
  box-shadow: 0 8px 24px rgba(0, 0, 0, 0.18);
}

/* --- 6. Accordion instead of drill-down ------------------------------
   "En vez de que tengas que clickar en SHOP para que te aparezcan todas las
   opciones, molaría que fuera como el + de reference."

   Depends on nav-uses-modal being absent from #page-menu, which switches off
   three theme behaviours at once — the drill-down handler, the appended
   chevron, and the rule at :6868 that hides nested lists outright. That last
   one matters: it is display:none, so no max-height here could have revealed
   the sublists while the class was present. Toggle logic in header-drawer.js.

   Collapsed by max-height rather than the grid 0fr->1fr idiom used for the
   drawer itself, because a <ul> has many children and 0fr would apply per
   row; header-drawer.js sets the measured scrollHeight on open. */
#page-menu.header-drawer .main-nav > ul > li > ul {
  max-height: 0;
  overflow: hidden;
  margin: 0;
  padding: 0;
  list-style: none;
  /* visibility, not just max-height. max-height:0 clips without removing
     from layout, so every collapsed child link stayed tabbable — keyboard
     users walked through a dozen invisible links between SHOP and MY ORDER.
     Browsers drop visibility:hidden subtrees from the tab order natively.
     The 0s-delayed leg holds it visible for the whole collapse so the links
     do not vanish mid-animation. */
  visibility: hidden;
  transition: max-height 0.3s ease, visibility 0s linear 0.3s;
}

#page-menu.header-drawer .main-nav > ul > li.is-open > ul {
  /* Fallback only; the inline measured height wins. */
  max-height: 70vh;
  visibility: visible;
  transition: max-height 0.3s ease, visibility 0s linear 0s;
}

/* Indented and smaller, as asked. */
#page-menu.header-drawer .main-nav > ul > li > ul li a {
  display: block;
  padding: 7px 0 7px 18px;
  font-size: 15px;
  line-height: 1.35;
  letter-spacing: 0;
  text-transform: none;
  color: var(--drawer-fg);
  opacity: 0.75;
  text-decoration: none;
}

#page-menu.header-drawer .main-nav > ul > li > ul li a:hover {
  opacity: 1;
}

/* Mega-menu group titles keep some weight so the flattened list still reads
   as grouped, now that there is no separate drilled-in screen. */
#page-menu.header-drawer .main-nav > ul > li > ul li.main-nav__mega-title > a {
  font-weight: 600;
  opacity: 1;
  padding-top: 12px;
}

/* The +/- affordance. Safe to draw here only because theme.js no longer
   appends its own span.arr — with nav-uses-modal present this would double. */
#page-menu.header-drawer .main-nav > ul > li.has-children > a::after {
  content: '+';
  margin-left: auto;
  padding-left: 12px;
  /* Tracks the 26px top-level scale set with the card stack. */
  font-size: 24px;
  line-height: 1;
  font-weight: 300;
  opacity: 0.8;
}

#page-menu.header-drawer .main-nav > ul > li.has-children.is-open > a::after {
  content: '–';
}

@media (min-width: 768px) {
  /* Marker beside the label rather than at the far card edge, matching where
     the chevron sat. */
  #page-menu.header-drawer .main-nav > ul > li.has-children > a::after {
    margin-left: 0;
  }
}

/* ============================================================
   DRAWER — EME-STYLE REFINEMENT, 2026-08-12

   - Featured links above the main menu
   - Compact sentence-case hierarchy
   - Translucent frosted panel
   - Strong divider + vertical utility links
   - Hidden scrollbar (scrolling remains enabled)
   - Page behind remains sharp; only the drawer glass is blurred
   ============================================================ */

/* Keep the drawer scrollable, but remove the visible scrollbar and let the
   panel run close to the bottom of the viewport like the reference. */
#page-menu.header-drawer {
  max-height: calc(100dvh - var(--header-card-inset) - var(--header-card-full) - 8px - 16px);
  scrollbar-width: none;
  -ms-overflow-style: none;
}

#page-menu.header-drawer::-webkit-scrollbar {
  width: 0;
  height: 0;
  display: none;
}

/* One translucent reading surface. The content outside the panel stays sharp;
   backdrop-filter only frosts what sits directly behind this rectangle. */
#page-menu.header-drawer .nav-container {
  background: rgba(255, 255, 255, 0.58) !important;
  background-color: rgba(255, 255, 255, 0.58) !important;
  background-image: none !important;
  -webkit-backdrop-filter: blur(14px) !important;
  backdrop-filter: blur(14px) !important;
  border: 0 !important;
  border-radius: 4px !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.06) !important;
  padding: 26px 22px 30px !important;
  gap: 28px !important;
}

#page-menu.header-drawer .nav-body {
  gap: 28px !important;
}

/* The three merchandising links that sit before Shop / My order / About us. */
#page-menu.header-drawer .drawer-top-links {
  width: 100%;
  margin: 0;
  padding: 0;
}

#page-menu.header-drawer .drawer-top-links ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

#page-menu.header-drawer .drawer-top-links li {
  margin: 0;
  padding: 0;
}

#page-menu.header-drawer .drawer-top-links li + li {
  margin-top: 8px;
}

#page-menu.header-drawer .drawer-top-links a {
  display: inline-block;
  padding: 2px 0;
  color: var(--drawer-fg);
  font-size: 20px;
  line-height: 1.2;
  font-weight: 500;
  letter-spacing: -0.025em;
  text-decoration: none;
}

/* Main accordion: smaller and more compact than the previous 26px / 1.4 setup. */
#page-menu.header-drawer .main-nav > ul > li > a {
  padding: 6px 0 !important;
  font-size: 20px !important;
  line-height: 1.2 !important;
  letter-spacing: -0.025em !important;
  font-weight: 500 !important;
  text-transform: none !important;
  justify-content: space-between !important;
  gap: 16px !important;
}

#page-menu.header-drawer .main-nav > ul > li + li {
  margin-top: 0 !important;
}

/* Compact children, aligned with the parent text like the reference rather
   than deeply indented. */
#page-menu.header-drawer .main-nav > ul > li > ul li a {
  padding: 7px 0 !important;
  font-size: 15px !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;
  font-weight: 400 !important;
  text-transform: none !important;
  opacity: 0.82 !important;
}

#page-menu.header-drawer .main-nav > ul > li > ul li.main-nav__mega-title > a {
  padding-top: 9px !important;
  font-weight: 500 !important;
  opacity: 1 !important;
}

/* Thin +/- at the far edge on every breakpoint. */
#page-menu.header-drawer .main-nav > ul > li.has-children > a::after {
  margin-left: auto !important;
  padding-left: 14px !important;
  font-size: 21px !important;
  line-height: 1 !important;
  font-weight: 300 !important;
  opacity: 0.82 !important;
}

/* Stronger separator before Account / country / language. */
#page-menu.header-drawer .drawer-card.drawer-card--utility {
  border-top: 1px solid rgba(0, 0, 0, 0.72) !important;
  padding-top: 24px !important;
}

/* Utilities become a clean vertical list instead of one horizontal row. */
#page-menu.header-drawer .nav-footer-links {
  width: 100% !important;
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 12px !important;
  margin: 0 !important;
  padding: 0 !important;
}

#page-menu.header-drawer .nav-footer-links .localization,
#page-menu.header-drawer .nav-footer-links .selectors-form {
  width: 100%;
}

#page-menu.header-drawer .nav-footer-links .selectors-form {
  display: flex !important;
  flex-direction: column !important;
  flex-wrap: nowrap !important;
  align-items: flex-start !important;
  gap: 12px !important;
}

#page-menu.header-drawer .nav-footer-links .nav-footer-links__link,
#page-menu.header-drawer .nav-footer-links .selectors-form__item {
  width: auto !important;
  display: block !important;
  padding: 0 !important;
  margin: 0 !important;
  border: 0 !important;
}

#page-menu.header-drawer .nav-footer-links__link a,
#page-menu.header-drawer .nav-footer-links .disclosure__toggle,
#page-menu.header-drawer .nav-footer-links .localization a,
#page-menu.header-drawer .nav-footer-links .localization button {
  display: inline-flex !important;
  align-items: center !important;
  width: auto !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: none !important;
  color: var(--drawer-fg) !important;
  font-size: 16px !important;
  line-height: 1.35 !important;
  font-weight: 400 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  opacity: 1 !important;
  text-decoration: none !important;
}

#page-menu.header-drawer .nav-footer-links__link a:hover,
#page-menu.header-drawer .nav-footer-links .disclosure__toggle:hover,
#page-menu.header-drawer .nav-footer-links .localization a:hover {
  background: none !important;
  opacity: 1 !important;
}

/* The page around the panel stays completely sharp, like the reference. */
html.drawer-open #page-content {
  filter: none !important;
  pointer-events: none;
}

#page-content {
  transition: none !important;
}

@media (min-width: 768px) {
  #page-menu.header-drawer .nav-container {
    padding: 30px 32px 34px !important;
    gap: 30px !important;
  }

  #page-menu.header-drawer .nav-body {
    gap: 30px !important;
  }

  #page-menu.header-drawer .drawer-top-links a,
  #page-menu.header-drawer .main-nav > ul > li > a {
    font-size: 21px !important;
  }

  #page-menu.header-drawer .main-nav > ul > li > ul li a {
    font-size: 15px !important;
  }
}

/* ============================================================
   DRAWER + DESKTOP NAV — FINAL REFINEMENT, 2026-08-12

   Mobile:
   - same exact glass recipe as the header
   - featured links before the main accordion
   - tighter submenu rhythm
   - clean vertical account/country/language controls
   - no visible scrollbar

   Desktop:
   - inline navigation inside the header
   - click-to-open wide mega panel for links with children
   - same exact glass recipe as the header
   ============================================================ */

/* ---------- MOBILE / SHARED DRAWER SURFACE ---------- */

/* Match the drawer panel to the HEADER glass exactly, rather than maintaining
   a separate 58% white / 14px recipe. */
#page-menu.header-drawer .nav-container {background-color: rgba(255, 255, 255, 0.18) !important;
  background-image: linear-gradient(to bottom right, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0) 100%) !important;-webkit-backdrop-filter: blur(14px)
 !important;
  backdrop-filter: blur(14px)
 !important;
  border: 1px solid rgba(255, 255, 255, 0.1) !important;
  border-radius: var(--header-card-radius) !important;
  box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1) !important;
}

/* Featured links read as the first navigation group, followed by a small break. */
#page-menu.header-drawer .drawer-top-links {
  margin-bottom: 12px !important;
}

#page-menu.header-drawer .drawer-top-links li + li {
  margin-top: 3px !important;
}

#page-menu.header-drawer .drawer-top-links a {
  padding: 3px 0 !important;
  font-size: 20px !important;
  line-height: 1.18 !important;
  font-weight: 500 !important;
}

/* Keep the main groups relatively tight. */
#page-menu.header-drawer .nav-body {
  gap: 16px !important;
}

#page-menu.header-drawer .main-nav > ul > li > a {
  padding: 5px 0 !important;
}

/* Open submenu entries were still too far apart. */
#page-menu.header-drawer .main-nav > ul > li > ul li a {
  padding: 3px 0 !important;
  font-size: 15px !important;
  line-height: 1.22 !important;
}

#page-menu.header-drawer .main-nav > ul > li > ul li.main-nav__mega-title > a {
  padding-top: 5px !important;
}

/* The theme's dropdown chevron was landing on top of Spain / English.
   The labels themselves already communicate that these controls open. */
#page-menu.header-drawer .nav-footer-links .disclosure__toggle-arrow {
  display: none !important;
}

/* Product pages have an intentionally solid-white header; the drawer follows it. */
body.template-product #page-menu.header-drawer .nav-container {
  background: #ffffff !important;
  background-color: #ffffff !important;
  background-image: none !important;
  -webkit-backdrop-filter: none !important;
  backdrop-filter: none !important;
}

/* ---------- DESKTOP HEADER NAV ---------- */

.eme-desktop-nav,
.eme-desktop-mega {
  display: none;
}

@media (min-width: 992px) {

  /* Desktop no longer uses the hamburger drawer. */
  #site-control .site-control__inner > .menu {
    display: none !important;
  }

  #page-menu.header-drawer {
    display: none !important;
  }

  /* Hide the theme's old inline-nav output if the editor setting happens to
     be switched to "Show links"; this custom row owns desktop navigation now. */
  #site-control .site-control__inline-links {
    display: none !important;
  }

  .eme-desktop-nav {
    display: block;
    justify-self: start;
    min-width: 0;
    width: 100%;
    overflow: hidden;
  }

  .eme-desktop-nav__links {
    display: flex;
    align-items: center;
    gap: clamp(10px, 1.15vw, 22px);
    min-width: 0;
    white-space: nowrap;
  }

  .eme-desktop-nav__links > a,
  .eme-desktop-nav__toggle {
    appearance: none;
    -webkit-appearance: none;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    border: 0;
    background: none;
    color: #000000;
    font: inherit;
    font-size: clamp(11px, 0.78vw, 14px);
    line-height: 1;
    font-weight: 400;
    letter-spacing: -0.015em;
    text-decoration: none;
    cursor: pointer;
  }

  .eme-desktop-nav__links > a:hover,
  .eme-desktop-nav__toggle:hover,
  .eme-desktop-nav__toggle.is-active {
    opacity: 0.58;
  }

  /* Wide click-open panel sitting directly beneath the header card. */
  .eme-desktop-mega {
    position: fixed;
    top: calc(var(--header-card-inset) + var(--header-card-full) + 8px);
    left: var(--header-card-inset);
    right: var(--header-card-inset);
    z-index: 99;
    max-height: calc(100dvh - var(--header-card-inset) - var(--header-card-full) - 24px);
    overflow-y: auto;
    scrollbar-width: none;
    -ms-overflow-style: none;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transform: translateY(-4px);
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0.2s;background-color: rgba(255, 255, 255, 0.18);
    background-image: linear-gradient(to bottom right, rgba(255,255,255,0.4) 0%, rgba(255,255,255,0.05) 50%, rgba(255,255,255,0) 100%);-webkit-backdrop-filter: blur(14px)
;
    backdrop-filter: blur(14px)
;
    border: 1px solid rgba(255, 255, 255, 0.1);
    border-radius: var(--header-card-radius);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.1);
  }

  .eme-desktop-mega::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }

  .eme-desktop-mega.is-open {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
    transform: none;
    transition: opacity 0.2s ease, transform 0.2s ease, visibility 0s linear 0s;
  }

  body.template-product .eme-desktop-mega {
    background: #ffffff;
    background-color: #ffffff;
    background-image: none;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
  }

  .eme-desktop-mega__inner {
    padding: clamp(28px, 3vw, 52px);
  }

  .eme-desktop-mega__content {
    display: none;
  }

  .eme-desktop-mega__content.is-active {
    display: block;
  }

  .eme-desktop-mega__heading-row {
    margin-bottom: 26px;
  }

  .eme-desktop-mega__heading {
    display: inline-block;
    color: #000;
    font-size: 20px;
    line-height: 1.1;
    font-weight: 600;
    letter-spacing: -0.025em;
    text-decoration: none;
  }

  .eme-desktop-mega__columns {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 38px;
    align-items: start;
  }

  .eme-desktop-mega__column {
    min-width: 0;
  }

  .eme-desktop-mega__column-title {
    display: inline-block;
    margin-bottom: 18px;
    color: #000;
    font-size: 18px;
    line-height: 1.1;
    font-weight: 600;
    letter-spacing: -0.025em;
    text-decoration: none;
  }

  .eme-desktop-mega__column-links {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .eme-desktop-mega__column-links a,
  .eme-desktop-mega__flat-list a {
    color: #000;
    font-size: 14px;
    line-height: 1.25;
    font-weight: 400;
    letter-spacing: -0.015em;
    text-decoration: none;
  }

  .eme-desktop-mega__column-links a:hover,
  .eme-desktop-mega__flat-list a:hover,
  .eme-desktop-mega__heading:hover,
  .eme-desktop-mega__column-title:hover {
    opacity: 0.58;
  }

  /* If the Shopify menu has one flat list (as Shop currently does), spread it
     across a desktop grid instead of reproducing the long mobile column. */
  .eme-desktop-mega__flat-list {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    column-gap: 42px;
    row-gap: 14px;
  }
}

@media (min-width: 1280px) {
  .eme-desktop-mega__columns,
  .eme-desktop-mega__flat-list {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}




/* ============================================================
   DESKTOP NAV + MOBILE ALIGNMENT — V3, 2026-08-12
   ============================================================ */

/* 1. Mobile featured links align with Shop / My order / About us. */
#page-menu.header-drawer .drawer-top-links,
#page-menu.header-drawer .drawer-top-links ul,
#page-menu.header-drawer .drawer-top-links li {
  text-align: left !important;
}

#page-menu.header-drawer .drawer-top-links a {
  display: block !important;
  width: 100% !important;
  text-align: left !important;
}

@media (min-width: 992px) {
  /* The base declaration above hides the mega everywhere. It must explicitly
     become a rendered box on desktop; visibility/opacity then control opening. */
  .eme-desktop-mega {
    display: block !important;
  }

  /* All ordinary desktop titles are black. Theme link-colour rules are more
     specific in a few states, hence !important here. */
  .eme-desktop-nav__links > a {
    color: #000000 !important;
    font-size: var(--eme-desktop-nav-font-size, 15px) !important;
  }

  /* Links with children are orange, using the exact announcement-bar setting. */
  .eme-desktop-nav__toggle {
    color: var(--eme-desktop-dropdown-accent, #F97000) !important;
    font-size: var(--eme-desktop-nav-font-size, 15px) !important;
    opacity: 1 !important;
  }

  .eme-desktop-nav__toggle:hover,
  .eme-desktop-nav__toggle.is-active {
    color: var(--eme-desktop-dropdown-accent, #F97000) !important;
    opacity: 0.72 !important;
  }

  .eme-desktop-nav__links > a:hover {
    color: #000000 !important;
    opacity: 0.62 !important;
  }

  /* Make the mega panel visually extend the existing header card rather than
     look like a second floating card. */
  .eme-desktop-mega {
    top: calc(var(--header-card-inset) + var(--header-card-full)) !important;
    border-top: 0 !important;
    border-radius: 0 0 var(--header-card-radius) var(--header-card-radius) !important;
    transform: translateY(-1px) !important;
  }

  .eme-desktop-mega.is-open {
    transform: translateY(-1px) !important;
  }

  #site-control.desktop-mega-open .site-control__inner {
    border-radius: var(--header-card-radius) var(--header-card-radius) 0 0 !important;
  }

  /* If the announcement is visible, its top corners remain owned by the
     announcement bar while the navigation row joins the mega below. */
  #site-control.has-announcement.desktop-mega-open .site-control__inner {
    border-radius: 0 !important;
  }

  .eme-desktop-mega__heading,
  .eme-desktop-mega__column-title,
  .eme-desktop-mega__column-links a,
  .eme-desktop-mega__flat-list a {
    color: #000000 !important;
  }
}/* Standard section rhythm */
.section-spacing {
  padding-top: 18px;
  padding-bottom: 18px;
}

.section-spacing.section-spacing--half-bottom {
  padding-bottom: 9px;
}

.double-section-spacing {
  margin-top: 36px;
  margin-bottom: 36px;
}

@media (min-width: 768px) {
  .section-spacing,
  .section-spacing-sm {
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .section-spacing.section-spacing--half-bottom {
    padding-bottom: 10px;
  }

  .double-section-spacing {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}

/* Preserve the theme's one-sided spacing helpers. */
.section-spacing.section-spacing--top-only { padding-bottom: 0; }
.section-spacing.section-spacing--bottom-only { padding-top: 0; }
.section-spacing.section-spacing--sm-b { padding-bottom: 4px; }

/* Standard section headings */
.section-heading.section-heading--with-spacing {
  margin-bottom: 0px;
}

.section-heading h2 {
  font-size: 22px;
  font-weight: 500;
  line-height: 100%;
  letter-spacing: -1px;
  text-transform: none;
}

.section-heading .view-all-link {
  font-size: 18px;
}

@media (min-width: 768px) {
  .section-heading.section-heading--with-spacing {
    margin-bottom: 0px;
  }

  .section-heading h2 {
    font-size: 22px;
    line-height: 100%;
  }

  .section-heading .view-all-link {
    font-size: 18px;
  }
}

/* Product card typography */
.product-block .title,
.collection-block .title {
  padding-top: 12px;
  font-size: 11px;
  font-weight: 400;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}

@media (min-width: 768px) {
  .product-block .title,
  .collection-block .title {
    font-size: 12px;
  }
}

/* Home tabbed collections + collection pages: side padding and product gap. */
@media (max-width: 767px) {
  .tabbed-collection,
  [data-section-type="collection-template"] .wide-container {
    padding-left: 20px;
    padding-right: 20px;
  }

  .tabbed-collection .product-list .column.quarter,
  [data-section-type="collection-template"] .product-list .column.quarter {
    padding-left: 0.0px;
    padding-right: 0.0px;
  }
}

@media (min-width: 768px) {
  .tabbed-collection,
  [data-section-type="collection-template"] .wide-container {
    padding-left: 32px;
    padding-right: 32px;
  }

  .tabbed-collection .product-list .column.quarter,
  [data-section-type="collection-template"] .product-list .column.quarter {
    padding-left: 6.0px;
    padding-right: 6.0px;
  }
}

@media (min-width: 1441px) {
  .tabbed-collection,
  [data-section-type="collection-template"] .wide-container {
    padding-left: 40px;
    padding-right: 40px;
  }
}

/* ============================================================
   HEADER / MENU REFINEMENT — 2026-08-13
   1) tighter mobile submenu rows
   2) desktop account / country / language icon group
   3) compact one-row desktop dropdowns
   ============================================================ */

/* ---------- 1. MOBILE: tighter submenu rhythm ---------- */
@media (max-width: 991px) {
  /* The base theme gives every nested <li> a 0.6em bottom margin. That was the
     main reason the submenu still looked very spaced even after reducing the
     anchors' padding. Remove the inherited list-item margin completely. */
  #page-menu.header-drawer .main-nav > ul > li > ul li {
    margin: 0 !important;
    padding: 0 !important;
  }

  #page-menu.header-drawer .main-nav > ul > li > ul li a {
    padding: 2px 0 !important;
    font-size: 15px !important;
    line-height: 1.16 !important;
  }

  #page-menu.header-drawer .main-nav > ul > li > ul li.main-nav__mega-title {
    margin: 0 !important;
  }

  #page-menu.header-drawer .main-nav > ul > li > ul li.main-nav__mega-title > a {
    padding: 3px 0 2px !important;
  }
}


/* ---------- 2. DESKTOP: text utilities before Search ---------- */
.eme-desktop-utilities {
  display: none;
}

@media (min-width: 992px) {
  .eme-desktop-utilities {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-right: 20px;
    padding-right: 0;
    white-space: nowrap;
  }

  .eme-desktop-utility {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: auto;
    height: auto;
    min-width: 0;
    flex: 0 0 auto;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    color: #000000 !important;
    font: inherit;
    font-size: var(--eme-desktop-nav-font-size, 15px) !important;
    font-weight: 400;
    line-height: 1.1;
    letter-spacing: 0;
    text-transform: none;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: opacity 0.16s ease;
  }

  .eme-desktop-utility:hover,
  .eme-desktop-utility:focus-visible {
    opacity: 0.58;
  }

  /* Keep a little more breathing room before Search/Cart than between
     Account, country and language, so the utility group reads separately. */
  #site-control .nav-right-side {
    align-items: center;
  }
}


/* ---------- 3. DESKTOP: compact one-row dropdown ---------- */
@media (min-width: 992px) {
  /* No repeated "Shop" / "My order" title inside the opened panel. */
  .eme-desktop-mega__heading-row {
    display: none !important;
  }

  /* Much shorter panel. */
  .eme-desktop-mega__inner {
    padding: 18px clamp(24px, 2.8vw, 48px) 20px !important;
  }

  /* Flat menus such as Shop / My order stay on ONE horizontal row.
     If a smaller laptop cannot fit everything, the row scrolls horizontally
     rather than becoming a tall multi-row panel. */
  .eme-desktop-mega__flat-list {
    display: flex !important;
    flex-direction: row !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: clamp(24px, 3.2vw, 58px) !important;
    overflow-x: auto;
    overflow-y: hidden;
    scrollbar-width: none;
    white-space: nowrap;
  }

  .eme-desktop-mega__flat-list::-webkit-scrollbar {
    display: none;
    width: 0;
    height: 0;
  }

  .eme-desktop-mega__flat-list a {
    flex: 0 0 auto;
    font-size: 14px !important;
    line-height: 1.15 !important;
  }

  /* If a future Shopify menu has grouped children, keep the groups horizontal
     and compact too, instead of rebuilding a tall four-column mega menu. */
  .eme-desktop-mega__columns {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: clamp(28px, 3.5vw, 64px) !important;
    overflow-x: auto;
    scrollbar-width: none;
  }

  .eme-desktop-mega__columns::-webkit-scrollbar {
    display: none;
  }

  .eme-desktop-mega__column {
    flex: 0 0 auto;
    min-width: max-content;
  }

  .eme-desktop-mega__column-title {
    margin-bottom: 7px !important;
    font-size: 15px !important;
  }

  .eme-desktop-mega__column-links {
    gap: 4px !important;
  }

  .eme-desktop-mega__column-links a {
    font-size: 13px !important;
  }
}




/* ============================================================
   SHAMELESS — PRODUCT CARD TYPOGRAPHY / SINGLE-LINE LAYOUT
   Mobile:
   - smaller title / prices / sale badge
   - title + prices on one line
   - sale badge remains below
   Desktop:
   - preserve existing font sizes
   - title left, prices + sale badge right, all on one line
   ============================================================ */

/* MOBILE ONLY */
@media (max-width: 767px) {
  .product-block .caption__row {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-rows: auto auto;
    column-gap: 8px;
    row-gap: 5px;
    align-items: baseline;
    width: 100%;
  }

  /* Title: one line, ellipsis if it cannot fit */
  .product-block .caption__row .title {
    grid-column: 1;
    grid-row: 1;
    min-width: 0;
    width: auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;

    /* Mobile typography only */
    font-size: 10.5px !important;
    line-height: 1.15;
  }

  /*
    On mobile, expose .price and .price-badge as grid children:
    row 1 = title + prices
    row 2 = orange SALES badge
  */
  .product-block .caption__row .price-line {
    display: contents;
  }

  .product-block .caption__row .price {
    grid-column: 2;
    grid-row: 1;
    justify-self: end;
    flex-shrink: 0;
    white-space: nowrap;
    text-align: right;
    margin: 0;

    /* Keep it vertically aligned with the title */
    padding-top: 12px;

    /* Mobile typography only */
    font-size: 10.5px !important;
    line-height: 1.15;
  }

  /* Current and compare-at prices inherit all existing colours/weights/strike styles */
  .product-block .caption__row .price > .theme-money,
  .product-block .caption__row .price > .was-price.theme-money {
    font-size: 10.5px !important;
  }

  /* SALES badge stays underneath, just smaller */
  .product-block .caption__row .price-badge {
    grid-column: 1;
    grid-row: 2;
    justify-self: start;
    margin: 0;

    font-size: 9px !important;
    line-height: 1.15;
    padding: 0.13rem 0.38rem;
  }
}

/* DESKTOP ONLY */
@media (min-width: 768px) {
  .product-block .caption__row {
    display: flex;
    flex-direction: row;
    align-items: baseline;
    gap: 12px;
    width: 100%;
  }

  /* Title owns the available space on the left */
  .product-block .caption__row .title {
    flex: 1 1 auto;
    min-width: 0;
    width: auto;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

  /* Price group stays pinned to the right */
  .product-block .caption__row .price-line {
    display: flex;
    flex: 0 0 auto;
    width: auto;
    margin-left: auto;
    padding-top: 12px;
    align-items: baseline;
    justify-content: flex-end;
    flex-wrap: nowrap;
    gap: 0.5rem;
    white-space: nowrap;
  }

  .product-block .caption__row .price {
    flex: 0 0 auto;
    white-space: nowrap;
    text-align: right;
    margin: 0;
    padding-top: 0;
  }

  .product-block .caption__row .price-badge {
    flex: 0 0 auto;
    white-space: nowrap;
  }
}

/* FOOTER — mobile */
@media (max-width: 767px) {
  .section-footer .section-footer__menu-block__menu a {
    font-size: 12px;
  }

  .section-footer .section-footer__newsletter-block {
    font-size: 12px;
  }

  .section-footer .signup-form__email {
    font-size: 142x;
  }

  .section-footer .copyright {
    font-size: 11px;
  }

  .section-footer .section-footer__newsletter-block .section-footer__text {
  font-size: 12px;
}
