/* Vendor */

/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
  position: relative;
}

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

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

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

.carousel.is-fullscreen .carousel-cell {
  height: 100%;
}



/* draggable */

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

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

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

/* ---- flickity-button ---- */

.flickity-button {
  position: absolute;
  background: hsla(0, 0%, 100%, 0.75);
  border: none;
  color: #333;
}

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

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px #19F;
}

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

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

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */

.flickity-prev-next-button {
  top: 50%;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous { left: 10px; }

.flickity-prev-next-button.next { right: 10px; }

/* right to left */

.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 10px;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 20%;
  top: 20%;
  width: 60%;
  height: 60%;
}

/* ---- page dots ---- */

.flickity-page-dots {
  position: absolute;
  width: 100%;
  bottom: -25px;
  padding: 0;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

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

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 8px;
  background: #333;
  border-radius: 50%;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

/* Core */

/* Should be the same as --max-width */

:root {
  --max-width: 2000px;
  --max-width-small-page: 600px;

  --spacing-unit: 4px;

  --spacing-none: 0px;
  --spacing-extra-small: calc(var(--spacing-unit) * 2);
  --spacing-small: calc(var(--spacing-unit) * 3);
  --spacing-medium: calc(var(--spacing-unit) * 5);
  --spacing-large: calc(var(--spacing-unit) * 10);
  --spacing-extra-large: calc(var(--spacing-unit) * 12);
  --spacing-extra-extra-large: calc(var(--spacing-unit) * 20);

  /* Space around the outside of the page */
  --space-outer: 20px;

  /* Space around individual inline elements */
  --space-inline-element: 10px;

  --space-grid: 20px;

  --color-frame-background: #fafafa;

  --height-input: 48px;

  --z-index-overlay: 500;
  --z-index-header-search: 600;
  --z-index-popup: 1000;
  --z-index-mega-nav: 1050;
  --z-index-lightbox: 1100;
  --z-index-modal: 1200;
  --z-index-theme-editor-offset: 2000;

  /* TODO: generate this */
  --box-shadow: 0px 2px 4px rgba(26, 26, 26, 0.1),
    0px 1px 2px rgba(0, 0, 0, 0.12);

  /* Typography */
  --font-size-heading-x-large: 36px;
  --line-height-heading-x-large: 44px;

  --font-size-heading-large: 32px;
  --line-height-heading-large: 40px;

  --font-size-heading-base: 24px;
  --line-height-heading-base: 32px;

  --font-size-heading-small: 18px;
  --line-height-heading-small: 24px;

  --font-size-body-large: 16px;
  --line-height-body-large: 28px;

  --font-size-body-base: 14px;
  --line-height-body-base: 24px;

  --font-size-body-small: 12px;
  --line-height-body-small: 20px;

  --font-size-meta: 12px;
  --line-height-meta: 24px;
}

@media (min-width: 40em) {

:root {
    --space-outer: calc(var(--spacing-unit) * 10);
}
  }

.hover {
  --duration: 0.3s;
  --easing: ease;
}

.hover .image {
    overflow: hidden;
  }

.hover .image img {
      transition: opacity 0.5s, transform var(--duration) var(--easing);
    }

.hover:hover .image img {
    transform: scale(1.1);
    transition: transform var(--duration) var(--easing);
  }

html:not(.theme-editor) .animate.animate-up {
  opacity: 0;
  transform: translateY(60px);
}
    
span.product-detail-page { 
  display: block;
  font-size: 21px;
  line-height: 28px;
  margin-bottom: 20px;
  margin-top: 5px;
  font-weight: 200; }
    
    .product-single__meta { font-size: 14px; line-height: 24px; }

    .product__price.fs-body-base { margin-bottom: 20px; }
    .product__price.fs-body-base span { font-weight: bold; margin-top: 25px; display: block;}
 
    
    .article__image { padding-left: 0 !important; padding-right: 0px !important; border: 1px solid #eee; width: 50%; height: auto; margin-left: auto; margin-right: auto; }
 
    
    .blog__article-image { border: 1px solid #eee; }
    
    
button {
  border: 0;
  border-radius: 0;
  display: inline-block;
  cursor: pointer;
  -webkit-appearance: none;
  font-family: inherit;
  color: inherit;
  margin: 0;
  padding: 0;
  background-color: transparent;
  font-size: inherit;
}

.btn,
.shopify-payment-button__button,
.spr-summary-actions-newreview {
  --height: 48px;
  --horizontal-space: 32px;
  --radius: var(--height);

  background-color: transparent;
  display: inline-flex;
  align-items: center;
  justify-content: space-around;
  font-family: inherit;
  font-size: 14px !important;
  font-weight: var(--font-body-weight) !important;
  border: 1px solid var(--color-border-button-secondary);
  border-radius: var(--radius);
  color: var(--color-text-button-secondary);
  cursor: pointer;

  height: var(--height);
  line-height: var(--height);
  padding: 0 var(--horizontal-space);
  transition: all 0.25s ease !important;
}

.btn:not([disabled]):hover,
    .btn:not([disabled]):focus,
    .shopify-payment-button__button:not([disabled]):hover,
    .shopify-payment-button__button:not([disabled]):focus,
    .spr-summary-actions-newreview:not([disabled]):hover,
    .spr-summary-actions-newreview:not([disabled]):focus {
      border-color: var(--color-border-button-secondary-hover);
    }

.btn:active, .shopify-payment-button__button:active, .spr-summary-actions-newreview:active {
    background-color: var(--color-border-button-secondary-hover);
    /* Generate this text colour, page background should be safe enough for now though */
    color: var(--color-background);
    transform: scale(0.95);
  }

.contrast .btn, .contrast .shopify-payment-button__button, .contrast .spr-summary-actions-newreview {
    border: 1px solid var(--color-border-contrast);
    color: var(--color-text-body-contrast);
  }

.contrast .btn:active, .contrast .shopify-payment-button__button:active, .contrast .spr-summary-actions-newreview:active {
      color: var(--color-background-contrast);
    }

.btn .btn__loading-bar, .shopify-payment-button__button .btn__loading-bar, .spr-summary-actions-newreview .btn__loading-bar {
    background-color: var(--color-text-button-secondary);
  }

.btn.btn--primary,
.shopify-payment-button__button.shopify-payment-button__button--unbranded,
.spr-button-primary {
  border-color: var(--color-background-button);
  background-color: var(--color-background-button);
  color: var(--color-text-button);
}

.btn.btn--primary:not([disabled]):hover,
    .btn.btn--primary:not([disabled]):focus,
    .shopify-payment-button__button.shopify-payment-button__button--unbranded:not([disabled]):hover,
    .shopify-payment-button__button.shopify-payment-button__button--unbranded:not([disabled]):focus,
    .spr-button-primary:not([disabled]):hover,
    .spr-button-primary:not([disabled]):focus {
      border-color: var(--color-background-button-hover);
      background-color: var(--color-background-button-hover);
    }

.btn.btn--primary .btn__loading-bar, .shopify-payment-button__button.shopify-payment-button__button--unbranded .btn__loading-bar, .spr-button-primary .btn__loading-bar {
    background-color: var(--color-text-button);
  }

    a.btn.btn--primary { 
    transition: all 0.2s linear 0s !important; 
    }
       
    a:hover.btn.btn--primary { 
    background: #c93428 !important;
      border: 1px solid #c93428 !important; 
      color: #fff !important;
    }
    
.btn.btn--full {
  width: 100%;
}

    
    .btn.btn--primary { line-height: 18px; }
    
.btn[disabled],
.btn.disabled {
  opacity: 0.5;
  cursor: not-allowed;
}

.btn.loading span {
    display: none;
  }

.btn.loading .btn__loading-wrap {
    display: block;
  }

.btn__loading-wrap {
  display: none;
  width: 100%;
  max-width: 100px;
  height: 2px;
  overflow: hidden;
}

.btn__loading-bar {
  width: 100%;
  height: 2px;
  border-radius: 2px;
  -webkit-animation: loaderLine 1.4s ease-in-out infinite;
          animation: loaderLine 1.4s ease-in-out infinite;
}

@-webkit-keyframes loaderLine {
  0% {
    transform: translateX(-150%);
  }

  45% {
    transform: translateX(0);
  }

  55% {
    transform: translateX(0);
  }

  to {
    transform: translateX(150%);
  }
}

@keyframes loaderLine {
  0% {
    transform: translateX(-150%);
  }

  45% {
    transform: translateX(0);
  }

  55% {
    transform: translateX(0);
  }

  to {
    transform: translateX(150%);
  }
}

form {
  margin: 0;
}

input,
textarea,
select {
  display: inline-block;
  outline: 0;
  border-radius: 0;
  border: 1px solid #000;
  position: relative;
  font-size: inherit;
  font-family: inherit;
  font-weight: var(--font-body-weight);
  background-color: transparent;
  color: inherit;
  -webkit-appearance: none;
}

/* clears the 'X' from Internet Explorer */

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

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

/* clears the 'X' from Chrome */

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

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

input[type='checkbox'] {
    position: relative;
    width: calc(4px * 5);
    width: var(--spacing-medium);
    height: calc(4px * 5);
    height: var(--spacing-medium);
    margin: 0;
    border: 1px solid var(--color-border-input);
    cursor: pointer;
  }

input[type='checkbox']:checked:before {
        content: '';
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        background-color: var(--color-text-input);
        transform: scale(0.75);
      }

button {
  outline: none;
}

.input,
input.spr-form-input,
textarea.spr-form-input {
  width: 100%;
  border: 1px solid var(--color-border-input);
  color: var(--color-text-input);
}

input.input,
select.input,
input.spr-form-input {
  height: 48px;
  height: var(--height-input);
  font-size: 14px;
  font-size: var(--font-size-body-base);
  line-height: 48px;
  line-height: var(--height-input);
  padding: 0 calc(4px * 4);
  padding: 0 calc(var(--spacing-unit) * 4);
}

textarea.input,
textarea.spr-form-input {
  resize: vertical;
  padding: calc(4px * 4);
  padding: calc(var(--spacing-unit) * 4);
  font-size: 14px;
  font-size: var(--font-size-body-base);
}

select.input {
  cursor: pointer;
}

.input::-moz-placeholder {
  color: inherit;
  opacity: 0.5;
}

.input:-ms-input-placeholder {
  color: inherit;
  opacity: 0.5;
}

.input::placeholder {
  color: inherit;
  opacity: 0.5;
}

.input:focus {
  border: 1px solid var(--color-text-link);
}

.input--round {
  border-radius: 48px;
  border-radius: var(--height-input);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
}

.input-control + .input-control {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

html {
  background-color: #ffffff;
  background-color: #ffffff);
  height: 100%;
}

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

body {
  margin: 0;
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
  color: var(--color-text-body);
  -webkit-font-smoothing: antialiased;
  height: 100%;
  background: #fff;
}

a {
  color: inherit;
  text-decoration: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  font-weight: normal;
}

p {
  margin: 0;
}

strong {
  font-weight: var(--font-body-bold-weight);
}

.theme-editor-scroll-offset {
  position: fixed;
  height: calc(var(--height-header) + 20px);
  height: calc(var(--height-header) + var(--space-outer));
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  z-index: 2000;
  z-index: var(--z-index-theme-editor-offset);
  pointer-events: none;
}

.page {
  background-color: var(--color-background);
  margin: 0 auto;
  width: 100%;
  max-width: 2000px;
  max-width: var(--max-width);
  min-height: 100%;

  display: flex;
  flex-direction: column;
}

.page-transition {
  z-index: 1000;
  opacity: 1;
  background-color: var(--color-background);
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: all;
  transition: opacity 0.3s ease;
}

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

.borders {
  border-radius: var(--radius-corner);
  overflow: hidden;
}

.shopify-section:not(.full-width) .borders-nfw {
    border-radius: var(--radius-corner);
    overflow: hidden;
  }

.shopify-challenge__container {
  margin: calc(4px * 10) auto !important;
  margin: var(--spacing-large) auto !important;
}

.shopify-challenge__container .shopify-challenge__message {
    font-size: 16px;
    font-size: var(--font-size-body-large);
    line-height: 28px;
    line-height: var(--line-height-body-large);
  }

.grid {
  display: flex;
  flex-wrap: wrap;
  width: calc(100% + calc(10px * 2));
  width: calc(100% + calc(var(--space-inline-element) * 2));
  margin-top: calc(calc(4px * 5) * -1);
  margin-top: calc(var(--spacing-medium) * -1);
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.grid {
    margin-top: calc(calc(4px * 10) * -1);
    margin-top: calc(var(--spacing-large) * -1)
}
  }

.grid__item {
  width: 50%;
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.grid__item {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large)
}
  }

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

.grid__item--one-third {
  width: calc(1 / 3 * 100%);
}

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

.grid__item--two-thirds {
  width: calc(2 / 3 * 100%);
}

@media (min-width: 40em) {

.grid__item--2 {
    width: 50%
}
  }

@media (min-width: 40em) {

.grid__item--3 {
    width: calc(1 / 3 * 100%)
}
  }

@media (min-width: 40em) {

.grid__item--4 {
    width: 25%
}
  }

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

/* Only show when JS is not supported */

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

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


/* Only show when JS is supported */

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

/* Only show when browser cookies are not supported */

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

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

/* Only show when browser cookies are supported */

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

.placeholder-image {
  background-color: var(--color-background-meta);
}

.placeholder-image svg {
    fill: var(--color-foreground-meta);
  }

.pill {
  display: flex;
  align-items: center;
  background-color: transparent;
  flex-shrink: 0;
  height: 40px;
  border-radius: 40px;
  padding: 0 calc(4px * 3) 0 calc(4px * 4);
  padding: 0 var(--spacing-small) 0 calc(var(--spacing-unit) * 4);
  transition: all 0.25s ease;
}

.pill:hover {
    background-color: var(--color-background-pill-hover);
  }

.pill:active {
    background-color: black;
    color: white;
    transform: scale(0.95);
  }

.pill .icon {
    width: 24px;
    height: 24px;
    opacity: 0.5;
    pointer-events: none;
  }

/* Open filter modal */

.pill--outline {
  background-color: transparent;
  color: var(--color-text-button-secondary);
  border: 1px solid var(--color-border-button-secondary);
}

.pill--outline:hover {
    border-color: var(--color-border-button-secondary-hover);
    background-color: transparent;
  }

.pill--outline:active {
    background-color: var(--color-border-button-secondary-hover);
    /* Might need to change this */
    color: var(--color-background);
  }

.pill--outline:active .icon {
      opacity: 1;
    }

/* Currently active filters */

.pill--solid {
  background-color: var(--color-background-pill);
}

.pill--solid .icon {
    width: 12px;
    height: 12px;
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
  }

.rte,
.shopify-policy__body {
  --s-line-height: var(--line-height-body-base);
  --s-font-size: var(--font-size-body-base);
  --s-vertical-space: var(--s-line-height);
}

@media (min-width: 40em) {

.rte,
.shopify-policy__body {
    --s-line-height: var(--line-height-body-large);
    --s-font-size: var(--font-size-body-large);
    --s-vertical-space: var(--spacing-large)
}
  }

.rte p + p, .shopify-policy__body p + p {
    margin-top: var(--s-line-height);
  }

.rte iframe,
  .rte video,
  .shopify-policy__body iframe,
  .shopify-policy__body video {
    width: 100%;
    margin: var(--s-vertical-space) 0;
    display: block;
  }

.rte div > iframe, .shopify-policy__body div > iframe {
    margin: 0;
  }

.rte table, .shopify-policy__body table {
    width: 100%;
    margin: var(--s-vertical-space) 0;
    border-collapse: collapse;
  }

.rte table td,
  .rte table th,
  .shopify-policy__body table td,
  .shopify-policy__body table th {
    border: 1px solid var(--color-border);
    /* padding: var(--spacing-small); */
    padding: calc(4px * 3) calc(4px * 5);
    padding: var(--spacing-small) var(--spacing-medium);
  }

.rte table th, .shopify-policy__body table th {
    text-align: left;
  }

.rte hr, .shopify-policy__body hr {
    margin: var(--s-vertical-space) 0;
    background-color: var(--color-border);
    border: none;
    height: 1px;
  }

.rte h1,
  .rte h2,
  .rte h3,
  .rte h4,
  .rte h5,
  .rte h6,
  .shopify-policy__body h1,
  .shopify-policy__body h2,
  .shopify-policy__body h3,
  .shopify-policy__body h4,
  .shopify-policy__body h5,
  .shopify-policy__body h6 {
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-style: var(--font-heading-style);
    margin-top: var(--s-line-height);
    margin-bottom: var(--s-line-height);
    color: var(--color-text-heading);
    line-height: 1.3;
  }

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

.rte h1, .shopify-policy__body h1 {
    font-size: 1.75em;
  }

.rte h2, .shopify-policy__body h2 {
    font-size: 1.5em;
  }

.rte h3, .shopify-policy__body h3 {
    font-size: 1.25em;
  }

.rte h4, .shopify-policy__body h4 {
    font-size: 1em;
  }

.rte h5, .shopify-policy__body h5 {
    font-size: 0.8em;
  }

.rte h6, .shopify-policy__body h6 {
    font-size: 0.7em;
  }

.rte h5,
  .rte h6,
  .shopify-policy__body h5,
  .shopify-policy__body h6 {
    text-transform: uppercase;
    letter-spacing: 0.125em;
  }

.rte a, .shopify-policy__body a {
    color: var(--color-text-link);
    text-decoration: none;
    transition: opacity 0.25s;
  }

.rte a:hover, .shopify-policy__body a:hover {
      opacity: 1;
  text-decoration: underline;
    }

.rte ol,
  .rte ul,
  .shopify-policy__body ol,
  .shopify-policy__body ul {
    margin: var(--s-line-height) 0;
  }

.rte li, .shopify-policy__body li {
    margin-bottom: calc(var(--s-line-height) / 2);
  }

.rte img, .shopify-policy__body img {
    width: 100%;
    height: auto;
    display: block;
  }

.rte strong, .shopify-policy__body strong {
    font-weight: var(--font-body-bold-weight);
  }

.rte blockquote, .shopify-policy__body blockquote {
    background-color: var(--color-text-body-transparent);
    margin: var(--s-line-height) 0;
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
    box-shadow: inset 1px 0px 0px var(--color-text-body-transparent-02);
  }

.rte div, .shopify-policy__body div {
    margin: var(--s-vertical-space) 0;
  }

.rte--page .accordion, .rte--article .accordion {
    border: 1px solid var(--color-border);
    margin: var(--s-line-height) 0;
  }

@media (min-width: 40em) {

.rte--page .accordion, .rte--article .accordion {
      margin: calc(4px * 10) 0;
      margin: var(--spacing-large) 0
  }
    }

.rte--page .accordion:first-child, .rte--article .accordion:first-child {
      margin-top: 0;
    }

.rte--page .accordion div, .rte--article .accordion div {
      margin: 0;
    }

.rte--page .accordion__heading, .rte--article .accordion__heading {
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-style: var(--font-heading-style);
    margin: 0;
    padding: calc(4px * 3) calc(4px * 5);
    padding: var(--spacing-small) var(--spacing-medium);
  }

.rte--page .accordion__group, .rte--article .accordion__group {
    border-top: 1px solid var(--color-border);
    margin: 0;
    padding: 0 calc(4px * 5);
    padding: 0 var(--spacing-medium);
  }

.rte--page .accordion__group[data-open='true'] .accordion__label:after, .rte--article .accordion__group[data-open='true'] .accordion__label:after {
        transform: rotate(180deg);
        opacity: 1;
      }

.rte--page .accordion__label, .rte--article .accordion__label {
    --s-icon-size: 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    margin: 0;
    padding: calc(4px * 3) 0;
    padding: var(--spacing-small) 0;
    cursor: pointer;
    color: inherit;
    text-decoration: none;
  }

.rte--page .accordion__label:hover, .rte--article .accordion__label:hover {
      color: var(--color-text-link);
      opacity: 1;
    }

.rte--page .accordion__label .icon, .rte--article .accordion__label .icon {
      width: var(--s-icon-size);
      height: var(--s-icon-size);
      display: block;
      pointer-events: none;
      opacity: 0.5;
    }

.rte--page .accordion__text, .rte--article .accordion__text {
    margin: 0;
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
    display: none;
  }

.rte--product .accordion {
    margin: var(--s-line-height) 0;
  }

@media (min-width: 40em) {

.rte--product .accordion {
      margin: calc(4px * 5) 0;
      margin: var(--spacing-medium) 0
  }
    }

.rte--product .accordion .share-block {
      margin-top: 4px;
      margin-top: var(--spacing-unit);
    }

.rte--product .accordion .share-block a {
        color: var(--color-text-body);
      }

.rte--product .accordion__group {
    margin: 0 0 calc(4px * 3) 0;
    margin: 0 0 var(--spacing-small) 0;
  }

.rte--product .accordion__group[data-open='true'] .accordion__label:after {
        transform: rotate(180deg);
        opacity: 0.5;
      }

.rte--product .accordion__label {
    --s-icon-size: 20px;

    display: flex;
    align-items: center;
    justify-content: space-between;
    position: relative;
    margin: 0;
    margin-left: calc(calc(4px * 3) * -1);
    margin-left: calc(var(--spacing-small) * -1);
    margin-right: calc(calc(4px * 3) * -1);
    margin-right: calc(var(--spacing-small) * -1);
    padding: 0 calc(4px * 3);
    padding: 0 var(--spacing-small);
    cursor: pointer;
    font-weight: var(--font-body-bold-weight);
    text-decoration: none;
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
    color: inherit;
    border-radius: 2px;
    min-height: 32px;
    transition: background-color 0.3s;
  }

@media (min-width: 40em) {

.rte--product .accordion__label {
      margin-right: 0;
      padding: 0 4px 0 calc(4px * 3);
      padding: 0 var(--spacing-unit) 0 var(--spacing-small)
  }
    }

.rte--product .accordion__label:hover {
      opacity: 1;
      background-color: var(--color-background-meta);
    }

.contrast .rte--product .accordion__label:hover {
        background-color: var(--color-background-meta-contrast);
      }

.rte--product .accordion__label .icon {
      width: var(--s-icon-size);
      height: var(--s-icon-size);
      flex-shrink: 0;
      margin: 0;
      pointer-events: none;
      opacity: 0.5;
    }

.rte--product .accordion__text {
    margin: 0;
    padding-top: calc(4px * 2);
    padding-top: var(--spacing-extra-small);
    padding-bottom: 4px;
    padding-bottom: var(--spacing-unit);
    display: none;
  }

/* Frame sections */

.announcement-bar .flickity-slider {
    transform: none !important;
  }

.announcement-bar__item {
  width: 100%;
  align-items: center;
  justify-content: space-around;
  white-space: nowrap;
  text-align: center;
  padding: calc(4px * 3) 0;
  padding: var(--spacing-small) 0;
  display: none;
  overflow-x: scroll;
  color: var(--s-color-text);
  background-color: var(--s-color-background);
  pointer-events: none;
  left: 0 !important;
  opacity: 0;
  transition: opacity 1s ease-in-out;

  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none;
}

/* Firefox */

.announcement-bar__item.is-selected {
    opacity: 1;
    pointer-events: all;
  }

.flickity-enabled .announcement-bar__item {
    display: block;
  }

.announcement-bar__item:first-of-type {
    display: block;
  }

.announcement-bar__item::-webkit-scrollbar {
    display: none;
  }

@-webkit-keyframes inFromBottom {
  from {
    transform: translateY(calc(4px * 10));
    transform: translateY(var(--spacing-large));
    opacity: 0;
  }
  to {
    transform: translateY(0px);
    opacity: 1;
  }
}

@keyframes inFromBottom {
  from {
    transform: translateY(calc(4px * 10));
    transform: translateY(var(--spacing-large));
    opacity: 0;
  }
  to {
    transform: translateY(0px);
    opacity: 1;
  }
}

.announcement-bar__content > span {
    padding: 0 20px;
    padding: 0 var(--space-outer);
  }

.is-active .announcement-bar__content {
    -webkit-animation: 0.5s ease-in-out inFromBottom;
            animation: 0.5s ease-in-out inFromBottom;
  }

.footer__parent {
  margin-top: auto;
}

.footer {
  background-color: var(--color-background-footer);
  color: var(--color-text-footer);
}

@media (min-width: 60em) {

.footer {
    padding: 20px;
    padding: var(--space-outer)
}
  }

.footer .fs-body-base:not(.ff-heading) {
    line-height: calc(24px + 4px);
    line-height: calc(var(--line-height-body-base) + var(--spacing-unit));
  }

.footer a {
    transition: opacity 0.25s;
  }

.footer a:hover {
      opacity: 0.5;
    }

.footer__groups {
  display: flex;
  flex-direction: column;
}

@media (min-width: 60em) {

.footer__groups {
    flex-direction: row;
    margin-left: -10px;
    margin-right: -10px
}
  }

.footer__group {
  width: 100%;
  border-bottom: 1px solid var(--color-border-footer);
}

@media (min-width: 60em) {

.footer__group {
    width: calc(1 / 3 * 100%);
    border-bottom: none;
    padding: 0 10px;
    padding: 0 var(--space-inline-element)
}
  }

@media (min-width: 60em) {

.footer__group--mobile {
    display: none
}
  }

.footer__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.footer__header.open .footer__arrow {
      transform: rotate(-180deg);
      transition: transform 0.25s;
    }

@media (min-width: 60em) {

.footer__header {
    padding: 0;
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
    pointer-events: none
}
  }

.footer__heading {
  font-weight: var(--font-body-bolder-weight);
}

.footer__arrow {
  transition: transform 0.25s;
}

@media (min-width: 60em) {

.footer__arrow {
    display: none
}
  }

.footer__group-content {
  padding-top: 0;
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-bottom: calc(4px * 7);
  padding-bottom: calc(var(--spacing-unit) * 7);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  display: none;
}

@media (min-width: 60em) {

.footer__group-content {
    display: block !important;
    padding: 0
}
  }

.footer__text {
  /* Max line length for block text */
  width: 90%;
  max-width: 34em;
}

.footer__text a {
    text-decoration: underline;
  }

.footer__links {
  display: flex;
}

.footer__links ul {
    width: 100%;
    -moz-columns: 2;
         columns: 2;
    margin: 0;
    padding: 0;
    grid-column-gap: calc(4px * 5);
    -moz-column-gap: calc(4px * 5);
         column-gap: calc(4px * 5);
    grid-column-gap: var(--spacing-medium);
    -moz-column-gap: var(--spacing-medium);
         column-gap: var(--spacing-medium);
  }

.footer__links li {
    list-style: none;
  }

.footer__newsletter .input {
    border: 1px solid var(--color-border-footer);
    color: inherit;
    transition: background-color 0.25s, border-color 0.25s;
  }

.footer__newsletter .input:focus {
      border-color: var(--color-border-footer-darker);
    }

.footer__newsletter .input:hover:not(:focus) {
      background-color: var(--color-border-footer);
    }

.footer__newsletter p {
    margin: 0;
  }

.footer__newsletter .newsletter-form {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

.footer__rule {
  display: none;
  margin-top: calc(calc(4px * 3) * 5);
  margin-top: calc(var(--spacing-small) * 5);
  margin-bottom: 0;
  border: none;
  height: 1px;
  background-color: var(--color-border-footer);
}

@media (min-width: 60em) {

.footer__rule {
    display: block
}
  }

.footer__bottom {
  display: flex;
  justify-content: space-between;
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  display: none;
}

@media (min-width: 60em) {

.footer__bottom {
    display: flex
}
  }

.footer__bottom-left {
  display: flex;
  align-items: center;
}

.footer__bottom-left .selectors-form + .social-icons {
    margin-left: calc(4px * 4);
    margin-left: calc(var(--spacing-unit) * 4);
  }

.footer__bottom-left .selectors-form {
    display: none;
  }

@media (min-width: 40em) {

.footer__bottom-left .selectors-form {
      display: block
  }
    }

.footer__bottom-right {
  display: none;
}

@media (min-width: 60em) {

.footer__bottom-right {
    display: block
}
  }

.footer__selectors {
  display: flex;
}

.selectors-form__item + .selectors-form__item {
  margin-left: calc(4px * 2);
  margin-left: var(--spacing-extra-small);
}

.footer__mobile-social-icons {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  display: block;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
}

@media (min-width: 60em) {

.footer__mobile-social-icons {
    display: none
}
  }

.footer__credits {
  font-size: 10px;
  line-height: 20px;
  opacity: 0.7;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (min-width: 60em) {

.footer__credits {
    padding: 0
}
  }

.footer__credits p {
    margin: 0;
  }

@media (min-width: 40em) {

.footer__rule + .footer__credits,
.footer__bottom + .footer__credits,
.footer__mobile-social-icons + .footer__credits {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.header__outer-wrapper {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 100;
}

.header__space {
  width: 100%;
  height: 40px;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}

.header {
  --size-icon-touch: 44px;
  --size-gradient: 60px;

  background-color: var(--color-background-header);
  color: var(--color-text-header);
  border-bottom: 1px solid var(--color-border-header);
  padding: calc(4px * 3) 20px;
  padding: var(--spacing-small) var(--space-outer);
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  transition: background-color 0.25s;
}

.header.is-sticky {
    border-bottom: none;
    box-shadow: 0px 1px 1px var(--color-shadow-header);
    transition: background-color 0.25s;
  }

.header .image {
    background-color: transparent;
  }

.header .regular-logo .image__img.lazyloaded, .header .trasparent-logo .image__img.lazyloaded {
      transition: none;
    }

.header__logo {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.header__logo .transparent-logo {
    display: none;
  }

@media (min-width: 60em) {
    .header--center .header__logo,
    .header--icon:not(.header--left) .header__logo {
      padding: 0 calc(4px * 6);
      padding: 0 calc(var(--spacing-unit) * 6);
    }

    .header--left .header__logo {
      padding-right: calc(4px * 6);
      padding-right: calc(var(--spacing-unit) * 6);
    }

    .header--left.header--icon .header__logo {
      padding-right: calc(4px * 5);
      padding-right: var(--spacing-medium);
    }
  }

.header--has-logo .header__logo .header__logo-text {
      display: none;
    }

/* Inline links, no menu icon on desktop */

@media (min-width: 60em) {
    .header--inline .header__menu-icon {
      display: none;
    }
  }

/* Show links on left side with logo in the center */

@media (min-width: 60em) {
    .header--center.header--inline .header__logo {
      order: 2;
    }

    .header--center.header--inline .header__links {
      order: 1;
    }

    .header--center.header--inline .header__right {
      order: 3;
    }
  }

@media (min-width: 60em) {

.header--left.header--inline {
    grid-template-columns: auto 1fr auto
}
  }

@media (min-width: 60em) {

.header.header--left.header--icon {
    grid-template-columns: auto 1fr auto
}
    .header.header--left.header--icon .header__menu-icon {
      order: 2;
    }

    .header.header--left.header--icon .header__logo {
      order: 1;
    }

    .header.header--left.header--icon .header__right {
      order: 3;
    }
  }

/* Account icon and search icon should never show on mobile */

@media (max-width: 40em) {

.header__icon-touch.header__icon-touch--search,
  .header__icon-touch.header__icon-touch--account {
      display: none
  }
    }

/* Inline link list, no matter what these don't show on mobile */

.header__links {
  display: none;
}

@media (min-width: 60em) {

.header__links {
    display: flex;
    align-items: center;
    flex-shrink: 1;
    overflow-x: scroll;

    -ms-overflow-style: none; /* IE and Edge */
    scrollbar-width: none /* Firefox */
}

    .header__links::-webkit-scrollbar {
      display: none;
    }
  }

.header__links a.active {
    opacity: 0.5;
  }

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

.header__links-list > li {
    list-style: none;
    display: block;
  }

.header__links-list > li + li {
    margin-left: calc(4px * 5);
    margin-left: var(--spacing-medium);
  }

.header__links-list > li:last-of-type {
    padding-right: var(--size-gradient);
  }

.header__links-list > li > a {
    display: flex;
    align-items: center;
    min-height: 44px;
  }

.header__links-list a {
    opacity: 1;
    transition: opacity 0.25s;
  }

.header__links-list a:hover {
      opacity: 0.5;
    }

.header__links-list .header__links-icon {
    width: 18px;
    height: 18px;

    /* Optical */
    margin-top: 1px;
    margin-left: 2px;
    margin-right: -6px;
  }

.header__links-list .header__links-icon .icon {
      width: 100%;
      height: 100%;
    }

@media (min-width: 60em) {

.header__links-list {
    display: flex;
    align-items: center;
    overflow-x: scroll;
    white-space: nowrap;
    /* Firefox on Windows */
    scrollbar-width: none
}

    .header__links-list::-webkit-scrollbar {
      display: none;
    }
  }

.header__menu-icon {
  /* Offset slightly to account for touch area */
  transform: translateX(-10px);
  align-self: center;
}

/* Holds the icons */

.header__right {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  /* Offset slightly to account for touch area */
  transform: translateX(10px);
}

.header__icon-touch {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-around;
  width: var(--size-icon-touch);
  height: var(--size-icon-touch);
}

.header__icon-touch .icon-button {
    --color: var(--color-icon-header);
  }

.header__cart-count {
  position: static;
  z-index: 10;
  width: 24px;
  height: 24px;
  background-color: var(--color-background-button);
  color: var(--color-text-button);
  border-radius: 100%;
  position: absolute;
  bottom: 0;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  font-size: 12px;
  line-height: 1;
  opacity: 0;
  transform: translateY(12px);
  transition: opacity 1s, transform 1s;
}

.header__cart-count.visible {
    opacity: 1;
    transform: translateY(0);
    transition: opacity 1s, transform 1s;
  }

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

.header--has-logo .header__logo-link {
  width: var(--width-max-logo);
  max-width: 40vw;
}

@media (min-width: 60em) {

.header--has-logo .header__logo-link {
    width: 500px;
    max-width: var(--width-max-logo)
}
  }

/* Transparent header styling */

body.template-index .header--transparent-home:not(.is-sticky),
  body.template-index .header--transparent-collection:not(.is-sticky),
  body.template-collection .header--transparent-home:not(.is-sticky),
  body.template-collection .header--transparent-collection:not(.is-sticky) {
    background-color: transparent;
    color: var(--color-text-transparent);
    border-bottom: 1px solid var(--color-border-transparent);
  }

body.template-index .header--transparent-home:not(.is-sticky) .icon-button, body.template-index .header--transparent-collection:not(.is-sticky) .icon-button, body.template-collection .header--transparent-home:not(.is-sticky) .icon-button, body.template-collection .header--transparent-collection:not(.is-sticky) .icon-button {
      --color: var(--color-icon-transparent);
    }

/* Hide the gradient on overflowing inline links */

body.template-index .header--transparent-home:not(.is-sticky) .header__links:after, body.template-index .header--transparent-collection:not(.is-sticky) .header__links:after, body.template-collection .header--transparent-home:not(.is-sticky) .header__links:after, body.template-collection .header--transparent-collection:not(.is-sticky) .header__links:after {
      opacity: 0;
      transition: opacity 0s;
    }

/* Remove the extra large space because there is no gradient to account for */

body.template-index .header--transparent-home:not(.is-sticky) .header__links-list > li:last-of-type, body.template-index .header--transparent-collection:not(.is-sticky) .header__links-list > li:last-of-type, body.template-collection .header--transparent-home:not(.is-sticky) .header__links-list > li:last-of-type, body.template-collection .header--transparent-collection:not(.is-sticky) .header__links-list > li:last-of-type {
      padding-right: calc(4px * 2);
      padding-right: var(--spacing-extra-small);
    }

body.template-index .header--transparent-home:not(.is-sticky).header--has-transparent-logo .header__logo-link, body.template-index .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .header__logo-link, body.template-collection .header--transparent-home:not(.is-sticky).header--has-transparent-logo .header__logo-link, body.template-collection .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .header__logo-link {
        width: var(--width-max-logo);
        max-width: 40vw;
      }

@media (min-width: 60em) {

body.template-index .header--transparent-home:not(.is-sticky).header--has-transparent-logo .header__logo-link, body.template-index .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .header__logo-link, body.template-collection .header--transparent-home:not(.is-sticky).header--has-transparent-logo .header__logo-link, body.template-collection .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .header__logo-link {
          width: 500px;
          max-width: var(--width-max-logo)
      }
        }

body.template-index .header--transparent-home:not(.is-sticky).header--has-transparent-logo .regular-logo, body.template-index .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .regular-logo, body.template-collection .header--transparent-home:not(.is-sticky).header--has-transparent-logo .regular-logo, body.template-collection .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .regular-logo {
        display: none;
      }

body.template-index .header--transparent-home:not(.is-sticky).header--has-transparent-logo .transparent-logo, body.template-index .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .transparent-logo, body.template-collection .header--transparent-home:not(.is-sticky).header--has-transparent-logo .transparent-logo, body.template-collection .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .transparent-logo {
        display: block;
      }

body.template-index .header--transparent-home:not(.is-sticky).header--has-transparent-logo .header__logo-text, body.template-index .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .header__logo-text, body.template-collection .header--transparent-home:not(.is-sticky).header--has-transparent-logo .header__logo-text, body.template-collection .header--transparent-collection:not(.is-sticky).header--has-transparent-logo .header__logo-text {
        display: none;
      }

.popup {
  --animation-duration: 0.35s;
  --animation-timing: ease-in-out;

  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  z-index: var(--z-index-popup);
  display: flex;
  align-items: flex-start;
  color: var(--color-text);
  pointer-events: none;
}

.theme-editor .popup {
    transition: visibility var(--animation-duration);
    visibility: hidden;
  }

@media (min-width: 40em) {

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

.popup.active {
  display: flex;
}

@media (max-width: 40em) {

.popup.visible {
    pointer-events: all
}
  }

.theme-editor .popup.visible {
    visibility: visible;
  }

@media (max-width: 40em) {

.popup.visible .popup__overlay {
      opacity: 0.5
  }
    }

.popup.visible .popup__bar {
    transform: translateY(0);
    pointer-events: all;
  }

.popup__overlay {
  background-color: var(--color-overlay);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: opacity var(--animation-duration) var(--animation-timing);
}

.theme-editor .popup__overlay {
    transition-duration: 0s;
  }

.popup__bar {
  position: relative;
  width: 100%;
  background-color: var(--color-background);
  padding: 20px;
  padding: var(--space-outer);
  text-align: center;
  z-index: 1;
  overflow: hidden;
  transform: translateY(-100%);
  transition: transform var(--animation-duration) var(--animation-timing);
}

/* .theme-editor & {
    transform: translateY(0);
    transition-duration: 0s;
    .image__img.lazyloaded {
      transition-duration: 0s;
    }
  } */

@media (min-width: 40em) {

.popup__bar {
    transform: translateY(100%)
}
  }

.popup__image.image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: transparent;
  opacity: 0.5;
}

.popup__image.image .image__img {
    -o-object-position: var(--image-position);
       object-position: var(--image-position);
  }

.popup__close {
  position: absolute;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  cursor: pointer;
  transition: opacity 0.25s;
  z-index: 10;
}

.popup__close:focus,
  .popup__close:hover {
    opacity: 0.6;
  }

.popup__content {
  position: relative;
  z-index: 1;
}

.popup__heading {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  font-size: 14px;
  font-size: var(--font-size-body-base);
  line-height: 24px;
  line-height: var(--line-height-body-base);
}

@media (min-width: 40em) {

.popup__heading {
    font-size: 24px;
    font-size: var(--font-size-heading-base);
    line-height: 32px;
    line-height: var(--line-height-heading-base)
}
  }

.popup__subheading {
  max-width: 560px;
  margin-left: auto;
  margin-right: auto;
  font-size: 12px;
  font-size: var(--font-size-body-small);
  line-height: 20px;
  line-height: var(--line-height-body-small);
}

@media (min-width: 40em) {

.popup__subheading {
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base)
}
  }

.popup__heading + .popup__subheading {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

.popup__form {
  width: 100%;
  max-width: 600px;
  margin: calc(4px * 5) auto 0;
  margin: var(--spacing-medium) auto 0;
}

.popup__form .newsletter__input-container .input {
      background-color: var(--color-background-input);
      color: var(--color-text-input);
      border: 1px solid transparent;
    }

.popup__form .newsletter__input-container .input:focus {
        border: 1px solid var(--color-text-link);
      }

/* Pages */

.a404 {
  text-align: center;
  margin: auto;
  max-width: 38em;
  padding: calc(4px * 10);
  padding: var(--spacing-large);
}

.a404__heading {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.a404__subheading {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.template--article {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
}

@media (min-width: 40em) {

.template--article {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large)
}
  }

.article__header {
  text-align: center;
  width: 100%;
  max-width: calc(800px + calc(20px * 2));
  max-width: calc(800px + calc(var(--space-outer) * 2));
  margin: 40px auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 40em) {

.article__header {
    margin: 80px auto
}
  }

.article__date {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
}

.article__share {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

.article__image {
  padding: 0 20px;
  padding: 0 var(--space-outer);
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
}

@media (min-width: 40em) {

.article__image {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large)
}
  }

.article__content {
  width: 100%;
  max-width: calc(600px + calc(20px * 2));
  max-width: calc(600px + calc(var(--space-outer) * 2));
  margin: 0 auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

/* Grid styles are handled in page.css */

.article__content .article__rte {
    padding: 0;
    margin: 0;
  }

.article__tags {
  margin: calc(4px * 5) 0 0 0;
  margin: var(--spacing-medium) 0 0 0;
  padding: 0;
}

.article__tags li {
    list-style: none;
    display: inline;
  }

.article__tags a {
    color: var(--color-text-link);
    transition: opacity 0.25s;
  }

.article__tags a:hover {
      opacity: 1;
  text-decoration: underline;
    }

.article__tag:after {
    content: ',';
  }

.article__tag:last-of-type:after {
    content: '';
  }

.article__share-bottom {
  margin: calc(4px * 10) 0;
  margin: var(--spacing-large) 0;
}

.article__comments {
  max-width: calc(600px + calc(20px * 2));
  max-width: calc(600px + calc(var(--space-outer) * 2));
  margin: 0 auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

.article__comments .form-message {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

.article + .article__comments {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

.article__pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.article__tags + .article__pagination,
.article__rte + .article__pagination {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

.blog__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: calc(20px * -1);
  margin-bottom: calc(var(--space-grid) * -1);
}

body.show-borders .blog__header {
    margin-bottom: 0;
    border-bottom: 1px solid var(--color-border);
  }

.blog__heading {
  margin-bottom: 20px;
  margin-bottom: var(--space-grid);
}

.blog__rss {
  /* Optical alignment that accounts for hover effect */
  transform: translate(10px, -6px);
}

.blog__articles {
  align-items: stretch;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.blog__article {
  display: flex;
  flex-direction: column;
  margin: 0 0 calc(4px * 5) 0;
  margin: 0 0 var(--spacing-medium) 0;
}

@media (max-width: 40em) {

.blog__article {
    width: 100%
}
  }

@media (min-width: 40em) and (max-width: 60em) {

.blog__article {
    width: 50%
}
  }

.blog__article .image {
    border-top-left-radius: var(--radius-corner);
    border-top-right-radius: var(--radius-corner);
  }

.blog__meta {
  border: 1px solid var(--color-border);
  border-top-width: 0px;
  border-bottom-left-radius: var(--radius-corner);
  border-bottom-right-radius: var(--radius-corner);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  flex-grow: 1;
}

@media (min-width: 60em) {

.blog__meta {
    padding: calc(4px * 10);
    padding: var(--spacing-large)
}
  }

.blog__meta--no-image {
  border-top-width: 1px;
  border-top-left-radius: var(--radius-corner);
  border-top-right-radius: var(--radius-corner);
}

.blog__article-title {
  font-size: 18px;
  font-size: var(--font-size-heading-small);
  line-height: 24px;
  line-height: var(--line-height-heading-small);
}

@media (min-width: 40em) {

.blog__article-title {
    font-size: 24px;
    font-size: var(--font-size-heading-base);
    line-height: 32px;
    line-height: var(--line-height-heading-base)
}
  }

.blog__article-title a {
    transition: opacity 0.25s;
  }

.blog__article-title a:hover {
      opacity: 0.6;
    }

.blog__article-date {
  margin: calc(4px * 2) 0 0 0;
  margin: var(--spacing-extra-small) 0 0 0;
}

.blog__article-excerpt {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.blog__article-excerpt a {
    opacity: 0.7;
    transition: opacity 0.25s;
  }

.blog__article-excerpt a:hover {
      opacity: 0.25;
    }

.cart__container {
  width: 100%;
  max-width: calc(1000px + 20px);
  max-width: calc(1000px + var(--space-outer));
  margin: 20px auto;
  margin: var(--space-outer) auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

.cart__title {
  text-align: center;
  margin-bottom: calc(4px * 12);
  margin-bottom: var(--spacing-extra-large);
  padding-top: 40px;
}

.cart__header {
  display: none;
}

@media (min-width: 40em) {

.cart__header {
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid var(--color-border);
    padding-bottom: calc(4px * 3);
    padding-bottom: var(--spacing-small);
    opacity: 0.75
}
  }

.cart__header-quantity {
  margin-left: auto;
  width: 100px;
  text-align: center;
}

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

@media (min-width: 40em) and (max-width: 60em) {

.cart__header-total {
    width: 100px
}
  }

@media (min-width: 60em) {

.cart__header-total {
    width: 140px
}
  }

.cart__item {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
}

@media (min-width: 40em) {

.cart__item {
    margin: calc(4px * 10) 0;
    margin: var(--spacing-large) 0
}
  }

.cart__item-image {
  width: 80px;
  flex-shrink: 0;
}

@media (min-width: 40em) {

.cart__item-image {
    width: 120px
}
  }

.cart__item-main {
  width: 100%;
  flex-shrink: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}

@media (min-width: 40em) {

.cart__item-main {
    flex-wrap: nowrap;
    width: calc(100% - 220px)
}
  }

.cart__item-details {
  width: 100%;
  flex-shrink: 0;
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

@media (min-width: 40em) {

.cart__item-details {
    width: calc(100% - 100px)
}
  }

@media (min-width: 40em) and (max-width: 60em) {

.cart__item-details {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium);
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium)
}
  }

@media (min-width: 60em) {

.cart__item-details {
    padding-left: calc(4px * 10);
    padding-left: var(--spacing-large)
}
  }

.cart__item-title {
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.cart__line-item-discounts {
  margin: calc(4px * 2) 0 0 0;
  margin: var(--spacing-extra-small) 0 0 0;
  padding: 0;
  opacity: 0.5;
}

.cart__line-item-discounts li {
    list-style: none;
  }

.cart__item-quantity {
  text-align: center;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
}

@media (min-width: 40em) {

.cart__item-quantity {
    width: 100px;
    flex-direction: column;
    padding-top: 0;
    padding-left: 0
}
  }

.cart__item-qty-selector {
  display: flex;
  justify-content: space-between;
  border: 1px solid var(--color-border);
  width: 100px;
  height: 40px;
}

.cart__item-qty-selector input {
    width: 24px;
    padding: 0;
    border: none;
    text-align: center;
    font-size: 12px;
    font-size: var(--font-size-body-small);
  }

.cart__item-qty-selector input::-webkit-outer-spin-button,
    .cart__item-qty-selector input::-webkit-inner-spin-button {
      -webkit-appearance: none;
    }

.cart__item-button {
  display: block;
  width: 36px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-shrink: 0;
  opacity: 0.8;
}

.cart__item-button:hover {
    opacity: 0.5;
  }

.cart__item-button .icon {
    width: 18px;
    height: 18px;
  }

.cart-item__remove {
  font-size: 11px;
  line-height: 16px;
  opacity: 0.5;
}

.cart-item__remove:hover {
    text-decoration: underline;
  }

@media (min-width: 40em) {

.cart-item__remove {
    margin-top: calc(4px * 2);
    margin-top: var(--spacing-extra-small)
}
  }

.cart__original-total {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.cart__discounts {
  opacity: 0.5;
  margin: 0 0 calc(4px * 3) 0;
  margin: 0 0 var(--spacing-small) 0;
  padding: 0;
}

.cart__discounts li {
    list-style: none;
  }

.cart__item-total {
  display: none;
  text-align: right;
  width: 100px;
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  flex-shrink: 0;
}

@media (min-width: 40em) {

.cart__item-total {
    display: block
}
  }

@media (min-width: 40em) and (max-width: 60em) {

.cart__item-total {
    width: 100px
}
  }

@media (min-width: 60em) {

.cart__item-total {
    width: 140px
}
  }

.cart__footer {
  border-top: 1px solid var(--color-border);
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  padding-top: calc(4px * 10);
  padding-top: var(--spacing-large);
}

.cart__footer textarea {
    height: 140px;
    margin-top: calc(4px * 2);
    margin-top: var(--spacing-extra-small);
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

.cart__footer-left {
  width: 100%;
}

@media (min-width: 40em) {

.cart__footer-left {
    width: 35%
}
  }

.cart__footer-tax-note {
  opacity: 0.75;
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

.cart__footer-actions {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.cart__footer-actions .btn + .btn {
    margin-left: calc(4px * 3);
    margin-left: var(--spacing-small);
  }

.cart__footer-right {
  text-align: right;
  width: 100%;
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
}

@media (min-width: 40em) {

.cart__footer-right {
    width: 65%
}
  }

.cart__empty {
  text-align: center;
  margin-bottom: calc(4px * 20);
  margin-bottom: var(--spacing-extra-extra-large);
}

.collection__simple-header {
  margin-bottom: 20px;
  margin-bottom: var(--space-outer);
}

.collection__slideshow-header {
  position: relative;
  width: 100%;
  margin-bottom: 20px;
  margin-bottom: var(--space-outer);
}

@media (min-width: 40em) {

.collection__slideshow-header {
    height: 50vh
}

    .collection__slideshow-header .image {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      padding: 0 !important;
    }

    .collection__slideshow-header .image__img {
      -o-object-position: var(--image-position);
         object-position: var(--image-position);
    }
  }

@media (min-width: 40em) {

.collection__slideshow-header-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0
}
  }

@media (max-width: 40em) {
    .collection__slideshow-header-overlay .block-overlay {
      --color-background: var(--color-background-contrast) !important;
      --color-text-meta: var(--color-text-meta-contrast) !important;
      --color-text-heading: var(--color-text-heading-contrast) !important;
      --color-text-body: var(--color-text-body-contrast) !important;
      --color-text-subheading: var(--color-text-subheading-contrast) !important;
    }
  }

.shopify-section.full-width .collection__slideshow-header,
.shopify-section.full-width .collection__enhanced-header {
  width: auto;
  margin-top: calc(20px * -1);
  margin-top: calc(var(--space-outer) * -1);
  margin-right: calc(20px * -1);
  margin-right: calc(var(--space-outer) * -1);
  margin-left: calc(20px * -1);
  margin-left: calc(var(--space-outer) * -1);
}

.collection__enhanced-header {
  margin-bottom: 20px;
  margin-bottom: var(--space-outer);
  display: flex;
  flex-direction: column-reverse;
}

@media (min-width: 40em) {

.collection__enhanced-header {
    flex-direction: row;
    align-items: center;
    justify-content: space-between
}
  }

.collection__enhanced-header-text {
  padding: 20px;
  padding: var(--space-outer);
  max-width: 600px;
}

.collection__enhanced-header-image {
  width: 100%;
  flex-shrink: 0;
  align-self: stretch;
}

@media (min-width: 40em) {

.collection__enhanced-header-image {
    width: 50%
}

    .collection__enhanced-header-image .flexible-image__img {
      -o-object-position: var(--image-position);
         object-position: var(--image-position);
    }
  }

.collection__description {
  /* Roughly 600px */
  max-width: 44em;
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.collection__description {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.collection__content {
  display: flex;
}

.collection__content--rule {
    border-top: 1px solid var(--color-border);
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
  }

.collection__sidebar {
  display: none;
  width: 253px;
  margin-right: 40px;
  flex-shrink: 0;
}

@media (min-width: 40em) {

.collection__sidebar {
    display: block
}
  }

.collection__main-area {
  width: 100%;
}

.collection__window {
  position: relative;
  width: 100%;
}

.collection__main {
  position: relative;
  width: 100%;
}

.collection__loading {
  position: absolute;
  top: 1px;
  right: calc(20px * -1);
  right: calc(var(--space-outer) * -1);
  bottom: 0;
  left: calc(20px * -1);
  left: calc(var(--space-outer) * -1);
  background-color: var(--color-background-transparent);
  z-index: 1;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
  text-align: center;
}

@media (min-width: 40em) {

.collection__loading {
    left: 0;
    right: 0
}
  }

.collection__loading.is-active {
    opacity: 1;
    pointer-events: all;
    transition: opacity 0.25s;
  }

.collection__empty {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: calc(4px * 20);
  margin-top: var(--spacing-extra-extra-large);
}

.collection__empty .link {
    margin-top: calc(4px * 2);
    margin-top: var(--spacing-extra-small);
    display: block;
    cursor: pointer;
  }

@media (min-width: 40em) {

.collection__empty {
    margin-top: 200px
}
  }

.collection__top-row {
  margin: 0 calc(20px * -1);
  margin: 0 calc(var(--space-outer) * -1);
  padding-bottom: 14px;
}

@media (min-width: 40em) {

.collection__top-row {
    width: 100%;
    margin: 0;
    padding-left: 0;
    padding-bottom: 0
}
  }

.collection__pagination {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

@-webkit-keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

@keyframes sk-bouncedelay {
  0%,
  80%,
  100% {
    transform: scale(0);
  }
  40% {
    transform: scale(1);
  }
}

html.gift-card {
  -webkit-text-size-adjust: 100%;
  -webkit-print-color-adjust: exact;
  background-color: var(--color-background);

  @-webkit-viewport {
    width: device-width;
  }

  @-moz-viewport {
    width: device-width;
  }

  @-ms-viewport {
    width: device-width;
  }

  @-o-viewport {
    width: device-width;
  }

  @viewport {
    width: device-width;
  }
}

html.gift-card body {
    padding: 0;
    margin: 0;
    -webkit-font-smoothing: antialiased;
  }

html.gift-card article,
  html.gift-card aside,
  html.gift-card details,
  html.gift-card figcaption,
  html.gift-card figure,
  html.gift-card footer,
  html.gift-card header,
  html.gift-card hgroup,
  html.gift-card menu,
  html.gift-card nav,
  html.gift-card section,
  html.gift-card main {
    display: block;
  }

html.gift-card a {
    text-decoration: none;
    transition: color 0.2s ease-in-out, background-color 0.2s ease-in-out;
  }

html.gift-card img,
  html.gift-card video,
  html.gift-card object {
    max-width: 100%;
    display: block;
  }

html.gift-card h4 {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-weight: normal;
    font-size: 0.875em;
    color: var(--color-text-subheading);
    margin: 0;
  }

html.gift-card .wrap {
    width: 95%;
    max-width: 540px;
    margin: 0 auto;
  }

html.gift-card .wrap:after {
    content: '';
    display: table;
    clear: both;
  }

html.gift-card ::-moz-selection {
    background-color: var(--color-text-link);
    color: #fff;
  }

html.gift-card ::-moz-selection {
    background-color: var(--color-text-link);
    color: #fff;
  }

html.gift-card ::selection {
    background-color: var(--color-text-link);
    color: #fff;
  }

html.gift-card #header {
    text-align: center;
    padding: 3em 0;
    -webkit-animation: fadein 0.5s ease-in-out both 0.4s;
    animation: fadein 0.5s ease-in-out both 0.4s;
  }

html.gift-card .logo {
    max-width: 300px;
    display: block;
    margin: 0 auto;
  }

html.gift-card .logo img {
    max-height: 100%;
    margin: 0 auto;
  }

html.gift-card .shop-url {
    display: none;
  }

html.gift-card main {
    -webkit-animation: slideup 0.8s ease-in-out;
    animation: slideup 0.8s ease-in-out;
  }

html.gift-card #gift-card-outer-container {
    background-color: var(--color-background-contrast);
    border-radius: 4px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1) inset;
    padding: 1em;
    -webkit-animation: container-slide 0.8s ease-in-out;
    animation: container-slide 0.8s ease-in-out;
  }

html.gift-card #gift-card-inner-container {
    background-color: #fff;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
    border-radius: 2px;
    -webkit-animation: cardslide 0.8s ease-in-out;
    animation: cardslide 0.8s ease-in-out;
  }

html.gift-card #gift-card-inner-container:after {
    content: '';
    display: table;
    clear: both;
  }

html.gift-card #gift-card-header {
    border-bottom: 1px solid #f2f2f2;
    padding: 0.75em;
    display: block;
    overflow: hidden;
    position: relative;
  }

html.gift-card #gift-card-header h2 {
    float: left;
    margin: 0.12em 0;
  }

html.gift-card .tag {
    background-color: #bfbfbf;
    padding: 0.5em;
    padding-bottom: 0.35em;
    border-radius: 4px;
    font-size: 0.75em;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    color: #fff;
    line-height: 1;
  }

html.gift-card .tag.light {
    background: transparent;
    color: #bfbfbf;
    border: 1px solid #d9d9d9;
  }

html.gift-card #gift-card-header .tag {
    float: right;
  }

html.gift-card #gift-card-tofrom {
    list-style-type: none;
    padding: 1em 0.75em 0;
    margin: 0;
  }

html.gift-card #gift-card-tofrom li {
    padding: 0.5em 0;
  }

html.gift-card #gift-card-tofrom li:after {
    content: '';
    display: table;
    clear: both;
  }

html.gift-card #gift-card-tofrom h4 {
    float: left;
    width: 5em;
  }

html.gift-card #gift-card-tofrom a {
    float: left;
    font-weight: 600;
    color: #58686f;
  }

html.gift-card #gift-card-tofrom a:hover {
    color: #34aadc;
  }

html.gift-card #gift-card-holder {
    margin: 0.75em;
    margin-bottom: 1.25em;
    margin-top: 1.25em;
    position: relative;
  }

html.gift-card #gift-card-holder .corner {
    display: block;
    width: 47px;
    height: 47px;
    position: absolute;
    z-index: 2;
  }

html.gift-card #gift-card-holder .corner.top-left {
    background: url(//cdn.shopify.com/s/assets/themes_support/gift-card/corner-top-left-407e052d38db02cf8ccc1d63452be868fdeec83d4c0be2fd14a4c9558d422948.png)
      0 0 no-repeat;
    top: -1px;
    left: -1px;
  }

html.gift-card .svg #gift-card-holder .corner.top-left {
    background: url(//cdn.shopify.com/s/assets/themes_support/gift-card/corner-top-left-cc5e5fa342669b3ea989527fbbd6439b8adb3b6dedcb198e79cdd8d6776012c5.svg)
      0 0 no-repeat;
  }

html.gift-card .no-borderradius #gift-card-holder .corner.top-right {
    background: url(//cdn.shopify.com/s/assets/themes_support/gift-card/corner-top-right-1372b088666d07754d697ce54b7f3e598ef323d836641da7f4eac80bde3c5af4.png)
      0 0 no-repeat;
    top: 0px;
    right: 0px;
    width: 7px;
    height: 7px;
  }

html.gift-card .no-borderradius #gift-card-holder .corner.bottom-left {
    background: url(//cdn.shopify.com/s/assets/themes_support/gift-card/corner-bottom-left-6ba1f17732c9e039bf2d42d91d6d0776592468b4a07f06ea4e317da044d37c2a.png)
      0 0 no-repeat;
    bottom: 0px;
    left: 0px;
    width: 7px;
    height: 7px;
  }

html.gift-card #gift-card-holder .corner.bottom-right {
    background: url(//cdn.shopify.com/s/assets/themes_support/gift-card/corner-bottom-right-8733072c71085ba883290401b7a9dd49ae03d6f287a9f0913dc439ac7319b7a5.png)
      0 0 no-repeat;
    bottom: -1px;
    right: -1px;
  }

html.gift-card .svg #gift-card-holder .corner.bottom-right {
    background: url(//cdn.shopify.com/s/assets/themes_support/gift-card/corner-bottom-right-cc7664ee5e687c68f307b59802f08677b6333ee52a61b8e192e321854d94dc90.svg)
      0 0 no-repeat;
  }

html.gift-card #gift-card {
    position: relative;
    box-sizing: border-box;
    position: relative;
  }

html.gift-card #gift-card:before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    box-shadow: inset 0px 0px 0px 1px rgba(0, 0, 0, 0.1);
    border-radius: 10px;
    z-index: 1;
    pointer-events: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: block;
  }

html.gift-card #gift-card img {
    border-radius: 10px;
  }

html.gift-card #gift-card-code-outer {
    position: absolute;
    bottom: 1em;
    text-align: center;
    width: 100%;
  }

html.gift-card #gift-card-code-outer.medium {
    font-size: 0.875em;
  }

html.gift-card #gift-card-code-outer.small {
    font-size: 0.75em;
  }

html.gift-card #gift-card-code-inner {
    display: inline-block;
    vertical-align: baseline;
    zoom: 1;
    *display: inline;
    *vertical-align: auto;
    background-color: #fff;
    padding: 0.5em;
    border-radius: 4px;
    max-width: 450px;
    box-shadow: 0 0 0 1px rgba(0, 0, 0, 0.1);
  }

html.gift-card .small #gift-card-code-inner {
    overflow: auto;
  }

html.gift-card #gift-card-code-inner strong {
    font-weight: 400;
    font-size: 1.875em;
    text-transform: uppercase;
    border-radius: 2px;
    border: 1px dashed #e5e5e5;
    padding: 0.4em 0.5em;
    display: inline-block;
    vertical-align: baseline;
    zoom: 1;
    *display: inline;
    *vertical-align: auto;
    line-height: 1;
  }

html.gift-card .disabled #gift-card-code-inner strong {
    color: var(--color-text-body);
    text-decoration: line-through;
  }

html.gift-card #gift-card-code-inner span + span {
    margin-left: 0.25em;
  }

html.gift-card #gift-card-amount {
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    font-size: 2.75em;
    padding: 0.4em 0.5em;
  }

html.gift-card #gift-card-amount.medium {
    font-size: 2.25em;
  }

html.gift-card #gift-card-amount strong {
    text-shadow: 3px 3px 0 rgba(0, 0, 0, 0.1);
    display: block;
  }

html.gift-card .tooltip {
    position: relative;
  }

html.gift-card .tooltip-container {
    display: block;
    position: absolute;
    top: -100%;
    right: 50%;
    z-index: 3;
    color: #fff;
    text-align: center;
    white-space: nowrap;
    -webkit-animation: popup 0.5s ease-in-out both 0.7s;
    animation: popup 0.5s ease-in-out both 0.7s;
    top: -50%;
    margin-top: 0.25em;
  }

html.gift-card .tooltip:hover .tooltip-container {
    display: block;
  }

html.gift-card .tooltip-triangle {
    content: '';
    display: block;
    width: 0;
    height: 0;
    border-left: 8px solid transparent;
    border-right: 8px solid transparent;
    border-top: 5px solid #333;
    border-top: 5px solid rgba(51, 51, 51, 0.9);
    position: absolute;
    left: 100%;
    bottom: 0;
    margin-left: -5px;
    margin-bottom: -5px;
  }

html.gift-card .tooltip-label {
    display: block;
    position: relative;
    right: -50%;
    border: none;
    border-radius: 4px;
    background: #333;
    background: rgba(51, 51, 51, 0.9);
    min-height: 14px;
    font-weight: 400;
    font-size: 12px;
    text-decoration: none;
    line-height: 16px;
    text-shadow: none;
    padding: 0.5em 0.75em;
    margin-left: 0.25em;
  }

html.gift-card #gift-card-amount .tooltip-label {
    font-size: 0.4em;
    color: #fff;
  }

html.gift-card #gift-card-amount .tooltip-label small {
    text-transform: uppercase;
    letter-spacing: 0.1em;
    font-size: 0.875em;
  }

html.gift-card #gift-card-instructions {
    font-size: 0.875em;
    text-align: center;
    margin: 0 0.75em 1.5em;
  }

html.gift-card #qr-code {
    display: block;
  }

html.gift-card #apple-wallet-badge {
    margin: auto;
  }

html.gift-card #qr-code img {
    padding: 0.75em;
    border: 1px solid #e5e5e5;
    border-radius: 6px;
    margin: 0 auto 1.5em;
  }

html.gift-card #gift-card-actions {
    border-top: 1px solid var(--color-border);
    padding: 1.25em 0.75em;
    display: block;
    overflow: hidden;
  }

html.gift-card #gift-card-actions .btn {
    float: right;
  }

html.gift-card .action-link {
    font-size: 0.875em;
    text-transform: uppercase;
    letter-spacing: 0.2em;
    line-height: 1;
    padding: 1.5em 0;
  }

html.gift-card .action-link.left {
    float: left;
  }

html.gift-card .action-link.left .ico-16 {
    margin-right: 0.5em;
  }

html.gift-card .action-link .ico-16 {
    opacity: 0.25;
    transition: opacity 0.3s ease-in-out;
  }

html.gift-card .action-link:hover .ico-16 {
    opacity: 0.4;
  }

html.gift-card .ico-16 {
    display: inline-block;
    vertical-align: baseline;
    zoom: 1;
    *display: inline;
    *vertical-align: auto;
    width: 17px;
    height: 17px;
    vertical-align: bottom;
    margin-bottom: -1px;
    background-position: 0 0;
    background-repeat: no-repeat;
  }

html.gift-card .ico-16.print {
    background-image: url(//cdn.shopify.com/s/assets/themes_support/gift-card/icon-print-2cc4520b4b6301df62b80ade51c8c6b154847d7b59babc350b68f168f7d07665.png);
  }

html.gift-card .svg .ico-16.print {
    background-image: url(//cdn.shopify.com/s/assets/themes_support/gift-card/icon-print-fbdd8d9ad2c45349434cf82b59ac03a0d68861e6954fc80e269c0162b9bbec59.svg);
  }

html.gift-card footer[role='contentinfo'] {
    text-align: center;
    padding: 3em 0;
    -webkit-animation: fadein 0.5s ease-in-out both 0.4s;
    animation: fadein 0.5s ease-in-out both 0.4s;
  }

html.gift-card #footer-links {
    list-style-type: none;
    margin: 0;
    padding: 0;
    text-align: center;
    padding-bottom: 3em;
  }

html.gift-card #footer-links li {
    display: inline-block;
    vertical-align: baseline;
    zoom: 1;
    *display: inline;
    *vertical-align: auto;
  }

html.gift-card #footer-links li + li {
    margin-left: 1em;
  }

html.gift-card #footer-links li a {
    color: var(--color-text-link);
  }

html.gift-card footer[role='contentinfo'] .gift-card-icon {
    width: 45px;
    display: inline-block;
    vertical-align: baseline;
    zoom: 1;
    *display: inline;
    *vertical-align: auto;
  }

@media screen and (max-width: 580px) {
    html.gift-card body {
      font-size: 12px;
    }

    html.gift-card h2 {
      font-size: 1.5em;
    }

    html.gift-card #gift-card-outer-container {
      padding: 0.5em;
    }

    html.gift-card .tooltip-container {
      top: -65%;
    }

    html.gift-card #gift-card-actions .btn {
      width: 100%;
      padding-left: 0;
      padding-right: 0;
      font-size: 1.125em;
    }

    html.gift-card .action-link {
      position: relative !important;
      left: auto !important;
      right: auto !important;
      top: auto !important;
      font-size: 1.125em;
      display: none;
    }

    html.gift-card .action-link + .action-link {
      margin-left: 1.5em;
    }

    html.gift-card #footer-links li {
      font-size: 1.125em;
    }
  }

@media screen and (max-width: 400px) {
    html.gift-card h2 {
      font-size: 1.25em;
    }

    html.gift-card #gift-card {
      font-size: 10px;
    }

    html.gift-card #gift-card-holder .corner {
      display: none;
    }

    html.gift-card #gift-card-holder .corner.bottom-right {
      background-position: bottom right !important;
    }

    html.gift-card #gift-card-amount strong {
      text-shadow: 2px 2px 0 rgba(0, 0, 0, 0.1);
    }

    html.gift-card .tooltip-container {
      top: -75%;
    }
  }

@media screen and (max-height: 800px) {
    html.gift-card .logo {
      max-height: 100px;
    }
  }

@media screen and (max-height: 750px) {
    html.gift-card .logo {
      max-height: 80px;
    }

    html.gift-card #header {
      padding: 2em 0;
    }
  }

@media print {
    @page {

html.gift-card {
      margin: 0.5cm
}
    }

    html.gift-card p,
    html.gift-card h2,
    html.gift-card h3 {
      orphans: 3;
      widows: 3;
    }

    html.gift-card h2,
    html.gift-card h3 {
      page-break-after: avoid;
    }

    html.gift-card body {
      background-color: #fff;
    }

    html.gift-card #gift-card-actions,
    html.gift-card #gift-card-holder .corner,
    html.gift-card .tooltip-container,
    html.gift-card #gift-card:before,
    html.gift-card #apple-wallet-badge {
      display: none;
    }

    html.gift-card #gift-card-amount .tooltip {
      color: #fff !important;
    }

    html.gift-card .shop-url {
      color: #7c8f97;
      display: block;
    }

    html.gift-card #gift-card-outer-container,
    html.gift-card #gift-card-inner-container,
    html.gift-card #gift-card-code-inner,
    html.gift-card #gift-card:before {
      box-shadow: none;
    }
  }

@-webkit-keyframes slideup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px) rotate(10deg);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }

  80% {
    -webkit-transform: translateY(10px);
  }

  100% {
    -webkit-transform: translateY(0) rotate(0deg);
  }
}

@keyframes slideup {
  0% {
    opacity: 0;
    -webkit-transform: translateY(2000px) rotate(10deg);
  }

  60% {
    opacity: 1;
    -webkit-transform: translateY(-30px);
  }

  80% {
    -webkit-transform: translateY(10px);
  }

  100% {
    -webkit-transform: translateY(0) rotate(0deg);
  }
}

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

  60% {
    opacity: 1;
    -webkit-transform: translateY(-10px);
  }

  80% {
    -webkit-transform: translateY(2px);
  }

  100% {
    -webkit-transform: translateY(0);
  }
}

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

  60% {
    opacity: 1;
    -webkit-transform: translateY(-10px);
  }

  80% {
    -webkit-transform: translateY(2px);
  }

  100% {
    -webkit-transform: translateY(0);
  }
}

@-webkit-keyframes container-slide {
  0% {
    opacity: 0;
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
  }
}

@keyframes container-slide {
  0% {
    opacity: 0;
    -webkit-transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(0deg);
  }
}

@-webkit-keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 100;
  }
}

@keyframes fadein {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 100;
  }
}

.list-collections__header {
  margin-bottom: 20px;
  margin-bottom: var(--space-grid);
  border-bottom: 1px solid var(--color-border);
}

.list-collections__heading {
  margin-bottom: 20px;
  margin-bottom: var(--space-grid);
}

.page {
  --s-line-height: var(--line-height-body-base);
  --s-font-size: var(--font-size-body-base);
  --s-max-width: 600px;
}

@media (min-width: 40em) {

.page {
    --s-line-height: var(--line-height-body-large);
    --s-font-size: var(--font-size-body-large)
}
  }

.page__header {
  text-align: center;
  width: 100%;
  max-width: calc(20px * 2 + var(--s-max-width));
  max-width: calc(var(--space-outer) * 2 + var(--s-max-width));
  margin: calc(4px * 10) auto;
  margin: var(--spacing-large) auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

@media (min-width: 40em) {

.page__header {
    margin: calc(4px * 20) auto;
    margin: var(--spacing-extra-extra-large) auto
}
  }

.page__heading {
  font-size: 24px;
  font-size: var(--font-size-heading-base);
  line-height: 32px;
  line-height: var(--line-height-heading-base);
}

@media (min-width: 40em) {

.page__heading {
    font-size: 36px;
    font-size: var(--font-size-heading-x-large);
    line-height: 44px;
    line-height: var(--line-height-heading-x-large)
}
  }

.page__intro {
  font-size: var(--s-font-size);
  line-height: var(--s-line-height);
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.page__intro {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.page__rte,
.article__rte {
  width: 100%;
  max-width: calc(20px * 2 + var(--s-max-width));
  max-width: calc(var(--space-outer) * 2 + var(--s-max-width));
  margin: 0 auto calc(4px * 10) auto;
  margin: 0 auto var(--spacing-large) auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
  font-size: var(--s-font-size);
  line-height: var(--s-line-height);
}

@media (min-width: 40em) {

.page__rte,
.article__rte {
    margin: 0 auto calc(calc(4px * 10) * 3) auto;
    margin: 0 auto calc(var(--spacing-large) * 3) auto
}
  }

.page__rte .grid, .article__rte .grid {
    --s-item-gutter: 10px;

    min-width: 100%;
    padding: 0;
    margin: calc(calc(4px * 10) - var(--s-item-gutter)) 0;
    margin: calc(var(--spacing-large) - var(--s-item-gutter)) 0;
    margin-left: calc(var(--s-item-gutter) * -1);
    margin-right: calc(var(--s-item-gutter) * -1);
  }

.page__rte .grid:first-child, .article__rte .grid:first-child {
      margin-top: calc(var(--s-item-gutter) * -1);
    }

@media (min-width: 40em) {

.page__rte .grid, .article__rte .grid {
      width: 100vw;
      position: relative;
      left: 50%;
      right: 50%;
      margin-top: calc(calc(4px * 20) - var(--s-item-gutter));
      margin-top: calc(var(--spacing-extra-extra-large) - var(--s-item-gutter));
      margin-right: -50vw;
      margin-bottom: calc(
        calc(4px * 20) - var(--s-item-gutter)
      );
      margin-bottom: calc(
        var(--spacing-extra-extra-large) - var(--s-item-gutter)
      );
      margin-left: -50vw;
      padding: 0 calc(20px - var(--s-item-gutter));
      padding: 0 calc(var(--space-outer) - var(--s-item-gutter))
  }
    }

@media (min-width: 2000px) {

.page__rte .grid, .article__rte .grid {
      width: 2000px;
      width: var(--max-width);
      left: 0;
      right: 0;
      margin-left: calc(((2000px - var(--s-max-width)) / 2) * -1);
      margin-left: calc(((var(--max-width) - var(--s-max-width)) / 2) * -1);
      margin-right: 0
  }
    }

.page__rte .grid img, .article__rte .grid img {
      width: 100%;
      height: auto;
      display: block;
      border-radius: var(--radius-corner);
    }

.page__rte .grid img + img, .article__rte .grid img + img {
      margin-top: calc(var(--s-item-gutter) * 2);
    }

.page__rte .grid > div,
    .page__rte .grid > img,
    .page__rte .grid > p,
    .article__rte .grid > div,
    .article__rte .grid > img,
    .article__rte .grid > p {
      padding: var(--s-item-gutter);
      margin: 0;
      width: 100%;
    }

.page__rte .grid .small, .article__rte .grid .small {
      width: 50%;
    }

.about__grid {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
}

@media (min-width: 40em) {

.about__grid {
    margin-bottom: calc(4px * 20);
    margin-bottom: var(--spacing-extra-extra-large)
}
  }

@media (min-width: 60em) {

.about__grid {
    display: grid
}
  }

.shopify-section:not(.full-width) .about__grid {
    grid-gap: 20px;
    margin-left: 20px;
    margin-left: var(--space-outer);
    margin-right: 20px;
    margin-right: var(--space-outer);
  }

.shopify-section:not(.full-width) .about__grid .about__block {
      border-radius: var(--radius-corner);
    }

.about__grid--1 .about__block--1 {
    padding-top: 150%;
  }

@media (min-width: 60em) {

.about__grid--1 .about__block--1 {
      padding-top: 50%
  }
    }

.about__grid--2 {
  grid-template-columns: repeat(2, 1fr);
}

.about__grid--2 .about__block--1,
  .about__grid--2 .about__block--2 {
    padding-top: 100%;
  }

.about__grid--3 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}

.about__grid--3 .about__block--1 {
    grid-row: 1/3;
    padding-top: 150%;
  }

@media (max-width: 60em) {

.about__grid--3 .about__block--2,
  .about__grid--3 .about__block--3 {
      padding-top: 75%
  }
    }

.about__grid--4 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
}

.about__grid--4 .about__block--1 {
    grid-row: 1 / span 2;
    padding-top: 120%;
  }

@media (max-width: 60em) {

.about__grid--4 .about__block--2,
  .about__grid--4 .about__block--4 {
      padding-top: 70%
  }
    }

.about__grid--4 .about__block--3 {
    grid-row: 2 / span 2;
    padding-top: 120%;
  }

.about__grid--5 {
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(5, 1fr);
}

.about__grid--5 .about__block--1 {
    grid-column: 1 / span 2;
    grid-row: 1 / span 3;

    padding-top: 100%;
  }

.about__grid--5 .about__block--2 {
    grid-row: 1 / span 2;
  }

@media (max-width: 60em) {

.about__grid--5 .about__block--2 {
      padding-top: 140%
  }
    }

@media (max-width: 60em) {

.about__grid--5 .about__block--3 {
      padding-top: 75%
  }
    }

.about__grid--5 .about__block--4 {
    grid-column: 1 / span 2;
    grid-row: span 2;
  }

@media (max-width: 60em) {

.about__grid--5 .about__block--4 {
      padding-top: 66%
  }
    }

.about__grid--5 .about__block--5 {
    grid-row: span 2;
  }

@media (max-width: 60em) {

.about__grid--5 .about__block--5 {
      padding-top: 135%
  }
    }

.about__block {
  position: relative;
  overflow: hidden;
  background-color: var(--color-background-meta);
}

.about__block .image,
  .about__block .placeholder-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }

.about__block .image svg, .about__block .placeholder-image svg {
      width: 100%;
      height: 100%;
    }

@media (max-width: 60em) {

.shopify-section:not(.full-width) .about__block + .about__block {
      margin-top: calc(4px * 5);
      margin-top: var(--spacing-medium)
  }
    }

.about__block-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.about__block-video {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.contact {
  --s-max-width: 600px;
}

.contact__container {
  padding: 20px;
  padding: var(--space-outer);
  display: flex;
  flex-wrap: wrap;
}

@media (min-width: 40em) and (max-width: 60em) {

.contact__container {
    align-items: flex-start
}
  }

@media (min-width: 60em) {

.contact__container {
    align-items: center
}
  }

.contact__image {
  width: 100%;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 40em) {

.contact__image {
    width: 50%;
    padding-right: calc(4px * 5);
    padding-right: var(--spacing-medium);
    margin-bottom: 0
}
  }

.contact__content {
  width: 100%;
  margin: 0 auto;
}

@media (min-width: 40em) {

.contact__content {
    width: 50%;
    max-width: 570px;
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium)
}
  }

.contact__heading + .contact__text {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 40em) {

.contact__heading + .contact__text {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.contact__form {
  margin: 0 auto;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 40em) {

.contact__form {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large);
    margin-bottom: 0
}
  }

.contact__form .input {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

.contact__success {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.password {
  text-align: center;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.password__login-button {
  position: fixed;
  top: 20px;
  top: var(--space-outer);
  right: 20px;
  right: var(--space-outer);
}

.password__heading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.password__content {
  width: 100%;
  max-width: 500px;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

.password:not(.welcome) .password__content[data-content='default'] {
    display: none;
  }

.password:not(.welcome) .lock {
    display: none;
  }

.password.welcome .password__content[data-content='login'] {
    display: none;
  }

.password.welcome .close {
    display: none;
  }

.password__login-heading {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
}

.password__subheading {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 8);
  margin-bottom: calc(var(--spacing-unit) * 8);
}

.password__text {
  margin-top: calc(4px * 8);
  margin-top: calc(var(--spacing-unit) * 8);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.password__notify-form,
.password__login-form {
  display: flex;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.password__notify-form .input, .password__login-form .input {
    margin-right: 20px;
  }

.password__notify-form .btn, .password__login-form .btn {
    flex-shrink: 0;
  }

.errors {
  font-size: 14px;
  font-size: var(--font-size-body-base);
  line-height: 24px;
  line-height: var(--line-height-body-base);
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
  color: var(--color-text-error);
}

.errors ul {
    margin: 0;
    padding: 0;
  }

.errors li {
    list-style: none;
  }

.password__success {
  opacity: 0.75;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.password__share {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

/*
  We don't have access to change the markup
  so we just want to make this match the default
  page template as close as possible.
*/

.page .shopify-policy__container {
    width: 100%;
    max-width: calc(20px * 2 + var(--s-max-width));
    max-width: calc(var(--space-outer) * 2 + var(--s-max-width));
    margin: 0 auto calc(4px * 10) auto;
    margin: 0 auto var(--spacing-large) auto;
    padding: 0 20px;
    padding: 0 var(--space-outer);
  }

@media (min-width: 40em) {

.page .shopify-policy__container {
      margin: 0 auto calc(calc(4px * 10) * 3) auto;
      margin: 0 auto calc(var(--spacing-large) * 3) auto
  }
    }

.page .shopify-policy__title {
    text-align: center;
    width: 100%;
    margin: calc(4px * 10) auto;
    margin: var(--spacing-large) auto;
  }

@media (min-width: 40em) {

.page .shopify-policy__title {
      margin: calc(4px * 20) auto;
      margin: var(--spacing-extra-extra-large) auto
  }
    }

.page .shopify-policy__title h1 {
      font-family: var(--font-heading);
      font-weight: var(--font-heading-weight);
      font-style: var(--font-heading-style);
      font-size: 24px;
      font-size: var(--font-size-heading-base);
      line-height: 32px;
      line-height: var(--line-height-heading-base);
      color: var(--color-text-heading);
    }

@media (min-width: 40em) {

.page .shopify-policy__title h1 {
        font-size: 36px;
        font-size: var(--font-size-heading-x-large);
        line-height: 44px;
        line-height: var(--line-height-heading-x-large)
    }
      }

.page .shopify-policy__body {
    font-size: var(--s-font-size);
    line-height: var(--s-line-height);
  }

.product .mobile-carousel__pagination {
    left: 0;
    right: 0;
  }

.product__content {
  width: 100%;
}

@media (min-width: 40em) {

.product__content {
    display: flex;
    align-items: flex-start;
    flex-wrap: no-wrap;
    display: grid
}
  }

@media (min-width: 40em) and (max-width: 60em) {

.product__content {
    grid-template-columns: 50% 50%
}
  }

@media (min-width: 60em) {

.product__content {
    grid-template-columns: calc((2 / 3) * 100%) calc((1 / 3) * 100%)
}
  }

.product__media-container {
  width: 100%;
  flex-shrink: 0;
}

@media (min-width: 40em) {

.shopify-section:not(.full-width) .product__media-container {
      width: calc(100% + 5px)
  }
    }

.shopify-section.full-width .product__media-container {
    margin-top: -20px;
  }

@media (min-width: 40em) {

.shopify-section.full-width .product__media-container {
      margin-left: -40px;
      margin-top: -40px;
      padding-right: 10px
  }
    }

@media (min-width: 40em) and (max-width: 60em) {

.shopify-section.full-width .product__media-container {
      width: calc(100% + 45px)
  }
    }

@media (min-width: 60em) {

.shopify-section.full-width .product__media-container {
      width: calc(100% + 45px)
  }
    }

.product__media-container .flickity-viewport {
    transition: height 0.25s;
  }

.product__media {
  width: 100vw;
  margin-left: -20px;
  padding: 0 20px;
  overflow: hidden;
}

.product__media:after {
    content: 'flickity';
    display: none;
  }

@media (min-width: 40em) {

.product__media {
    width: auto;
    padding: 0;
    margin-left: 0
}

    .product__media:after {
      content: '';
    }
  }

@media (min-width: 40em) {

.shopify-section:not(.full-width) .product__media {
      margin-left: -10px
  }
    }

.product__media .flickity-viewport {
    overflow: visible;
  }

@media (min-width: 40em) {

.product__media--grid {
    display: flex;
    flex-wrap: wrap
}

    .product__media--grid .product__media-item {
      width: 50%;
    }
  }

.product__media-item {
  width: calc(100vw - 20px);
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
}

@media (max-width: 40em) {
    .shopify-section.full-width .product__media-item {
      width: 100vw;
      padding: 0;
    }
  }

@media (min-width: 40em) {

.product__media-item {
    width: 100%;
    margin-bottom: 20px;
    margin-bottom: var(--space-grid)
}

    .shopify-section.full-width .product__media-item {
      padding: 0;
      margin-bottom: 0;
    }

    .product__media-item:last-of-type {
      margin-bottom: 0;
    }
  }

.product__details {
  width: 100%;
  min-width: 280px;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (max-width: 40em) {

.product__details {
    padding: 0
}
  }

@media (min-width: 40em) {

.product__details {
    flex-shrink: 1;
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large);
    margin-left: auto;
    margin-right: auto;
    padding-left: calc(20px - 10px);
    padding-left: calc(var(--space-outer) - var(--space-inline-element));
    padding-right: 0;
    max-width: 480px;
    position: -webkit-sticky;
    position: sticky;
    top: calc(20px + var(--height-header));
    top: calc(var(--space-outer) + var(--height-header))
}
  }

.product__vendor {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.product__price {
  margin-top: 4px;
  margin-top: var(--spacing-unit);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product__price s {
    /* TODO use proper text colour */
    opacity: 0.5;
  }

@media (min-width: 40em) {

.product__price {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-large)
}
  }

.product__view-in-space {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  display: none;
}

.product__view-in-space.visible {
    display: flex;
  }

.product__view-in-space > span {
    display: flex;
    align-items: center;
  }

.product__view-in-space .icon {
    margin-right: calc(4px * 2);
    margin-right: var(--spacing-extra-small);
  }

.product-single__description + .product__share {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.search {
  width: 100%;
  max-width: calc(20px * 2 + 600px);
  max-width: calc(var(--space-outer) * 2 + var(--max-width-small-page));
  margin: 0 auto calc(4px * 10) auto;
  margin: 0 auto var(--spacing-large) auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

@media (min-width: 40em) {

.search {
    margin: 0 auto calc(4px * 20) auto;
    margin: 0 auto var(--spacing-extra-extra-large) auto
}
  }

.search__form {
  width: 100%;
  max-width: 80%;
  display: flex;
  align-items: center;
  margin: calc(calc(4px * 5) * -1) auto calc(4px * 12) auto;
  margin: calc(var(--spacing-medium) * -1) auto var(--spacing-extra-large) auto;
}

@media (min-width: 40em) {

.search__form {
    margin: calc(calc(4px * 10) * -1) auto
      calc(4px * 20) auto;
    margin: calc(var(--spacing-large) * -1) auto
      var(--spacing-extra-extra-large) auto
}
  }

.search__no-results {
  margin-bottom: calc(4px * 12);
  margin-bottom: var(--spacing-extra-large);
}

.search__submit {
  /* Optical horizontal alignment of search button inside input */
  margin-left: -47px;
}

.search__results {
  width: 100%;
  margin: 0;
  padding: 0;
}

.search__result {
  display: flex;
  align-items: center;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  padding: 0;
  list-style: none;
}

@media (min-width: 40em) {

.search__result {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-large)
}
  }

.search__result-image {
  width: 100px;
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-shrink: 0;
  background-color: var(--color-background-meta);
  color: var(--color-foreground-meta);
  position: relative;
  overflow: hidden;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
}

@media (min-width: 40em) {

.search__result-image {
    width: 140px;
    height: 140px
}
  }

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

.search__result-content {
  flex-shrink: 1;
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  overflow: hidden;
}

.search__result-heading {
  margin-bottom: 4px;
  margin-bottom: var(--spacing-unit);
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.account {
  width: 100%;
  max-width: calc(1000px + 20px);
  max-width: calc(1000px + var(--space-outer));
  margin: 20px auto calc(4px * 20) auto;
  margin: var(--space-outer) auto var(--spacing-extra-extra-large) auto;
}

.account__container {
  margin: 20px auto;
  margin: var(--space-outer) auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

.account__breadcrumbs {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.account__breadcrumbs .breadcrumbs {
    justify-content: center;
  }

.account__header {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 12);
  margin-bottom: var(--spacing-extra-large);
  text-align: center;
}

@media (min-width: 40em) {

.account__header {
    margin-top: 0;
    margin-bottom: calc(4px * 14);
    margin-bottom: calc(var(--spacing-unit) * 14)
}
  }

.account__heading {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 40em) {

.account__heading {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium)
}
  }

.account__logout {
  display: inline-block;
  font-style: italic;
  margin-left: calc(4px * 2);
  margin-left: var(--spacing-extra-small);
}

.account__messages {
  margin-bottom: calc(4px * 10);
  margin-bottom: var(--spacing-large);
  width: 100%;
}

.account__message {
  background-color: var(--color-text-body-transparent);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

.account__message + .account__message {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

.account__sections {
  margin: 0;
}

@media (max-width: 40em) {

.account__main {
    margin-left: calc(20px * -1);
    margin-left: calc(var(--space-outer) * -1);
    margin-right: calc(20px * -1);
    margin-right: calc(var(--space-outer) * -1)
}
  }

.account__top {
  text-align: center;
  margin-bottom: calc(4px * 12);
  margin-bottom: var(--spacing-extra-large);
}

@media (min-width: 40em) {

.account__top {
    margin-bottom: calc(4px * 14);
    margin-bottom: calc(var(--spacing-unit) * 14)
}
  }

.account__scrollable {
  margin: 0;
  overflow-x: scroll;
}

@media (max-width: 40em) {

.account__scrollable {
    padding-left: calc(4px * 5);
    padding-left: var(--spacing-medium)
}
  }

@media (min-width: 60em) {

.account__scrollable {
    margin: 0;
    padding: 0;
    overflow-x: auto
}
  }

.account__cta-wrap {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

.account__col + .account__col {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large);
  }

.account__col-heading {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.account__table {
  width: 100%;
  border-collapse: collapse;
}

@media (max-width: 40em) {

.account__table {
    /* Prevent cells from bunching up too much */
    min-width: 760px
}
  }

.account__table s {
    opacity: 0.5;
  }

.account__table tr {
    padding: 0;
  }

.account__table th {
    font-weight: var(--font-meta-weight);
    font-style: var(--font-meta-style);
    padding: 0 calc(4px * 5) calc(4px * 5) calc(4px * 5);
    padding: 0 var(--spacing-medium) var(--spacing-medium) var(--spacing-medium);
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
  }

.account__table td {
    padding: calc(4px * 5);
    padding: var(--spacing-medium);
    border-bottom: 1px solid var(--color-border);
    white-space: nowrap;
  }

.account__table--expanded th,
    .account__table--expanded td {
      padding: calc(4px * 10);
      padding: var(--spacing-large);
    }

.account__table--expanded th {
      padding-top: 0;
      padding-bottom: calc(4px * 5);
      padding-bottom: var(--spacing-medium);
    }

.account__table td:first-of-type,
  .account__table th:first-of-type {
    padding-left: 0;
  }

.account__table td:last-of-type,
  .account__table th:last-of-type {
    padding-right: 0;
  }

@media (max-width: 40em) {

.account__table td:last-of-type,
  .account__table th:last-of-type {
      padding-right: calc(4px * 5);
      padding-right: var(--spacing-medium)
  }
    }

/* Order totals */

.account__table--summary {
  width: 100%;
  min-width: 0px;
}

@media (min-width: 40em) {

.account__table--summary {
    max-width: 400px;
    margin-left: auto
}
  }

.account__table--summary td:last-of-type {
    padding-right: 0;
  }

.account__my-orders-heading {
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
  border-bottom: 1px solid var(--color-border);
}

.account__no-orders {
  padding: calc(4px * 10) 0;
  padding: var(--spacing-large) 0;
  border-bottom: 1px solid var(--color-border);
}

.addresses__modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1200;
  z-index: var(--z-index-modal);
  justify-content: space-around;
  display: none;
  overflow-y: scroll;
}

.addresses__modal.active {
  display: block;
}

.addresses__modal.visible .addresses__overlay {
    opacity: 0.6;
  }

.addresses__modal.visible .addresses__content {
    opacity: 1;
    transform: translateY(0);
  }

.addresses__overlay {
  background-color: var(--color-overlay);
  opacity: 0;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  cursor: pointer;
  transition: opacity 0.35s;
}

.addresses__content {
  background-color: var(--color-background);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  margin: 10vh auto 10vh auto;
  width: 90vw;
  max-width: 500px;
  z-index: 10;

  transition: opacity 0.35s, transform 0.35s;
  opacity: 0;
  transform: translateY(calc(4px * 5));
  transform: translateY(var(--spacing-medium));
}

.addresses__content .input + .input,
  .addresses__content .input + div,
  .addresses__content div + .input {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

.addresses__modal-heading {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.addresses__list {
  display: flex;
  flex-wrap: wrap;
  align-items: stretch;
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

.addresses__list + .pagination {
    margin-top: 10px;
    margin-top: var(--space-inline-element);
  }

.addresses__item-wrapper {
  padding: 10px;
  padding: var(--space-inline-element);
  width: 100%;
}

@media (min-width: 40em) and (max-width: 60em) {

.addresses__item-wrapper {
    width: 50%
}
  }

@media (min-width: 60em) {

.addresses__item-wrapper {
    width: calc(1 / 3 * 100%)
}
  }

.addresses__item {
  border: 1px solid var(--color-border);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}

.addresses__item ul {
    margin: calc(4px * 3) 0 0 0;
    margin: var(--spacing-small) 0 0 0;
    padding: 0;
  }

.addresses__item li {
    list-style: none;
    display: inline-block;
  }

.addresses__item li + li {
      margin-left: calc(4px * 3);
      margin-left: var(--spacing-small);
    }

.addresses__checkbox-wrapper {
  display: flex;
  align-items: center;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.addresses__checkbox-wrapper label {
    margin-left: calc(4px * 2);
    margin-left: var(--spacing-extra-small);
    cursor: pointer;
  }

.addresses__cancel {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

.login {
  text-align: center;
}

.login__success {
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  display: none;
}

.login__success.visible {
    display: block;
  }

.login__error {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.login__main {
  width: 100%;
  max-width: 440px;
  margin: 12vh auto;
  padding: 0 20px;
  padding: 0 var(--space-outer);
}

.login__main.hide {
    display: none;
  }

.login__main .input {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

.login__heading {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 40em) {

.login__heading {
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-large)
}
  }

.login__subheading {
  margin-top: calc(calc(4px * 3) * -1);
  margin-top: calc(var(--spacing-small) * -1);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 40em) {

.login__subheading {
    margin-top: calc(calc(4px * 5) * -1);
    margin-top: calc(var(--spacing-medium) * -1);
    margin-bottom: calc(4px * 10);
    margin-bottom: var(--spacing-large)
}
  }

.login__links {
  margin: calc(4px * 5) 0 0 0;
  margin: var(--spacing-medium) 0 0 0;
  padding: 0;
  display: flex;
  justify-content: center;
}

.login__links li {
    list-style: none;
  }

.login__links li + li:before {
        content: '/';
        padding: calc(4px * 3);
        padding: var(--spacing-small);
      }

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

.order__product ul {
    margin: 0;
    padding: 0;
  }

.order__product li {
    list-style: none;
  }

.order__image {
  position: relative;
  flex-shrink: 0;
  width: 100px;
  height: 100px;
  background-color: var(--color-background-meta);
  margin-right: calc(4px * 10);
  margin-right: var(--spacing-large);
}

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

.account__order-summary {
  width: 100%;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.account__order-summary {
    max-width: 400px
}
  }

.account__order-summary-item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.account__order-summary-item + .account__order-summary-item:not(.account__order-summary-item--total) {
    margin-top: 4px;
    margin-top: var(--spacing-unit);
  }

.account__order-summary-item--total {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  padding-top: calc(4px * 3);
  padding-top: var(--spacing-small);
  border-top: 1px solid var(--color-border);
}

.account__order-footer {
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

@media (min-width: 40em) {

.account__order-footer {
    margin-left: calc(10px * -1);
    margin-left: calc(var(--space-inline-element) * -1);
    margin-right: calc(10px * -1);
    margin-right: calc(var(--space-inline-element) * -1);
    flex-direction: row-reverse;
    flex-wrap: nowrap
}
  }

.account__order-addresses {
  width: 100%;
}

.account__order-footer-col {
  width: 100%;
}

@media (max-width: 40em) {
    .account__order-footer-col + .account__order-footer-col {
      margin-top: calc(4px * 10);
      margin-top: var(--spacing-large);
    }
  }

@media (min-width: 40em) {

.account__order-footer-col {
    padding: 0 10px;
    padding: 0 var(--space-inline-element)
}
  }

@media (min-width: 40em) and (max-width: 60em) {

.account__order-footer-col {
    width: calc(1 / 3 * 100%)
}
  }

@media (min-width: 60em) {

.account__order-footer-col {
    width: calc(1 / 4 * 100%)
}
  }

.account__order-footer-col--summary {
  margin-left: auto;
  flex-grow: 1;
}

@media (min-width: 40em) {

.account__order-footer-col--summary {
    max-width: 400px
}
  }

.account__order-status {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

/* Required content sections */

.blog-posts {
  overflow: hidden;
}

.blog-posts__wrapper {
  position: relative;
}

.blog-posts__grid {
  margin-top: calc(20px * -1);
  margin-top: calc(var(--space-grid) * -1);
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.blog-posts__grid {
    display: flex;
    flex-wrap: wrap
}
  }

.blog-posts__item {
  /* background-color: cyan; */
  width: 100%;
  padding-left: 10px;
  padding-left: var(--space-inline-element);
  padding-right: 10px;
  padding-right: var(--space-inline-element);
  margin-top: 20px;
  margin-top: var(--space-grid);
}

@media (min-width: 40em) {
    .blog-posts__item--2 {
      width: 50%;
    }

    .blog-posts__item--3 {
      width: calc(1 / 3 * 100%);
    }

    .blog-posts__item--4 {
      width: 25%;
    }
  }

.blog-posts__item-image {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 40em) {

.blog-posts__item-image {
    margin-bottom: 20px;
    margin-bottom: var(--space-grid)
}
  }

.blog-posts__item-excerpt {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
  margin-bottom: 0;
}

@media (min-width: 40em) {

.blog-posts__item-excerpt {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small)
}
  }

.blog-posts__item-excerpt a {
    opacity: 0.7;
    transition: opacity 0.25s;
  }

.blog-posts__item-excerpt a:hover {
      opacity: 0.25;
    }

.carousel {
  position: relative;
}

.carousel .mobile-carousel__pagination {
    display: flex;
    left: 0;
    right: 0;
  }

.carousel__slides {
  position: relative;
  height: var(--height-carousel-mobile);
}

@media (min-width: 40em) {

.carousel__slides {
    height: var(--height-carousel)
}
  }

.carousel__slide {
  width: calc(100vw - calc(calc(4px * 5) * 2));
  width: calc(100vw - calc(var(--spacing-medium) * 2));
  height: 100%;
  padding: 0 calc(calc(4px * 5) / 2);
  padding: 0 calc(var(--spacing-medium) / 2);
}

@media (min-width: 40em) {

.carousel__slide {
    width: calc(8 / 12 * 100%)
}
  }

.carousel__slide-content {
  position: relative;
  height: 100%;
}

.carousel__slide-content .block-overlay {
    position: absolute;
    z-index: 10;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

.carousel__slide-content .placeholder-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

.carousel__slide-content .placeholder-image svg {
      width: 100%;
      height: 100%;
    }

.carousel__slide-content:not(.carousel__slide-content--first) .carousel__image {
    padding: 0;
    height: 100%;
  }

@media (max-width: 40em) {
    .carousel__slide-content--first .carousel__image {
      padding: 0;
      height: 100%;
    }
  }

@media (min-width: 60em) {

.collage__grid {
    display: grid
}
  }

.shopify-section:not(.full-width) .collage__grid {
    grid-gap: 20px;
  }

.collage__grid--1 .collage__block--1 {
    padding-top: 150%;
  }

@media (min-width: 60em) {

.collage__grid--1 .collage__block--1 {
      padding-top: 50%
  }
    }

.collage__grid--2 {
  grid-template-columns: repeat(2, 1fr);
}

.collage__grid--2 .collage__block--1,
  .collage__grid--2 .collage__block--2 {
    padding-top: 100%;
  }

.collage__grid--3 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(2, 1fr);
}

.collage__grid--3 .collage__block--1 {
    grid-row: 1/3;
    padding-top: 150%;
  }

@media (max-width: 60em) {

.collage__grid--3 .collage__block--2,
  .collage__grid--3 .collage__block--3 {
      padding-top: 75%
  }
    }

.collage__grid--4 {
  grid-template-columns: repeat(2, 1fr);
  grid-template-rows: repeat(3, 1fr);
}

.collage__grid--4 .collage__block--1 {
    grid-row: 1 / span 2;
    padding-top: 120%;
  }

@media (max-width: 60em) {

.collage__grid--4 .collage__block--2,
  .collage__grid--4 .collage__block--4 {
      padding-top: 70%
  }
    }

.collage__grid--4 .collage__block--3 {
    grid-row: 2 / span 2;
    padding-top: 120%;
  }

.collage__grid--5 {
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(5, 1fr);
}

.collage__grid--5 .collage__block--1 {
    grid-column: 1 / span 2;
    grid-row: 1 / span 3;

    padding-top: 100%;
  }

.collage__grid--5 .collage__block--2 {
    grid-row: 1 / span 2;
  }

@media (max-width: 60em) {

.collage__grid--5 .collage__block--2 {
      padding-top: 140%
  }
    }

@media (max-width: 60em) {

.collage__grid--5 .collage__block--3 {
      padding-top: 75%
  }
    }

.collage__grid--5 .collage__block--4 {
    grid-column: 1 / span 2;
    grid-row: span 2;
  }

@media (max-width: 60em) {

.collage__grid--5 .collage__block--4 {
      padding-top: 66%
  }
    }

.collage__grid--5 .collage__block--5 {
    grid-row: span 2;
  }

@media (max-width: 60em) {

.collage__grid--5 .collage__block--5 {
      padding-top: 135%
  }
    }

.collage__block {
  position: relative;
  overflow: hidden;
}

.collage__block .image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }

@media (max-width: 60em) {

.shopify-section:not(.full-width) .collage__block + .collage__block {
      margin-top: calc(4px * 5);
      margin-top: var(--spacing-medium)
  }
    }

.collage__block-overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
}

.collage__block-video {
  position: absolute;
  /* z-index: 1; */
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
}

.collection-list {
  overflow: hidden;
}

.collection-list__wrapper {
  position: relative;
}

.collection-list__grid {
  margin-top: calc(20px * -1);
  margin-top: calc(var(--space-grid) * -1);
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.collection-list__grid {
    display: flex;
    flex-wrap: wrap
}
  }

.collection-list__item {
  padding-left: 10px;
  padding-left: var(--space-inline-element);
  padding-right: 10px;
  padding-right: var(--space-inline-element);
  width: 50%;
  margin-top: 20px;
  margin-top: var(--space-grid);
}

@media (min-width: 40em) {
    .collection-list__item--2 {
      width: 50%;
    }

    .collection-list__item--3 {
      width: calc(1 / 3 * 100%);
    }

    .collection-list__item--4 {
      width: 25%;
    }
  }

.featured-collection {
  overflow: hidden;
}

.featured-collection .grid {
    display: block;
  }

.featured-collection .grid:after {
      content: 'flickity';
      display: none;
    }

@media (min-width: 40em) {

.featured-collection .grid {
      display: flex
  }

      .featured-collection .grid:after {
        content: '';
      }
    }

.featured-collection .grid .flickity-viewport {
      overflow: visible;
    }

.featured-collection__wrapper {
  position: relative;
}

.featured-product {
  width: 100%;
}

@media (min-width: 40em) {

.featured-product {
    display: flex;
    align-items: flex-start;
    flex-wrap: no-wrap
}
  }

.shopify-section:not(.full-width) .featured-product.contrast {
    border-radius: var(--radius-corner);
    overflow: hidden;
  }

.shopify-section:not(.full-width) .featured-product:not(.contrast) .image,
    .shopify-section:not(.full-width) .featured-product:not(.contrast) .placeholder-image {
      border-radius: var(--radius-corner);
      overflow: hidden;
    }

.featured-product__media-container {
  width: 100%;
}

@media (min-width: 40em) {

.featured-product__media-container {
    margin: 0;
    /* 5px extra because it spans multiple columns */
    width: calc(calc(2 / 3 * 100%) + 5px)
}

    .shopify-section.full-width .featured-product__media-container {
      width: calc(calc(2 / 3 * 100%) + 45px);
    }
  }

.featured-product__media {
  width: 100%;
  display: none;
}

.featured-product__media.visible {
    display: block;
  }

.featured-product__media .media__image {
    pointer-events: none;
  }

.featured-product__details {
  width: 100%;
  min-width: 280px;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (max-width: 40em) {

.featured-product__details {
    padding: 0
}

    .shopify-section.full-width .featured-product__details {
      padding: 0 calc(4px * 5);
      padding: 0 var(--spacing-medium);
    }
  }

@media (min-width: 40em) {

.featured-product__details {
    flex-shrink: 1;
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large);
    margin-left: auto;
    margin-right: auto;
    padding-left: calc(20px);
    padding-left: calc(var(--space-outer));
    padding-right: 0;
    max-width: 480px;
    position: -webkit-sticky;
    position: sticky;
    top: calc(20px + var(--height-header));
    top: calc(var(--space-outer) + var(--height-header))
}
  }

.shopify-section.full-width .featured-product__details {
    padding: calc(4px * 5) 20px;
    padding: var(--spacing-medium) var(--space-outer);
  }

.contrast .featured-product__details {
    padding: calc(4px * 5) 20px;
    padding: var(--spacing-medium) var(--space-outer);
    padding-bottom: 20px !important;
    padding-bottom: var(--space-outer) !important;
  }

.featured-products {
  position: relative;
}

@media (min-width: 40em) {

.featured-products {
    display: flex;
    align-items: center
}
  }

.shopify-section.full-width .featured-products {
    overflow: hidden;
  }

@media (min-width: 40em) {

.featured-products--right {
    flex-direction: row-reverse
}
  }

.contrast .featured-products__block + .featured-products__block {
    border-color: var(--color-border-contrast);
  }

.featured-products__image {
  width: 100%;
  align-self: stretch;
}

@media (min-width: 40em) {

.featured-products__image {
    width: 50%
}
  }

.featured-products__content {
  width: 100%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (max-width: 40em) {

.shopify-section:not(.full-width) .featured-products:not(.contrast) .featured-products__content {
      /*
        Optically the extra space between this section
        and the next section should be okay.
      */
      padding: calc(4px * 5) 0 0 0;
      padding: var(--spacing-medium) 0 0 0
  }
    }

@media (min-width: 40em) {

.featured-products__content {
    width: 50%;
    text-align: center
}
  }

@media (min-width: 60em) {

.featured-products__content {
    padding: calc(4px * 10);
    padding: var(--spacing-large)
}
  }

.featured-products__heading + .featured-products__subheading {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.featured-products__heading + .featured-products__subheading {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.featured-products__blocks {
  display: none;
}

@media (min-width: 40em) {

.featured-products__blocks {
    display: flex;
    justify-content: center;
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large)
}
  }

.featured-products__block {
  width: 70%;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 40em) {

.featured-products__block {
    width: 100%
}
  }

@media (min-width: 60em) {

.featured-products__block {
    max-width: 300px
}
  }

.featured-products__block + .featured-products__block {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    border-top: 1px solid var(--color-border);
  }

@media (min-width: 40em) {

.featured-products__block + .featured-products__block {
      margin-top: 0;
      padding-top: 0;
      border-top: none;
      border-left: 1px solid var(--color-border)
  }
    }

.featured-products__product-image {
  width: 100%;
  max-width: 85px;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.featured-products__slider {
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

@media (min-width: 40em) {

.featured-products__slider {
    display: none
}
  }

.featured-products__slide {
  width: 50%;
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
}

/*
  This exists to maintain vertical positioning when
  the section is set to 'contrast' and the global 'full-width'
  setting is not enabled.
*/

.featured-products__relative {
  position: relative;
}

.shopify-section:not(.full-width) .contrast .featured-products__relative .featured-products__slider {
      position: static;
      overflow: hidden;
      margin-left: calc(calc(4px * 5) * -1);
      margin-left: calc(var(--spacing-medium) * -1);
      margin-right: calc(calc(4px * 5) * -1);
      margin-right: calc(var(--spacing-medium) * -1);
      padding: 0 calc(4px * 3);
      padding: 0 var(--spacing-small);
    }

.shopify-section:not(.full-width) .contrast .featured-products__relative .featured-products__slider .mobile-carousel__pagination {
        left: calc(calc(4px * 10) * -1);
        left: calc(var(--spacing-large) * -1);
        right: calc(calc(4px * 10) * -1);
        right: calc(var(--spacing-large) * -1);
      }

.featured-products__button {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.featured-products__button {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large)
}
  }

.gallery {
  overflow: hidden;
}

.gallery__rectangle-row {
  position: relative;
  margin-top: calc(calc(4px * 3) * -1);
  margin-top: calc(var(--spacing-small) * -1);
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.gallery__rectangle-row {
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(calc(4px * 5) * -2);
    margin-top: calc(var(--spacing-medium) * -2)
}
  }

.gallery__rectangle {
  width: 100%;
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
}

@media (min-width: 40em) {

.gallery__rectangle {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large)
}

    .gallery__rectangle--2 {
      width: 50%;
    }

    .gallery__rectangle--3 {
      width: calc(1 / 3 * 100%);
    }

    .gallery__rectangle--4 {
      width: 25%;
    }
  }

@media (min-width: 40em) and (max-width: 60em) {
    .gallery__rectangle--4 {
      width: 50%;
    }
  }

.gallery__image {
  display: block;
  position: relative;
}

.gallery__image svg {
    display: block;
  }

.gallery__image--square svg, .gallery__image--landscape svg, .gallery__image--portrait svg {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
  }

.gallery__image--square > .image,
  .gallery__image--square > .placeholder-image {
    padding-top: 100%;
  }

.gallery__image--landscape > .image,
  .gallery__image--landscape > .placeholder-image {
    padding-top: calc((2 / 3) * 100%);
  }

.gallery__image--portrait > .image,
  .gallery__image--portrait > .placeholder-image {
    padding-top: calc((3 / 2) * 100%);
  }

.gallery__caption {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 40em) {

.gallery__caption {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.gallery__caption p {
    display: inline;
  }

.gallery__caption a {
    transition: opacity 0.25s;
  }

.gallery__caption a:hover {
      opacity: 0.5;
    }

.image-with-text {
  width: 100%;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

@media (min-width: 40em) {

.image-with-text--p-right {
      flex-direction: row-reverse
  }
    }

@media (min-width: 40em) {

.image-with-text {
    flex-wrap: no-wrap
}
  }

.image-with-text__text {
  width: 100%;
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
}

.full-width .image-with-text__text {
    padding: 20px;
    padding: var(--space-outer);
  }

@media (min-width: 40em) {

.image-with-text__text {
    width: 50%;
    padding: calc(4px * 10);
    padding: var(--spacing-large)
}
  }

@media (min-width: 40em) {

.image-with-text--w-larger .image-with-text__text {
      width: 40%
  }
    }

@media (min-width: 40em) {

.image-with-text--p-right .image-with-text__text {
      padding-top: calc(4px * 10);
      padding-top: var(--spacing-large);
      padding-right: calc(4px * 10);
      padding-right: var(--spacing-large);
      padding-bottom: calc(4px * 10);
      padding-bottom: var(--spacing-large);
      padding-left: 0
  }

      .full-width .image-with-text--p-right .image-with-text__text {
        padding-left: calc(4px * 10);
        padding-left: var(--spacing-large);
      }
    }

.image-with-text__content {
  width: 100%;
}

@media (min-width: 40em) {

.image-with-text__content {
    max-width: var(--max-width-content)
}
  }

.image-with-text.contrast .image-with-text__text {
    padding: 20px;
    padding: var(--space-outer);
  }

.image-with-text__image {
  width: 100%;
  position: relative;
  align-self: stretch;
}

@media (min-width: 40em) {

.image-with-text__image {
    width: 50%
}

    .image-with-text--w-larger .image-with-text__image {
      width: 60%;
    }
  }

.image-with-text__image video {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }

.image-with-text__image--present video {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
  }

.image-with-text__subheading a {
    color: var(--color-text-link);
    transition: opacity 0.25s;
  }

.image-with-text__subheading a:hover {
      opacity: 0.5;
    }

.contrast .image-with-text__subheading a {
      color: var(--color-text-link-contrast);
    }

.image-with-text__heading + .image-with-text__subheading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 40em) {

.image-with-text__heading + .image-with-text__subheading {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.image-with-text__button {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.image-with-text__button {
    margin-top: calc(4px * 8);
    margin-top: calc(var(--spacing-unit) * 8)
}
  }

@media (min-width: 40em) {

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

@media (min-width: 40em) {

.map--right {
    flex-direction: row-reverse
}
  }

.contrast .map__block + .map__block {
    border-color: var(--color-border-contrast);
  }

.map__image {
  width: 100%;
  align-self: stretch;
}

@media (min-width: 40em) {

.map__image {
    width: 50%
}
  }

.map__content {
  text-align: center;
  width: 100%;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
}

@media (max-width: 40em) {

.map:not(.contrast) .map__content {
      /*
        Optically the extra space between this section
        and the next section should be okay.
      */
      padding: calc(4px * 5) 0;
      padding: var(--spacing-medium) 0
  }
    }

@media (min-width: 40em) {

.map__content {
    width: 50%
}
  }

@media (min-width: 60em) {

.map__content {
    padding: calc(4px * 10);
    padding: var(--spacing-large)
}
  }

.map__heading + .map__subheading {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.map__heading + .map__subheading {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.map__blocks {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.map__blocks {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large)
}
  }

.map__block {
  width: 70%;
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
}

@media (min-width: 40em) {

.map__block {
    width: 50%
}
  }

@media (min-width: 60em) {

.map__block {
    max-width: 300px
}
  }

.map__block + .map__block {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    border-top: 1px solid var(--color-border);
  }

@media (min-width: 40em) {

.map__block + .map__block {
      margin-top: 0;
      padding-top: 0;
      border-top: none;
      border-left: 1px solid var(--color-border)
  }
    }

.map__block-heading + .map__block-subheading {
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 40em) {

.map__block-heading + .map__block-subheading {
    margin-top: calc(4px * 4);
    margin-top: calc(var(--spacing-unit) * 4)
}
  }

.map__button {
  margin-top: calc(4px * 10);
  margin-top: var(--spacing-large);
}

.newsletter__subheading {
  max-width: var(--max-width-subheading);
}

.newsletter__subheading + .newsletter__form {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.newsletter__success {
  opacity: 0.75;
}

.input.newsletter__input {
  padding: 0;
  font-size: 16px;
  font-size: var(--font-size-body-large);
  line-height: 28px;
  line-height: var(--line-height-body-large);
  height: auto;
  border: none;
}

@media (min-width: 40em) {

.input.newsletter__input {
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base)
}
  }

.recommended-products {
  overflow: hidden;
}

.recommended-products__grid {
  margin-top: calc(20px * -1);
  margin-top: calc(var(--space-grid) * -1);
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.recommended-products__grid {
    display: flex;
    flex-wrap: wrap
}
  }

.recommended-products__product {
  width: 100%;
  padding-left: 10px;
  padding-left: var(--space-inline-element);
  padding-right: 10px;
  padding-right: var(--space-inline-element);
  margin-top: 20px;
  margin-top: var(--space-grid);
}

@media (min-width: 40em) {
    .recommended-products__product--2 {
      width: 50%;
    }

    .recommended-products__product--3 {
      width: calc(1 / 3 * 100%);
    }

    .recommended-products__product--4 {
      width: 25%;
    }
  }

@media (min-width: 40em) {

.rich-text {
    padding: calc(calc(4px * 10) * 3) 0;
    padding: calc(var(--spacing-large) * 3) 0
}
  }

.rich-text__content {
  margin: 0 auto;
  max-width: var(--s-max-width);
}

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

.rich-text__content--center .btn {
    margin-left: auto;
    margin-right: auto;
  }

.rich-text__heading + .rich-text__body {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.rich-text__heading + .rich-text__body {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.rich-text__body + .btn,
.rich-text__heading + .btn {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.rich-text__body + .btn,
.rich-text__heading + .btn {
    margin-top: calc(calc(4px * 2) * 4);
    margin-top: calc(var(--spacing-extra-small) * 4)
}
  }

.testimonials {
  overflow: hidden;
}

@media (max-width: 40em) {
    .testimonials--vertical .testimonials__item + .testimonials__item {
      margin-top: calc(4px * 5);
      margin-top: var(--spacing-medium);
    }
  }

.testimonials__items {
  position: relative;
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.testimonials__items {
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(calc(4px * 5) * -2);
    margin-top: calc(var(--spacing-medium) * -2)
}
  }

.testimonials__item {
  width: 100%;
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
}

@media (min-width: 40em) {

.testimonials__item {
    margin-top: calc(4px * 10);
    margin-top: var(--spacing-large)
}

    .testimonials__item--2 {
      width: 50%;
    }

    .testimonials__item--3 {
      width: calc(1 / 3 * 100%);
    }

    .testimonials__item--4 {
      width: 25%;
    }
  }

.testimonials__image {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 40em) {

.testimonials__image {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium)
}
  }

.testimonials__author {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
  font-style: italic;
}

.slideshow .flickity-viewport {
    transition: none !important;
    transition-delay: 0s !important;
  }

.slideshow .flickity-slider {
    transform: none !important;
  }

.slideshow .flickity-page-dots {
    z-index: 3;
    bottom: calc(4px * 5);
    bottom: var(--spacing-medium);
    padding: 0 calc(4px * 3);
    padding: 0 var(--spacing-small);
    padding: 0 14px;
  }

.slideshow .flickity-page-dots .dot {
      background-color: var(--color-text-subheading-contrast);
      width: 8px;
      height: 8px;
      margin: 0 6px;
    }

@media (min-width: 40em) {

.slideshow .flickity-page-dots .dot {
        background-color: var(--color-dot);
        width: 10px;
        height: 10px;
        margin: 0 6px
    }
      }

.slideshow[data-total-slides='1'] .flickity-page-dots {
    display: none;
  }

@media (max-width: 40em) {

.slideshow[data-total-slides='1'].slideshow--3_2 .block-overlay {
        padding-bottom: 20px;
        padding-bottom: var(--space-outer)
    }
      }

@media (max-width: 40em) {

.slideshow--3_2 .flickity-page-dots {
      text-align: left
  }
    }

@media (max-width: 40em) {

.slideshow--3_2
  .block-overlay:not(.block-overlay--no-content)
  .block-overlay__content {
    --color-background-button: var(--color-background-button-contrast);
    --color-background-button-hover: var(
      --color-background-button-hover-contrast
    );
    --color-text-button: var(--color-text-button-contrast)
}
  }

.slideshow__slides {
  width: 100%;
}

.slideshow__slides.is-hidden {
    display: none;
  }

.slideshow__cell {
  width: 100%;
  left: 0 !important;
  opacity: 0;
  transition: opacity 1s ease-in-out;
}

.slideshow__cell.is-selected {
    opacity: 1;
  }

.slideshow__asset {
  position: relative;
  overflow: hidden;
}

.slideshow__asset--3_2 {
    padding-top: calc((2 / 3) * 75%);
  }

.slideshow__asset--full_height {
    padding-top: 100vh;
  }

/* Placeholder image */

.slideshow__asset .placeholder-image {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }

.slideshow__asset .placeholder-image svg {
      width: 100%;
      height: 100%;
    }

.slideshow__video {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  transform: scale(1.3);
  transition-delay: 1s;
}

.is-selected .slideshow__video {
    transform: scale(1);
    transition: transform 1.5s;
    transition-delay: 0s;
  }

.image.slideshow__image-wrapper {
  position: absolute;
  z-index: 0;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0 !important;
  transform: scale(1.3);
  transition-delay: 1s;
}

.is-selected .image.slideshow__image-wrapper {
    transform: scale(1);
    transition: transform 1.5s;
    transition-delay: 0s;
  }

.slideshow__overlay {
  position: relative;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
}

.slideshow--3_2 .slideshow__overlay {
    position: relative;
  }

@media (min-width: 40em) {

.slideshow--3_2 .slideshow__overlay {
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      z-index: 2
  }

      .slideshow--3_2 .slideshow__overlay .block-overlay--v-bottom {
        padding-bottom: calc(4px * 15);
        padding-bottom: calc(var(--spacing-unit) * 15);
      }
    }

.slideshow--full_height .slideshow__overlay .block-overlay--v-bottom {
      padding-bottom: calc(4px * 15);
      padding-bottom: calc(var(--spacing-unit) * 15);
    }

/* Block overlays act a bit different when used in slideshow sections */

@media (max-width: 40em) {

.slideshow--3_2 .block-overlay {
      --color-background: var(--color-background-contrast) !important;
      --color-text-meta: var(--color-text-meta-contrast) !important;
      --color-text-heading: var(--color-text-heading-contrast) !important;
      --color-text-body: var(--color-text-body-contrast) !important;
      --color-text-subheading: var(--color-text-subheading-contrast) !important;

      text-align: left;
      /* Account for pagination dots */
      padding-bottom: calc(calc(4px * 12) + calc(4px * 3));
      padding-bottom: calc(var(--spacing-extra-large) + var(--spacing-small))
  }
    }

@media (max-width: 40em) {

.slideshow--3_2 .block-overlay.block-overlay--no-content {
        display: none
    }
      }

.text-columns-with-images {
  text-align: center;
  overflow: hidden;

  /* Special case to give the section more (double) vertical space on mobile */
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

@media (min-width: 40em) {

.text-columns-with-images {
    padding-bottom: 0
}
  }

.text-columns-with-images .section-header {
    /* We'll enable this as necessary with a more specific selector */
    display: none;
  }

.text-columns-with-images__columns {
  margin-left: calc(10px * -1);
  margin-left: calc(var(--space-inline-element) * -1);
  margin-right: calc(10px * -1);
  margin-right: calc(var(--space-inline-element) * -1);
}

@media (min-width: 40em) {

.text-columns-with-images__columns {
    display: flex;
    flex-wrap: wrap
}
  }

.text-columns-with-images__column {
  padding-left: 10px;
  padding-left: var(--space-inline-element);
  padding-right: 10px;
  padding-right: var(--space-inline-element);
  width: 100%;
}

@media (min-width: 40em) {
    .text-columns-with-images__column--2 {
      width: 50%;
    }

    .text-columns-with-images__column--3 {
      width: calc(1 / 3 * 100%);
    }

    .text-columns-with-images__column--4 {
      width: 25%;
    }
  }

.text-columns-with-images__inner {
  padding: 0px calc(4px * 5);
  padding: 0px var(--spacing-medium);
  display: flex;
  flex-direction: column;
  align-items: center;
}

@media (min-width: 40em) {

.text-columns-with-images__inner {
    padding: calc(4px * 10) calc(4px * 5);
    padding: var(--spacing-large) var(--spacing-medium)
}
  }

.text-columns-with-images__image-wrap {
  width: 100%;
  max-width: var(--s-image-max-width);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.text-columns-with-images__image-wrap.is-circle > div {
    position: relative;
    padding-top: 100%;
    border-radius: 100%;
    background-color: var(--color-background-meta);
    overflow: hidden;
  }

.text-columns-with-images__image-wrap.is-circle > div .image {
      position: absolute;
      top: 0;
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%;
      height: 100%;
    }

.text-columns-with-images__image-wrap.is-circle > div svg {
      display: block;
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 100%;
    }

.text-columns-with-images__heading {
  margin-bottom: calc(4px * 2);
  margin-bottom: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.text-columns-with-images__heading {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small)
}
  }

.text-columns-with-images__text + .link {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.text-columns-with-images__text + .link {
    margin-top: calc(4px * 6);
    margin-top: calc(var(--spacing-unit) * 6)
}
  }

.video {
  position: relative;
}

@media (min-width: 40em) {

.video {
    overflow: hidden
}
  }

.video__wrapper {
  position: relative;
}

.video__container {
  position: relative;
  width: 100%;
  padding-top: 55%;
  overflow: hidden;
}

.video__container iframe {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
  }

.image.video__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s;
}

.image.video__image.visible {
    opacity: 1;
  }

.video__overlay {
  background-color: var(--color-overlay-transparent);
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0.3s;
  pointer-events: none;
  padding: calc(4px * 10);
  padding: var(--spacing-large);
  color: var(--color-text);
}

.video__overlay.visible {
    opacity: 1;
    pointer-events: all;
  }

.video__overlay-content {
  display: flex;
  align-items: center;
  justify-content: space-around;
  height: 100%;
}

@media (min-width: 40em) {

.video__overlay-content {
    height: auto;
    align-items: flex-start;
    justify-content: flex-start;
    border-bottom: 1px solid var(--color-border);
    padding-bottom: calc(4px * 10);
    padding-bottom: var(--spacing-large)
}
  }

.video__overlay-content > div {
    display: none;
  }

@media (min-width: 40em) {

.video__overlay-content > div {
      display: block;
      max-width: 500px
  }
    }

.video__play {
  width: 50px;
  height: 50px;
  border-radius: 100%;
  background-color: var(--color-text);
  color: var(--color-overlay);
  display: flex;
  align-items: center;
  justify-content: space-around;
  flex-shrink: 0;
  transition: opacity 0.25s, transform 0.25s;
}

@media (min-width: 40em) {

.video__play {
    margin-right: calc(4px * 10);
    margin-right: var(--spacing-large);
    width: 60px;
    height: 60px
}
  }

.video__play:hover,
  .video__play:focus {
    opacity: 0.6;
  }

.video__play:active {
    transform: scale(0.95);
  }

.video__overlay-subheading {
  opacity: 0.7;
}

.video__overlay-heading + .video__overlay-subheading {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

.video__mobile-text {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  padding-bottom: calc(calc(4px * 2) * 4);
  padding-bottom: calc(var(--spacing-extra-small) * 4);
}

@media (min-width: 40em) {

.video__mobile-text {
    display: none
}
  }

.video__mobile-heading + .video__mobile-subheading {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

/* Components */

.block-overlay {
  width: 100%;
  height: 100%;
  padding: 20px;
  padding: var(--space-outer);
  color: var(--color-heading);
  display: flex;
  background-color: var(--color-background);
}

.block-overlay--v-top {
  align-items: flex-start;
}

.block-overlay--v-center {
  align-items: center;
}

.block-overlay--v-bottom {
  align-items: flex-end;
}

.block-overlay--v-split {
  align-items: stretch;
}

.block-overlay--v-split .block-overlay__content {
    display: flex;
    flex-direction: column;
  }

.block-overlay--v-split .block-overlay__button {
    margin-top: auto !important;
  }

.block-overlay--h-left {
  justify-content: flex-start;
  text-align: left;
}

.block-overlay--h-left.block-overlay--v-split .block-overlay__content {
      align-items: flex-start;
    }

.block-overlay--h-center {
  justify-content: space-around;
  text-align: center;
}

.block-overlay--h-center .block-overlay__meta,
  .block-overlay--h-center .block-overlay__heading,
  .block-overlay--h-center .block-overlay__subheading,
  .block-overlay--h-center .btn {
    margin-left: auto;
    margin-right: auto;
  }

.block-overlay--h-right {
  justify-content: flex-end;
  text-align: right;
}

.block-overlay--h-right .block-overlay__meta,
  .block-overlay--h-right .block-overlay__heading,
  .block-overlay--h-right .block-overlay__subheading,
  .block-overlay--h-right .btn {
    margin-left: auto;
  }

.block-overlay__content {
  position: relative;
  z-index: 2;
  width: 100%;
}

@media (max-width: 40em) {

.block-overlay__content {
    /* Make sure transparent offsets don't get applied */
    padding-top: 0 !important
}
  }

@media (min-width: 40em) {

.block-overlay__content {
    max-width: var(--max-width-content)
}
  }

.block-overlay__meta {
  color: var(--color-text-meta);
}

.block-overlay__heading {
  color: var(--color-text-heading);
}

.block-overlay__subheading {
  color: var(--color-text-subheading);
}

.block-overlay__meta + .block-overlay__heading {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.block-overlay__meta + .block-overlay__heading {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small)
}
  }

.block-overlay__heading + .block-overlay__subheading {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.block-overlay__heading + .block-overlay__subheading {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium)
}
  }

.block-overlay__heading + .block-overlay__button,
.block-overlay__subheading + .block-overlay__button {
  margin-top: calc(4px * 5);
  margin-top: var(--spacing-medium);
}

@media (min-width: 40em) {

.block-overlay__heading + .block-overlay__button,
.block-overlay__subheading + .block-overlay__button {
    margin-top: calc(calc(4px * 2) * 4);
    margin-top: calc(var(--spacing-extra-small) * 4)
}
  }

.breadcrumbs {
  display: flex;
  opacity: 0.5;
}

.breadcrumbs__item + .breadcrumbs__item {
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
}

.breadcrumbs__item + .breadcrumbs__item:before {
    content: '/';
    margin-right: calc(4px * 3);
    margin-right: var(--spacing-small);
  }

.collection-item {
  --circle-size: 40px;
  --circle-border-width: 4px;

  width: 100%;
}

.collection-item__image {
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.collection-item__footer {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

@media (min-width: 40em) {

.collection-item__footer {
    flex-wrap: nowrap
}
  }

.collection-item__header {
  width: 100%;
  margin-bottom: calc(4px * 2);
  margin-bottom: var(--spacing-extra-small);
}

@media (min-width: 40em) {

.collection-item__header {
    width: auto;
    flex-shrink: 1;
    margin-bottom: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden
}
  }

.collection-item__preview {
  display: flex;
}

@media (min-width: 40em) {

.collection-item__preview {
    padding-left: calc(4px * 3);
    padding-left: var(--spacing-small)
}
      .collection-item__preview:hover .circle {
        opacity: 0.5;
      }

        .collection-item__preview:hover .circle:hover {
          opacity: 1;
        }

        .collection-item__preview:hover .circle:nth-last-of-type(4) {
          transform: translateX(-150%);
        }
        .collection-item__preview:hover .circle:nth-last-of-type(3) {
          transform: translateX(-100%);
        }
        .collection-item__preview:hover .circle:nth-last-of-type(2) {
          transform: translateX(-50%);
        }
  }

.collection-item__preview .circle {
    width: var(--circle-size);
    height: var(--circle-size);
    border-radius: 100%;
    background-color: var(--color-background-meta);
    color: var(--color-foreground-meta);
    border: var(--circle-border-width) solid var(--color-background);
    overflow: hidden;
    position: relative;
    margin-left: calc(var(--circle-border-width) * -1);
    transition: transform 0.25s, opacity 0.25s;
    display: flex;
    align-items: center;
    justify-content: space-around;
  }

@media (min-width: 40em) {

.collection-item__preview .circle {
      margin-right: calc(var(--circle-border-width) * -1)
  }
    }

.collection-item__preview .circle:focus {
      transform: scale(0.8);
    }

.collection-item__preview .circle .image {
      position: absolute;
      top: 0;
      left: 0;
      bottom: 0;
      right: 0;
      -o-object-fit: cover;
         object-fit: cover;
      width: 100%;
      height: 100%;
    }

.collection-item__preview .circle + .circle {
      margin-left: calc((var(--circle-size) / 2) * -1);
      z-index: 10;
    }

.collection-item__preview .circle--count a {
    display: flex;
    align-items: center;
    justify-content: space-around;
    width: 100%;
    height: 100%;
    white-space: nowrap;
  }

.collection-modal {
  display: flex;
  flex-direction: column;
  background-color: var(--color-background);
  width: 100%;
  height: 420px;
  max-height: 60vh;
  position: fixed;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 500;
  opacity: 0;
  transform: translateY(420px);
  transition: transform 0.3s ease, opacity 0.3s ease;
  z-index: 600;
}

.collection-modal.active {
    opacity: 1;
    transform: translateY(0px);
    transition: transform 0.3s ease, opacity 0.3s ease;
  }

.collection-modal__heading {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-shrink: 0;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  box-shadow: 0px 10px 10px white;
  z-index: 10;
}

.collection-modal__content {
  height: 100%;
  margin: 0;
  overflow-y: scroll;
  z-index: 5;
}

/* Increase size of filter items on mobile */

.collection-modal__content .filter-item {
    margin-bottom: 0;
  }

.collection-modal__content .filter-item__content {
    height: 48px;
    padding: 0 calc(4px * 5);
    padding: 0 var(--spacing-medium);
  }

.collection-modal__content ul {
    margin: 0;
    padding: 0;
  }

.collection-modal__content li {
    margin-bottom: calc(4px * 3);
    margin-bottom: var(--spacing-small);
  }

.collection-modal__footer {
  background-color: var(--color-bg);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  box-shadow: 0 -10px 10px white;
  z-index: 10;
}

.collection-modal__footer > * {
    margin: 0 calc(calc(4px * 3) / 2);
    margin: 0 calc(var(--spacing-small) / 2);
  }

.collection-modal__wash {
  background-color: black;
  opacity: 0;
  position: fixed;
  z-index: 500;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
  cursor: pointer;
}

.collection-modal__wash.active {
    pointer-events: all;
    opacity: 0.6;
    transition: opacity 0.3s ease;
  }

.collection-sidebar {
  --height-item: 32px;
}

.collection-sidebar__group {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.collection-sidebar__group ul {
    margin: 0 0 0 calc(calc(4px * 3) * -1);
    margin: 0 0 0 calc(var(--spacing-small) * -1);
    padding: 0;
  }

.collection-sidebar__group + .collection-sidebar__group {
    border-top: 1px solid var(--color-border);
    padding-top: 10px;
  }

.collection-sidebar__heading {
  height: var(--height-item);
  padding: 0 4px 0 calc(4px * 3);
  padding: 0 var(--spacing-unit) 0 var(--spacing-small);
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  border-radius: 2px;
  transition: background-color 0.3s;
  margin: 0 0 0 calc(calc(4px * 3) * -1);
  margin: 0 0 0 calc(var(--spacing-small) * -1);
}

.collection-sidebar__heading:hover {
    background-color: var(--color-background-meta);
    transition: background-color 0.3s;
  }

.collection-sidebar__heading > * {
    pointer-events: none;
  }

.collection-sidebar__heading .icon {
    opacity: 0.5;
    transition: transform 0.3s;
  }

.collection-sidebar__heading.closed .icon {
      transform: rotate(-90deg);
      transition: transform 0.3s;
    }

.collection-sidebar__heading span {
    font-weight: var(--font-body-bold-weight);
  }

.collection-top-bar {
  width: 100%;
  overflow-x: scroll;
  padding: 6px 0;
}

@media (min-width: 40em) {

.collection-top-bar {
    width: auto;
    margin-right: calc(20px * -1);
    margin-right: calc(var(--space-outer) * -1);
    padding-bottom: calc(4px * 5);
    padding-bottom: var(--spacing-medium);
    padding-top: 0
}
  }

.collection-top-bar::-webkit-scrollbar {
    display: none;
  }

.collection-top-bar__filters {
  display: flex;
  overflow-x: scroll;
  margin-left: calc(20px * -1);
  margin-left: calc(var(--space-outer) * -1);
  margin-right: calc(20px * -1);
  margin-right: calc(var(--space-outer) * -1);
  padding-left: 20px;
  padding-left: var(--space-outer);
  padding-bottom: calc(calc(4px * 3) / 2);
  padding-bottom: calc(var(--spacing-small) / 2);
}

@media (min-width: 40em) {

.collection-top-bar__filters {
    display: none
}
  }

.collection-top-bar__filters::-webkit-scrollbar {
    display: none;
  }

.collection-top-bar__filters > a {
    margin-right: calc(4px * 2);
    margin-right: var(--spacing-extra-small);
  }

.collection-top-bar__filters > a:last-of-type {
      margin-right: 0;
    }

.collection-top-bar__filters .space {
    width: 20px;
    width: var(--space-outer);
    height: 24px;
    flex-shrink: 0;
  }

.collection-top-bar__active-elements {
  display: flex;
  padding-left: 20px;
  padding-left: var(--space-outer);
}

@media (min-width: 40em) {

.collection-top-bar__active-elements {
    padding-left: 0
}
  }

.collection-top-bar__active-elements > a {
    margin-right: calc(4px * 2);
    margin-right: var(--spacing-extra-small);
  }

.collection-top-bar__active-elements > a:last-of-type {
      margin-right: 0;
    }

.collection-top-bar__active-elements .space {
    width: 20px;
    width: var(--space-outer);
    height: 24px;
    flex-shrink: 0;
  }

.comments {
  width: 100%;
  margin: 0;
  padding: 0;
}

.comments__heading {
  border-bottom: 1px solid var(--color-border);
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  padding-bottom: calc(4px * 5);
  padding-bottom: var(--spacing-medium);
}

.comment {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  list-style: none;
}

.comment__content {
  background-color: var(--color-text-body-transparent);
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  box-shadow: inset 1px 0px 0px var(--color-text-body-transparent-02);
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

.comments__leave-heading {
  border-top: 1px solid var(--color-border);
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
}

.comments__mod-message {
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
}

.comments__submit {
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
}

.comments__mod-message + .comments__submit {
  margin-top: 0;
}

.disclosure {
  position: relative;
}

.disclosure__toggle {
  white-space: nowrap;
  display: flex;
  align-items: center;
  height: 32px;
  border: 1px solid var(--color-border-footer);
  border-radius: 20px;

  font-size: 12px;

  font-size: var(--font-size-body-small);
  line-height: 20px;
  line-height: var(--line-height-body-small);
  font-weight: var(--font-body-bold-weight);
  color: inherit;

  padding-left: calc(4px * 4);

  padding-left: calc(var(--spacing-unit) * 4);
  padding-right: calc(4px * 2);
  padding-right: var(--spacing-extra-small);

  transition: background-color 0.25s;
}

.disclosure__toggle .icon {
    width: 18px;
    height: 18px;
  }

.disclosure__toggle:hover,
  .disclosure__toggle:focus {
    background-color: var(--color-border-footer);
    border-color: var(--color-border-footer);
  }

.disclosure__flag {
  width: 20px;
  height: 20px;
  border-radius: 100%;
  overflow: hidden;
  margin-left: -10px;
  margin-right: calc(4px * 2);
  margin-right: var(--spacing-extra-small);
}

.disclosure__flag .currency-flag {
    width: 20px;
    height: 20px;
  }

.disclosure-list {
  background-color: var(--color-background);
  bottom: 100%;
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  position: absolute;
  display: none;
  min-width: 100px;
  max-height: 300px;
  overflow-y: auto;
  border-radius: 2px;
  box-shadow: 0px 2px 4px rgba(26, 26, 26, 0.1),
    0px 1px 2px rgba(0, 0, 0, 0.12);
  box-shadow: var(--box-shadow);
}

.disclosure-list--visible {
  display: block;
}

.disclosure-list__item {
  border-bottom: 1px solid transparent;
  white-space: nowrap;
  padding: 0;
  text-align: left;
  list-style: none;
  font-size: 14px;
  font-size: var(--font-size-body-base);
}

.disclosure-list__item + .disclosure-list__item {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

.disclosure-list__option {
  color: var(--color-text-body);
}

.disclosure-list__option:focus {
    color: var(--color-text-link);
  }

.disclosure-list__option:hover {
    color: var(--color-text-link);
  }

.disclosure-list__item--current .disclosure-list__option {
  color: var(--color-text-heading);
  font-weight: var(--font-body-bold-weight);
}

.disclosure-list__item--current .disclosure-list__option:focus {
    color: var(--color-text-heading);
  }

.drawer-menu {
  --menu-width: 355px;
  --menu-max-width: calc(100vw - 50px);
  --header-height: 84px;
  --item-height: 48px;
  --animation-duration: 0.35s;
  --animation-timing: ease-in-out;

  display: none;
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1000;
}

/* Quick search overrides */

.drawer-menu .quick-search__header,
  .drawer-menu .quick-search__result-subheading {
    opacity: 1;
    color: var(--color-text-meta-drawer);
  }

.drawer-menu .quick-search__view-all {
    border-color: var(--color-border-drawer);
  }

.drawer-menu a.active {
    opacity: 0.5;
  }

.drawer-menu.active {
  display: block;
}

.drawer-menu.visible .drawer-menu__overlay {
    opacity: 0.5;
  }

.drawer-menu.visible .drawer-menu__panel {
    transform: translateX(0);
  }

.drawer-menu__overlay {
  background-color: var(--color-overlay);
  cursor: pointer;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  transition: opacity var(--animation-duration) var(--animation-timing);
}

.drawer-menu__panel {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 100;
  color: var(--color-text-drawer);
  background-color: var(--color-background-drawer);
  width: var(--menu-width);
  max-width: var(--menu-max-width);
  transform: translateX(-100%);
  transition: transform var(--animation-duration) var(--animation-timing);
  display: flex;
  flex-direction: column;
}

.drawer-menu__header {
  display: flex;
  align-items: center;
  flex-shrink: 0;
  padding-top: calc(4px * 5);
  padding-top: var(--spacing-medium);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-bottom: calc(4px * 4);
  padding-bottom: calc(var(--spacing-unit) * 4);
  padding-left: calc(4px * 5);
  padding-left: var(--spacing-medium);
  height: var(--header-height);
}

.drawer-menu__actions {
  z-index: 100;
  position: absolute;
  right: calc(4px * 10);
  right: var(--spacing-large);
  color: var(--color-text-input-drawer);
  display: flex;
  align-items: center;
  pointer-events: none;
}

.drawer-menu__actions button {
    opacity: 0;
    transition: opacity 0.25s;
    pointer-events: none;
    visibility: hidden;
  }

.drawer-menu__actions button:hover,
    .drawer-menu__actions button:focus {
      opacity: 0.5;
    }

.drawer-menu__actions button.visible {
      opacity: 1;
      pointer-events: all;
      visibility: visible;
    }

.drawer-menu__actions button.visible:hover,
      .drawer-menu__actions button.visible:focus {
        opacity: 0.5;
      }

.drawer-menu__clear {
  margin-right: calc(4px * 2);
  margin-right: var(--spacing-extra-small);
}

.drawer-menu__bottom {
  width: 100%;
  height: calc(100% - var(--header-height));
  overflow: hidden;
}

.drawer-menu__all-links {
  position: relative;
  display: flex;
  flex-direction: column;
  transition: transform 0.5s;
  height: 100%;
}

.drawer-menu__all-links[data-depth='0'] {
    transform: translateX(0);
  }

.drawer-menu__all-links[data-depth='1'] {
    transform: translateX(-100%);
  }

.drawer-menu__all-links ul:not(.drawer-menu__footer) {
    margin: 0;
    padding: 0;
  }

.drawer-menu__contents {
  flex-shrink: 1;
  overflow-y: scroll;
}

/* This one gets dynamic sizing */

.drawer-menu__main {
  transition: height 0.35s;
  overflow: hidden;
}

/* This one gets shifted over */

.drawer-menu__primary-links {
  position: relative;
  transition: transform 0.5s;
}

.drawer-menu__primary-links[data-depth='0'] {
    transform: translateX(0);
  }

.drawer-menu__primary-links[data-depth='1'] {
    transform: translateX(-100%);
  }

.drawer-menu__primary-links[data-depth='2'] {
    transform: translateX(-200%);
  }

.drawer-menu__primary-links[data-depth='3'] {
    transform: translateX(-300%);
  }

.drawer-menu__primary-links[data-depth='4'] {
    transform: translateX(-400%);
  }

.drawer-menu__list {
  width: var(--menu-width);
  max-width: var(--menu-max-width);
}

.drawer-menu__list--sub {
  position: absolute;
  top: 0;
  left: 100%;

  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transition: visibility 1s, opacity 0.35s;
}

.drawer-menu__list--sub.visible {
    opacity: 1;
    transition: visibility 0s, opacity 0.35s;
    pointer-events: all;
    visibility: visible;
  }

.drawer-menu__item {
  list-style: none;
  margin: 0 calc(4px * 2);
  margin: 0 var(--spacing-extra-small);
  padding: 0;
}

.drawer-menu__item span {
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }

.drawer-menu__item .icon {
    transform: rotate(-90deg);
    flex-shrink: 0;
  }

.drawer-menu__item.drawer-menu__item--heading {
    padding-bottom: calc(4px * 4);
    padding-bottom: calc(var(--spacing-unit) * 4);
  }

.drawer-menu__item.drawer-menu__item--heading:after {
      content: '';
      height: 1px;
      background-color: var(--color-border-drawer);
      position: absolute;
      left: calc(4px * 5);
      left: var(--spacing-medium);
      right: calc(4px * 5);
      right: var(--spacing-medium);
      margin-top: calc(4px * 2);
      margin-top: var(--spacing-extra-small);
    }

.drawer-menu__item.drawer-menu__item--heading .icon {
      transform: rotate(90deg);
    }

.drawer-menu__link {
  min-width: 100%;
  width: 100%;
  height: var(--item-height);
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 calc(4px * 3);
  padding: 0 var(--spacing-small);
  font-family: inherit;
  font-size: inherit;
  border-radius: 2px;

  background-color: transparent;
  color: inherit;
  border: none;
  outline: none;
}

.drawer-menu__link span {
    text-overflow: ellipsis;
    overflow: hidden;
  }

.drawer-menu__link:hover {
    opacity: 0.75;
  }

.drawer-menu__link--cb {
  justify-content: flex-start;
}

.drawer-menu__footer {
  flex-shrink: 0;
  padding-top: calc(4px * 2);
  padding-top: var(--spacing-extra-small);
  padding-bottom: calc(4px * 2);
  padding-bottom: var(--spacing-extra-small);
  margin-top: 0;
  padding-left: 0;
}

.drawer-menu__footer:before {
    content: '';
    height: 1px;
    background-color: var(--color-border-drawer);
    position: absolute;
    left: calc(4px * 5);
    left: var(--spacing-medium);
    right: calc(4px * 5);
    right: var(--spacing-medium);
    margin-top: calc(calc(4px * 2) * -1);
    margin-top: calc(var(--spacing-extra-small) * -1);
  }

.drawer-menu__search-input {
  width: 100%;
  background-color: var(--color-background-input-drawer);
  border-color: var(--color-background-input-drawer);
  color: var(--color-text-input-drawer);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  height: var(--item-height);
  border-radius: var(--item-height);
}

.drawer-menu__search-input::-moz-placeholder {
    color: inherit;
    opacity: 0.5;
  }

.drawer-menu__search-input:-ms-input-placeholder {
    color: inherit;
    opacity: 0.5;
  }

.drawer-menu__search-input::placeholder {
    color: inherit;
    opacity: 0.5;
  }

.drawer-menu__radio {
  width: calc(4px * 4);
  width: calc(var(--spacing-unit) * 4);
  height: calc(4px * 4);
  height: calc(var(--spacing-unit) * 4);
  margin-right: calc(4px * 4);
  margin-right: calc(var(--spacing-unit) * 4);
  background-color: var(--color-background-input-drawer);
  border-radius: 100%;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.drawer-menu__radio > div {
    width: calc(4px * 2);
    width: var(--spacing-extra-small);
    height: calc(4px * 2);
    height: var(--spacing-extra-small);
    background-color: var(--color-text-input-drawer);
    border-radius: 100%;
  }

.drawer-menu__search-results {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  top: var(--header-height);
  z-index: 100;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s;
  background-color: var(--color-background-drawer);
  padding: calc(4px * 3);
  padding: var(--spacing-small);
  padding-top: 0;
  overflow-y: scroll;
}

.drawer-menu__search-results.visible {
    opacity: 1;
    pointer-events: all;
  }

.filter-item {
  list-style: none;
  margin: 0;
  padding: 0;
}

.filter-item:active .filter-input__input {
    transform: scale(0.9);
    transition: transform 0.2s;
  }

.filter-item.active .filter-input__input {
    transition: transform 0.2s, background-color 0.3s;
    background-color: var(--color-background-button);
    border: 1px solid var(--color-background-button);
  }

.filter-item.active .filter-input__input .icon,
    .filter-item.active .filter-input__input .indicator {
      transition: opacity 0.3s;
      opacity: 1;
    }

.filter-item__content {
  display: flex;
  align-items: center;
  height: var(--height-item);
  padding: 0 calc(4px * 3);
  padding: 0 var(--spacing-small);
  border-radius: 2px;
  transition: background-color 0.3s;
}

.filter-item__content:hover {
    background-color: var(--color-background-meta);
    transition: background-color 0.3s;
  }

.filter-item__content > * {
    pointer-events: none;
  }

.filter-input__input {
  width: 16px;
  height: 16px;
  border: 1px solid var(--color-border-button-secondary);
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: transform 0.2s;
}

.filter-item__checkbox {
  border-radius: 2px;
  color: var(--color-text-button);
}

.filter-item__checkbox .icon {
    width: 12px;
    height: 12px;
    opacity: 0;
  }

.filter-item__radio {
  border-radius: 100%;
}

.filter-item__radio .indicator {
    width: 8px;
    height: 8px;
    background-color: var(--color-text-button);
    border-radius: 100%;
    opacity: 0;
  }

.filter-item__label {
  display: block;
  padding-left: calc(4px * 3);
  padding-left: var(--spacing-small);
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
}

.flexible-image {
  position: relative;
  align-self: stretch;
  height: 100%;
  padding-top: var(--ar);
  overflow: hidden;
}

.flexible-image__img {
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.flexible-image__img.lazyload,
  .flexible-image__img.lazyloading {
    opacity: 0;
    transform: scale(1.1);
  }

.flexible-image__img.lazyloaded {
    opacity: 1;
    transform: scale(1);
    transition: opacity 0.5s, transform 2s ease-out;
  }

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

.icon-button {
  --color: var(--color-text-body);

  width: 44px;
  height: 44px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: transform 0.25s;
}

.icon-button:hover .icon-button__icon:before {
      opacity: 0.1;
      transform: scale(1);
    }

.icon-button:active {
    transform: scale(0.9);
  }

.icon-button__icon {
  position: relative;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  border-radius: 100%;
  z-index: 2;
}

.icon-button__icon:before {
    content: '';
    background-color: var(--color);
    opacity: 0;
    border-radius: 100%;
    height: 100%;
    width: 100%;
    position: absolute;
    z-index: 2;
    transform: scale(0.8);
    transition: opacity 0.25s, transform 0.25s ease-in-out;
  }

.icon-button__icon .icon {
    width: 24px;
    height: 24px;
    position: relative;
    z-index: 10;
    color: var(--color);
  }

.image {
  position: relative;
  background-color: var(--color-background-meta);
}

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

.image__img {
  display: block;
  position: absolute;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  top: 0;
  width: 100%;
  height: 100%;
}

.image__img.lazyload,
  .image__img.lazyloading {
    opacity: 0;
  }

.image__img.lazyloaded {
    opacity: 1;
    transition: opacity 0.5s;
  }

.lightbox {
  display: flex;
  flex-direction: column;
  justify-content: space-around;
  position: fixed;
  background-color: var(--color-overlay-transparent);
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 1100;
  z-index: var(--z-index-lightbox);

  display: none;
  opacity: 0;
  transition: opacity 0.3s;
}

.lightbox.active {
    display: flex;
  }

.lightbox.visible {
    opacity: 1;
  }

.lightbox .mobile-carousel__pagination {
    left: 0;
    right: 0;
  }

@media (min-width: 40em) {

.lightbox .mobile-carousel__pagination {
      display: flex !important
  }
    }

.lightbox__close {
  position: fixed;
  top: calc(4px * 5);
  top: var(--spacing-medium);
  right: calc(4px * 5);
  right: var(--spacing-medium);
  z-index: 1;
  border: 1px solid transparent;
}

.lightbox__close:focus {
    border-color: var(--color-text-body);
  }

.lightbox__images {
  width: 100%;
  height: 100%;
  overflow-y: scroll;
}

.lightbox__image {
  width: 100%;
}

.loader {
  width: 100%;
  height: 200px;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

@media (min-width: 40em) {

.loader {
    height: 400px
}
  }

.loader__wrap {
  width: 100%;
  max-width: 100px;
  height: 2px;
  overflow: hidden;
}

.loader__bar {
  width: 100%;
  height: 2px;
  border-radius: 2px;
  -webkit-animation: loaderLine 1.4s ease-in-out infinite;
          animation: loaderLine 1.4s ease-in-out infinite;
  background-color: var(--color-text-body);
}

@keyframes loaderLine {
  0% {
    transform: translateX(-150%);
  }

  45% {
    transform: translateX(0);
  }

  55% {
    transform: translateX(0);
  }

  to {
    transform: translateX(150%);
  }
}

.media {
  position: relative;
}

.media img {
    max-width: 100%;
  }

.media[data-media-type='external_video'] {
    padding-top: 57.5%;
    position: relative;
  }

.media[data-media-type='external_video'] iframe {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0;
    }

.media[data-media-type='model'] {
    height: 50vh;
  }

.media video {
    width: 100%;
  }

.media .plyr__poster-enabled:focus {
  position: relative;
}

.media .plyr__poster-enabled:focus:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 1px solid var(--color-text-body);
  }

a.media__image:focus {
  outline: none;
}

a.media__image:focus:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 1px solid var(--color-text-body);
    pointer-events: none;
  }

.mega-nav {
  --width-column: 275px;

  color: var(--color-text-dropdown);
  width: calc(var(--width-column) * 3);
  height: 448px;
  position: absolute;
  z-index: 1050;
  z-index: var(--z-index-mega-nav);

  margin-top: calc(4px * 3);

  margin-top: var(--spacing-small);
  margin-left: calc(calc(4px * 5) * -1);
  margin-left: calc(var(--spacing-medium) * -1);

  display: none;
}

@media (max-width: 40em) {

.mega-nav {
    display: none !important
}
  }

.mega-nav.active {
  display: block;
}

.mega-nav.visible .mega-nav__overlay {
    opacity: 1;
  }

.mega-nav.visible .mega-nav__container {
    opacity: 1;
    transform: translateY(0);
  }

.mega-nav__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-overlay-transparent);
  cursor: pointer;
  opacity: 0;
  transition: opacity 0.25s;
}

.mega-nav__container {
  position: relative;
  width: 100%;
  height: 100%;
  background-color: var(--color-background-dropdown);
  opacity: 0;
  transform: translateY(calc(4px * 2));
  transform: translateY(var(--spacing-extra-small));
  transition: opacity 0.25s, transform 0.25s;
}

.mega-nav__list {
  width: var(--width-column);
  background-color: var(--color-background-dropdown);
  padding: 0 calc(4px * 5);
  padding: 0 var(--spacing-medium);
  position: absolute;
  top: 0;
  bottom: 0;
  height: 100%;
  overflow-x: hidden;
  overflow-y: scroll;

  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none;
}

/* Firefox */

.mega-nav__list::-webkit-scrollbar {
    display: none;
  }

.mega-nav__list[data-depth='1'] {
    left: var(--width-column);
    border-left: 1px solid var(--color-border-dropdown);
    opacity: 0;
    pointer-events: none;
    transition: opacity 0.25s;
  }

.mega-nav__list[data-depth='1'].visible {
      opacity: 1;
      pointer-events: all;
    }

.mega-nav__heading {
  list-style: none;
  font-weight: var(--font-body-bold-weight);
  padding: calc(4px * 5) 0 calc(4px) 0;
  padding: var(--spacing-medium) 0 calc(var(--spacing-unit * 4)) 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.mega-nav__item {
  list-style: none;
  width: 100%;
  overflow-x: hidden;

  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none;
}

/* Firefox */

.mega-nav__item::-webkit-scrollbar {
    display: none;
  }

.mega-nav__item > a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 2px 0;
  }

.mega-nav__item > a:focus {
      outline: none;
      opacity: 0.5;
    }

.mega-nav__item > a span:first-of-type {
      overflow: hidden;
      text-overflow: ellipsis;
      width: 100%;
      padding-right: 10px;
    }

.mega-nav__item .icon {
    width: 20px;
    height: 20px;
    transform: rotate(-90deg);
  }

.mega-nav__image {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: var(--width-column);
  opacity: 0;
  transition: opacity 0.25s;
  pointer-events: none;
}

.mega-nav__image.visible {
    opacity: 1;
    pointer-events: all;
  }

.mega-nav__image .image {
    height: 100%;
    width: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.25s;
    pointer-events: none;
  }

.mega-nav__image .image.active {
      opacity: 1;
      pointer-events: all;
    }

.mobile-carousel:after {
    content: 'flickity';
    display: none;
  }

@media (min-width: 40em) {
    .mobile-carousel:after {
      content: '';
    }
  }

.mobile-carousel .flickity-viewport {
    transition: height 0.25s;
    overflow: visible;
  }

.mobile-carousel__pagination {
  position: absolute;
  top: 0;
  right: calc(calc(4px * 3) * -1);
  right: calc(var(--spacing-small) * -1);
  bottom: 0;
  left: calc(calc(4px * 3) * -1);
  left: calc(var(--spacing-small) * -1);
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  pointer-events: none;
}

@media (min-width: 40em) {

.mobile-carousel__pagination {
    display: none
}
  }

.mobile-carousel__pagination-arrow {
  opacity: 0;
  transition: transform 0.25s, opacity 0.25s;
  transition-delay: 0.1s;
}

.mobile-carousel__pagination-arrow.visible {
    pointer-events: all;
    transition: transform 0.25s, opacity 0.25s;
    transition-delay: 0.1s;
    opacity: 1;
  }

.mobile-carousel__pagination-arrow--prev {
  transform: translateX(-100%);
}

.mobile-carousel__pagination-arrow--prev.visible {
    transform: translateX(0);
  }

.mobile-carousel__pagination-arrow--next {
  transform: translateX(100%);
}

.mobile-carousel__pagination-arrow--next.visible {
    transform: translateX(0);
  }

model-viewer {
  width: 100%;
  height: 50vh;
}

.shopify-model-viewer-ui {
  height: 100%;
  transition: all 0.1s ease-in;
  opacity: 0;
  visibility: hidden;
}

.model-active .shopify-model-viewer-ui {
    opacity: 1;
    visibility: visible;
  }

.shopify-model-viewer-ui__controls-area {
  position: absolute;
  width: 40px;
  bottom: 10px;
  right: 10px;
}

@media (min-width: 40em) {

.shopify-model-viewer-ui__controls-area {
    width: 44px;
    bottom: calc(4px * 5);
    bottom: var(--spacing-medium);
    right: calc(4px * 5);
    right: var(--spacing-medium)
}
  }

@media (max-width: 40em) {

.shopify-model-viewer-ui__controls-area {
    display: flex;
    justify-content: flex-end;
    width: 100%
}

    .shopify-model-viewer-ui__controls-area button {
      margin-left: calc(4px * 3);
      margin-left: var(--spacing-small);
    }
  }

.shopify-model-viewer-ui__controls-area .shopify-model-viewer-ui__button {
  border: 1px solid transparent;
}

.shopify-model-viewer-ui__controls-area .shopify-model-viewer-ui__button:focus {
    border-color: var(--color-text-body);
  }

.shopify-model-viewer-ui__button {
  display: inline-block;
  margin: 0;
  text-align: center;
  white-space: no-wrap;
  cursor: pointer;
  width: 40px;
  height: 40px;
  padding: 0;
  box-sizing: content-box;
  background: var(--color-background);
  border: 0px;
  color: var(--color-text-body);
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
  box-shadow: 0px 2px 4px rgba(26, 26, 26, 0.1),
    0px 1px 2px rgba(0, 0, 0, 0.12);
  box-shadow: var(--box-shadow);
}

.shopify-model-viewer-ui__button svg {
    display: block;
  }

@media (min-width: 40em) {

.shopify-model-viewer-ui__button {
    width: 44px;
    height: 44px
}

    .shopify-model-viewer-ui__button svg {
      width: 44px;
      height: 44px;
    }
  }

.shopify-model-viewer-ui__button:hover svg, .shopify-model-viewer-ui__button:focus svg {
      opacity: 0.5;
      transition: opacity 0.25s;
    }

.shopify-model-viewer-ui__poster-control-icon,
.shopify-model-viewer-ui__control-icon {
  width: 40px;
  height: 40px;
}

@media (min-width: 40em) {

.shopify-model-viewer-ui__poster-control-icon,
.shopify-model-viewer-ui__control-icon {
    width: 40px;
    height: 40px
}
  }

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

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

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

.shopify-model-viewer-ui__button--poster {
  position: absolute;
  width: 40px;
  top: 0px;
  right: 10px;
}

@media (min-width: 40em) {

.shopify-model-viewer-ui__button--poster {
    width: 44px;
    top: 20px;
    right: 20px
}
  }

.shopify-model-viewer-ui__sr-only {
  visibility: hidden;
  position: absolute;
}

.shopify-model-viewer-ui--fullscreen model-viewer {
    height: 100vh;
  }

.model-poster {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  display: block;
  width: 100%;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
  transition: all 0.1s ease-in;
}

.model-poster.focus-visible:after {
      content: '';
      position: absolute;
      top: 0;
      right: 0;
      bottom: 0;
      left: 0;
      border: 1px solid var(--color-text-body);
    }

.model-active .model-poster {
    opacity: 0;
    visibility: hidden;
  }

.model-poster .media-badge {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: space-around;
  }

.model-poster .media-badge .icon {
      width: 44px;
      height: 44px;
    }

.model-poster:focus {
    outline: auto;
  }

.model-poster:focus svg path {
      opacity: 1;
    }

.model-poster svg {
    box-shadow: 0px 2px 4px rgba(26, 26, 26, 0.1),
    0px 1px 2px rgba(0, 0, 0, 0.12);
    box-shadow: var(--box-shadow);
  }

.model-poster svg .bg {
      stroke: var(--color-background);
      fill: var(--color-background);
    }

.model-poster svg path {
      opacity: 0.6;
      transition: opacity 0.25s;
    }

.model-poster svg:hover path {
        opacity: 1;
        transition: opacity 0.25s;
      }

.shopify-model-viewer-ui__button--poster {
  display: none !important;
}

html:not(.no-js) .navigation__submenu {
    --width: 275px;

    position: absolute;
    width: var(--width);
    background-color: var(--color-background-dropdown);
    color: var(--color-text-dropdown);
    margin-left: calc(calc(4px * 5) * -1);
    margin-left: calc(var(--spacing-medium) * -1);
    padding: calc(4px * 4) calc(4px * 5);
    padding: calc(var(--spacing-unit) * 4) var(--spacing-medium);

    display: none;
  }

html:not(.no-js) .navigation__submenu.active {
      display: block;
    }

html:not(.no-js) .navigation__submenu[data-depth='1'] {
      margin-top: calc(4px * 2);
      margin-top: var(--spacing-extra-small);
    }

html:not(.no-js) .navigation__submenu[data-depth='2'] {
      top: 0;
      left: var(--width);
      margin-top: calc(4px * -4);
      margin-top: calc(var(--spacing-unit) * -4);
    }

html:not(.no-js) .navigation__submenu[data-depth='3'] {
      top: 0;
      left: calc(var(--width) * 2);
      margin-top: calc(4px * -4);
      margin-top: calc(var(--spacing-unit) * -4);
    }

html:not(.no-js) .navigation__submenu-item {
    position: relative;
    list-style: none;
    margin: 0;
    padding: 0;
  }

html:not(.no-js) .navigation__submenu-item > a {
      display: block;
      overflow: hidden;
      text-overflow: ellipsis;
    }

html:not(.no-js) .navigation__submenu-item + .navigation__submenu-item {
      margin-top: 4px;
      margin-top: var(--spacing-unit);
    }

.no-js .header__links ul {
      display: inline-block;
      margin: 0 0 0 calc(4px * 5);
      margin: 0 0 0 var(--spacing-medium);
      padding: 0;
    }

.no-js .header__links li {
      list-style: none;
      display: inline-block;
    }

.no-js .header__links li + li {
        margin-left: calc(4px * 5);
        margin-left: var(--spacing-medium);
      }

.pagination {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 52px;
  border: 1px solid var(--color-border);
  padding-left: 4px;
  padding-left: var(--spacing-unit);
  padding-right: calc(4px * 5);
  padding-right: var(--spacing-medium);
  padding-left: 15px;
}
      
      .pagination { 
      position: relative;
      }

.pagination__arrows {
  display: flex;
  color: #c93428 !important;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 1;
  margin-top: 3px;
}
      
.collection__pagination ul.pagination__list.fs-body-base { 
  padding: 0;
}
      
.collection__pagination ul.pagination__list.fs-body-base { 
  display: none;
}
   
      
      
      .collection__pagination ul.pagination__list.fs-body-base li:first-child { 
      margin-left: 0;
      }  

.pagination__arrows .icon-button__icon .icon { 
	color: #c93428 !important;
}
      
      .pagination ul { margin-left: 5px; } 
      
      .pagination ul.pagination__list, .pagination ul.pagination__list li:first-child { margin-left: 0px; padding-left: 0px;  } 
      
      
.cart__footer-actions a.btn {  border: 1px solid #999; }
      
      
      
.pagination__touch.disabled {
    cursor: default;
  color: #ccc;
    opacity: 0.5;
  }
      
      
.pagination__touch.disabled .icon-button__icon .icon { 
	color: #999 !important;
}
      

.pagination__touch.disabled > * {
      pointer-events: none;
    }

.pagination__item,
.pagination__ellip {
  display: inline-block;
  margin-left: calc(4px * 4);
  margin-left: calc(var(--spacing-unit) * 4);
}

.payment-icons {
  display: flex;
}

.payment-icons svg {
    display: block;
  }

.payment-icons__icon + .payment-icons__icon {
  margin-left: 6px;
}

.price {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 0;
  margin-bottom: 0;
}

.price dl {
    margin-top: 0;
  }

.price dd {
    margin: 0 0.5em 0 0;
  }

.price--unavailable {
  visibility: hidden;
}

.price--compare-price-hidden .price__compare {
    display: none;
  }

.price__pricing-group {
  display: flex;
  flex-direction: row;
  align-items: center;
}

.price__regular {
  display: block;
}

.price__regular,
.price__sale {
  margin-right: 0.625rem;
}

.price--on-sale .price__regular,
  .price--on-sale .price__availability {
    display: none;
  }

.price__availability {
  display: none;
}

.price--sold-out .price__availability {
    display: block;
  }

.price__sale {
  display: none;
}

.price--on-sale .price__sale {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
  }

.price__unit {
  display: none;
}

.price--unit-available .price__unit {
    display: block;
  }

.product-form .spr-badge {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.product-form .spr-badge .spr-badge-starrating {
    margin-right: calc(4px * 2);
    margin-right: var(--spacing-extra-small);
  }

.product-form .spr-badge .spr-badge-caption {
    font-size: 12px;
    font-size: var(--font-size-body-small);
  }

.product-form .spr-badge .pf-review-label {
    display: block;
    width: 100%;
    font-size: 14px;
    line-height: 28px;
    margin-bottom: 4px;
    margin-bottom: var(--spacing-unit);
    font-weight: var(--font-body-bold-weight);
  }

.product-form .spr-badge + .product-form__controls-group {
    border-top: 1px solid var(--color-border);
  }

.contrast .product-form .spr-badge + .product-form__controls-group {
      border-color: var(--color-border-contrast);
    }

.product-form .spr-badge + .product-form__controls-group > .pf-container:first-of-type {
      padding-top: calc(4px * 5);
      padding-top: var(--spacing-medium);
    }

.product-form__variants {
  display: none;
}

.no-js .product-form__variants {
    display: block;
  }

.pf-container {
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
}

.pf-container + .pf-container {
    border-top: 1px solid var(--color-border);
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
  }

.contrast .pf-container + .pf-container {
      border-color: var(--color-border-contrast);
    }

.pf-element {
  height: 56px;
  position: relative;
}

.pf-element:hover .pf-label span:after, .pf-element[focus-within] .pf-label span:after {
      width: 100%;
      opacity: 1;
    }

.pf-element:hover .pf-label span:after, .pf-element:focus-within .pf-label span:after {
      width: 100%;
      opacity: 1;
    }

.pf-label {
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 1;
  pointer-events: none;
  font-size: 14px;
  line-height: 28px;
  font-weight: var(--font-body-bold-weight);
}

.pf-label span {
    position: relative;
  }

.pf-label span:after {
    content: '';
    height: 1px;
    width: 0%;
    background-color: var(--color-text-body);
    position: absolute;
    left: 0;
    bottom: -1px;
    opacity: 0;
    transition: opacity 0.25s, width 0.25s;
  }

.contrast .pf-label span:after {
      background-color: var(--color-text-body-contrast);
    }

.pf-input {
  width: 100%;
  height: 56px;
  cursor: pointer;
  border: none;
  position: relative;

  font-size: 14px;
  line-height: 28px;
  margin-top: 0px;
  padding-top: 28px;
  padding-left: 0;
  transition: color 0.25s;
}

.pf-input:focus {
    opacity: 0.75;
  }

.pf-icon {
  width: 24px;
  height: 24px;
  position: absolute;
  right: 0;
  top: 16px;
  pointer-events: none;
  z-index: 2;
}

.pf__actions {
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
}

@media (min-width: 40em) {

.pf__actions {
    margin: calc(4px * 10) 0;
    margin: var(--spacing-large) 0
}
  }

/* Style Shopify buttons */

.pf__actions .shopify-payment-button {
    margin-top: calc(4px * 3);
    margin-top: var(--spacing-small);
  }

.pf__actions .shopify-payment-button__button {
    border-radius: 24px !important;
    overflow: hidden !important;
  }

.pf__actions .shopify-payment-button__more-options {
    color: black;
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
    color: var(--color-text-link);
  }

.pf__actions .shopify-payment-button__more-options:hover {
      text-decoration: none;
      opacity: 0.6;
    }

.contrast .pf__actions .shopify-payment-button__more-options {
      color: var(--color-text-link-contrast);
    }

.pf__actions .shopify-payment-button__more-options.shopify-payment-button__button--hidden {
    display: none;
  }

.product-form__color-swatches {
  display: flex;
  flex-wrap: wrap;
  padding-top: calc(4px * 7);
  padding-top: calc(var(--spacing-unit) * 7);
  display: block !important;
}
      
#swatch_pswatchdiv { display: block !important; padding-top: 35px !important; }

.product__color-swatch {
  width: 30px;
  height: 30px;
  border-radius: 100%;
  margin-top: calc(4px * 2);
  margin-top: var(--spacing-extra-small);
  margin-right: calc(4px * 2);
  margin-right: var(--spacing-extra-small);
  box-shadow: 0 0 0 1px var(--color-border);
  border: 3px solid var(--color-background);
  cursor: pointer;
  background-position: center !important;
  background-size: cover !important;
  display: inline-block !important;
}

.product__color-swatch.selected {
    box-shadow: 0 0 0 1px var(--color-text-body);
  }

.product__color-swatch:focus {
    outline: none;
    box-shadow: 0 0 0 1px var(--color-text-body);
  }

.contrast .product__color-swatch {
    box-shadow: 0 0 0 1px var(--color-border-contrast);
  }

.contrast .product__color-swatch.selected,
    .contrast .product__color-swatch:focus {
      box-shadow: 0 0 0 1px var(--color-text-body-contrast);
    }

.product-item__media {
  position: relative;
  overflow: hidden;
  margin-bottom: calc(4px * 3);
  margin-bottom: var(--spacing-small);
}

@media (min-width: 40em) {

.product-item__media {
    margin-bottom: 20px;
    margin-bottom: var(--space-grid)
}
      .product-item__media:hover .product-item__add, .product-item__media[focus-within] .product-item__add {
        transform: translateY(0);
        opacity: 1;
      }
      .product-item__media:hover .product-item__add, .product-item__media:focus-within .product-item__add {
        transform: translateY(0);
        opacity: 1;
      }

      .product-item__media:hover .product-item__image--two, .product-item__media[focus-within] .product-item__image--two {
        opacity: 1;
        transform: scale(1);
      }

      .product-item__media:hover .product-item__image--two, .product-item__media:focus-within .product-item__image--two {
        opacity: 1;
        transform: scale(1);
      }
  }

.product-item__image-link {
  display: block;
  position: relative;
  transition: opacity 0.25s;
}

.product-item__image-link:focus {
    opacity: 0.6;
  }

.product-item__add {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  padding-top: 0;
  pointer-events: none;
  transform: translateY(16px);
  opacity: 0;
  transition: opacity 0.45s, transform 0.45s;
}

@media (max-width: 40em) {

.product-item__add {
    display: none
}
  }

.product-item__add button {
    pointer-events: all;
  }

.product-item__stars {
  position: absolute;
  z-index: 5;
  top: calc(4px * 3);
  top: var(--spacing-small);
  left: calc(4px * 3);
  left: var(--spacing-small);
  pointer-events: none;
  /* Offset to remove extra built in spacing */
  margin-top: calc(4px * -1);
  margin-top: calc(var(--spacing-unit) * -1);
}

@media (min-width: 40em) {

.product-item__stars {
    top: calc(4px * 5);
    top: var(--spacing-medium);
    left: calc(4px * 5);
    left: var(--spacing-medium)
}
  }

.product-item__stars .spr-badge-caption {
    display: none;
  }

.product-item__stars .spr-badge-starrating .spr-icon {
    font-size: 80%;
    margin-right: 2px;
  }

.product-item__image--two {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 2;
  opacity: 0;
  transform: scale(1.025);
  transition: opacity 0.6s, transform 0.6s;
  background-color: transparent;
}

.product-item__meta {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

@media (min-width: 40em) {

.product-item__meta {
    flex-wrap: nowrap
}
  }

.product-item__text {
  width: 100%;
  padding-right: calc(4px * 3);
  padding-right: var(--spacing-small);
}

@media (min-width: 40em) {

.product-item__text {
    flex-shrink: 1;
    width: auto
}
  }

.product-item__text h4 {
    font-weight: inherit;
  }

.product-item__badges {
  width: 100%;
  flex-shrink: 0;
  margin-top: calc(4px * 3);
  margin-top: var(--spacing-small);
}

@media (min-width: 40em) {

.product-item__badges {
    width: auto;
    margin-top: 0
}
  }

.product-item__badge {
  display: inline-block;
  border-radius: 20px;
  padding: 4px 12px;
  color: white;
  font-size: 12px;
}

@media (min-width: 40em) {

.product-item__badge {
    padding: 8px 16px
}
  }

.product-item__badge--sale {
  background-color: #cf2929;
}

.product-item__badge--sold-out {
  background-color: #666666;
}

#shopify-product-reviews {
  margin: calc(4px * 10) 0 !important;
  margin: var(--spacing-large) 0 !important;
}

@media (min-width: 40em) {

#shopify-product-reviews {
    padding-right: calc(10px / 2);
    padding-right: calc(var(--space-inline-element) / 2)
}
  }

#shopify-product-reviews .spr-container {
    padding: 0;
    border: none;
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
    width: 100%;
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
    padding-bottom: 40px;
  }

#shopify-product-reviews .spr-header-title {
    font-size: 24px;
    font-size: var(--font-size-heading-base);
    line-height: 32px;
    line-height: var(--line-height-heading-base);
    color: var(--color-text-heading);
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-style: var(--font-heading-style);
    text-align: left;
    margin: 0 0 calc(4px * 5) 0;
    margin: 0 0 var(--spacing-medium) 0;
  }

#shopify-product-reviews .spr-summary {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
  }

@media (min-width: 40em) {

#shopify-product-reviews .spr-summary {
      flex-wrap: wrap;
      flex-direction: row;
      align-items: center
  }
    }

#shopify-product-reviews .spr-summary-starrating {
    margin-right: calc(4px * 5);
    margin-right: var(--spacing-medium);
  }

#shopify-product-reviews .spr-summary-starrating .spr-icon {
    margin-right: 4px;
    margin-right: var(--spacing-unit);
  }

#shopify-product-reviews .spr-summary-caption {
    color: var(--color-text-subheading);
    font-size: 16px;
    font-size: var(--font-size-body-large);
    line-height: 28px;
    line-height: var(--line-height-body-large);
    width: 50%;
    margin-right: auto;
  }

#shopify-product-reviews .spr-summary-actions {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-summary-actions {
      margin-top: 0
  }
    }

#shopify-product-reviews .spr-reviews {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-reviews {
      margin-top: calc(4px * 10);
      margin-top: var(--spacing-large)
  }
    }

#shopify-product-reviews .spr-review-reportreview {
    font-size: 10px;
    line-height: 10px;
    float: none;
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review-reportreview {
	width: 100%;
  text-align: center;
  }
    }

#shopify-product-reviews form {
    width: 100%;
    max-width: 800px;
  }

#shopify-product-reviews .spr-form-title {
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-style: var(--font-heading-style);
    font-size: 18px;
    font-size: var(--font-size-heading-small);
    line-height: 24px;
    line-height: var(--line-height-heading-small);
    color: var(--color-text-heading);
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

#shopify-product-reviews .spr-form-label {
    display: block;
    font-weight: var(--font-body-bold-weight);
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
    margin-bottom: 4px;
    margin-bottom: var(--spacing-unit);
  }

#shopify-product-reviews .spr-button-primary {
    float: none;
  }

#shopify-product-reviews .spr-form-message {
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
  }

#shopify-product-reviews .spr-reviews .spr-starratings {
    margin-top: 4px;
    margin-top: var(--spacing-unit);
  }

#shopify-product-reviews .spr-review-header {
    display: block;
    flex-wrap: wrap;
    position: relative;
  }

#shopify-product-reviews .spr-review-header .spr-icon {
    font-size: 85%;
    margin-right: 2px;
  }
      
      #shopify-product-reviews .spr-reviews { 
        text-align: center;
        overflow: hidden;
      }
      
      

#shopify-product-reviews .spr-reviews .spr-review {
    border-color: var(--color-border);
    padding: 20px;
    padding: var(--spacing-medium) 0;
    display: inline-block;
    width: 100%;
    float: left;
      vertical-align: top;
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-reviews .spr-review {
      padding: calc(4px * 10) 0;
      padding: var(--spacing-large) 0
  }
    }

#shopify-product-reviews .spr-review .spr-review-header-title {
    font-size: 14px;
    font-size: var(--font-size-body-base);
    font-weight: var(--font-body-bold-weight);
    line-height: 24px;
    line-height: var(--line-height-body-base);
    color: var(--color-text-heading);
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review .spr-review-header-title {
      padding-left: calc(4px * 5);
      padding-left: var(--spacing-medium)
  }
    }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review-header-starratings {
      width: 25%
  }
    }

#shopify-product-reviews .spr-review .spr-review-header-byline {
    opacity: 1;
    color: var(--color-text-subheading);
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review .spr-review-header-byline {
      display: flex;
      flex-direction: column;
      font-style: normal;
      font-size: 0
  }
      #shopify-product-reviews .spr-review .spr-review-header-byline strong {
        font-size: 12px;
        font-size: var(--font-size-body-small);
      }
    }

#shopify-product-reviews .spr-review .spr-review-header-byline strong {
      line-height: 20px;
      line-height: var(--line-height-body-small);
      font-weight: var(--font-body-weight);
    }

#shopify-product-reviews .spr-review-header-title {
    width: 100%;
    margin-bottom: var(--spacing-extra-small) !important;
    text-align: center;
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review-header-title {
      width: 100%;
  display: block;
  text-align: center;

      margin-bottom: 10px !important;
  }
    }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review-header-byline {
      width: 100%;
  display: block; text-align: center;
  }
    }

#shopify-product-reviews .spr-review-content {
    margin-top: calc(4px * 2) !important;
    margin-top: var(--spacing-extra-small) !important;
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
  }

@media (min-width: 60em) {

#shopify-product-reviews .spr-review-content {
      width: 100%;
      margin-left: 0% !important;
  }
    }

#shopify-product-reviews .spr-review-content .spr-review-content-body {
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
    max-width: 900px;
    margin: 0 auto !important;
  }

#shopify-product-reviews .spr-review-footer {
    font-size: 10px;
    line-height: 10px;
    color: var(--color-text-meta);
    display: none;
  }

#shopify-product-reviews .spr-reviews .spr-pagination {
    border-top: 0px solid var(--color-border);
    padding: calc(4px * 5) 0 0 0;
    padding: var(--spacing-medium) 0 0 0;
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base);
  }

      }

@media (min-width: 60em) {

#shopify-product-reviews .spr-reviews .spr-pagination {
      padding-top: calc(4px * 10);
      padding-top: var(--spacing-large)
  }
    }

#shopify-product-reviews .spr-reviews .spr-pagination a {
      color: var(--color-text-link);
      text-decoration: underline;
    }

#shopify-product-reviews .spr-reviews .spr-pagination .spr-pagination-page {
      margin: 0 4px;
      margin: 0 var(--spacing-unit);
    }

#shopify-product-reviews .spr-reviews .spr-pagination .spr-pagination-page.is-active {
        font-weight: var(--font-body-weight);
      }

.quick-add {
  /* background-color: purple; */
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.quick-add.loading .quick-add__loading-wrap {
      display: block;
    }

.quick-add:not(.loading) .quick-add__configure {
      display: block;
    }

.quick-add__loading {
  background-color: orange;
}

.quick-add__loading-wrap {
  display: none;
  width: 100%;
  max-width: 100px;
  height: 2px;
  overflow: hidden;
  margin: 80px 0;
}

.quick-add__loading-bar {
  width: 100%;
  height: 2px;
  border-radius: 2px;
  background-color: var(--color-text-drawer);
  -webkit-animation: loaderLine 1.4s ease-in-out infinite;
          animation: loaderLine 1.4s ease-in-out infinite;
}

@media (min-width: 60em) {

.quick-add__loading-bar {
    background-color: var(--color-text-dropdown)
}
  }

.quick-add__configure {
  display: none;
  width: 100%;
  padding: 10px;
}

.quick-add__product {
  padding: 10px;
  display: flex;
  align-items: center;
}

.quick-add__image {
  position: relative;
  width: 100px;
  height: 100px;
  flex-shrink: 0;
}

.quick-add__image .image {
    width: 100%;
    height: 100%;
  }

.quick-add__details {
  flex-grow: 1;
  margin-left: 20px;
}

.quick-add__details s {
    opacity: 0.5;
  }

.quick-add__form {
  width: 100%;
  padding: 10px;
}

.quick-add__form .pf__actions {
    margin-top: calc(4px * 5);
    margin-top: var(--spacing-medium);
    margin-bottom: 0;
  }

.quick-add__form .pf-container + .pf-container {
    border-color: var(--color-border-dropdown);
  }

.quick-cart {
  --menu-width: 355px;
  --menu-max-width: calc(100vw - 50px);

  position: fixed;
  top: 0;
  right: 0;
  display: none;
}

@media (min-width: 60em) {

.quick-cart {
    position: absolute;
    margin-top: 44px;
    right: 20px;
    right: var(--space-outer)
}
  }

.quick-cart .c-subdued {
    opacity: 0.6;
  }

.quick-cart a {
    transition: opacity 0.25s;
  }

.quick-cart a:hover {
    opacity: 0.5;
  }

.quick-cart .pf-label span:after {
    background-color: var(--color-text-drawer);
  }

@media (min-width: 40em) {

.quick-cart .pf-label span:after {
      background-color: var(--color-text-dropdown)
  }
    }

.quick-cart.active {
  display: block;
  width: var(--menu-width);
  max-width: var(--menu-max-width);
  height: 100%;
}

@media (min-width: 60em) {

.quick-cart.active {
    width: auto;
    height: auto
}
  }

.quick-cart.visible .quick-cart__overlay {
    opacity: 0.5;
  }

.quick-cart.visible .quick-cart__container {
    transform: translateX(0);
    opacity: 1;
  }

@media (min-width: 60em) {

.quick-cart.visible .quick-cart__container {
      opacity: 1;
      transform: translateY(0)
  }
    }

.quick-cart__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-overlay);
  opacity: 0;
  transition: opacity 0.25s;
  cursor: pointer;
}

.quick-cart__container {
  width: 100%;
  max-width: 355px;
  height: 100%;
  display: flex;
  flex-direction: column;
  background-color: var(--color-background-drawer);
  color: var(--color-text-drawer);
  position: relative;
  z-index: 1;
  transform: translateX(100%);
  transition: transform 0.35s ease-in-out;
}

@media (min-width: 60em) {

.quick-cart__container {
    width: 380px;
    background-color: var(--color-background-dropdown);
    color: var(--color-text-dropdown);
    opacity: 0;
    transform: translateY(calc(4px * 2));
    transform: translateY(var(--spacing-extra-small));
    transition: opacity 0.25s, transform 0.25s
}
  }

.quick-cart__container .btn.btn--primary {
    background-color: var(--color-text-drawer);
    border-color: var(--color-text-drawer);
    color: var(--color-background-drawer);
  }

@media (min-width: 60em) {

.quick-cart__container .btn.btn--primary {
      background-color: var(--color-text-dropdown);
      border-color: var(--color-text-dropdown);
      color: var(--color-background-dropdown)
  }
    }

.quick-cart__container .btn.btn--primary:hover,
    .quick-cart__container .btn.btn--primary:focus {
      opacity: 1;
      background-color: var(--color-button-background-hover);
      border-color: var(--color-button-background-hover);
    }

.quick-cart__container .btn.btn--primary .btn__loading-bar {
      background-color: var(--color-background-drawer);
    }

@media (min-width: 40em) {

.quick-cart__container .btn.btn--primary .btn__loading-bar {
        background-color: var(--color-background-dropdown)
    }
      }

.quick-cart__cart {
  display: none;
}

.quick-cart__cart.visible {
    display: block;
  }

@media (max-width: 40em) {

.quick-cart__cart.visible {
      height: 100%;
      overflow-y: scroll
  }
    }

.quick-cart__configure {
  display: none;
}

.quick-cart__configure.visible {
    display: block;
  }

.quick-cart__header {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  padding-bottom: calc(4px * 4);
  padding-bottom: calc(var(--spacing-unit) * 4);
}

@media (min-width: 60em) {

.quick-cart__header {
    font-family: var(--font-heading);
    font-weight: var(--font-heading-weight);
    font-style: var(--font-heading-style);
    font-size: 14px;
    font-size: var(--font-size-body-base);
    line-height: 24px;
    line-height: var(--line-height-body-base)
}
  }

.quick-cart__items {
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
  overflow-y: scroll;
}

@media (min-width: 60em) {

.quick-cart__items {
    max-height: 450px
}
  }

.quick-cart__item {
  position: relative;
  display: flex;
  margin-bottom: 10px;
  margin-bottom: var(--space-inline-element);
  padding: 10px;
  padding: var(--space-inline-element);
  border-radius: 4px;
  transition: background-color 1s;
  overflow: hidden;
}

.quick-cart__item + .quick-cart__item {
    padding-top: calc(4px * 5);
    padding-top: var(--spacing-medium);
  }

.quick-cart__item + .quick-cart__item:before {
      content: '';
      position: absolute;
      top: 0px;
      left: 10px;
      left: var(--space-inline-element);
      right: 10px;
      right: var(--space-inline-element);
      height: 1px;
      background-color: var(--color-border-drawer);
    }

@media (min-width: 60em) {

.quick-cart__item + .quick-cart__item:before {
        background-color: var(--color-border-dropdown)
    }
      }

.quick-cart__item.flash {
    background-color: var(--color-text-dropdown-transparent);
  }

.quick-cart__item-left {
  width: 100px;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  flex-shrink: 0;
}

.quick-cart__item-right {
  overflow: hidden;
}

.quick-cart__item-right h4 {
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
  }

.quick-cart__image {
  background-color: var(--color-text-dropdown-transparent);
  width: 100px;
  height: 100px;
  position: relative;
}

.quick-cart__item-discounts {
  margin: calc(4px * 3) 0 0 0;
  margin: var(--spacing-small) 0 0 0;
  padding: 0;
}

.quick-cart__item-discounts li {
    list-style: none;
  }

.quick_cart__empty {
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  padding-top: 0;
  display: none;
  opacity: 0.6;
}

.quick_cart__empty.visible {
    display: block;
  }

.quick-cart__footer {
  position: relative;
  padding: calc(4px * 5);
  padding: var(--spacing-medium);
  display: none;
  flex-shrink: 0;
}

.quick-cart__footer:before {
    content: '';
    height: 1px;
    background-color: var(--color-border-drawer);
    position: absolute;
    top: 0;
    right: calc(4px * 5);
    right: var(--spacing-medium);
    left: calc(4px * 5);
    left: var(--spacing-medium);
  }

@media (min-width: 60em) {

.quick-cart__footer:before {
      background-color: var(--color-border-dropdown)
  }
    }

.quick-cart__footer.visible {
    display: block;
  }

.quick-cart__footer p {
    margin-bottom: calc(4px * 5);
    margin-bottom: var(--spacing-medium);
  }

.quick-cart__discounts {
  display: none;
  margin-bottom: calc(4px * 2);
  margin-bottom: var(--spacing-extra-small);
}

.quick-cart__discounts.visible {
    display: block;
  }

.quick-cart__discounts ul {
    margin: 0;
    padding: 0;
  }

.quick-cart__control {
  display: flex;
  width: 100%;
  height: 32px;
  margin-top: 10px;
  background-color: var(--color-text-dropdown);
  color: var(--color-background-dropdown);
}

.quick-cart__button {
  width: 32px;
  height: 32px;
  display: block;
  display: flex;
  align-items: center;
  justify-content: space-around;
  transition: background-color 0.25s;
}

.quick-cart__button svg {
    width: 12px;
    height: 12px;
  }

.quick-cart__button:hover,
  .quick-cart__button:focus {
    background-color: var(--color-button-background-hover);
  }

.quick-cart__qty {
  flex-grow: 1;
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.quick-search {
  --s-height-search-bar: 48px;

  width: 520px;
  position: absolute;
  top: calc(50% - calc(var(--s-height-search-bar) / 2));
  color: var(--color-text-dropdown);
  display: none;

  /* These numbers are a bit magical but they handle
     positioning the search bar perfectly over top the search icon */
  right: calc(20px + 32px);
  right: calc(var(--space-outer) + 32px);
}

.header--has-accounts .quick-search {
    right: calc(20px + 76px);
    right: calc(var(--space-outer) + 76px);
  }

@media (max-width: 40em) {

.quick-search {
    display: none !important
}
  }

.quick-search.active {
  display: block;
}

.quick-search.visible .quick-search__overlay {
    opacity: 0.5;
  }

.quick-search.visible .quick-search__container {
    opacity: 1;
    transform: translateY(0);
  }

.quick-search.visible .quick-search__results.visible {
    opacity: 1;
    pointer-events: all;
  }

.quick-search.visible .quick-search__submit {
    opacity: 1;
    transition: opacity 0.25s;
    transition-delay: 0.2s;
  }

.quick-search.visible .quick-search__submit:focus {
      outline: none;
      opacity: 0.5;
      transition-delay: 0s;
    }

.quick-search.visible .quick-search__clear.visible {
      opacity: 1;
      transition: opacity 0.25s;
      transition-delay: 0.2s;
    }

.quick-search.visible .quick-search__clear.visible:focus {
        outline: none;
        opacity: 0.5;
        transition-delay: 0s;
      }

.quick-search__overlay {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: var(--color-overlay);
  z-index: 500;
  z-index: var(--z-index-overlay);
  opacity: 0;
  transition: opacity 0.25s;
  cursor: pointer;
}

.quick-search__container {
  position: relative;
  opacity: 0;
  transform: translateY(calc(4px * 2));
  transform: translateY(var(--spacing-extra-small));
  transition: opacity 0.25s, transform 0.25s;
  z-index: 600;
  z-index: var(--z-index-header-search);
  pointer-events: none;
}

.quick-search__bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: var(--s-height-search-bar);
  background-color: var(--color-background-dropdown);
  padding: 0 calc(4px * 3) 0 calc(4px * 5);
  padding: 0 var(--spacing-small) 0 var(--spacing-medium);
  pointer-events: all;
}

.quick-search__input {
  font-size: 14px;
  font-size: var(--font-size-body-base);
  line-height: 24px;
  line-height: var(--line-height-body-base);
  flex-grow: 1;
  border: none;
  padding: 0;
}

.quick-search__input::-moz-placeholder {
    color: inherit;
    opacity: 0.5;
  }

.quick-search__input:-ms-input-placeholder {
    color: inherit;
    opacity: 0.5;
  }

.quick-search__input::placeholder {
    color: inherit;
    opacity: 0.5;
  }

.quick-search__actions {
  display: flex;
  align-items: center;
  flex-shrink: 0;
}

.quick-search__clear {
  opacity: 0;
  transition: opacity 0.2s;
  margin-left: calc(4px * 3);
  margin-left: var(--spacing-small);
  margin-right: calc(4px * 2);
  margin-right: var(--spacing-extra-small);
}

.quick-search__submit {
  opacity: 0;
  transition: opacity 0.2s;
}

.quick-search__results {
  width: 100%;
  max-height: 600px;
  overflow-y: scroll;
  padding: calc(calc(4px * 5) / 2);
  padding: calc(var(--spacing-medium) / 2);
  background-color: var(--color-background-dropdown);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.25s, transform 0.25s;
}

.quick-search__header {
  padding: 0 10px;
  padding: 0 var(--space-inline-element);
  padding-top: 10px;
  padding-top: var(--space-inline-element);
  padding-bottom: 4px;
  padding-bottom: var(--spacing-unit);
  opacity: 0.5;
}

/* Improves spacing at the very top of the results element */

.quick-search__header:first-of-type {
    padding-top: 0;
  }

.quick-search__result {
  display: block;
  padding: 10px;
  padding: var(--space-inline-element);
  display: flex;
  align-items: center;
  border-radius: 4px;
  transition: background-color 0.25s;
  border: 1px solid transparent;
}

.quick-search__result:hover {
    background-color: var(--color-text-dropdown-transparent);
    transition: background-color 0.25s;
  }

.quick-search__result:focus {
    outline: none;
    border: 1px dotted var(--color-text-dropdown);
  }

.quick-search__result .hl {
    background-color: var(--color-text-link);
    font-weight: var(--font-body-bold-weight);
  }

.quick-search__result-image {
  position: relative;
  width: 60px;
  height: 60px;
  margin-right: calc(4px * 5);
  margin-right: var(--spacing-medium);
  flex-shrink: 0;
  background-color: var(--color-text-dropdown-transparent);
  display: flex;
  align-items: center;
  justify-content: space-around;
}

.quick-search__result-image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
  }

.quick-search__result-image svg {
    opacity: 0.8;
  }

.quick-search__result-details {
  width: 100%;
  overflow: hidden;
}

.quick-search__result-heading {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 80%;
}

.quick-search__result-subheading {
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  max-width: 80%;
  opacity: 0.5;
}

.quick-search__view-all {
  border-top: 1px solid var(--color-border-dropdown);
  margin: 10px;
  margin: var(--space-inline-element);
  margin-bottom: 0;
  padding-top: calc(4px * 4);
  padding-top: calc(var(--spacing-unit) * 4);
  padding-bottom: 10px;
  padding-bottom: var(--space-inline-element);
}

.quick-search__view-all > button {
    text-decoration: underline;
    outline: none;
  }

.quick-search__view-all > button:focus {
      opacity: 0.5;
    }

.section-header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: calc(4px * 5);
  margin-bottom: var(--spacing-medium);
  z-index: 1;
}

.share-block {
  border: 1px solid var(--color-border);
  height: 40px;
  display: inline-flex;
  align-items: center;
}

.share-block__icon {
  display: block;
  width: 36px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: space-around;
  opacity: 0.8;
  transition: opacity 0.25s, transform 0.25s;
}

.share-block__icon:hover {
    opacity: 0.45;
  }

.share-block__icon:active {
    transform: scale(0.9);
  }

.share-block__icon .icon {
    width: 18px;
    height: 18px;
  }

.slider-button {
  --button-size: 48px;

  display: flex;
  align-items: center;
  justify-content: space-around;
  width: var(--button-size);
  height: var(--button-size);
  background-color: var(--color-background);
  box-shadow: 0px 2px 4px rgba(26, 26, 26, 0.1),
    0px 1px 2px rgba(0, 0, 0, 0.12);
  box-shadow: var(--box-shadow);
  cursor: pointer;
  pointer-events: all;
}

.social-icons {
  display: flex;
  margin: 0;
  padding: 0;
}

.social-icons li {
    width: 20px;
    height: 20px;
    list-style: none;
  }

.social-icons li + li {
    margin-left: calc(4px * 2);
    margin-left: var(--spacing-extra-small);
  }

.social-icons .icon {
    width: 20px;
    height: 20px;
  }

.social-icons a {
    display: block;
  }

/* Utility */

.c-heading {
  color: var(--color-text-heading);
}

.c-subheading {
  color: var(--color-text-subheading);
}

.c-body {
  color: var(--color-text-body);
}

.c-meta {
  color: var(--color-text-meta);
}

.c-link {
  color: var(--color-text-link);
}

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

/*
  Styling for all contrast sections
*/

.contrast {
  background-color: var(--color-background-contrast);
}

.contrast .c-heading {
    color: var(--color-text-heading-contrast);
  }

.contrast .c-subheading {
    color: var(--color-text-subheading-contrast);
  }

.contrast .c-body {
    color: var(--color-text-body-contrast);
  }

.contrast .c-meta {
    color: var(--color-text-meta-contrast);
  }

.contrast .c-link,
  .contrast .link {
    color: var(--color-text-link-contrast);
  }

.contrast .btn.btn--primary,
  .contrast .shopify-payment-button__button.shopify-payment-button__button--unbranded {
    background-color: var(--color-background-button-contrast);
    border-color: var(--color-background-button-contrast);
    color: var(--color-text-button-contrast);
  }

.contrast .btn.btn--primary:hover,
    .contrast .btn.btn--primary:focus,
    .contrast .shopify-payment-button__button.shopify-payment-button__button--unbranded:hover,
    .contrast .shopify-payment-button__button.shopify-payment-button__button--unbranded:focus {
      background-color: var(--color-background-button-hover-contrast);
      border-color: var(--color-background-button-hover-contrast);
    }

.contrast .placeholder-image {
    background-color: var(--color-background-meta-contrast);
  }

.contrast .placeholder-image svg {
      fill: var(--color-foreground-meta-contrast);
    }

.contrast .image {
    background-color: var(--color-background-meta-contrast);
  }

.s-inline-template {
  margin: 20px 0 40px 0;
  padding-left: 20px;
  padding-left: var(--space-outer);
  padding-right: 20px;
  padding-right: var(--space-outer);
}

@media (min-width: 40em) {

.s-inline-template {
    margin: 40px 0
}
  }

.s-inline-section {
  margin: calc(4px * 5) 0;
  margin: var(--spacing-medium) 0;
  padding-left: 20px;
  padding-left: var(--space-outer);
  padding-right: 20px;
  padding-right: var(--space-outer);
}

@media (min-width: 40em) {

.s-inline-section {
    margin: calc(4px * 10) 0;
    margin: var(--spacing-large) 0
}
  }

body.show-borders .page-section + .inline-section .section-header, body.show-borders .inline-section + .inline-section .section-header, body.show-borders .grid-section + .inline-section .section-header, body.show-borders .carousel-section + .inline-section .section-header {
      display: flex;
      padding-top: calc(4px * 5);
      padding-top: var(--spacing-medium);
      border-top: 1px solid var(--color-border);
    }

.grid-section:not(.full-width) {
  margin: 20px 0;
  margin: var(--space-outer) 0;
  padding: 0 20px;
  padding: 0 var(--space-outer);
  overflow: hidden;
}

@media (min-width: 40em) {

.grid-section.collage-section:not(.full-width) + .grid-section.collage-section:not(.full-width), .grid-section.collage-section:not(.full-width)
  + .grid-section.slideshow-section:not(.full-width), .grid-section.slideshow-section:not(.full-width)
  + .grid-section.collage-section:not(.full-width), .grid-section.slideshow-section:not(.full-width)
  + .grid-section.slideshow-section:not(.full-width) {
      margin-top: calc(calc(4px * 5) * -1);
      margin-top: calc(var(--spacing-medium) * -1)
  }
    }

/* Carousel section is a special case */

.carousel-section {
  margin: 20px 0;
  margin: var(--space-outer) 0;
}

/* Wrapper for static sections so margins collapse */

.sections > .inline-section:first-of-type .s-inline-section {
      /* Will get spacing from the main page section */
      margin-top: 0;
    }

body.show-borders .sections > .inline-section:first-of-type .section-header {
        display: flex;
        padding-top: calc(4px * 5);
        padding-top: var(--spacing-medium);
        border-top: 1px solid var(--color-border);
      }

/* .collage-section + .collage-section {
  margin-top: -20px;
} */

/* 
  Apply base styling
 */

.ff-body {
  font-family: var(--font-body);
  font-weight: var(--font-body-weight);
  font-style: var(--font-body-style);
}

.ff-heading {
  font-family: var(--font-heading);
  font-weight: var(--font-heading-weight);
  font-style: var(--font-heading-style);
}

.ff-meta {
  font-family: var(--font-meta);
  font-weight: var(--font-meta-weight);
  font-style: var(--font-meta-style);
  letter-spacing: 0.05em;
  text-transform: uppercase;
}

/* 
  Apply font-size and line-height
*/

.fs-heading-x-large {
  font-size: 36px;
  font-size: var(--font-size-heading-x-large);
  line-height: 44px;
  line-height: var(--line-height-heading-x-large);
}

.fs-heading-large {
  font-size: 32px;
  font-size: var(--font-size-heading-large);
  line-height: 40px;
  line-height: var(--line-height-heading-large);
}

.fs-heading-base {
  font-size: 30px !important;
  font-size: var(--font-size-heading-base);
  line-height: 38px !important;
  line-height: var(--line-height-heading-base);
  margin-bottom: 5px;
}

.fs-heading-small {
  font-size: 18px;
  font-size: var(--font-size-heading-small);
  line-height: 24px;
  line-height: var(--line-height-heading-small);
}

.fs-body-large {
  font-size: 16px;
  font-size: var(--font-size-body-large);
  line-height: 28px;
  line-height: var(--line-height-body-large);
}

.fs-body-base {
  font-size: 14px;
  font-size: var(--font-size-body-base);
  line-height: 24px;
  line-height: var(--line-height-body-base);
}

.fs-body-small {
  font-size: 12px;
  font-size: var(--font-size-body-small);
  line-height: 20px;
  line-height: var(--line-height-body-small);
}

.fs-meta {
  font-size: 12px;
  font-size: var(--font-size-meta);
  line-height: 24px;
  line-height: var(--line-height-meta);
}

/* 
  Commonly used responsive type situations
 */

.fs-page-heading {
  font-size: 24px;
  font-size: var(--font-size-heading-base);
  line-height: 32px;
  line-height: var(--line-height-heading-base);
}

@media (min-width: 40em) {

.fs-page-heading {
    font-size: 36px;
    font-size: var(--font-size-heading-x-large);
    line-height: 44px;
    line-height: var(--line-height-heading-x-large)
}
  }

.fs-primary-body {
  font-size: 14px;
  font-size: var(--font-size-body-base);
  line-height: 24px;
  line-height: var(--line-height-body-base);
}

@media (min-width: 40em) {

.fs-primary-body {
    font-size: 16px;
    font-size: var(--font-size-body-large);
    line-height: 28px;
    line-height: var(--line-height-body-large)
}
  }

.t-subdued {
  opacity: 0.65;
}

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

a.link:hover {
    opacity: 0.6;
  }
  
  a.link:hover {
    opacity: 1;
    text-decoration: underline;
  }

  a.article__pagination-prev.link::before { 
    content: "←";
  }

    a.article__pagination-next.link::after { 
    content: "→";
  }
  
  
  a.article__pagination-prev.link, a.article__pagination-next.link { 
  text-style: italic;
   background: #1d1d1d;
    color: #fff;
    font-size: 14px;
    -webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
    padding: 10px 30px;
    transition: all 0.2s linear 0s;
  }
  
    a:hover.article__pagination-prev.link, a:hover.article__pagination-next.link { 
  text-decoration: none;
      background: #C93428;
  }
  

  a.button {
  background: #1d1d1d;
    color: #fff;
    font-size: 15px;
    line-height: 21px;
    -webkit-border-radius: 100px;
	-moz-border-radius: 100px;
	border-radius: 100px;
    padding: 15px 30px;
    transition: all 0.2s linear 0s;
  }
  
    a:hover.button {
  background: #C93428;
    opacity: 1;
      text-decoration: none;
  }
  
  a:hover.accordion__label { text-decoration: none;}
  
.ta-l {
  text-align: left;
}

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

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

.td-u {
  text-decoration: underline;
}

  
  .shopify-product-reviews { margin-top: 0 !important; }
  
  .product__reviews { 
  padding: 0 40px;
  text-align: center;
  }
 
  
  .product__reviews h2.spr-header-title { margin-top: 15px !important; text-align: center !important;  }
  
 .spr-summary-caption { 
   display: block; 
   margin-top: 0px !important;
   width: 100% !important; text-align: center !important;}
  
.spr-summary-actions{ margin: 15px auto 0 !important;}
  
  #shopify-product-reviews form { margin: 0 auto !important; }
  
  #shopify-product-reviews .spr-form-label { text-align: left !important; }
  
  
  #shopify-product-reviews .spr-form-message { color: #fff !important; border: 0 !important; }
  
  #shopify-product-reviews .spr-summary-starrating { text-align: center !important; margin: 0 auto 15px; }
  
  .spr-icon.spr-icon-star { font-size: 80% !important; color: #C93428 !important; } 
  
  
  .pf-review-label { display: none !important; }
  
	a.spr-summary-actions-togglereviews {
	--height: 48px;
    --horizontal-space: 32px;
    --radius: var(--height);
    background-color: transparent;
    display: inline-flex;
    align-items: center;
    justify-content: space-around;
    font-family: inherit;
    font-size: 14px !important;
    font-weight: var(--font-body-weight) !important;
    border: 1px solid var(--color-border-button-secondary);
    border-radius: var(--radius);
    color: var(--color-text-button-secondary);
    cursor: pointer;
    height: var(--height);
    line-height: var(--height);
    padding: 0 var(--horizontal-space);
    transition: all 0.25s ease !important;
    background: #C93428 !important;
    color: #fff !important;
}
      
    .spr-icon.spr-icon-star-half-alt { font-size: 80% !important;  color: #C93428 !important; }
            
  
  /* ============================================ *
 * History Section
 * ============================================ */

 .history-video-lead {
 	height: auto;
 	position: absolute;
 	padding: 7%;
 }

.history-video-lead h1, .history-video-lead h2, .history-video-lead h3 { color: #fff !important; }

.history-video-lead h1 { text-align: left !important; font-size: 38px; line-height: 45px; }

.history-video-lead h2,.history-video-lead h3 { width: 45%; font-weight: 300; font-size: 22px; line-height: 32px; margin: 0 0 2.5%; }

.history-video-lead a.watch-video {
	padding: 20px 25px 20px 75px;
	display: block;
	cursor: pointer;
	background: #c93428 url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/play-arrow.png?v=1611937578") 15px 15px no-repeat;
	background: #c93428 url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/play-arrow.svg?v=1611937578") 15px 15px no-repeat;
	background-size: 15%;
    display: inline-block;
    border: 0;
    line-height: 18px;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: nowrap;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    color: #fff;
    text-transform: uppercase;
    margin: 0 auto;
    font-family: 'Roboto', "Helvetica Neue", Helvetica, Arial, sans-serif;
    transition: all 0.2s linear 0s;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    border-radius: 100px;
  	opacity: 1;
  	text-decoration: none;
}

.history-video-lead a.watch-video:hover {
	background: #fff url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/play-arrow-on.png?v=1611787723") 15px 15px no-repeat;
	background: #fff url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/play-arrow-on.svg?v=1611787723") 15px 15px no-repeat;
	background-size: 15%;
	color: #c93428;
	text-decoration: none;
  	text-decoration: none;
 }

.history img { width: 100%; height: auto; }

.to-the-right { float: right; }

.band { padding: 0; overflow: hidden; border-bottom: 1px solid #ededed; }
.band-right { float: right; display: inline-block; width: 48%; }
.band-left { float: left; display: inline-block; width: 48%; }
.band-left img, .band-right img { width: 100%; height: auto; }
.band-left p, .band-right p { width: 75%; margin: 0 auto; text-align: center; }
.band h2 { text-align: center; }
.band h2 strong { font-weight: 400; letter-spacing: -1.5px; }
.band h3 { text-align: center; }



.image-left-side { width: 100%; float: left; display: inline-block; }
.image-right-side { width: 50%; float: right; display: inline-block; }
.to-the-left { float: left; }
img.inventing { display: block; width: 100%; height: 100%; }
img.inventing-right { display: block; width: auto; height: 100%; float: right; padding: 5%; }
.band.three-up, .band.six-up { padding-bottom: 40px; }
.band.three-up ul, .band.four-up ul, .band.five-up ul, .band.six-up ul { margin-bottom: 0px; padding-left: 0px; }
.band.three-up li h3, .band.four-up li h3, .band.five-up li h3, .band.six-up li h3  { margin-bottom: 0px; }
.band.three-up li img, .band.four-up img, .band.five-up img, .band.six-up img { width: 100%; height: auto; margin-bottom: 5%; }
.two-up img { margin-bottom: 5%; }

.band.five-up img, .band.six-up img, .band.four-up img { padding: 15%; }

.band.two-up img { padding: 0 10% 0; }

.band.three-up li { width: 32%; display: inline-block; margin-bottom: 0px; }

.band.four-up li { width: 24%; display: inline-block; margin-bottom: 40px; }

.band.five-up li { width: 19%; display: inline-block; margin-bottom: 0px; text-align: center; }

.band.six-up li { width: 16%; display: inline-block; margin-bottom: 0px; text-align: center; }

.band.three-up.products img { padding: 10%; }
      
.history-content.push-down {
    margin-top: 30%;
}
      
.first-four-headphones ul li img, .first-three-headphones li img {
    width: 65% !important;
    height: auto;
}
      
.first-three-headphones li img {
    padding: 0 5% 5%;
}

p.airforce {
    text-align: center;
    width: 55%;
    margin: 0 auto 40px !important;
}        

.billboard-txt {
	margin-top: 15%;
}

a.button.orange-amazon {
background: #F8981F !important;
color: #333 !important;
border: 1px solid #F8981F !important;
}

a:hover.button.orange-amazon {
background: #fff !important;
color: #F8981F !important;
border: 1px solid #F8981F !important;
}

.history-container-top {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    display: table;
}
.history-container {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    width: 50%;
}
.history-content {
    padding: 0 15%;
    display: inline-block;
    float: right;
    text-align: center;
}

.history-content-left {
    padding: 0 15%;
    display: inline-block;
    float: left;
    text-align: center;
}

.history-content p, .history-content-left p { text-align: left; }

.first-four-headphones ul, .first-three-headphones ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.first-four-headphones li {
	display: inline-block;
	float: left;
	width: 25%;
	text-align: center;
}

.first-three-headphones li {
	display: inline-block;
	float: left;
	width: 33%;
	text-align: center;
}

.first-four-headphones li img, .first-three-headphones li img { margin: 0 auto 15px; height: auto; width: auto; margin-bottom: 25px; }

 .first-three-headphones li img { padding: 0 5% 5%; width: 100%; height: auto; }

.first-four-headphones h2, .first-three-headphones h2 { font-weight: 400; }

.first-four-headphones li p, .first-three-headphones li p { width: 70%; margin: 0 auto; }

.airforce1 img { width: 50%; float: left; display: inline-block; margin-bottom: 50px; }

.founded { padding: 0 0 0; }

    #owl-demo-history .item img{
        display: block;
        width: 100%;
        height: auto;
    }

      
      .owl-carousel { padding-bottom: 84px; margin-bottom: 80px; overflow: hidden; border-bottom: 1px solid #eee;}
.home-page.thumbnails.owl-carousel.owl-theme { padding-bottom: 0px; margin-bottom: 0px; overflow: hidden; border-bottom: 0px solid #eee;}
.owl-item { text-align: center; }
.owl-item a h5 {
	margin: 45px 0 10px;
}
.owl-item a h5:hover {
	color: #c93428;
}
.owl-item a:hover { text-decoration: none; }
.owl-carousel h5 { margin: -10px 0 10px; }
.owl-carousel .post-date { margin: 5px 0 12px; font-size: 12px; }
.owl-carousel h5 a { color: #454545; margin: 45px 0 0; display: block; }
.owl-carousel h5 a:hover { text-decoration: none; color: #c93428; }

.owl-carousel .ratings { display: none; }

#owl-demo-history.owl-carousel, #owl-demo-rebel.owl-carousel { padding-bottom: 25px; margin-bottom: 0px; overflow: hidden; border: 0px; }


      
      
      
      .history-content.founded { margin-top: 0px; padding-top: 0px; }
      
.billboard-txt {
  margin-top: 25% !important;
}
      
img.working { float: right; width: 40%; height: auto; margin-left: 10%; padding-bottom: 30px; }

.paypaluk-express-review .page-title h1 { margin: 40px auto; }

.paypaluk-express-review .info-set.col2-set { padding: 0px; }

.paypaluk-express-review .info-set.col2-set h2, .paypaluk-express-review .info-set h2 {
	font-family: "Roboto","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 22px;
    margin: 0 0 12px;
    text-rendering: optimizespeed;
    text-transform: uppercase;
    border-bottom: 1px solid #eee;
    padding-bottom: 15px;
    margin-bottom: 30px;
    }

.paypaluk-express-review .info-set.col2-set h3 {
	color: #1b1b1b;
    font-family: "Roboto","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 14px;
    font-style: normal;
    font-weight: 500;
    line-height: 20px;
    margin: 0 0 12px;
    text-rendering: optimizespeed;
    text-transform: capitalize; }

.info-set.col2-set { margin-bottom: 60px; }

ul.privacy-bullets { overflow: hidden; margin-left: 0px; padding-left: 25px; list-style: disc; }

ul.privacy-bullets li { list-style: disc; margin-bottom: 15px; }

.contenttype-results-listing { width: 50%; }

.page, section.contact .page__rte.ff-body { 
 --s-max-width: auto !important;
  }

.page { max-width: 1480px; }
  
.contact-blocks { 
  overflow: hidden; align: center; }
  
.contact-blocks ul { 
  margin: 0;
  padding: 0;  }

.contact-blocks h4 { margin-bottom: 10px; }

.contact-blocks li { 
  width: 47.6%; 
  font-size: 15px;
  line-height: 23px;  
  text-align: center;
  display: inline-block; 
  margin: 0 1%; 
  background: #f6f6f6; 
  text-align: center; 
  height: 225px; 
  padding: 2.5% 2%; 
  font-weight: 300;
  margin-top: 35px; 
  position: relative; }

  .container-center-text {
    position: absolute;
    text-align: center;
    z-index: 2;
    top: 49%;
    left: 50%;
    width: 100%;
    padding: 0 50px;
    -moz-transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    transform: translateX(-50%) translateY(-50%);
}
  
.contact-blocks li a { 
  color: #C93428;
  display: block;
  font-size: 16px;
  line-height: 21px;
  font-weight: bold;
 }

  
  .contact-blocks li a.location-map { 
  font-size: 15px;
  line-height: 23px;
  }
  

  a.location-map { 
  display: block;
    margin-top: 7px;
  }
    
section.contact .page__header { margin-top: 45px; margin-bottom: 10px; }
  
section.contact h3 {
display: block;
font-size: 21px;
line-height: 28px;
margin-bottom: 0px;
margin-top: 5px;
font-weight: 300;
}
  
section.contact h4 {
display: block;
font-size: 18px;
line-height: 24px;
font-weight: 600;
}
  
#contact_form { 
  width: 90%;
  max-width: 800px;
  }
 
 
  .support-container { 
  width: 98%;
    margin: 0 auto;
    overflow: hidden;
    text-align: center;
    margin-top: 50px;
  }
  
.page__rte.ff-body.rte.rte--page.support-page {
  display: inline-block;
  width: 70%;
  text-align: left;
  vertical-align: top;
}

.col-left {
  display: inline-block;
  width: 25%;
  text-align: left;
  vertical-align: top;
  margin-bottom: 60px;
}
  
  .col-left h3 a { 
  font-weight: bold;
    display: block;
    margin-bottom: 20px;
  }
 
  
  .col-left ul { list-style: none; }
    
  .col-left li { list-style: none;
margin: 7px 0;
border-bottom: 1px solid #eee;
margin: 0;
padding: 10px 0;
list-style: none;
  
  }  
  
  .col-left li a {
    color: #C93428;
    font-weight: 300;
    font-size: 15px;
    text-transform: none; }
 
  .support-page h3 { margin-bottom: 15px;}
  .support-page h4 { margin-bottom: 5px;}
  
  .footer__credits p { font-size: 12px; line-height: 24px; font-weight: 300; }
  
  
  
.suppport-contact-block { background: #f6f6f6; padding: 13px 20px 13px; margin: 0 auto; width: 98%; overflow: hidden; font-size: 12px; line-height: 16px; }
.suppport-contact-block strong { color: #333; font-weight: 800; }
.suppport-contact-block .contact-title { display: inline-block; float: left; width: 25%; font-weight: bold;  }
.suppport-contact-block .contact-stuff { display: inline-block; float: right; width: 70.5%; }
.suppport-contact-block .contact-stuff ul { margin: 0; padding: 0; overflow: hidden; width: 100%; }
.suppport-contact-block .contact-stuff li { display: inline-block; float: left; width: 23.3333%; margin-left: 2%; text-align: right; }
.suppport-contact-block .contact-stuff li:first-child { margin-left: 0; text-align: left; }
  
.suppport-contact-block .contact-stuff li a { color: #c93428; font-weight: bold; line-height: 20px; }
.suppport-contact-block .contact-stuff li a:hover { color: #c93428; text-decoration: underline; }

.suppport-contact-block .contact-stuff li strong, .suppport-contact-block .contact-stuff li a { float: right; display: inline-block; }

.icon-space { display: inline-block; margin-right: 10px; float: right;}
  
.oem-overview { width: 100%; max-width: 1280px; margin: 0 auto !important; }
.oem-overview ul { list-style: none; margin: 0; padding: 0; text-align: center; }
.oem-overview li { display: inline-block; width: 49%; margin-right: 1%;  margin-bottom: 40px; float: left; }
.oem-overview li:last-child { margin-right: 0;}
.oem-overview h5 { margin-top: 10px; text-transform: none; }
  
  .rte h5, .rte h6, .shopify-policy__body h5, .shopify-policy__body h6 { letter-spacing: 0px; }
  
  p, a { font-weight: 300; }

  .affiliate-page {
    overflow: hidden;
    padding-top: 50px;
}
  
.page-title-image {
    background: url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/affiliate-header.jpg?v=1612212568) left 0px no-repeat;
    background-size: auto;
    background-size: cover;
    color: #fff;
    padding-top: 15%;
    padding-bottom: 15%;
    position: relative;
    max-height: 580px;
}
  
  .page-title-image.utility {
    background: url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/Utility-Series-10.jpg?v=1634931100) left 0px no-repeat;
    background-size: auto;
    background-size: cover;
    color: #fff;
    padding-top: 15%;
    padding-bottom: 15%;
    position: relative;
    max-height: 580px;
}
  
  
.page-title-image h1, .page-title-image h2, .page-title-image p { color: #fff !important; }
.page-title-image h1 { font-weight: 700; font-size: 48px; line-height: 50px; text-align: left !important; margin-bottom: 10px; }
.page-title-image h2 { font-weight: 700; font-size: 21px; margin-top: 0; line-height: 24px; }
.page-title-image p { font-size: 16px; line-height: 21px; display: block; }
.summary-text { font-size: 21px; line-height: 29px; font-weight: 300; display: block; margin-top: 15px; }

.three-how-works { overflow: hidden; }
.three-how-works ul { list-style: none; margin: 0; padding: 0; text-align: center; }
.three-how-works li {
  display: inline-block;
  padding-top: 100px;
  width: 20%;
  vertical-align: top;
  margin: 1%; }

.three-how-works li.arrow {
  background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/arrow-aff.gif?v=1612212567) center center no-repeat;
  background-size: 65% auto;
  margin-top: 50px;
  margin-bottom: 20px;
  width: 10%; }


.three-how-works li.marketing {
    background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/marketing-cirlce.gif?v=1612212567) center top no-repeat;
    background-size: 55px auto;
   }

.three-how-works li.commissions {
     background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/money-in-hand.gif?v=1612212750) center top no-repeat;
     background-size: 55px auto;
    }

.three-how-works li.cj {
  background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/CJ.gif?v=1612212750) center top no-repeat;
  background-size: 55px auto;
 }

 .three-how-works li.one {
     background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/one.gif?v=1612212567) center top no-repeat;
     background-size: 60px 60px;
    }

 .three-how-works li.two {
      background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/two.gif?v=1612212567) center top no-repeat;
      background-size: 60px 60px;
     }

 .three-how-works li.three {
   background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/three.gif?v=1612212567) center top no-repeat;
   background-size: 60px 60px;
  }
  

 .three-how-works li.headphones {
     background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/headphone-utility.jpg?v=1635524838) center top no-repeat;
     background-size: 60px 60px;
    }

 .three-how-works li.cable {
      background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/cable-utility.jpg?v=1635524838) center top no-repeat;
      background-size: 60px 60px;
     }

 .three-how-works li.enjoy {
   background:url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/enjoy-utility.jpg?v=1635524838) center top no-repeat;
   background-size: 60px 60px;
  }
  

.affiliate-page { overflow: hidden; padding-top: 50px; }
  
  .grey-band-aff {
    background: #f7f7f7;
    padding: 50px 0;
    text-align: left;
    position: relative;
}

  
  .grey-band-aff.white-ff {
    background: #fff;
    padding: 50px 0 0;
    text-align: left;
}
  
  
.affiliate-page h3,
.grey-band-aff h3
{ font-weight: 700; font-size: 40px; line-height: 45px; color: #333; text-align: center; text-transform: capitalize; }

.affiliate-page h4 { color: #C93428; font-weight: bold !important; }
  
  
.grey-band-aff h3 { text-align: left; }

.grey-band-aff ul { overflow: hidden; text-align: center; margin: 0 !important; padding: 0 !important;  }
  
.grey-band-aff li {
  display: inline-block;
  vertical-align: top;
  width: 45%; margin: 0 2%; }

.grey-band-aff li img { width: 100%; height: auto; }

h4.easy { text-align: center; color: #333; display: block; font-size: 24px; margin-bottom: 40px; }

a.big-button { display: table; background: #C93428; color: #fff; padding: 20px 30px; font-size: 21px; text-align: center; font-weight: bold; margin-top: 15px;}

.cms-affiliate .main { max-width: 100%; }

.cms-affiliate .main-container { padding: 0 0; }
  
a.supportnav-selected { font-weight: bold !important; }
 
.v-mid {
  word-break: break-word;
  position: absolute;
  grid-area: media-text-content;
  padding: 0 0 0 0;
  top: 35%; left: 60%;
  text-align: left;
  transform: translate(-15%,-35%);
}
  

.v-mid-left {
  word-break: break-word;
  position: absolute;
  grid-area: media-text-content;
  padding: 0 0 0 0;
  top: 35%; left: 3%;
  transform: translate(3%,-35%);
  width: 42%;
  text-align: left;
}

.v-mid-top {
  word-break: break-word;
  position: absolute;
  grid-area: media-text-content;
  padding: 0 0 0 0;
  top: 35%; left: 3%;
  transform: translate(3%,-35%);
  width: 42%;
} 
  
.header__links-list.fs-body-base a { font-weight: 500; }
  
 .support-menu.mobile-view { 
	display: none;
  }
  
  
.video-holder {
    width: 50%;
    margin: -80px auto 0 !important; 
    text-align: center;
}
  
  
.responsive-video {
position: relative;
padding-bottom: 56.25%;
padding-top: 60px; overflow: hidden;
}




.responsive-video iframe,
.responsive-video object,
.responsive-video embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
border: 0px;
}
  
  
.upsell-addonbox img {
  height: 100px !important; 
}
  
.upsell-addonbox-col1 {
  height: 100px;
  margin-right: 10px;
  }

h4.upsell-font-color.upsell-header { 
  font-weight: bold;
  margin-bottom: 10px;
  }
  
.upsell-addonbox-col2 { 
  width: 32% !important;
  padding-right: 10px;
  text-align: left !important;
  height: 100px;
  position: relative; }
  

  .upsell-defaultbox .upsell-addonbox-col3 { height: 100px; }
  
.product-single__title.upsell-font-color.upsell-addon-title {
  text-align: left;
  position: absolute;
  z-index: 2;
  left: 0;
  top: 50%;
  width: 100%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  line-height: 21px;
}
  
.upsell-qty-input input { 
  border: 0;
  margin-top: 6px;
  border-bottom: 0px solid #eee;
  width: 50px; }
  
.upsell-addonbox-col3 { 
 position: relative; 
  }
  
.upsell-button-qty { 
  text-align: left;
  position: absolute;
  z-index: 1;
  right: 0;
  top: 0;
  width: 60%;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  border-bottom: 1px solid #eee;
  line-height: 15px;
  bottom: 10px;
  height: 30px;
}
  
.upsell-price-value {
  text-align: left;
  position: absolute;
  z-index: 2;
  left: -40%;
  top: 50%;
  width: 60%;
  font-weight: bold;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  line-height: 15px;
}
  
  
.upsell-qty-label { margin-top: 5px; }
  
  
.upsell-container { 
border-top: 1px solid #eee;
padding-top: 10px;
margin-bottom: 20px;
}
  
button.btn.btn--full.product-form__cart-submit.btn--primary.upsell-addToCart.upsell-btn-qty { 
  padding-left: 15px !important;
  padding-right: 15px !important;
  background: #fff;
  color: #333;
  border: 1px solid #ccc;
  margin-top: 45px;
}
  
button.btn.btn--full.product-form__cart-submit.btn--primary.upsell-addToCart.upsell-btn-qty:hover { 
background: #C93428;
color: #fff;
border: 1px solid #C93428;
}
  
.upsell-qty-wrapper { justify-content: left !important; padding-bottom: 10px; }
  
  
  
  /* CUSTOMIZE THE NAVBAR
-------------------------------------------------- */

/* Special class on .container surrounding .navbar, used for positioning it into place. */
.navbar-wrapper {
  position: relative;
  z-index: 15;
  padding: 0px 25px;
  margin: 0 auto 30px;
  background: #fff;
  border-bottom: 1px solid #eee;
}

.navbar-wrapper.filter-page.cloned {
	-webkit-box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.15);
 	-moz-box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.15);
  	box-shadow: 0 8px 6px -6px rgba(0, 0, 0, 0.15);
  	border-bottom: 1px solid #eee;
  	z-index: 9999!important;
  	 }

.nav.navbar-nav { max-width: 1440px; margin: 10px auto; overflow: hidden; text-align: center; }
  
ul.nav.navbar-nav { margin-left: auto; padding-left: 0px; margin-right: auto; }

.nav.navbar-nav li { display: inline-block; margin: 0 5px; padding-bottom: 7px; font-weight: 500; color: #454545; }

.nav.navbar-nav li a { border-bottom: 2px solid #eee; display: inline-block; color: #454545; padding-bottom: 7px; font-weight: 300; }

.nav.navbar-nav li a:hover { color: #C93428; text-decoration: none; border-bottom: 2px solid #C93428; }

.nav.navbar-nav li.menuItem.active a {  color: #C93428; text-decoration: none; border-bottom: 2px solid #C93428; font-weight: 500; }


.navbar.navbar-inverse.navbar-static-top {
  background: #5cb85c;
  border-color: #398439;
}
.navbar.navbar-inverse.navbar-static-top a{
  color:#fff;
}
.navbar.navbar-inverse.navbar-static-top a:hover{
  color:#0A64A4;
}
.navbar-inverse .navbar-nav>.active>a, .navbar-inverse .navbar-nav>.active>a:focus{
  background:#398439;
  font-weight:700;
}
.navbar-inverse .navbar-nav>.active>a:hover {
  background:#398439;
  color:#fff;
  font-weight:700;
}
  
.history-content h2, .band h2 strong, .first-three-headphones h2 { font-size: 38px; line-height: 42px; font-weight: 300; }
  
 
.contact form { 
  max-width: 780px;
  margin: 0 auto;
  }
  
.contact form .col-md-6 { 
  display: block !important;
  width: 100% !important;
  margin: 20px auto !important;
  } 
  
.contact form legend { font-weight: bold; display: block; margin-bottom: 10px; }
  
input.button, button.button {
background: #1d1d1d;
color: #fff;
font-size: 15px;
line-height: 21px;
-webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
padding: 15px 30px;
transition: all 0.2s linear 0s;
border: 1px solid #1d1d1d !important;
  }  

  
input:hover.button, button.button:hover {
background: #C93428;
opacity: 1;
border: 1px solid #C93428 !important;
text-decoration: none;
  }  
 
  button.button {
  display: table;
  margin-left: auto;
  margin-right: auto;
    border: 1px dashed red;
  }
  
  
  
form#contactForm select, section.contact select {
    background: #fff url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/arrow-down.gif?v=1615835338") right 10px no-repeat;
    border: 1px solid #ccc;
    cursor: pointer;
    overflow: hidden;
    border: 1px solid #ccc;
    box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.075) inset;
    outline: 0 none;
    padding: 0.75em;
    display: block;
    width: 100%;
}
  
  
  .contact form .control-group { font-weight: bold; }
  
  input[type="text"], input[type="text"]:disabled, input[type="tel"], input[type="email"], input[type="search"], input[type="password"], textarea, input#coupon_code {
    border: 1px solid #ccc;
    box-shadow: 1px 2px 3px rgba(0, 0, 0, 0.075) inset;
    outline: 0 none;
    padding: 0.75em;
    display: block;
    width: 100%;
}
  
  input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, input[type="search"]:focus, input[type="password"]:focus, textarea:focus {
    background-color: #f1f1f1;
    border-color: #f1f1f1;
    box-shadow: none;
}
 
  
 #shopify-section-product--static .product__policies.rte { display: none !important; }
  
  a.buy-on-amazon { background: #faca52; 
color: #333;
font-size: 15px;
line-height: 21px;
-webkit-border-radius: 100px;
-moz-border-radius: 100px;
border-radius: 100px;
padding: 18px 30px 5px;
width: 100%; 
    display: block;
transition: all 0.2s linear 0s;
text-align: center; 
  margin-top: -25px;
    margin-bottom: 40px;
  }

a.buy-on-amazon img {width: 130px; height: auto;}
  
a:hover.buy-on-amazon {opacity: .8;}
  
  
#fedexCrossBorderOverlay h2, #fedexCrossBorderOverlay p, #fedexCrossBorderOverlay h3 { 
    margin-bottom: 25px;
  }
  
   #fedexCrossBorderOverlay p { 
    margin-bottom: 15px;
    line-height: 24px;
  }
  
  
  .quick-search__input::placeholder {
    color: inherit;
    opacity: 0.5;
    color: #999 !important;
}
  
  .quick-search__bar input[type="text"] { 
  	color: #000 !important;
  }
  

  
  .manual-link a { 
    color: #c93428;
    font-weight: 800 !important;
    font-size: 14px;
    display: block;
    margin-top: -5px;
    line-height: 21px;
    margin-bottom: 20px; }
  
    .manual-link a:hover { 
    color: #c93428;
    font-weight: 800 !important;
    font-size: 14px;
    text-decoration: underline;
    line-height: 21px;
    margin-bottom: 20px; }

  
  
#contactForm.warranty { overflow: hidden; }
  
#contactForm.warranty ul { 
list-style: none; margin: 0; padding: 0; }
  
#contactForm.warranty li .field.the-name { 
display: inline-block;
width: 47.7%;
margin: 1%;
}
  
  
#contactForm.warranty .fieldset { margin-top: 0px; }  
#contactForm.warranty label {  font-weight: bold; }
  
#contactForm.warranty .input-box, .the-product-deets { margin: 0; }
  
.the-product-deets { padding-bottom: 0 !important;  margin: 0 !important; }
  
#contactForm.warranty li.fields { margin-bottom: 0; }
  
.the-product-deets li { 
width: 31.33%;
margin: 1%;
display: inline-block;
float: left;
vertical-align: top;
}
  
  
#contactForm.warranty em { padding-right: 5px; color: #c93428; }
  
#contactForm.warranty .city-state-zip { margin-top: 10px; margin-bottom: 0px; overflow: hidden; }
  
#contactForm.warranty .city-state-zip li { 
width: 23%;
margin: 1%;
display: inline-block;
float: left;
vertical-align: top;
}
  
#contactForm.warranty small { display: inline-block; vertical-align: top; }
  
 
  #nerdy-form-12358 .nf-form-check { margin-top: 0px !important; padding-top: 0px !important; }
  #nerdy-form-12358 .nf-form-check-label { margin-left: 10px; margin-top: 0px;  } 
  #nerdy-form-12358 label.nf-form-check-label p { margin-top: 3px !important; display: inline-block; }
  #nf-container-custom_60db38d559bad div { text-align: center; padding-top: 0; margin-top: 0; font-weight: 300; }
  #nerdy-form-12358 .nf-form-check { text-align: center; }
  #nerdy-form-12358 .nf-form-check input.nf-form-check-input { display: inline-block !important; }
  label.nf-form-check-label { display: inline-block !important; }
  

  .quick-cart__container option { 
  color: #000 !important;
  }
  
  
  .control-description { font-weight: bold; }
  
  
    /* Responsive Styles
-------------------------------------------------- */
@media only screen and (max-width: 1380px) { 
  
  .history-video-lead {
    height: auto;
    position: absolute;
    padding: 2% 3%;
}
  .history-video-lead h1 { margin-bottom: 10px; }
  
  .history-video-lead h2 { width: 55%; }
} 
 
  
@media only screen and (max-width: 1300px) { 
.product-single__title.upsell-font-color.upsell-addon-title {
    text-align: left;
    position: relative;
    z-index: 2;
    left: 0;
    top: 0;
    width: 100%;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    line-height: 21px;
}
  
  .upsell-price-value {
    text-align: center;
    display: block;
    position: relative;
    z-index: 2;
    left: 0;
    top: -20px;
    width: 100%;
    font-weight: bold;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    line-height: 15px;
    margin-bottom: 5px;
}
  
  .upsell-button-qty {
    text-align: center;
    position: relative;
    display: block;
    z-index: 2;
    left: 0;
    top: -20px;
    width: 60%;
    -webkit-transform: translate(0, 0);
    -ms-transform: translate(0, 0);
    transform: translate(0, 0);
    border-bottom: 1px solid #eee;
    line-height: 15px;
    margin-bottom: 0px !important;
}
  
button.btn.btn--full.product-form__cart-submit.btn--primary.upsell-addToCart.upsell-btn-qty { 
  width: 100%;
  margin-top: -35px;
}
  
  .upsell-button-qty {
    margin-bottom: 0px;
}
  

}
    
    
@media only screen and (max-width: 1180px) { 
  
  .v-mid-top {
    width: 88%;
}
  
  #contactForm.warranty li .field.the-name { 
display: inline-block;
width: 47%;
margin: 1%;
}
  
}  
  
  
@media only screen and (max-width: 1100px) {
  
  .contact-blocks { 
  margin-top: 45px;
  }
  
.contact-blocks li {
    width: 100%;
    display: block;
    margin: 1% 0 0 0;
    height: auto;
}
  
  
  .container-center-text {
    position: relative;
    text-align: center;
    z-index: 2;
    top: auto;
    left: auto;
    width: 100%;
    padding: 10px;
    -moz-transform: translateX(0%) translateY(0%);
    -webkit-transform: translateX(0%) translateY(0%);
    transform: translateX(0%) translateY(0%);
}
  
  .video-holder {
    width: 90%;
    margin: -80px auto 0 !important; 
    text-align: center;
}
  
}
  
  
  @media only screen and (max-width: 1070px) { 
  
  .history-video-lead {
    height: auto;
    position: absolute;
    padding: 2% 3%;
}
  .history-video-lead h1 { font-size: 24px; margin-bottom: 5px; }
  
  .history-video-lead h2 { width: 55%; font-size: 16px; line-height: 21px; }
} 
  
    
@media only screen and (max-width: 990px) {
  
.v-mid {
  word-break: break-word;
  position: relative;
  display: block;
  grid-area: media-text-content;
  padding: 0 0 0 0;
  top: 0; left: 0;
  margin-left: auto;
  margin-right: auto;
  margin-top: 30px;
  transform: translate(0,0);
}

.v-mid-left {
  word-break: break-word;
  position: relative;
  grid-area: media-text-content;
  padding: 0 0 0 0;
  top: 0; left: 0;
  margin-left: auto;
  margin-right: auto;
  transform: translate(0,0);
  width: 100%;
  margin-bottom: 30px;
}


.page-title-image {
    background: url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/affiliate-header.jpg?v=1612212568) left 0px no-repeat;
    background-size: auto;
    background-size: 100% auto;
    color: #fff;
    padding-top: 45%;
    padding-bottom: 0%;
    border-bottom: 1px solid #eee;
    position: relative;
    max-height: 580px;
}
  
  .page-title-image.utility {
    background: url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/Utility-Series-10.jpg?v=1634931100) left 0px no-repeat;
    background-size: auto;
    background-size: 100% auto;
    color: #fff;
    padding-top: 39%;
    padding-bottom: 0;
    position: relative;
    max-height:450px;
    display: block;
    border-bottom: 0;
}

.page-title-image h1, .page-title-image h2, .page-title-image p { color: #333 !important; }
  
.affiliate-page h3, .grey-band-aff h3, .page-title-image.utility h3  { font-size: 30px;
line-height: 40px; }

.v-mid-top {
  word-break: break-word;
  position: relative;
  grid-area: media-text-content;
  padding: 0 0 0 0;
  top: 0; left: 0;
  transform: translate(0,0);
  margin-left: auto;
  margin-right: auto;
  width: 90%;
   margin-top: 0px !important;
}

  .grey-band-aff { margin: 0 !important; padding: 40px 0 0 0 !important; }
  
  
  .grey-band-aff li {
    display: block;
    vertical-align: top;
    width: 90%;
    margin: 0 auto;
}
  
.grey-band-aff li img {
    width: 100%;
    height: auto;
}
  
.three-how-works li.arrow {
    background: url(https://cdn.shopify.com/s/files/1/0525/9608/0813/files/arrow-aff-down.gif?v=1612212567) center center no-repeat;
        background-size: auto;
    background-size: 65% auto;
    margin-top: 0px;
    width: 10%;
}

.three-how-works ul {
text-align: center;
}

.three-how-works li {
  display: block;
  padding-top: 100px;
  width: 90%;
  margin: 0 auto;
  vertical-align: top; }
  
  
  .activated-caption-content ul li { text-align: left; }
  
  .support-container { margin-top: 15px; }
  
  .col-left {
    display: block;
    width: 100%;
    text-align: left;
    vertical-align: top;
    margin: 0px auto 20px;
    
}
  
  .page__rte.ff-body.rte.rte--page.support-page {
    display: block;
    width: 100%;
    text-align: left;
    vertical-align: top;
    margin-bottom: 50px;
    padding-left: 25px;
    padding-right: 25px;
}
  
  .support-menu.desktop-view { 
	display: none;
  }
  
  
  .support-menu.mobile-view { 
	display: block;
    width: 100%;
    margin: 10px auto;
  }
  
  
.support-menu.mobile-view select.mobile-nav {
width: 100%;
margin: 0 auto !important;
}

.select-css {
display: block;
padding: 15px;
width: 100%;
max-width: 100%;
height: 50px;
box-sizing: border-box;
margin: 0;
border: 0px solid #aaa;
border-radius: 0px;
font-size: 14px;
line-height: 15px;
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
background: #c93428 url('https://cdn.shopify.com/s/files/1/0525/9608/0813/files/white-down-arrow.png?v=1612885244') no-repeat;
background-position: 98% 19px;
background-size: 20px auto;
color: #fff;
font-weight: bold;
}
  
.select-css::-ms-expand {
display: none;
color: #fff;
}
.select-css:hover {
border-color: #888;
color: #fff;
}
.select-css:focus {
border-color: #aaa;
box-shadow: 0 0 1px 3px rgba(59, 153, 252, .7);
box-shadow: 0 0 0 3px -moz-mac-focusring;
color: #333;
color: #fff;
outline: none;
}
.select-css option {
font-weight:normal;
}
  
  
  .history-video-lead {
    height: auto;
    position: absolute;
    padding: 2.5% 3%;
}
  .history-video-lead h1 { font-size: 30px; margin-bottom: 20px; }
  
  .history-video-lead h2 { display: none; }
  
}
  
  
  
@media only screen and (max-width: 770px) {
  .oem-overview li {
    display: block;
    width: 100%;
    margin-right: 0%;
    margin-bottom: 40px;
    float: none;
}
  
  .suppport-contact-block .contact-stuff {
    display: inline-block;
    float: left;
    width: 100%;
}
  
.suppport-contact-block .contact-title { display: none; }
.suppport-contact-block .contact-stuff li { display: inline-block; float: left; width: 29.33%; margin-left: 2%; text-align: left; }
  
.suppport-contact-block .contact-stuff li img.icon-space { display: none; }
  

  
}
  
  
   @media only screen and (max-width: 750px) {   
    .video-holder {
    width: 90%;
    margin: -70px auto 0 !important; 
    text-align: center;
}
 
}
  
  
  
@media only screen and (max-width: 680px) {   
  /* ============================================ *
 * History Section
 * ============================================ */

 .history-video-lead {
 	height: auto;
 	position: absolute;
 	padding: 7%;
 }

.history-video-lead h1, .history-video-lead h2, .history-video-lead h3 { color: #fff !important; }

.history-video-lead h1 { text-align: left !important; }

.history-video-lead h2,.history-video-lead h3 { width: 45%; font-weight: 300; font-size: 22px; line-height: 32px; margin: 0 0 2.5%; }

.history-video-lead a.watch-video {
	padding: 20px 25px 20px 75px;
	display: block;
	cursor: pointer;
	background: #c93428 url("/skin/frontend/koss/default/images/history/play-arrow.png") 15px 15px no-repeat;
	background: #c93428 url("/skin/frontend/koss/default/images/history/play-arrow.svg") 15px 15px no-repeat;
	background-size: 15%;
    display: inline-block;
    border: 0;
    line-height: 18px;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: nowrap;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    color: #fff;
    text-transform: uppercase;
    margin: 0 auto;
    font-family: 'Roboto', "Helvetica Neue", Helvetica, Arial, sans-serif;
    transition: all 0.2s linear 0s;
    -webkit-border-radius: 0px;
    -moz-border-radius: 0px;
    border-radius: 0px;
}

.history-video-lead a.watch-video:hover {
	background: #fff url("/skin/frontend/koss/default/images/history/play-arrow-on.png") 15px 15px no-repeat;
	background: #fff url("/skin/frontend/koss/default/images/history/play-arrow-on.svg") 15px 15px no-repeat;
	background-size: 15%;
	color: #c93428;
	text-decoration: none;
 }

.history img { width: 100%; height: auto; }

.to-the-right { float: right; }

.band { padding: 70px 0; overflow: hidden; border-bottom: 1px solid #ededed; }
.band-right { float: none; display: block; width: 100%; }
.band-left { float: none; display: block; width: 100%; }
.band-left img, .band-right img { width: 100%; height: auto; }
.band-left p, .band-right p { width: 75%; margin: 0 auto; text-align: center; }
.band h2 { text-align: center; }
.band h2 strong { font-weight: 400; letter-spacing: -1.5px; }
.band h3 { text-align: center; }



.image-left-side { width: 100%; float: none; display: block; }
.image-right-side { width: 100%; float: none; display: block; }
.to-the-left { float: none; }
img.inventing { display: block; width: 100%; height: 100%; }
img.inventing-right { display: block; width: auto; height: 100%; float: none; padding: 5%; }

.band.three-up ul, .band.four-up ul, .band.five-up ul, .band.six-up ul { margin-bottom: 0px; padding-left: 0px; }
.band.three-up li h3, .band.four-up li h3, .band.five-up li h3, .band.six-up li h3  { margin-bottom: 0px; }
.band.three-up li img, .band.four-up img, .band.five-up img, .band.six-up img { width: 100%; height: auto; margin-bottom: 5%; }
.two-up img { margin-bottom: 5%; }

.band.five-up img, .band.six-up img, .band.four-up img { padding: 15%; }

.band.two-up img { padding: 0 10% 0; }

.band.three-up li { width: 100%; display: block; margin-bottom: 50px; }

.band.four-up li { width:  100%; display: block; margin-bottom: 50px; }

.band.five-up li { width:  100%; display: block; margin-bottom: 50px; text-align: center; }

.band.six-up li { width:  100%; display: block; margin-bottom: 50px; text-align: center; }

.band.three-up.products img { padding: 10%; }


.billboard-txt {
	margin-top: 15%;
}


.history-container-top {
    margin: 0;
    padding: 0;
    width: 100%;
    height: 100%;
    display: table;
}
.history-container {
    display: table-cell;
    text-align: center;
    vertical-align: middle;
    width: 100%;
}
.history-content {
    padding: 0 15%;
    display: block;
    float: none;
    text-align: center;
}

.history-content-left {
    padding: 0 15%;
    display: block;
    float: none;
    text-align: center;
}

.history-content p, .history-content-left p { text-align: left; }

.first-four-headphones ul, .first-three-headphones ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

.first-four-headphones li {
	display: block;
	float: none;
	width: 100%;
	text-align: center;
}

.first-three-headphones li {
	display: block;
	float: none;
	width: 100%;
	text-align: center;
}

.first-four-headphones li img, .first-three-headphones li img { margin: 0 auto 15px; height: auto; width: auto; margin-bottom: 25px; }

 .first-three-headphones li img { padding: 0 5% 5%; }

.first-four-headphones h2, .first-three-headphones h2 { font-weight: 400; }

.first-four-headphones li p, .first-three-headphones li p { width: 70%; margin: 0 auto; }

.airforce1 img { width: 50%; float: left; display: inline-block; margin-bottom: 50px; }

.founded { padding: 5% 5% 0; }

   }

    
 @media only screen and (max-width: 680px) {   
	.history-video-lead {
    	height: auto;
    	position: absolute;
    	padding: 0;
      	left: 35px;
	}
   
   .history-video-lead a.watch-video {
    padding: 10px 15px 10px 55px;
    display: block;
    cursor: pointer;
    background: #c93428 url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/play-arrow.svg?v=1611937578") 15px 15px no-repeat;
    background-size: auto;
    background-size: 25px 25px;
    display: inline-block;
    border: 0;
    line-height: 18px;
    text-transform: uppercase;
    vertical-align: middle;
    white-space: nowrap;
    font-size: 14px;
    font-weight: 500;
    letter-spacing: 1px;
    color: #fff;
    text-transform: uppercase;
    margin: 0 auto;
    font-family: 'Roboto', "Helvetica Neue", Helvetica, Arial, sans-serif;
    transition: all 0.2s linear 0s;
}
   
   .history-video-lead h1 { margin-bottom: 0px; }
}
  
 @media only screen and (max-width: 620px) {   
    .video-holder {
    width: 90%;
    margin: -30px auto 0 !important; 
    text-align: center;
}
   
a.buy-on-amazon { background: #faca52; 
margin-top: 12px;
}
   
   #contactForm.warranty li .field.the-name, .the-product-deets li, #contactForm.warranty .city-state-zip li {
    display: inline-block;
    width: 98%;
    margin: 1%;
}
   
.upsell-addonbox-col3 div {
  display: block !important;
  width: 80px !important;
}

}
  
  .btn.light { border: 1px solid #999; }
  
  @media only screen and (max-width: 800px) {
  
    .cart__footer-actions .btn, .cart__footer-actions .shopify-payment-button__button, .cart__footer-actions .spr-summary-actions-newreview, .btn.light {
    width: 100%; display: block;  margin-bottom: 10px; margin-left: 5px !important; margin-right: 5px; float; none; text-align: center !important; }
  
  }
  
  
@media only screen and (max-width: 500px) {  
  
  .navbar-wrapper { display: none; }
  
 
}
    
.uwy {
	display: none;
}
  
.fs-body-base.footer__text::after { 
content: "";
width: 130px;
height: 75px;
background: url("https://cdn.shopify.com/s/files/1/0525/9608/0813/files/John-C-Koss.gif?v=1628782678") top left no-repeat;
background-size: 100% auto;
position: relative;
display: block;
padding-top: 15px;
}
 
.footer__newsletter .fs-body-base.footer__text::after { 
display: none;
}
  
  .upsell-discount-color {
  	color: #c93428;
    margin: 0.5em 0;
    font-style: italic;
  }
  .upsell-discount-label {
  	padding-right: 25px;
  }
    
  	
  input#mce-EMAIL { 
    padding: 18px 20px !important;
    border: 1px solid #000;
    margin-top: 15px !important;
    margin-bottom: 10px !important;
    border: 1px solid #ccc;
    box-shadow: 1px 2px 3px rgba(0,0,0,.075) inset;
    outline: 0 none;
    padding: .75em;
    display: inline-block;
    width: 70%;
    -webkit-border-radius: 100px;
    -moz-border-radius: 100px;
    border-radius: 100px;

  }
  
  @media only screen and (max-width: 1450px) {  
    
    input#mce-EMAIL { width: 100%; }
  
  }
  
  img.newsletter-guy { width: 90%; max-width: 520px; height: auto; margin: 0 auto 25px; }
  
  p.koss-newsletter { font-size: 18px; line-height: 28px; text-align: center; }
  
  .become-insider { text-align: center; width: 90%; max-width: 460px; margin: 10px auto 0 !important; }
  
  .become-insider #mc_embed_signup, .become-insider #mc_embed_signup_scroll { margin: 0 !important; padding: 0 !important; }
  
  .become-insider input#mce-EMAIL { width: 100%; }
  
  .popup__content input#mce-EMAIL { background: #fff; color: #333; }
  
  .popup__content input#mc-embedded-subscribe { background: #c93428;  }
  
h2.voting-title { margin-top: 50px; display: block; text-align: center; color: #C93428; font-size: 38px; line-height: 48px; }
h3.voting-title { display: block; text-align: center; font-size: 28px; line-height: 36px; margin-top: 0px !important; }
h3.voting-title .red-highlight { color: #C93428; }
p.voting-description, p.email-vote { display: block; text-align: center; font-size: 18px; 30px; width: 90%; margin: 0 auto; }
p.email-vote { margin-bottom: 25px; }
.indicates-required { display: block; text-align: center; margin-top: 0px; }
.asterisk { color: #C93428; }
#mc_embed_signup_scroll, #mc_embed_signup {  margin-top: 0px; }
  
  img.voting-header { margin-top: 40px; }
  
  .at-share-btn-elements { margin-top: 0!important; padding-top: 0!important; }
  
  #atstbx { margin-top: 7px!important; }
  
.colorways { overflow: hidden; text-align: center;} 
  
.colorways label {
  padding: 0;
  margin: 5px 0;
  font: 18px/26px Arial, sans-serif;
  border: 2px solid #fff;
  display: inline-block;
  margin: .75%;
  width: 23%;
  padding-bottom: 18px;
  text-align: center;
  background: #fff;
  font-weight: bold;
  display: inline-block; 
  margin: 0 .5%;
  }

  
p.voting-description.votes-count { font-size: 21px; line-height: 30px; }

.colorways label { background: #f0f0f0; border: 2px solid #f0f0f0; padding-bottom: 30px; }
  
.colorways label span.lift { margin-top: -5px; }


.colorways label:hover {
    border: 2px solid #c93428;
    cursor: pointer !important;
  }

.colorways img { width: 100% !important; height: auto; margin-bottom: 30px; }

.colorways label input[type="checkbox"] {
  position: relative;
  top: 3px;
  margin-right: 10px;
  border: 2px solid #999;
  background: #fff;
}

.colorways label.isSelected {
  border: 2px solid #c93428;
}

.mc-field-group { display: block; max-width: 900px; margin: 0 auto !important; text-align: center; }
  
#mc-embedded-subscribe-form input.button.vote-kph40 { cursor: pointer !important; font-size: 21px; line-height:28px; display: block; margin: 0 auto !important; }

  p.small-vote { font-size: 14px; line-height: 18px; }
  
.colorways input[type="checkbox"]:checked::before { background-color: #C93428 !important; }
  
  @media screen and (max-width: 780px) {
h2.voting-title { margin-top: 30px; display: block; text-align: center; color: #C93428; font-size: 30px; line-height: 38px; }
p.voting-description, p.email-vote { display: block; text-align: center; font-size: 16px; width: 90%; margin: 0 auto; }
    
.colorways label { margin: .75%; width: 45%; margin: 1%; }
}

label.colorway { position: relative; }
.zoomies { position: absolute; z-index: 1; right: 5px; top: 5px; width: 45px; height: 50px; display: block; font-size: 11px; text-align: center; }
.zoomies img.zoom-in { width: 20px !important; height: auto; margin-left: auto; margin-right: auto; margin-bottom: 0px; }
.featherlight-inner img { width: 100%; height: auto; }

#verifySpinner { width: 30px !important; height: 30px !important; display: block; margin-bottom: 15px; }

ul.lifestyles-nav { padding-left: 0px; margin: 0 0 50px 0; }
ul.lifestyles-nav li { overflow: hidden; }
ul.lifestyles-nav li a { display: block; display: inline-block; width: 100%; color: #000; font-weight: bold; transition: .3s ease; }
ul.lifestyles-nav li a:hover { color: #C93428;  }
.col-left.sidebar.life { float: left; }
h1.page__heading.life-header { font-weight: bold; margin: 0px auto 30px; text-align: left; }
.icon.lifestyle-navey { color: #666666; display: inline-block; float: right; transform: rotate(-90deg); opacity: 1; }
.life-style-page { display: inline-block; float: left; width: 44%; margin-left: 2.5%; margin-bottom: 60px; text-align: left; }
.influencers-side-bar { text-align: left; width: 25%; display: inline-block; float: right; vertical-align: top;}
.influencers-side-bar h2, .life-style-page h2 { font-weight: bold; margin-bottom: 10px; }
.influencers-side-bar a { color: #C93428;  }
.influencers-side-bar a:hover { text-decoration: underline; }
a.influencer-spot { display: block; width: 100%; margin-top: 20px; }
a.influencer-spot img { display: block; width: 100%; }
.join-tribe { display: block; margin: 40px 0 40px; }
.join-tribe p { display: block; margin-bottom: 20px; font-size: 18px; line-height: 24px; }
ul.lifestyles-nav li a.active, ul.lifestyles-nav li a.active .icon.lifestyle-navey { color: #C93428; }
.hi-influencers { width: 75%; display: block; overflow: hidden; }
.hi-influencers ul { margin: 0; padding: 0; overflow: hidden; }
.hi-influencers ul li { width: 28%; margin: 0 2%; display: inline-block; vertical-align: top; margin-bottom: 40px; }
.hi-influencers ul li img { width: 100%; height: auto; }
.hi-influencers ul li h3 { display: block; margin: 15px auto 10px; font-weight: bold; }
.showcase-gallery .showcase-gallery-description { display: block; margin: 10px 0 15px; text-align: left; }

@media screen and (max-width: 1280px) {
  .upsell-addonbox-col2 {
  display: block !important;
  width: 100% !important;
  }

  .upsell-addonbox-col3 div { display: block !important; width: 95x !important; }

  .upsell-addonbox-col3 div.upsell-qty-label { display: inline-block; width: 30px !important; float: left; }

  .upsell-addonbox-col3 div.upsell-qty-input { display: inline-block; width: 30px !important; float: right; }

  .upsell-defaultbox .upsell-addonbox-col3 { height: 100px; width: 100%; text-align: right; }

  .upsell-price-value { text-align: right; }

  upsell-price-value {
  text-align: left;
  position: relative;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  font-weight: bold;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  line-height: 15px;
}

}

@media screen and (max-width: 1080px) {
  
  .col-left.sidebar.life, h1.page__heading.life-header { margin-left: 20px; }
  .life-style-page, .influencers-side-bar { width: 100%; margin-right: 20px; float: none; display: block; clear: both; }
  .influencers-side-bar { width: 70%; margin-left: auto; margin-right: auto; }


}

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

  .upsell-addonbox-col2, .upsell-addonbox-col3 {
    display: block !important;
    width: 48% !important;
  }

  .upsell-addonbox-col3 { text-align: right; }

  .product-single__title.upsell-font-color.upsell-addon-title {
  text-align: left;
  position: relative;
  z-index: 2;
  left: 0;
  top: 0;
  width: 100%;
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, 0%);
  line-height: 21px;
}


.upsell-addonbox-col3 b { display: none; }

  .upsell-button-qty {
  text-align: left;
  position: relative;
  z-index: 2;
  left: 0;
  top: 0;
  width: 0;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  border-bottom: 1px solid #eee;
  line-height: 15px;
}

.upsell-button-qty { width: 80px; }

  button.btn.btn--full.product-form__cart-submit.btn--primary.upsell-addToCart.upsell-btn-qty {
  margin-top: 10px;
}
  
  .upsell-price-value {
  text-align: left;
  position: relative;
  z-index: 2;
  left: 0;
  top: 0;
  width: 0;
  font-weight: bold;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0);
  line-height: 15px;
}


}


