/** Shopify CDN: Minification failed

Line 1864:2 Comments in CSS use "/* ... */" instead of "//"
Line 3036:0 Unexpected "}"
Line 6113:0 Comments in CSS use "/* ... */" instead of "//"
Line 6180:0 Comments in CSS use "/* ... */" instead of "//"

**/
@charset "UTF-8";

/**
 * ----------------------------------------------------------------------------------------------
 * This is a variation of Normalize.css (http://necolas.github.io/normalize.css/)
 * ----------------------------------------------------------------------------------------------
 */

/**
 * Base
 */

*,
*:before,
*:after {
  box-sizing: border-box !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

*,
*:before,
*:after {
  box-sizing: border-box !important;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -ms-overflow-style: -ms-autohiding-scrollbar;
}

body {
  margin: 0;
}

[hidden] {
  display: none;
}

/**
 * HTML5 display definitions
 */

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

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

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

/**
 * Text-level semantic
 */

:active {
  outline: none;
}

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

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

b,
strong {
  font-weight: bold;
}

small {
  font-size: 80%;
}

p,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  font-size: inherit;
}

p:last-child,
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child {
  margin-bottom: 0;
}

/**
 * Embedded content
 */

img {
  max-width: 100%;
  height: auto;
  border: 0;
}

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

/**
 * Grouping content
 */

ul,
ol {
  margin: 0;
  padding: 0;
  list-style-position: inside;
}

pre {
  overflow: auto;
}

code,
kbd,
pre,
samp {
  font-family: monospace, monospace;
  font-size: 16px;
  font-size: 0.88889rem;
}

/**
 * Forms
 */

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

button {
  overflow: visible;
}

button,
select {
  text-transform: none;
}

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

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

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

input {
  line-height: normal;
}

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

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

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

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

fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 6px 10px 12px;
}

legend {
  border: 0;
  padding: 0;
}

textarea {
  overflow: auto;
}

optgroup {
  font-weight: bold;
}

/**
 * Tables
 */

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

td,
th {
  padding: 0;
}
.slick-slider {
  display: block;
  position: relative;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  position: relative;
  display: block;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.slick-list :focus {
    outline: none;
}

.slick-list .dragging {
    cursor: pointer;
}

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

.slick-track {
  display: block;
  position: relative;
  top: 0;
  left: 0;
}

.slick-track :before,
.slick-track :after {
    display: table;
    content: '';
}

.slick-track :after {
    clear: both;
}

.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  display: none;
  float: left;
  height: 100%;
  min-height: 1px;
  overflow: hidden;
}

[dir='rtl'] .slick-slide {
  float: right;
}

.slick-slide img {
  display: block;
}

.slick-slide.slick-loading img {
  display: none;
}

.slick-slide.dragging img {
  pointer-events: none;
}

.slick-initialized .slick-slide {
  display: block !important;
}

.slick-loading .slick-slide {
  visibility: hidden;
}

.slick-vertical .slick-slide {
  display: block;
  height: auto;
  border: 1px solid transparent;
}

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


/*------------------------------------
 *   GRID LAYOUT
 *------------------------------------*/

.grid {
  display: block;
  list-style: none;
  padding: 0;
  margin: 0 0 0 -25px;
  font-size: 0;
}

.grid__cell {
  box-sizing: border-box;
  display: inline-block;
  width: 100%;
  padding: 0 0 0 25px;
  margin: 0;
  vertical-align: top;
  font-size: 1rem;
}

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

.grid--center > .grid__cell {
  text-align: left;
}

.grid__cell--center {
  display: block;
  margin: 0 auto;
}

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

.grid--right > .grid__cell {
  text-align: left;
}

.grid--middle > .grid__cell {
  vertical-align: middle;
}

.grid--bottom > .grid__cell {
  vertical-align: bottom;
}

.grid--flush {
  margin-left: 0;
}

.grid--flush > .grid__cell {
  padding-left: 0;
}

.grid--tiny {
  margin-left: -6.25px;
}

.grid--tiny > .grid__cell {
  padding-left: 6.25px;
}

.grid--small {
  margin-left: -12.5px;
}

.grid--small > .grid__cell {
  padding-left: 12.5px;
}

.grid--auto > .grid__cell {
  width: auto;
}

@media screen and (min-width: 801px) {
  .grid--large {
    margin-left: -32px;
  }

  .grid--large > .grid__cell {
    padding-left: 32px;
  }

  .grid--huge {
    margin-left: -75px;
  }

  .grid--huge > .grid__cell {
    padding-left: 75px;
  }
}

/*------------------------------------*\
    GRID WIDTHS
\*------------------------------------*/

.\31\/2, .\32\/4, .\33\/6, .\34\/8, .\35\/10, .\36\/12 {
  width: 50%;
}

.\31\/3, .\32\/6, .\34\/12 {
  width: 33.33333333%;
}

.\32\/3, .\34\/6, .\38\/12 {
  width: 66.66666667%;
}

.\31\/4, .\32\/8, .\33\/12 {
  width: 25%;
}

.\33\/4, .\36\/8, .\39\/12 {
  width: 75%;
}

.\31\/5, .\32\/10 {
  width: 20%;
}

.\32\/5, .\34\/10 {
  width: 40%;
}

.\33\/5, .\36\/10 {
  width: 60%;
}

.\34\/5, .\38\/10 {
  width: 80%;
}

.\31\/6, .\32\/12 {
  width: 16.66666667%;
}

.\35\/6, .\31\30\/12 {
  width: 83.33333333%;
}

.\31\/8 {
  width: 12.5%;
}

.\33\/8 {
  width: 37.5%;
}

.\35\/8 {
  width: 62.5%;
}

.\37\/8 {
  width: 87.5%;
}

.\31\/10 {
  width: 10%;
}

.\33\/10 {
  width: 30%;
}

.\37\/10 {
  width: 70%;
}

.\39\/10 {
  width: 90%;
}

.\31\/12 {
  width: 8.33333333%;
}

.\35\/12 {
  width: 41.66666667%;
}

.\37\/12 {
  width: 58.33333333%;
}

.\31\31\/12 {
  width: 91.66666667%;
}

@media screen and (max-width: 559px) {
  .hidden-thumb {
    display: none !important;
  }

  .\31\/2--thumb, .\32\/4--thumb, .\33\/6--thumb, .\34\/8--thumb, .\35\/10--thumb, .\36\/12--thumb {
    width: 50%;
  }

  .\31\/3--thumb, .\32\/6--thumb, .\34\/12--thumb {
    width: 33.33333333%;
  }

  .\32\/3--thumb, .\34\/6--thumb, .\38\/12--thumb {
    width: 66.66666667%;
  }

  .\31\/4--thumb, .\32\/8--thumb, .\33\/12--thumb {
    width: 25%;
  }

  .\33\/4--thumb, .\36\/8--thumb, .\39\/12--thumb {
    width: 75%;
  }

  .\31\/5--thumb, .\32\/10--thumb {
    width: 20%;
  }

  .\32\/5--thumb, .\34\/10--thumb {
    width: 40%;
  }

  .\33\/5--thumb, .\36\/10--thumb {
    width: 60%;
  }

  .\34\/5--thumb, .\38\/10--thumb {
    width: 80%;
  }

  .\31\/6--thumb, .\32\/12--thumb {
    width: 16.66666667%;
  }

  .\35\/6--thumb, .\31\30\/12--thumb {
    width: 83.33333333%;
  }

  .\31\/8--thumb {
    width: 12.5%;
  }

  .\33\/8--thumb {
    width: 37.5%;
  }

  .\35\/8--thumb {
    width: 62.5%;
  }

  .\37\/8--thumb {
    width: 87.5%;
  }

  .\31\/10--thumb {
    width: 10%;
  }

  .\33\/10--thumb {
    width: 30%;
  }

  .\37\/10--thumb {
    width: 70%;
  }

  .\39\/10--thumb {
    width: 90%;
  }

  .\31\/12--thumb {
    width: 8.33333333%;
  }

  .\35\/12--thumb {
    width: 41.66666667%;
  }

  .\37\/12--thumb {
    width: 58.33333333%;
  }

  .\31\31\/12--thumb {
    width: 91.66666667%;
  }
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .hidden-handheld {
    display: none !important;
  }

  .\31\/2--handheld, .\32\/4--handheld, .\33\/6--handheld, .\34\/8--handheld, .\35\/10--handheld, .\36\/12--handheld {
    width: 50%;
  }

  .\31\/3--handheld, .\32\/6--handheld, .\34\/12--handheld {
    width: 33.33333333%;
  }

  .\32\/3--handheld, .\34\/6--handheld, .\38\/12--handheld {
    width: 66.66666667%;
  }

  .\31\/4--handheld, .\32\/8--handheld, .\33\/12--handheld {
    width: 25%;
  }

  .\33\/4--handheld, .\36\/8--handheld, .\39\/12--handheld {
    width: 75%;
  }

  .\31\/5--handheld, .\32\/10--handheld {
    width: 20%;
  }

  .\32\/5--handheld, .\34\/10--handheld {
    width: 40%;
  }

  .\33\/5--handheld, .\36\/10--handheld {
    width: 60%;
  }

  .\34\/5--handheld, .\38\/10--handheld {
    width: 80%;
  }

  .\31\/6--handheld, .\32\/12--handheld {
    width: 16.66666667%;
  }

  .\35\/6--handheld, .\31\30\/12--handheld {
    width: 83.33333333%;
  }

  .\31\/8--handheld {
    width: 12.5%;
  }

  .\33\/8--handheld {
    width: 37.5%;
  }

  .\35\/8--handheld {
    width: 62.5%;
  }

  .\37\/8--handheld {
    width: 87.5%;
  }

  .\31\/10--handheld {
    width: 10%;
  }

  .\33\/10--handheld {
    width: 30%;
  }

  .\37\/10--handheld {
    width: 70%;
  }

  .\39\/10--handheld {
    width: 90%;
  }

  .\31\/12--handheld {
    width: 8.33333333%;
  }

  .\35\/12--handheld {
    width: 41.66666667%;
  }

  .\37\/12--handheld {
    width: 58.33333333%;
  }

  .\31\31\/12--handheld {
    width: 91.66666667%;
  }
}

@media screen and (min-width: 560px) {
  .hidden-handheld-and-up {
    display: none !important;
  }

  .\31\/2--handheld-and-up, .\32\/4--handheld-and-up, .\33\/6--handheld-and-up, .\34\/8--handheld-and-up, .\35\/10--handheld-and-up, .\36\/12--handheld-and-up {
    width: 50%;
  }

  .\31\/3--handheld-and-up, .\32\/6--handheld-and-up, .\34\/12--handheld-and-up {
    width: 33.33333333%;
  }

  .\32\/3--handheld-and-up, .\34\/6--handheld-and-up, .\38\/12--handheld-and-up {
    width: 66.66666667%;
  }

  .\31\/4--handheld-and-up, .\32\/8--handheld-and-up, .\33\/12--handheld-and-up {
    width: 25%;
  }

  .\33\/4--handheld-and-up, .\36\/8--handheld-and-up, .\39\/12--handheld-and-up {
    width: 75%;
  }

  .\31\/5--handheld-and-up, .\32\/10--handheld-and-up {
    width: 20%;
  }

  .\32\/5--handheld-and-up, .\34\/10--handheld-and-up {
    width: 40%;
  }

  .\33\/5--handheld-and-up, .\36\/10--handheld-and-up {
    width: 60%;
  }

  .\34\/5--handheld-and-up, .\38\/10--handheld-and-up {
    width: 80%;
  }

  .\31\/6--handheld-and-up, .\32\/12--handheld-and-up {
    width: 16.66666667%;
  }

  .\35\/6--handheld-and-up, .\31\30\/12--handheld-and-up {
    width: 83.33333333%;
  }

  .\31\/8--handheld-and-up {
    width: 12.5%;
  }

  .\33\/8--handheld-and-up {
    width: 37.5%;
  }

  .\35\/8--handheld-and-up {
    width: 62.5%;
  }

  .\37\/8--handheld-and-up {
    width: 87.5%;
  }

  .\31\/10--handheld-and-up {
    width: 10%;
  }

  .\33\/10--handheld-and-up {
    width: 30%;
  }

  .\37\/10--handheld-and-up {
    width: 70%;
  }

  .\39\/10--handheld-and-up {
    width: 90%;
  }

  .\31\/12--handheld-and-up {
    width: 8.33333333%;
  }

  .\35\/12--handheld-and-up {
    width: 41.66666667%;
  }

  .\37\/12--handheld-and-up {
    width: 58.33333333%;
  }

  .\31\31\/12--handheld-and-up {
    width: 91.66666667%;
  }
}

@media screen and (max-width: 800px) {
  .hidden-pocket {
    display: none !important;
  }

  .\31\/2--pocket, .\32\/4--pocket, .\33\/6--pocket, .\34\/8--pocket, .\35\/10--pocket, .\36\/12--pocket {
    width: 50%;
  }

  .\31\/3--pocket, .\32\/6--pocket, .\34\/12--pocket {
    width: 33.33333333%;
  }

  .\32\/3--pocket, .\34\/6--pocket, .\38\/12--pocket {
    width: 66.66666667%;
  }

  .\31\/4--pocket, .\32\/8--pocket, .\33\/12--pocket {
    width: 25%;
  }

  .\33\/4--pocket, .\36\/8--pocket, .\39\/12--pocket {
    width: 75%;
  }

  .\31\/5--pocket, .\32\/10--pocket {
    width: 20%;
  }

  .\32\/5--pocket, .\34\/10--pocket {
    width: 40%;
  }

  .\33\/5--pocket, .\36\/10--pocket {
    width: 60%;
  }

  .\34\/5--pocket, .\38\/10--pocket {
    width: 80%;
  }

  .\31\/6--pocket, .\32\/12--pocket {
    width: 16.66666667%;
  }

  .\35\/6--pocket, .\31\30\/12--pocket {
    width: 83.33333333%;
  }

  .\31\/8--pocket {
    width: 12.5%;
  }

  .\33\/8--pocket {
    width: 37.5%;
  }

  .\35\/8--pocket {
    width: 62.5%;
  }

  .\37\/8--pocket {
    width: 87.5%;
  }

  .\31\/10--pocket {
    width: 10%;
  }

  .\33\/10--pocket {
    width: 30%;
  }

  .\37\/10--pocket {
    width: 70%;
  }

  .\39\/10--pocket {
    width: 90%;
  }

  .\31\/12--pocket {
    width: 8.33333333%;
  }

  .\35\/12--pocket {
    width: 41.66666667%;
  }

  .\37\/12--pocket {
    width: 58.33333333%;
  }

  .\31\31\/12--pocket {
    width: 91.66666667%;
  }
}

@media screen and (min-width: 801px) and (max-width: 1024px) {
  .hidden-lap {
    display: none !important;
  }

  .\31\/2--lap, .\32\/4--lap, .\33\/6--lap, .\34\/8--lap, .\35\/10--lap, .\36\/12--lap {
    width: 50%;
  }

  .\31\/3--lap, .\32\/6--lap, .\34\/12--lap {
    width: 33.33333333%;
  }

  .\32\/3--lap, .\34\/6--lap, .\38\/12--lap {
    width: 66.66666667%;
  }

  .\31\/4--lap, .\32\/8--lap, .\33\/12--lap {
    width: 25%;
  }

  .\33\/4--lap, .\36\/8--lap, .\39\/12--lap {
    width: 75%;
  }

  .\31\/5--lap, .\32\/10--lap {
    width: 20%;
  }

  .\32\/5--lap, .\34\/10--lap {
    width: 40%;
  }

  .\33\/5--lap, .\36\/10--lap {
    width: 60%;
  }

  .\34\/5--lap, .\38\/10--lap {
    width: 80%;
  }

  .\31\/6--lap, .\32\/12--lap {
    width: 16.66666667%;
  }

  .\35\/6--lap, .\31\30\/12--lap {
    width: 83.33333333%;
  }

  .\31\/8--lap {
    width: 12.5%;
  }

  .\33\/8--lap {
    width: 37.5%;
  }

  .\35\/8--lap {
    width: 62.5%;
  }

  .\37\/8--lap {
    width: 87.5%;
  }

  .\31\/10--lap {
    width: 10%;
  }

  .\33\/10--lap {
    width: 30%;
  }

  .\37\/10--lap {
    width: 70%;
  }

  .\39\/10--lap {
    width: 90%;
  }

  .\31\/12--lap {
    width: 8.33333333%;
  }

  .\35\/12--lap {
    width: 41.66666667%;
  }

  .\37\/12--lap {
    width: 58.33333333%;
  }

  .\31\31\/12--lap {
    width: 91.66666667%;
  }
}

@media screen and (min-width: 801px) {
  .hidden-lap-and-up {
    display: none !important;
  }

  .\31\/2--lap-and-up, .\32\/4--lap-and-up, .\33\/6--lap-and-up, .\34\/8--lap-and-up, .\35\/10--lap-and-up, .\36\/12--lap-and-up {
    width: 50%;
  }

  .\31\/3--lap-and-up, .\32\/6--lap-and-up, .\34\/12--lap-and-up {
    width: 33.33333333%;
  }

  .\32\/3--lap-and-up, .\34\/6--lap-and-up, .\38\/12--lap-and-up {
    width: 66.66666667%;
  }

  .\31\/4--lap-and-up, .\32\/8--lap-and-up, .\33\/12--lap-and-up {
    width: 25%;
  }

  .\33\/4--lap-and-up, .\36\/8--lap-and-up, .\39\/12--lap-and-up {
    width: 75%;
  }

  .\31\/5--lap-and-up, .\32\/10--lap-and-up {
    width: 20%;
  }

  .\32\/5--lap-and-up, .\34\/10--lap-and-up {
    width: 40%;
  }

  .\33\/5--lap-and-up, .\36\/10--lap-and-up {
    width: 60%;
  }

  .\34\/5--lap-and-up, .\38\/10--lap-and-up {
    width: 80%;
  }

  .\31\/6--lap-and-up, .\32\/12--lap-and-up {
    width: 16.66666667%;
  }

  .\35\/6--lap-and-up, .\31\30\/12--lap-and-up {
    width: 83.33333333%;
  }

  .\31\/8--lap-and-up {
    width: 12.5%;
  }

  .\33\/8--lap-and-up {
    width: 37.5%;
  }

  .\35\/8--lap-and-up {
    width: 62.5%;
  }

  .\37\/8--lap-and-up {
    width: 87.5%;
  }

  .\31\/10--lap-and-up {
    width: 10%;
  }

  .\33\/10--lap-and-up {
    width: 30%;
  }

  .\37\/10--lap-and-up {
    width: 70%;
  }

  .\39\/10--lap-and-up {
    width: 90%;
  }

  .\31\/12--lap-and-up {
    width: 8.33333333%;
  }

  .\35\/12--lap-and-up {
    width: 41.66666667%;
  }

  .\37\/12--lap-and-up {
    width: 58.33333333%;
  }

  .\31\31\/12--lap-and-up {
    width: 91.66666667%;
  }
}

@media screen and (min-width: 1025px) {
  .hidden-desk {
    display: none !important;
  }

  .\31\/2--desk, .\32\/4--desk, .\33\/6--desk, .\34\/8--desk, .\35\/10--desk, .\36\/12--desk {
    width: 50%;
  }

  .\31\/3--desk, .\32\/6--desk, .\34\/12--desk {
    width: 33.33333333%;
  }

  .\32\/3--desk, .\34\/6--desk, .\38\/12--desk {
    width: 66.66666667%;
  }

  .\31\/4--desk, .\32\/8--desk, .\33\/12--desk {
    width: 25%;
  }

  .\33\/4--desk, .\36\/8--desk, .\39\/12--desk {
    width: 75%;
  }

  .\31\/5--desk, .\32\/10--desk {
    width: 20%;
  }

  .\32\/5--desk, .\34\/10--desk {
    width: 40%;
  }

  .\33\/5--desk, .\36\/10--desk {
    width: 60%;
  }

  .\34\/5--desk, .\38\/10--desk {
    width: 80%;
  }

  .\31\/6--desk, .\32\/12--desk {
    width: 16.66666667%;
  }

  .\35\/6--desk, .\31\30\/12--desk {
    width: 83.33333333%;
  }

  .\31\/8--desk {
    width: 12.5%;
  }

  .\33\/8--desk {
    width: 37.5%;
  }

  .\35\/8--desk {
    width: 62.5%;
  }

  .\37\/8--desk {
    width: 87.5%;
  }

  .\31\/10--desk {
    width: 10%;
  }

  .\33\/10--desk {
    width: 30%;
  }

  .\37\/10--desk {
    width: 70%;
  }

  .\39\/10--desk {
    width: 90%;
  }

  .\31\/12--desk {
    width: 8.33333333%;
  }

  .\35\/12--desk {
    width: 41.66666667%;
  }

  .\37\/12--desk {
    width: 58.33333333%;
  }

  .\31\31\/12--desk {
    width: 91.66666667%;
  }
}
/* Create each media query */
@media screen and (min-width: 1280px) {
  .hidden-widescreen {
    display: none !important;
  }

  .\31\/2--widescreen, .\32\/4--widescreen, .\33\/6--widescreen, .\34\/8--widescreen, .\35\/10--widescreen, .\36\/12--widescreen {
    width: 50%;
  }

  .\31\/3--widescreen, .\32\/6--widescreen, .\34\/12--widescreen {
    width: 33.33333333%;
  }

  .\32\/3--widescreen, .\34\/6--widescreen, .\38\/12--widescreen {
    width: 66.66666667%;
  }

  .\31\/4--widescreen, .\32\/8--widescreen, .\33\/12--widescreen {
    width: 25%;
  }

  .\33\/4--widescreen, .\36\/8--widescreen, .\39\/12--widescreen {
    width: 75%;
  }

  .\31\/5--widescreen, .\32\/10--widescreen {
    width: 20%;
  }

  .\32\/5--widescreen, .\34\/10--widescreen {
    width: 40%;
  }

  .\33\/5--widescreen, .\36\/10--widescreen {
    width: 60%;
  }

  .\34\/5--widescreen, .\38\/10--widescreen {
    width: 80%;
  }

  .\31\/6--widescreen, .\32\/12--widescreen {
    width: 16.66666667%;
  }

  .\35\/6--widescreen, .\31\30\/12--widescreen {
    width: 83.33333333%;
  }

  .\31\/8--widescreen {
    width: 12.5%;
  }

  .\33\/8--widescreen {
    width: 37.5%;
  }

  .\35\/8--widescreen {
    width: 62.5%;
  }

  .\37\/8--widescreen {
    width: 87.5%;
  }

  .\31\/10--widescreen {
    width: 10%;
  }

  .\33\/10--widescreen {
    width: 30%;
  }

  .\37\/10--widescreen {
    width: 70%;
  }

  .\39\/10--widescreen {
    width: 90%;
  }

  .\31\/12--widescreen {
    width: 8.33333333%;
  }

  .\35\/12--widescreen {
    width: 41.66666667%;
  }

  .\37\/12--widescreen {
    width: 58.33333333%;
  }

  .\31\31\/12--widescreen {
    width: 91.66666667%;
  }
}
/* Magnific Popup CSS */
.mfp-bg {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1042;
  overflow: hidden;
  position: fixed;
  background: #000000;
  opacity: 0.6;
}

.mfp-wrap {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1043;
  position: fixed;
  outline: none !important;
  -webkit-backface-visibility: hidden;
}

.mfp-container {
  text-align: center;
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  padding: 0 8px;
  box-sizing: border-box;
}

.mfp-container:before {
  content: '';
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.mfp-align-top .mfp-container:before {
  display: none;
}

.mfp-content {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin: 0 auto;
  text-align: left;
  z-index: 1045;
}

.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content {
  width: 100%;
  cursor: auto;
}

.mfp-ajax-cur {
  cursor: progress;
}

.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close {
  cursor: -webkit-zoom-out;
  cursor: zoom-out;
}

.mfp-zoom {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.mfp-auto-cursor .mfp-content {
  cursor: auto;
}

.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.mfp-loading.mfp-figure {
  display: none;
}

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

.mfp-preloader {
  color: #CCC;
  position: absolute;
  top: 50%;
  width: auto;
  text-align: center;
  margin-top: -0.8em;
  left: 8px;
  right: 8px;
  z-index: 1044;
}

.mfp-preloader a {
  color: #CCC;
}

.mfp-preloader a:hover {
  color: #FFF;
}

.mfp-s-ready .mfp-preloader {
  display: none;
}

.mfp-s-error .mfp-content {
  display: none;
}

button.mfp-close,
button.mfp-arrow {
  overflow: visible;
  cursor: pointer;
  background: transparent;
  border: 0;
  -webkit-appearance: none;
  display: block;
  outline: none;
  padding: 0;
  z-index: 1046;
  box-shadow: none;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
}

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

.mfp-close {
  width: 44px;
  height: 44px;
  line-height: 44px;
  position: absolute;
  right: 0;
  top: 0;
  text-decoration: none;
  text-align: center;
  opacity: 0.65;
  padding: 0 0 18px 10px;
  color: #FFF;
  font-style: normal;
  font-size: 28px;
  font-size: 1.55556rem;
  font-family: Arial, Baskerville, monospace;
}

.mfp-close:hover,
.mfp-close:focus {
  opacity: 1;
}

.mfp-close:active {
  top: 1px;
}

.mfp-close-btn-in .mfp-close {
  color: #333;
}

.mfp-image-holder .mfp-close,
.mfp-iframe-holder .mfp-close {
  color: #FFF;
  right: -6px;
  text-align: right;
  padding-right: 6px;
  width: 100%;
}

.mfp-counter {
  position: absolute;
  top: 0;
  right: 0;
  color: #CCC;
  font-size: 12px;
  font-size: 0.66667rem;
  line-height: 18px;
  white-space: nowrap;
}

.mfp-arrow {
  position: absolute;
  opacity: 0.65;
  margin: 0;
  top: 50%;
  margin-top: -55px;
  padding: 0;
  width: 90px;
  height: 110px;
  color: #ffffff;
  -webkit-tap-highlight-color: transparent;
}

.mfp-arrow svg {
  width: 36px;
  height: 36px;
}

.mfp-arrow:active {
  margin-top: -54px;
}

.mfp-arrow:hover,
.mfp-arrow:focus {
  opacity: 1;
}

.mfp-arrow-left {
  left: 0;
}

.mfp-arrow-right {
  right: 0;
}

.mfp-iframe-holder {
  padding-top: 40px;
  padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
  line-height: 0;
  width: 100%;
  max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
  top: -40px;
}

.mfp-iframe-scaler {
  width: 100%;
  height: 0;
  overflow: hidden;
  padding-top: 56.25%;
}

.mfp-iframe-scaler iframe {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #000;
}

/* Main image in popup */
img.mfp-img {
  width: auto;
  max-width: 100%;
  height: auto;
  display: block;
  line-height: 0;
  box-sizing: border-box;
  padding: 40px 0 40px;
  margin: 0 auto;
}

/* The shadow behind the image */
.mfp-figure {
  line-height: 0;
}

.mfp-figure:after {
  content: '';
  position: absolute;
  left: 0;
  top: 40px;
  bottom: 40px;
  display: block;
  right: 0;
  width: auto;
  height: auto;
  z-index: -1;
  box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
  background: #444;
}

.mfp-figure small {
  color: #BDBDBD;
  display: block;
  font-size: 12px;
  font-size: 0.66667rem;
  line-height: 14px;
}

.mfp-figure figure {
  margin: 0;
}

.mfp-bottom-bar {
  margin-top: -36px;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  cursor: auto;
}

.mfp-title {
  text-align: left;
  line-height: 18px;
  color: #F3F3F3;
  word-wrap: break-word;
  padding-right: 36px;
}

.mfp-image-holder .mfp-content {
  max-width: 86%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
  cursor: pointer;
}

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
  .mfp-img-mobile .mfp-image-holder {
    padding-left: 0;
    padding-right: 0;
  }

  .mfp-img-mobile img.mfp-img {
    padding: 0;
  }

  .mfp-img-mobile .mfp-figure:after {
    top: 0;
    bottom: 0;
  }

  .mfp-img-mobile .mfp-figure small {
    display: inline;
    margin-left: 5px;
  }

  .mfp-img-mobile .mfp-bottom-bar {
    background: rgba(0, 0, 0, 0.6);
    bottom: 0;
    margin: 0;
    top: auto;
    padding: 3px 5px;
    position: fixed;
    box-sizing: border-box;
  }

  .mfp-img-mobile .mfp-bottom-bar:empty {
    padding: 0;
  }

  .mfp-img-mobile .mfp-counter {
    right: 5px;
    top: 3px;
  }

  .mfp-img-mobile .mfp-close {
    top: 0;
    right: 0;
    width: 35px;
    height: 35px;
    line-height: 35px;
    background: rgba(0, 0, 0, 0.6);
    position: fixed;
    text-align: center;
    padding: 0;
  }
}

@media all and (max-width: 900px) {
  .mfp-arrow {
    -webkit-transform: scale(0.75);
    -ms-transform: scale(0.75);
    transform: scale(0.75);
  }

  .mfp-arrow-left {
    -webkit-transform-origin: 0;
    -ms-transform-origin: 0;
    transform-origin: 0;
  }

  .mfp-arrow-right {
    -webkit-transform-origin: 100%;
    -ms-transform-origin: 100%;
    transform-origin: 100%;
  }

  .mfp-container {
    padding-left: 6px;
    padding-right: 6px;
  }
}
.plyr {
  position: relative;
}

.plyr :focus {
    outline: none;
}

.plyr__play-large {
  position: absolute;
  left: calc(50% - 22.5px);
  top: calc(50% - 22.5px);
  background: transparent;
  fill: #ffffff;
  border: none;
  opacity: 1;
  transition: opacity 0.2s ease-in-out;
  will-change: opacity;
}

.plyr__play-large svg {
    width: 45px;
    height: 45px;
}

.plyr__sr-only {
  visibility: hidden;
}

/* As we can't remove the play icon on YouTube player, no need to add our own icon */
.plyr--youtube .plyr__play-large {
  display: none;
}

.plyr:not(.plyr--playing):hover .plyr__play-large {
  opacity: 0.6;
}

.plyr--playing .plyr__play-large {
  opacity: 0;
}

.plyr__video-wrapper {
  position: relative;
}

.plyr__video-embed {
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  z-index: 0;
}

.plyr__video-embed > div {
  position: relative;
  padding-bottom: 200%;
  -webkit-transform: translateY(-35.95%);
  -ms-transform: translateY(-35.95%);
  transform: translateY(-35.95%);
}

.plyr__video-embed iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  z-index: 0;
  cursor: pointer;
}

.plyr .plyr__video-embed iframe {
  pointer-events: none;
}

.plyr__controls {
  display: none;
}

.plyr--fullscreen-active {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  height: 100%;
  width: 100%;
  z-index: 10000000;
  background: #000;
  border-radius: 0 !important;
}

.plyr--fullscreen-active video {
    height: 100%;
  }

.plyr--fullscreen-active .plyr__video-wrapper {
    height: 100%;
    width: 100%;
  }

.plyr--fullscreen-active .plyr__controls {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
  }

  // Vimeo requires some different styling
.plyr--fullscreen-active .plyr--vimeo .plyr__video-wrapper {
    height: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}
/*
 *  Remodal - v1.1.0
 *  Responsive, lightweight, fast, synchronized with CSS animations, fully customizable modal window plugin with declarative configuration and hash tracking.
 *  http://vodkabears.github.io/remodal/
 *
 *  Made by Ilya Makarov
 *  Under MIT License
 */

/* Hide scroll bar */

html.remodal-is-locked {
  overflow: hidden;
  -ms-touch-action: none;
  touch-action: none;
}

.remodal,
[data-remodal-id] {
  display: none;
}

/* Necessary styles of the overlay */

.remodal-overlay {
  position: fixed;
  z-index: 9999;
  top: -5000px;
  right: -5000px;
  bottom: -5000px;
  left: -5000px;
  display: none;
}

/* Necessary styles of the wrapper */

.remodal-wrapper {
  position: fixed;
  z-index: 10000;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  padding: 0;
  display: none;
  overflow: auto;
  text-align: center;
  -webkit-overflow-scrolling: touch;
}

.remodal-wrapper:after {
  display: inline-block;
  height: 100%;
  margin-left: -0.05em;
  content: "";
}

/* Fix iPad, iPhone glitches */

.remodal-overlay,
.remodal-wrapper {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}

/* Necessary styles of the modal dialog */

.remodal {
  position: relative;
  outline: none;
  width: 100%;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

.remodal-is-initialized {
  display: inline-block;
}

/* Default theme styles of the overlay */

.remodal-overlay {
  background: rgba(#000000, 0.7);
}

.remodal-overlay.remodal-is-opening,
.remodal-overlay.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal-overlay.remodal-is-opening {
  -webkit-animation-name: remodal-overlay-opening-keyframes;
  animation-name: remodal-overlay-opening-keyframes;
}

.remodal-overlay.remodal-is-closing {
  -webkit-animation-name: remodal-overlay-closing-keyframes;
  animation-name: remodal-overlay-closing-keyframes;
}

/* Default theme styles of the modal dialog */

.remodal {
  box-sizing: border-box;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.remodal.remodal-is-opening,
.remodal.remodal-is-closing {
  -webkit-animation-duration: 0.3s;
  animation-duration: 0.3s;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.remodal.remodal-is-opening {
  -webkit-animation-name: remodal-opening-keyframes;
  animation-name: remodal-opening-keyframes;
}

.remodal.remodal-is-closing {
  -webkit-animation-name: remodal-closing-keyframes;
  animation-name: remodal-closing-keyframes;
}

/* Vertical align of the modal dialog */

.remodal,
.remodal-wrapper:after {
  vertical-align: middle;
}

@-webkit-keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@keyframes remodal-opening-keyframes {
  from {
    -webkit-transform: scale(1.05);
    transform: scale(1.05);
    opacity: 0;
  }
  to {
    -webkit-transform: none;
    transform: none;
    opacity: 1;
  }
}

@-webkit-keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
  }
}

@keyframes remodal-closing-keyframes {
  from {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 1;
  }
  to {
    -webkit-transform: scale(0.95);
    transform: scale(0.95);
    opacity: 0;
  }
}

@-webkit-keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@keyframes remodal-overlay-opening-keyframes {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}

@-webkit-keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@keyframes remodal-overlay-closing-keyframes {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}

@media screen and (min-width: 560px) {
  .remodal-wrapper {
    padding: 10px;
  }
}

/**
 * Trademark is all about overlay applied over images. This code abstract away this through a convenient "apply-accent-overlay" class
 */

.accent-overlay {
  position: relative;
  color: var(--background);
  background-size: cover;
  background-position: center center;
}
/* Please note that ideally I'd use a pseudo-element here. Unfortunately IE9-11 does not handle well pseudo element that are child of table-cell (the height
    100% does not work correctly). As a consequence, I decided to use a span instead */

.no-backgroundblendmode .accent-overlay {
  overflow: hidden;
}
.no-backgroundblendmode .accent-overlay::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 2000px;
}

/* Lazyloading */

.image--fade-in {
  opacity: 0;
  transition: opacity 0.3s ease;
}
.lazyloaded.image--fade-in {
  opacity: 1;
}

/* Aspect ratio */

.aspect-ratio {
  position: relative;
  margin-left: auto;
  margin-right: auto;
}
.aspect-ratio > img,
.no-js .aspect-ratio > noscript img {
  position: absolute;
  height: 100%;
  width: 100%;
  max-width: 100%;
  max-height: 100%;
  top: 0;
  left: 0;
}
img.lazyload[data-sizes=auto] {
  width: 100%;
  
  /* this is needed to help LazySizes calculate the correct size */
}

/* Placeholder background */
.placeholder-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
.placeholder-background > .placeholder-svg {
  fill: var(--text-color);
  background-color: var(--background);
}

/**
 * SOME GENERAL RULES WITH DEFAULT STYLE FOR BACKGROUND AND CONTAINER
 */

.page__container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  min-height: 100vh;
  height: 100%;
  background: var(--secondary-background);
}

.shopify-section__announcement-bar,
.shopify-section__extra-bar,
.shopify-section__header,
.shopify-section__footer {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.main-wrap-color {
  flex: 1 0 auto;
  max-width: 1330px;
  width: 100%;
  margin: 0 auto;
  background-color: #fff;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;  flex: 1 0 auto;
  padding-top: 6px;
  margin-top: -6px;
}

.main {
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  background: var(--secondary-background);
}

.page__container--secondary .main {
  background: var(--secondary-background);
}

.no-scroll {
  overflow: hidden;
}

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

.container {
  max-width: 1330px;
  padding: 25px 25px 0;
  background-color: #fff;
}

.container-white {
  max-width: 1330px;
  padding: 25px 25px 0;
  background-color: #fff;
}

.container-search {
  max-width: 1330px;
  margin: 0 auto;
  padding: 0 25px;
}

.container-image-background {
  background-color: rgba(255, 255, 255, 0);
  padding: 25px !important;
}

.footer-container {
  max-width: 1330px;
  padding: 25px 25px 0;
  background-color: var(--secondary-button-background);
  margin: 0 auto;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

.footer-copyright {
  font-size: .8rem;
  letter-spacing: .02rem;
  color: #ffffff;
  text-align: center;
  background-color: #03314d; 
  max-width: 1330px;
  padding: 16px 25px; 
  margin: 0 auto;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

.footer-spacer {
  background-color: #fff; 
  max-width: 1330px;
  padding: 15px 25px;
  margin: 0 auto;
  border-left: 1px solid #eee;
  border-right: 1px solid #eee;
}

.footer-value-wrap {
  text-align: center;
}

.footer-value {
  width: auto;
  display: block;
}

.footer-value-text {
  color: #fff;
  display: inline-block;
  vertical-align: middle;
  font-size: .97rem;
  letter-spacing: .02rem;
  font-weight: 600;
}

.footer-value-icons {
  display: inline-block;
  margin-right: 15px;
  vertical-align: middle;
}

.footer-link {
  color: #ffffff !important;
}

.footer-link:hover {
    color: rgba(255,255,255,0.7) !important;
}

@media screen and (max-width: 559px) {
  .footer-centered-wrap {
    text-align: center;
  }
  .footer-centered {
    text-align: center;
    max-width: 350px;
    margin-left: auto;
    margin-right: auto;
  }
  .footer-value-wrap {
    padding-top: 8px;
    padding-bottom: 20px;
  }
  .footer-value {
    margin-bottom: 16px !important;
  }
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .footer-value-wrap {
    padding-top: 8px;
    padding-bottom: 20px;
  }
  
  .footer-value {
    margin-bottom: 16px !important;
  }
  
  .text-overlay-padding {
    padding-top: 20px !important;
    padding-bottom: 20px !important;
  }
}

@media screen and (min-width: 560px) {
  .footer-value-text {
    font-size: 1rem;
  }
  
  .footer-value {
    display: inline-block;
  }
}

@media screen and (min-width: 801px) and (max-width: 1024px) {
  .footer-value-wrap {
    padding-top: 8px;
    padding-bottom: 20px;
  }
  
  .footer-value {
    margin-bottom: 20px !important;
    width: 50%;
    text-align: left;
  }
  
  .text-overlay-padding {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
}

@media screen and (min-width: 1025px) {
  .container-white {
    padding: 40px 40px 0;
  }
  
  .text-overlay-padding {
    padding-top: 30px !important;
    padding-bottom: 30px !important;
  }
  
  .container-image-background {
    padding: 40px !important;
  }
  
  .container {
    padding: 40px 40px 0;
  }  
  
  .footer-container {
    padding: 40px 40px 0;
  }  

  .footer-copyright {
    padding: 16px 40px;
  }  
  
  .footer-spacer {
    padding: 20px 40px;
  }   
  
  .container-search {
    padding: 0 40px;
  }
  
  .footer-value-text {
    font-size: .96rem;
  }
}

@media screen and (min-width: 1280px) {
  .footer-value-wrap {
    text-align: left;
  }
  
  .footer-value {
    width: 25%;
  }
  
  .footer-value-text {
    font-size: 1rem;
  }  
}



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

.anchor {
  display: block;
  position: relative;
  top: -75px;
  visibility: hidden;
}

.placeholder-svg {
  display: block;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
  fill: var(--text-color);
}

/**
 * SOME STYLES FOR SETTING GLOBAL PADDING FOR THE PAGES IN GENERAL
 */

.page__overlay {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background: #000000;
  opacity: 0;
  z-index: 5;
  visibility: hidden;
  transition: opacity 0.3s, visibility 0s 0.3s;
}

.page__overlay--open {
  opacity: 0.6;
  visibility: visible;
  transition: opacity 0.3s;
}

.page__content-wrapper {
  padding: 0;
}

.page__content-wrapper--no-top-padding {
  padding-top: 0 !important;
}

.page__content-wrapper--force-background {
}

.page__header {
  position: relative;
  margin-bottom: 1.8em;
}

.page__title {
  text-align: center;
  font-weight: 600;
}

.page__description {
  text-align: center;
  max-width: 600px;
  margin: -12px auto 0 auto;
}

.page__action-button {
  margin-top: -10px;
}

.page__container--secondary .page__header {
  margin-bottom: 0;
}

@media screen and (min-width: 560px) {
  .page__content-wrapper {
    padding: 0;
  }

  .page__header {
    margin-bottom: 3em;
  }

  .page__action-button {
    position: absolute;
    margin-top: 0;
    right: 0;
    top: 0;
  }

  .page__container--secondary .page__header {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 1025px) {
  .page__content-wrapper {
    padding: 0;
  }

  .page__header {
    margin-bottom: 5em;
  }

  .page__description {
    margin-top: 0;
  }

  .page__action-button {
    top: 8px;
  }

  .page__container--secondary .page__header {
    margin-bottom: 0;
  }
}
/**
 * BASE AND DEFAULT STYLES
 */

html {
  font-size: calc(18px - (var(--font-size-factor) * 1px));
}

body {
  font-weight: 400;
  font-family: Figtree;
  color: var(--text-color);
  line-height: 1.5;
  scroll-behavior: smooth;
  font-size: 17px;
  font-size: 0.94444rem;
}

@media screen and (min-width: 801px) {
  body {
    font-size: 18px;
    font-size: 1rem;
  }
}

/**
 * DEFAULT STYLES FOR VERY COMMON ELEMENTS (LINKS, ICON, TABLES...)
 */

a,
.link {
  transition: all 0.25s ease-in-out;
}

.link:hover {
  color: var(--accent-color);
}

.link--primary {
  color: var(--accent-color) !important;
}

.link--primary:hover {
    color: var(--lighten-accent-color) !important;
}

.link--secondary {
  color: var(--heading-color) !important;
}

.link--secondary:hover {
    color: var(--accent-color) !important;
}

.link--product-title {
  color: var(--heading-color) !important;
}

.link--product-title:hover {
  color: var(--lighten-heading-color) !important;
}

.link--icon svg {
  margin-right: 15px;
  height: 12px;
  width: 12px;
  vertical-align: -1px;
}

.link--effect {
  position: relative;
}

.link--effect::after {
    position: absolute;
    content: '';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background: currentColor;
    -webkit-transform-origin: left center;
    -ms-transform-origin: left center;
    transform-origin: left center;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    transition: -webkit-transform 0.2s ease-in-out;
    transition: transform 0.2s ease-in-out;
  }

.link--effect:hover::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

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

.list--unstyled {
  list-style: none;
  padding: 0;
  margin: 0;
}

.text--uppercase,
.form__label,
.spr-form-label,
.table th {
  color: var(--light-text-color);
  text-transform: uppercase;
  font-weight: 700;
  font-size: 12px;
  font-size: 0.66667rem;
  letter-spacing: .05rem;
}

.text--uppercase-secondary {
  color: var(--heading-color);
}

.text--respect-break {
  white-space: pre-line;
}

.video-wrapper,
.video-container {
  height: 0;
  padding-bottom: 56.25%;
  position: relative;
}

.video-wrapper iframe,
.video-container iframe,
.video-wrapper embed,
.video-container embed,
.video-wrapper object,
.video-container object {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

.table-wrapper {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.table {
  width: 100%;
  border-collapse: separate;
  color: var(--heading-color);
}

.table th {
    padding: 0 5px 4px 5px;
    text-align: left;
  }

.table td {
    padding: 12px 5px;
    border-bottom: 1px solid var(--border-color);
  }

.table td:first-child,
.table th:first-child {
    padding-left: 0;
  }

.table td:last-child,
.table th:last-child {
    padding-right: 0;
    text-align: right;
}

@media screen and (max-width: 559px) {
  .table--responsive {
    border: none;
    box-shadow: none;
  }
  .table--responsive thead,
  .table--responsive td:not([data-label]) {
    display: none;
  }
  .table--responsive tr {
    display: block;
    margin-bottom: 15px;
    border: 1px solid var(--border-color);
    border-bottom: none;
  }
  .table--responsive tr:last-child {
    margin-bottom: 0;
  }
  .table--responsive tr:last-child td {
    border-bottom: 1px solid var(--border-color);
  }
  .table--responsive th,
  .table--responsive td {
    display: block;
    text-align: right !important;
    padding: 6px 10px !important;
    border-right: none;
  }
  .table--responsive td:before {
    content: attr(data-label);
    float: left !important;
    margin-top: 3px;
    font-size: 13px;
    text-transform: uppercase;
    font-weight: 700;
  }
  .table--responsive tfoot tr {
    margin-bottom: 0;
    border-width: 0 1px;
  }
  .table--responsive tfoot tr:first-child {
    margin-top: 25px;
    border-top: 1px solid var(--border-color);
  }
  .table--responsive tfoot tr:last-child {
    border-bottom: 1px solid var(--border-color);
  }
}

@media screen and (min-width: 560px) {
  .text--uppercase,
  .form__label,
  .spr-form-label,
  .table th {
    font-size: 14px;
    font-size: 0.77778rem;
    letter-spacing: .05rem;
  }
}

/**
 * VERTICAL RHYTHM (FONT SIZES, LINE HEIGHTS...) FOR ELEMENTS
 */

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

p:last-child,
h1:last-child,
h2:last-child,
h3:last-child,
h4:last-child,
h5:last-child,
h6:last-child {
  margin-bottom: 0;
}

.h1,
.rte h1,
.h2,
.rte h2,
.h3,
.rte h3,
.h4,
.rte h4,
.h5,
.rte h5 .h6,
.rte h6 {
  color: var(--heading-color);
  font-family: Figtree;
}

.h1 {
  margin-bottom: 0.55em;
  font-size: 35.55px;
  line-height: 1.2;
}

.h2,
.rte h1 {
  margin-bottom: 0.55em;
  font-size: 35.55px;
  line-height: 1.2;
}

.h3,
.rte h2 {
  margin-bottom: 0.8em;
  font-size: 26.66px;
  line-height: 1.3;
}

.h4,
.rte h3 {
  margin-bottom: 0.9em;
  font-size: 22.22px;
  line-height: 1.3;
}

.h5,
.rte h4 {
  margin-bottom: 1.15em;
  font-size: 17.77px;
}

.h6,
.rte h5 {
  margin-bottom: 1.45em;
  font-size: 15.11px;
}

@media screen and (min-width: 1025px) {
  .h1 {
    margin-bottom: 0.35em;
    font-size: 40px;
    line-height: 1.15;
  }

  .h2,
  .rte h1 {
    margin-bottom: 0.35em;
    font-size: 58.66px;
    line-height: 1;
  }

  .h3,
  .rte h2 {
    margin-bottom: 0.45em;
    font-size: 42.66px;
    line-height: 1.2;
  }

  .h4,
  .rte h3 {
    margin-bottom: 0.6em;
    font-size: 32px;
  }

  .h5,
  .rte h4 {
    margin-bottom: 1.05em;
    font-size: 19.55px;
  }

  .h6,
  .rte h5 {
    margin-bottom: 1.35em;
    font-size: 16px;
  }
}
/**
 * RTE (THOSE ARE USED TO STYLE ELEMENTS SUCH AS PRODUCT DESCRIPTION...)
 */
.rte iframe {
  max-width: 100%;
}
.rte a:not(.button) {
  color: var(--primary-button-background);
  font-weight: 500;
}
.rte a:not(.button):hover {
  color: var(--lighten-primary-button-background);
  text-decoration: underline;
}
.rte p:not(:last-child),
.rte ul:not(:last-child),
.rte ol:not(:last-child),
.rte img:not(:last-child) {
  margin-bottom: 1.35em;
}
.rte ul, .rte ol {
  margin-left: 1.35em;
  padding-left: 0;
  list-style-position: outside;
}
.rte .table-wrapper:not(:last-child) {
  margin: 2em 0 2.4em 0;
}
.rte blockquote {
  text-align: center;
  padding: 0;
  color: var(--heading-color);
  text-transform: uppercase;
  font-size: 20px;
  font-weight: 600;
}
.rte h6 {
  font-size: 14px;
  text-transform: uppercase;
}

@media screen and (min-width: 560px) {
  .rte blockquote {
    font-size: 30px;
    line-height: 1.2;
  }
}
@media screen and (min-width: 1025px) {
  .rte blockquote {
    font-size: 48px;
  }
}

/**
 * Article
 */

.article--full {
  padding-bottom: 0px;
}

.article__meta {
  display: block;
  margin-bottom: 1.1em;
}

.article__meta-item {
  display: inline-block;
}

.article__meta-item + .article__meta-item::before {
  display: inline-block;
  content: '|';
  margin: 0 5px;
  letter-spacing: 0;
  color: var(--light-text-color);
}

.article__image {
  width: 100%;
  max-height: 350px;
  object-fit: cover;
  object-position: center center;
  font-family: 'object-fit: cover; object-position: center center;'; /* for polyfilling IE */
}

.article__content {
  position: relative;
  background: var(--background);
}

.article__image + .article__content {
  margin: -45px 0 0 20px;
  padding: 15px 20px 0 20px;
}

.article__title {
  margin-bottom: 0.5em;
}

.article__excerpt {
  margin-bottom: 1em;
}

.article__body {
  padding-top: 1.2em;
}

.article__tags {
  padding-top: 2em;
}
  
.article__tags a {text-decoration: none !important;}
}

.article__body .share-buttons {
  display: none;
}

.article__read-more {
  display: inline-block;
}

.article__body-inner a {
  text-decoration: underline;
}

@media screen and (min-width: 560px) {
  .article__image + .article__content {
    margin: -65px 0 0 30px;
    padding: 20px 30px 0 30px;
  }

  .article__body {
    padding-left: 60px;
  }
}

@media screen and (min-width: 801px) {
  .article__meta-item + .article__meta-item::before {
    margin: 0 15px;
  }

  .article__tags {
    padding-top: 3em;
  }

  .article__image + .article__content {
    margin: -75px 0 0 70px;
    padding: 65px 70px 0 70px;
  }

  .article__excerpt {
    margin-bottom: 1.9em;
  }

  .article--full .article__image {
    max-height: 500px;
  }

  .article--full .article__image + .article__content {
    margin: -115px 0 0 96px;
  }

  .article__body {
    padding: 2.6em 0 0 0;
  }

  .article__body .share-buttons {
    display: inline-block;
    position: -webkit-sticky;
    position: sticky;
    left: 0;
    top: 0;
    vertical-align: top;
  }

  .article__body-inner {
    display: inline-block;
    width: calc(100% - 96px);
    padding: 0 140px 0 70px;
  }
}

@media screen and (min-width: 1025px) {
  .article__body-inner {
    padding: 0 310px 0 140px;
  }

  .article--full .article__image {
    max-height: 350px;
  }
  
  .article--full {
    padding-bottom: 20px;
  }  
  
}

/**
 * Article comments
 */

.article-comments {
  max-width: 550px;
  margin: 0 auto;
  padding-top: 35px;
  border-top: 1px solid var(--border-color);
}

.article-comments__list {
  margin: 15px 0 34px 0;
}

.article-comment {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  padding: 18px 0 25px 0;
  border-bottom: 1px solid var(--border-color);
}

.article-comment:first-child {
    padding-top: 0;
}

.article-comment__inner {
  margin-top: 6px;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.article-comment__avatar {
  margin-right: 18px;
  -webkit-flex: none;
  -ms-flex: none;
  flex: none;
  width: 50px;
  height: 50px;
  border-radius: 100%;
}

.article-comment__content {
  font-size: 0.9em;
}

.article-comment__meta {
  font-size: 0.8em;
  color: var(--light-text-color);
}

.article-comment__author {
  text-transform: uppercase;
  font-weight: 700;
}

.article-comment__time {
  float: right;
}

@media screen and (min-width: 801px) {
  .article-comments {
    max-width: none;
    padding-top: 65px;
  }

  .article-comments__list {
    margin-bottom: 0;
    margin-top: 40px;
  }
}

@media screen and (min-width: 1025px) {
  .article-comments__list {
    margin-right: 50px;
  }
}

/**
 * Blog page
 */

.articles-list__item:not(:last-child) {
  margin-bottom: 50px;
}

@media screen and (min-width: 1025px) {
  .articles-list__item:not(:last-child) {
    margin-bottom: 74px;
  }
}

/**
 * Blog sidebar
 */

.blog-sidebar {
  margin-left: 20px;
}

.blog-sidebar__section {
  font-weight: 600;
}

.blog-sidebar__section + .blog-sidebar__section {
  margin-top: 45px;
}

.blog-sidebar__title {
  margin-bottom: 1.2em;
}

.blog-sidebar__newsletter {
  padding: 35px;
}

.blog-sidebar__newsletter .blog-sidebar__title {
    position: relative;
    margin-bottom: 1.8em;
    color: var(--background);
  }

.blog-sidebar__newsletter .input-group__submit {
    padding-left: 20px;
    padding-right: 20px;
    line-height: 0;
  }

.blog-sidebar__newsletter .input-group__submit svg {
    height: 10px;
    width: 10px;
}

.blog-sidebar__tag:not(:last-child) {
  margin-bottom: 6px;
}

.blog-sidebar__featured-articles {
  margin-top: -14px;
}

.blog-sidebar__featured-article {
  display: block;
  padding: 14px 0;
  box-shadow: 0 -1px var(--border-color) inset;
}

.blog-sidebar__product-item {
  border: 1px solid var(--border-color);
}

@media screen and (min-width: 1280px) {
  .blog-sidebar {
    margin-left: 50px;
  }

  .blog-sidebar__section--padded {
    padding-left: 38px;
  }
}
.box {
  position: relative;
  background: var(--background);
  z-index: 1;
}

.box--secondary {
  background: var(--secondary-background);
}

.box--shrinked {
  max-width: 950px;
  margin: 0 auto;
}

.box--mini {
  max-width: 620px;
  margin: 0 auto;
}

.box__separator {
  margin: 0 auto 30px 0;
  height: 4px;
  width: 80px;
  background: var(--secondary-background);
  border: none;
}

.box__content {
  padding: 25px;
}

.box__content--small-padding {
  padding: 17px 25px;
}

.box__content--large-padding {
  padding: 25px 30px 30px 30px;
}

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

.box__button-wrapper {
  margin-top: 25px;
}

/**
 * This is an image that appears below the box
 */

.image-below-box {
  display: none;
  position: absolute;
  top: -40px;
  left: 0;
}

.image-below-box--pull {
  top: -80px;
}

.image-below-box--vertical-ratio {
  max-height: 680px;
}

.image-below-box--horizontal-ratio {
  max-height: 400px;
}

.box + .image-below-box {
  left: auto;
  right: 0;
}

@media screen and (min-width: 560px) {
  .box--with-image {
    display: table;
    table-layout: fixed;
    width: 100%;
  }

  .box--with-image .box__image,
  .box--with-image .box__content {
    display: table-cell;
    vertical-align: middle;
    width: 50%;
  }

  .box--with-image .box__image--small {
    width: 28%;
  }

  .box__content--large-padding {
    padding: 25px 30px 40px 30px;
  }
}

@media screen and (min-width: 1025px) {
  .box__content {
    padding: 45px;
  }

  .box__content--small-padding {
    padding: 22px 25px;
  }

  .box__content--large-padding {
    padding: 40px 70px 55px 70px;
  }

  .box__button-wrapper {
    margin-top: 40px;
  }
}

@media screen and (min-width: 1280px) {
  .image-below-box {
    display: block;
  }
}
@-webkit-keyframes buttonLoadingSpinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

@keyframes buttonLoadingSpinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

.button {
  position: relative;
  display: inline-block;
  padding: 14px 30px;
  line-height: normal;
  border: none;
  border-radius: 100px;
  text-transform: uppercase;
  font-size: 15px;
  font-size: 0.83333rem;
  font-weight: 700;
  transition: color 0.25s ease-in-out, background 0.25s ease-in-out;
  text-align: center;
  letter-spacing: 0.75px;
}

.button[disabled] {
    cursor: not-allowed;
  }

.button svg {
    margin-right: 14px;
    height: 12px;
    width: 12px;
    vertical-align: -1px;
}

.button--small {
  padding: 10px 30px;
}

.button--full {
  width: 100%;
}

.button + .button {
  margin-top: 15px;
}

.button--primary {
  color: var(--primary-button-color);
  background: var(--primary-button-background);
}

.button--primary:hover {
    background: #44a86c;
}

.button--secondary {
  color: var(--secondary-button-color);
  background: var(--secondary-button-background);
}

.button--secondary:hover {
    background: #005C66;
}

.button--primary.button--loading,
.button--primary.button--loading:hover {
  color: var(--primary-button-background);
  background: var(--primary-button-background);
}

.button--secondary.button--loading,
.button--secondary.button--loading:hover {
  color: var(--secondary-button-background);
  background: var(--secondary-button-background);
}

.button--loading::after {
  content: '';
  display: block;
  width: 24px;
  height: 24px;
  position: absolute;
  left: calc(50% - 12px);
  top: calc(50% - 12px);
  border-radius: 50%;
  border: 3px solid var(--background);
  border-top-color: transparent;
  -webkit-animation: buttonLoadingSpinner 0.6s infinite linear;
  animation: buttonLoadingSpinner 0.6s infinite linear;
}

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

.button--enforce-min-width {
  min-width: 220px;
}

@media screen and (min-width: 560px) {
  .button {
    padding: 16px 34px 15px 34px;
    font-size: 16px;
    font-size: 0.88889rem;
  }

  .button--small {
    padding: 12px 34px;
  }
}
/**
 * CART ITEMS
 */

.cart__items {
  width: 100%;
}

.cart-item {
  margin-bottom: 15px;
  padding: 18px 15px 26px 15px;
  background: var(--background);
  color: var(--heading-color);
  line-height: 1.2;
}

.cart-item:last-child {
    margin-bottom: 0;
}

.cart-item__image-container {
  display: inline-block;
  margin-top: 4px;
  width: 80px;
  height: 80px;
  text-align: center;
}

.cart-item__image {
  max-width: 100%;
  max-height: 100%;
  margin: 0 auto;
}

.cart-item__vendor {
  margin-bottom: 6px;
}

.cart-item__title {
  margin-bottom: 4px;
}

.cart-item__title,
.cart-item__line-price {
  font-weight: 600;
}

.cart-item__price {
  margin-bottom: 0;
}

.cart-item__original-line-price,
.cart-item__original-unit-price {
  text-decoration: line-through;
  color: var(--light-text-color);
}

.cart-item__variant-options,
.cart-item__properties {
  margin-top: 12px;
  font-size: 0.9em;
}

.cart-item__variant-option .color-swatch--mini {
  margin: 0 5px;
}

.cart-item__quantity {
  margin-top: 14px;
}

@media screen and (max-width: 559px) {
  /* On mobile we basically switch all the table to blocks */
  .cart__items,
  .cart__items > tbody,
  .cart-item,
  .cart-item > td {
    display: block;
  }

  .cart__items {
    width: 100%;
  }

  .cart__headings {
    display: none;
  }

  .cart-item {
    margin-left: auto;
    margin-right: auto;
  }

  .cart-item > td {
    padding-left: 96px;
  }

  .cart-item__product {
    position: relative;
  }

  .cart-item__image-container {
    position: absolute;
    left: 0;
    top: 0;
  }

  .cart-item__line-price,
  .cart-item__original-line-price {
    font-weight: 400;
    font-size: 1rem;
  }

  .cart-item__delete {
    position: relative;
    display: inline-block;
    color: var(--light-text-color);
    margin-left: 35px;
    font-size: 15px;
    font-size: 0.83333rem;
  }

  .cart-item__delete::after {
      position: relative;
      display: block;
      content: '';
      width: 100%;
      height: 1px;
      bottom: 2px;
      left: 0;
      background: rgba(var(--light-text-color), 0.6);
  }
}

@media screen and (min-width: 560px) {
  .cart__items {
    margin-top: -10px;
    text-align: center;
    border-collapse: separate;
    border-spacing: 0 10px;
  }

  .cart__items th {
    padding: 0 0 14px 0;
  }

  .cart__items td {
    padding: 24px;
  }

  .cart__items th:first-child,
  .cart__items td:first-child {
    text-align: left;
  }

  .cart-item__price {
    display: block;
  }

  .cart-item__image-container {
    margin-right: 24px;
  }

  .flexbox .cart-item__product {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .no-flexbox .cart-item__image-container {
    float: left;
  }

  .cart-item__delete {
    color: var(--light-text-color);
  }

  .cart-item__delete svg {
      width: 15px;
      height: 15px;
  }
}

@media screen and (min-width: 1025px) {
  .cart-item__image-container {
    width: 95px;
    height: 115px;
  }
}

/**
 * FOOTER
 */

.cart__footer {
  margin-top: 34px;
}

.cart__note {
  max-width: 410px;
}

.cart__checkout {
  text-align: right;
}

.cart__total {
  display: block;
  margin-bottom: 0.2em;
  font-weight: 600;
}

.cart__shipping {
  font-size: 14px;
  font-size: 0.77778rem;
}

.cart__currency-notice {
  position: relative;
}

.cart__currency-notice::before {
    content: '';
    display: block;
    margin: 20px 0 20px auto;
    height: 3px;
    width: 50px;
    background: rgba(var(--text-color), 0.2);
}

.cart__recap {
  margin-bottom: 18px;
  text-align: right;
}

.cart__checkout-button {
  min-width: 220px;
}

.additional-checkout-buttons {	
  margin-left: -10px;	
}	
.additional-checkout-buttons > *:not(script) {	
  padding: 15px 0 0 15px;	
  vertical-align: top;	
  line-height: 1;	
}	
.additional-checkout-buttons > *:not(script):first-child, .additional-checkout-buttons > *:not(script):empty {	
  padding-left: 0;	
}

@media screen and (max-width: 559px) {
  .cart__checkout-button {
    margin-top: 25px;
    width: 100%;
    font-size: 20px;
    font-size: 1.11111rem;
    padding-top: 20px;
    padding-bottom: 20px;
  }

  .additional-checkout-buttons > *:not(script) {
    padding: 15px 0 0 5px;
  }
}

@media screen and (min-width: 560px) {
  .cart__recap {
    margin-bottom: 26px;
  }

  .cart__footer {
    margin-top: 58px;
  }
}

/**
 * SHIPPING ESTIMATOR
 */

.shipping-estimator {
  margin: 18px -25px 20px -25px;
  padding: 22px 25px;
  border-top: 1px solid var(--border-color);
  border-bottom: 1px solid var(--border-color);
}

.shipping-estimator__title {
  margin-bottom: 0;
}

.shipping-estimator__title svg {
    float: right;
    width: 16px;
    height: 16px;
    -webkit-transform: rotateZ(0deg);
    transform: rotateZ(0deg);
    transition: -webkit-transform 0.3s ease-in-out;
    transition: transform 0.3s ease-in-out;
}

.shipping-estimator--active .shipping-estimator__title svg {
  -webkit-transform: rotateZ(-180deg);
  transform: rotateZ(-180deg);
}

.shipping-estimator__inner {
  margin: 20px 0 0px 0;
  padding-bottom: 30px;
}

.shipping-estimator__submit {
  width: 100%;
}

.shipping-estimator__results {
  margin-top: 25px;
}

@media screen and (min-width: 560px) {
  .shipping-estimator {
    margin: 48px 0 0 0;
    padding: 42px 0 0 0;
    border-top: 1px solid var(--border-color);
    border-bottom: none;
  }

  .shipping-estimator__inner {
    margin: 25px 0 0px 0;
  }

  .shipping-estimator__form {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .shipping-estimator__form .form__control {
    margin-bottom: 0;
    margin-right: 10px;
  }

  .shipping-estimator__submit {
    width: auto;
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
  }
}

@media screen and (min-width: 1025px) {
  .shipping-estimator__form .form__control {
    margin-right: 30px;
  }

  .shipping-estimator__inner {
    margin-bottom: 0;
  }
}

/**
 * Related products
 */

.shopify-section__cart-related-products .section {
  margin-top: 0;
}
/**
 * TOP IMAGE
 */

.collection__top {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  margin-bottom: 25px;
  min-height: 150px;
  width: 100%;
  text-align: center;
  background-color: var(--accent-color);
  overflow: hidden;
}

.collection__top::before {
    z-index: 1;
}

.collection__image {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
  font-family: 'object-fit: cover; object-position: center center;'; /* for polyfilling IE */
}

.collection__info {
  position: relative;
  padding: 50px 25px;
  width: 100%;
  z-index: 1;
}

.collection__title {
  margin-bottom: 20px;
  color: currentColor;
  text-transform: uppercase;
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .collection__info {
    padding-top: 90px;
    padding-bottom: 90px;
  }
}

@media screen and (min-width: 801px) {
  .list-products--with-collection-image {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .list-products--with-collection-image .collection__top {
      height: auto;
      margin-bottom: 0;
    }

    /* First child is always the one with the image of the collection */
  .list-products--with-collection-image .grid__cell:first-child {
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
      margin-bottom: 35px;
      -webkit-align-self: stretch;
      -ms-flex-item-align: stretch;
      align-self: stretch;
  }
}

/**
 * FILTERS
 */

.collection__filters {
  margin-bottom: 25px;
  overflow: hidden;
}

.collection__filter {
  margin-bottom: 15px;
}

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

@media screen and (min-width: 560px) {
  .collection__filters {
    margin-bottom: 50px;
  }

  .collection__filter {
    display: inline-block;
    margin-bottom: 0;
  }

  .collection__filter:last-child {
      float: right;
  }
}

.list-collections {
  margin-bottom: -25px;
}

.collection-item {
  position: relative;
  display: block;
  margin-bottom: 25px;
  min-height: 250px;
  background-size: cover;
  background-position: center center;
  color: var(--background);
  transition: background-position 0.25s ease-in-out;
  overflow-anchor: none;
}

.collection-item__placeholder {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--background);
}

.collection-item__info {
  position: absolute;
  padding: 24px 26px 0 26px;
  left: 0;
  bottom: 0;
  width: 100%;
  background: rgba(var(--secondary-button-background-rgb), 0.9);
  overflow: hidden;
  text-align: left;
  transition: background 0.25s ease-in-out;
}

.collection-item__title {
  margin: 0 0 24px 0;
  color: var(--background);
}

.collection-item__button {
  color: var(--background);
  background: var(--accent-color);
}

.collection-item__button:hover {
  background: #44a86c;
}

.collection-item__bottom {
  display: none;
  padding-bottom: 24px;
}

.collection-item--hovered {
  background-position-y: -25px;
}

.collection-item--hovered .collection-item__info {
  background: var(--heading-color);
}

@media screen and (max-width: 559px) {
  .template-index .list-collections {
    margin: 0 -25px;
  }

  .template-index .list-collections .grid__cell {
    margin: 0 5px;
    padding: 0;
  }

  .template-index .list-collections .collection-item {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .collection-item {
    min-height: 300px;
  }
}

@media screen and (min-width: 801px) {
  .list-collections {
    margin-bottom: -35px;
  }

  .collection-item {
    min-height: 275px;
    margin-bottom: 35px;
  }

  .collection-item__description {
    margin-bottom: 26px;
  }
}

@media screen and (min-width: 1025px) {
  .collection-item {
    min-height: 275px;
  }

  .collection-item__info {
    padding: 28px 40px 0 40px;
  }

  .collection-item__bottom {
    padding-bottom: 38px;
  }
}

@media screen and (min-width: 1280px) {
  .collection-item__info {
    padding: 28px 50px 0 50px;
  }
}

.footer {
  padding: 0;
  color: #ffffff;
  fill: #ffffff;
  background-color: none;
}

.footer a {
  color: rgba(255,255,255,0.7) !important;
}
  
.footer a:hover {
  color: var(--accent-color) !important;
}

.footer__title {
  color: #ffffff !important;
}

.footer__block {
  margin-bottom: 25px;
  font-size: .95rem;
}

.footer__text {
  margin-bottom: 1.35em;
  color: #ffffff;
  font-size: .95rem;
}

.footer__block .social-media {
  padding: 6px 0;
}

.footer__link:not(:last-child) {
  margin-bottom: 8px;
}

.footer__copyright {
  margin-top: 20px;
  font-size: 13px;
  font-size: 0.72222rem;
  color: #ffffff;
  text-align: center;
}

.footer-newsletter-wrap {
  padding-top: 25px;
  }

.footer__payment-methods {
  margin-top: 30px;
  text-align: center;
  border-top: solid 1px #a58a82;
  padding-top: 25px;
}

.footer__payment-method {
  display: inline-block;
  margin-left: 10px;
}

.footer__payment-method:first-child {
    margin-left: 0;
}

.footer__payment-method svg {
    width: 30px;
    height: 30px;
}

.footer-payment-icons {
  display: inline-block;
  width: 44px;
  margin-right: 5px;
  margin-bottom: 10px;
}

.footer-secure-icons {
  display: inline-block;
  width: 65px;
  margin-bottom: 10px;
}

/**
 * Tweet (this is only on the footer so we have the code here
 */

.tweet {
  margin-top: 6px;
  contain: content;
}
.tweet .link,
.tweet .hashtag {
  color: var(--accent-color) !important;
}
.tweet .link:hover,
.tweet .hashtag:hover {
  color: var(--darken-accent-color) !important;
}

.tweet__username {
  margin: 0 0 20px -2px;
  color: var(--accent-color);
  font-size: 0.85em;
}

.tweet__username svg {
    margin-right: 8px;
}

.tweet__content {
  margin-bottom: 8px;
  overflow: hidden;
  text-overflow: ellipsis;
}

.tweet__content .Emoji {
  max-width: 15px;
}

.tweet__date {
  font-size: 10px;
  font-size: 0.55556rem;
}

@media screen and (min-width: 560px) {
  .footer__block {
    margin-bottom: 50px;
  }

  .footer-newsletter-wrap {
    padding-top: 0px;
  }
  
  .footer__copyright {
    margin-top: 0;
    text-align: left;
  }

  .footer__payment-methods {
    margin-top: 33px;
    text-align: unset;
    border-top: solid 1px #a58a82;
    padding-top: 25px;
  }

  .tweet {
    margin-top: 0;
  }

  .tweet__username {
    margin-bottom: 26px;
  }

  .tweet__content {
    margin-bottom: 20px;
    font-size: 0.9em;
  }

  .tweet__date {
    font-size: 12px;
    font-size: 0.66667rem;
  }
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .footer {
    padding: 0;
  }
}

@media screen and (min-width: 801px) {
  .footer {
    padding: 0;
  }
}
.slideshow-section--fs {
  margin-top: 0 !important;
}

.fs-slideshow,
.fs-slideshow__slide {
  position: relative;
}

.fs-slideshow__cover {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
}

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

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

.fs-slideshow__content {
  position: relative;
  max-width: 90%;
  margin: 0 auto;
  padding: 0 25px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.fs-slideshow__image {
  display: block;
  width: 100%;
}

.fs-slideshow__image--placeholder {
  background: #cecece;
  fill: #ababab;
}

.fs-slideshow__heading {
  position: relative;
  font-size: 26px;
  font-size: 1.44444rem;
  line-height: 1.2;
  text-transform: none;
  color: var(--accent-color);
  font-weight: var(--slideshow-heading-font-weight);
  font-family: Figtree;
}

.fs-slideshow__progress-bar {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  background: rgba(0, 0, 0, 0.5);
}

.fs-slideshow__progress-bar-advancement {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: var(--accent-color);
  transition: width 0.25s ease-in-out;
}

.fs-slideshow__slide-count {
  position: absolute;
  width: 100%;
  bottom: 15px;
  left: 0;
  text-align: right;
  color: var(--background);
  font-weight: 600;
  pointer-events: none;
}

.fs-slideshow__current-slide {
  font-size: 34px;
  font-size: 1.88889rem;
}

.fs-slideshow__total-slides {
  font-size: 16px;
  font-size: 0.88889rem;
}

.fs-slideshow__nav-button {
  position: absolute;
  top: 50%;
  padding: 2px 6px 3px 6px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7); /* We cannot use "transparent" as IE9-10 make the button unclickable */
  color: var(--background);
  border: none;
  z-index: 1;
  -webkit-appearance: none;
}

.fs-slideshow__nav-button svg {
    width: 22px;
    height: 22px;
}

.fs-slideshow__nav-prev {
  left: 0;
}

.fs-slideshow__nav-next {
  right: 0;
}

.fs-slideshow__plyr-container .plyr__play-large {
  z-index: 1;
}

.fs-slideshow--video-playing .fs-slideshow__nav-button,
.fs-slideshow--video-playing .fs-slideshow__slide-count {
  display: none;
}

@media screen and (max-width: 559px) {
  .fs-slideshow__button {
    padding: 12px 20px;
  }

  .fs-slideshow__image {
    min-height: 215px;
    object-fit: cover;
    object-position: center center;
  }
}

@media screen and (min-width: 560px) {
  .fs-slideshow__content {
    max-width: 85%;
  }

  .fs-slideshow__heading {
    font-size: 40px;
    font-size: 2.22222rem;
    max-width: 500px;
  }

  .fs-slideshow__cover--right .fs-slideshow__heading {
    margin-left: auto;
  }

  .fs-slideshow__cover--center .fs-slideshow__heading {
    max-width: 900px;
    margin-left: auto;
    margin-right: auto;
  }

  .fs-slideshow__current-slide {
    font-size: 40px;
    font-size: 2.22222rem;
  }

  .fs-slideshow__total-slides {
    font-size: 18px;
    font-size: 1rem;
  }

  .fs-slideshow__progress-bar {
    height: 5px;
  }

  .fs-slideshow__nav-button svg {
    width: 28px;
    height: 28px;
  }

  .fs-slideshow__nav-prev {
    left: 12px;
  }

  .fs-slideshow__nav-next {
    right: 12px;
  }
}

@media screen and (min-width: 1025px) {
  .fs-slideshow__heading {
    font-size: 66px;
    font-size: 3.66667rem;
  }

  .fs-slideshow__current-slide {
    font-size: 80px;
    font-size: 4.44444rem;
  }

  .fs-slideshow__total-slides {
    font-size: 20px;
    font-size: 1.11111rem;
  }

  .fs-slideshow__nav-button svg {
    width: 36px;
    height: 36px;
  }
}

@media screen and (min-width: 1280px) {
  .fs-slideshow__content {
    max-width: 1000px;
  }

  .fs-slideshow__slide-count {
    bottom: 50px;
  }
}

@media (min-width: 1540px) {
  .fs-slideshow__nav-prev {
    left: calc((100% - 1330px) / 2 - 85px);
  }

  .fs-slideshow__nav-next {
    right: calc((100% - 1330px) / 2 - 85px);
  }
}
/**
 * -------------------------------------------------------------
 * GENERAL FORM
 * -------------------------------------------------------------
 */

.form--shrinked {
  max-width: 300px;
  margin: 0 auto;
}

.form__instructions {
  margin-bottom: 1.6em;
}

.form__label {
  margin-bottom: 5px;
}

.form__input,
.form__textarea {
  display: block;
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--border-color);
  border-radius: 0;
  color: var(--heading-color);
  font-size: 1rem;
  line-height: normal;
  background: var(--background);
  font-weight: 400;
  -webkit-appearance: none;
}
.form__input:active, .form__input:focus,
.form__textarea:active,
.form__textarea:focus {
  outline: none;
  border-color: var(--accent-color);
}
.form__input::-moz-placeholder, .form__textarea::-moz-placeholder {
  color: var(--light-text-color);
}
.form__input:-ms-input-placeholder, .form__textarea:-ms-input-placeholder {
  color: var(--light-text-color);
}
.form__input::placeholder,
.form__textarea::placeholder {
  color: var(--light-text-color);
}

.form__textarea {
  resize: vertical;
}

.form__input-hint {
  display: inline-block;
  margin-top: 10px;
}

.form__label,
.spr-form-label {
  display: block;
  margin-bottom: 12px;
}

.form__control,
.form__control-row {
  margin-bottom: 20px;
  text-align: left;
}

.form__control:last-child,
.form__control-row:last-child {
    margin-bottom: 0;
}

.form__input-error {
  position: absolute;
  display: inline-block;
  padding: 8px 20px;
  left: 10px;
  top: calc(100% - 6px);
  background: #db3e3e;
  color: #ffffff;
  text-transform: uppercase;
  font-size: 0.8em;
  font-weight: 600;
}

.form__input-error::after {
    position: absolute;
    content: '';
    left: 24px;
    bottom: 100%;
    border-style: solid;
    border-width: 0 8px 8px 8px;
    border-color: transparent transparent #db3e3e transparent;
}

@media screen and (min-width: 560px) {
  .form__input,
  .form__textarea {
    padding: 14px;
  }

  .form__control-row {
    font-size: 0;
  }

  .form__control-row > .form__control {
    display: inline-block;
    margin-bottom: 0;
    font-size: 1rem;
    width: calc(50% - 10px);
  }

  .form__control-row > .form__control:last-child {
    margin-left: 20px;
  }
}

/**
 * -------------------------------------------------------------
 * STYLED SELECT
 * -------------------------------------------------------------
 */

.styled-select {
  position: relative;
  font-size: 13px;
  font-size: 0.72222rem;
  color: var(--heading-color);
}

.styled-select svg {
  position: absolute;
  top: calc(50% - 5px);
  right: 18px;
  width: 9px;
  height: 9px;
  line-height: normal;
  pointer-events: none;
  fill: currentColor;
}

.styled-select select {
  /* Disable built-in styles */
  -webkit-appearance: none;
  -moz-appearance: none;

  display: inline-block;
  width: 100%;
  height: 48px;
  padding-left: 18px;
  padding-right: 65px;
  border: 1px solid var(--border-color);
  border-radius: 0;
  background: var(--background);
  font-size: 0.9em;
  cursor: pointer;
  text-transform: uppercase;
  line-height: normal;
  letter-spacing: 0.8px;
}

  /* Remove the ugly blue background on IE when a value is selected */

.styled-select select:active, .styled-select select:focus {
  border-color: var(--accent-color);
  outline: none;
}
.styled-select select:focus::-ms-value {
  background: var(--background);
  color: var(--heading-color);
}

.ie9 .styled-select svg {
  display: none;
}

.ie9 .styled-select select {
  padding-right: 0;
}

.styled-select--secondary select {
  background: #f8f8fa;
  border-color: var(--secondary-background);
  border: 1px solid #d4d4d6;
}

/* Allow to remove the ugly dashes when selecting an option in Firefox */
select:-moz-focusring {
  color: transparent;
  text-shadow: 0 0 0 var(--heading-color);
}

/* Disable default styles for IE10+ */
select::-ms-expand {
  display: none;
}

@media screen and (min-width: 560px) {
  .styled-select {
    font-size: 14px;
    font-size: 0.77778rem;
  }

  .styled-select select {
    height: 49px;
  }
}

/**
 * -------------------------------------------------------------
 * INPUT GROUP (ALLOWS TO HAVE AN INPUT AND A SUBMIT ATTACHED)
 * -------------------------------------------------------------
 */

.input-group {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  width: 100%;
}

.input-group__field {
  display: inline-block;
  border: none;
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  min-width: 0; /* This is necessary per new spec of flexbox: https://bugzilla.mozilla.org/show_bug.cgi?id=1088586 */
}

.input-group__submit {
  -webkit-flex-shrink: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  font-size: 14px;
  font-size: 0.77778rem;
}

.input-group__submit svg {
    margin: 0;
}

.input-group__field--secondary {
  background: var(--secondary-background);
  color: var(--heading-color);
  border-radius: 50px;
}

.ie9 .input-group {
  display: inline-block;
}

.ie9 .input-group__field {
  width: auto;
}

@media screen and (min-width: 560px) {
  .input-group {
    width: auto;
  }

  .input-group__field--expand {
    min-width: 225px;
  }

  .input-group__submit {
    -webkit-flex-shrink: 0;
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media screen and (min-width: 801px) {
  .input-group__submit {
    font-size: 16px;
    font-size: 0.88889rem;
  }
}

@media screen and (min-width: 1280px) {
  .input-group__field--expand {
    min-width: 415px;
  }
}
.giftcard {
  padding: 50px 0;
  text-align: center;
}

.giftcard .box__content {
  padding: 30px;
}

.giftcard__tag {
  margin-bottom: 25px;
  color: var(--heading-color);
}

.giftcard__illustration {
  display: block;
  margin-left: auto;
  border-radius: 5px;
  max-width: 470px;
  max-height: 280px;
  width: 100%;
}

.giftcard__info {
  margin: 35px 0 38px 0;
}

.giftcard__shop-button {
  margin-top: 25px;
}

.giftcard__amount {
  margin-bottom: 0.45em;
  color: var(--accent-color);
}

.giftcard__code-holder {
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.giftcard__code {
  max-width: 315px;
  padding: 11px 0;
  border: 1px solid var(--border-color);
  border-right: none;
  text-transform: uppercase;
  font-weight: 700;
  font-size: 0.9em;
  color: var(--light-text-color);
}

.giftcard__qr {
  margin: 0 auto;
  max-width: 120px;
}

.giftcard__redeem {
  color: var(--heading-color);
}

.giftcard__apple-wallet {
  display: inline-block;
  font-size: 0;
  margin-top: 25px;
}

@media screen and (min-width: 560px) {
  .giftcard__info {
    margin: 0;
  }

  .giftcard__amount {
    text-align: left;
  }

  .giftcard__qr {
    margin-left: 0;
  }

  .giftcard__code {
    padding: 14px 0;
  }

  .giftcard__redeem {
    margin-top: 25px;
  }
}

@media screen and (min-width: 801px) {
  .giftcard {
    padding: 45px 0;
  }

  .giftcard .box__content {
    padding: 60px 90px;
  }

  .giftcard__tag {
    margin-bottom: 45px;
  }

  .giftcard__shop-button {
    margin-top: 45px;
  }

  .giftcard__redeem {
    margin-top: 55px;
  }

  .giftcard__qr {
    max-width: none;
  }
}

@media screen and (min-width: 1025px) {
  .giftcard {
    padding: 95px 0;
  }

  .giftcard__shop-button {
    margin-top: 60px;
  }
}
/**
 * TOP BAR
 */

.shopify-section__announcement-bar,
.shopify-section__extra-bar {
  z-index: 6;
}

.announcement-bar {
  padding: 5px 0;
  font-size: 12px;
  font-size: 0.66667rem;
  font-weight: 600;
  text-align: center;
}

@media screen and (min-width: 560px) {
  .announcement-bar {
    padding: 8px 0;
    font-size: 14px;
    font-size: 0.77778rem;
  }
}

.extra-bar {
  padding: 5px 0;
  font-size: 12px;
  font-size: 0.66667rem;
  font-weight: 600;
  text-align: center;
}

.extra-bar a {
  text-decoration: underline;
}

.extra-bar-link {
  text-decoration: underline;
  font-weight: 600;
}

.extra-bar-link:hover {
    opacity: .8;
}

@media screen and (min-width: 560px) {
  .extra-bar {
    padding: 8px 0;
    font-size: 14px;
    font-size: 0.77778rem;
  }
}


/**
 * HEADER ACCOUNT MENU
 */

.main-header-account{
    max-width: 1330px;
    margin-left: auto;
    margin-right: auto;
    text-align: right;
    position: relative;
    padding: 5px 25px 0px;
    font-size: .8rem;
    background-color: #fff;
    border-left: 1px solid #eee;
    border-right: 1px solid #eee;
}

@media screen and (min-width: 1025px) {
  .main-header-account {
    padding: 5px 40px 0px;
  }
}


.main-header-account-text {
    display: inline-block;
    margin: 0 .625rem;
    letter-spacing: .02rem;
    color: #7a859c;
}
  
.main-header-account-text:last-child {
      margin-right: 0;
}

.main-header-account-text a {
    color: #7a859c;
    fill: #7a859c;
}

.main-header-account-text a:hover { 
  color: var(--accent-color);
  fill: var(--accent-color);
}

.main-header-account-bold a {
  text-decoration: underline;
}
    
.main-header-account-bold a:hover { 
  color: var(--accent-color);
  fill: var(--accent-color);
}

.main-header-account-text-mobile {
  display: block;
  margin-bottom: 20px;
}
  
.main-header-account-text-mobile:last-child {
      margin-bottom: 0;
}

.main-header-account-icon-account {
    height: .5625rem;
    width: .5rem;
    margin-right: .375rem;
}
  
.main-header-account-icon-create {
    height: .5625rem;
    width: .5625rem;
    margin-right: .375rem;
}
  
.main-header-account-icon-logout {
    height: .5625rem;
    width: .5625rem;
    margin-right: .375rem;
}

.main-header-account-icon-phone {
    height: .59375rem;
    width: .625rem;
    margin-right: .3125rem;
}

.main-header-account-icon-cart {
    height: .625rem;
    width: .8125rem;
    margin-right: .3125rem;
}

.main-header-account-icon-account-mobile {
    height: .6875rem;
    width: .625rem;
    margin-right: .375rem;
}
  
.main-header-account-icon-create-mobile {
    height: .625rem;
    width: .625rem;
    margin-right: .375rem;
}
  
.main-header-account-icon-logout-mobile {
    height: .625rem;
    width: .625rem;
    margin-right: .375rem;
}

.main-header-account-icon-phone-mobile {
    height: .71875rem;
    width: .75rem;
    margin-right: .3125rem;
}

.header-nav-icon-wrap{
  width: 20px;
  height: 24px;
}

/**
 * HEADER
 */

.shopify-section__header {
  position: -webkit-sticky;
  position: sticky;
  top: 0;
  z-index: 5;
  background: none;
}

.header {
  position: relative;
  padding: 0;
  color: var(--heading-color);
  background: none;
}

.header svg {
    width: 20px;
    height: 24px;  
}

.header-container {
  max-width: 1330px;
  margin: 0 auto;
  padding: 20px 25px;
  background-color: #fff;
  border: 1px solid #eee;
  border-top: none;
}

.header-main-nav-item-wrap:first-child {
  border-left: solid 1px transparent;
}

.page__container:not(.page__container--secondary) .header {

}

.header__inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

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

.header--minimal .header__inner {
    position: relative;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.header--minimal .header__logo {
    margin: 0;
}

.header__logo {
  margin: 0 0 0 30px;
}

.header__logo--image {
  font-size: 0;
}

.header__logo-link {
  display: inline-block;
  text-align: center;
}

.header__logo-image,
.header__logo-text {
  display: inline-block;
  vertical-align: middle;
  max-width: 140px;
  width: 50px;
}

.header__main-nav {
  display: none;
}

.header__nav-toggle {
  width: 21px;
  height: 15px;
  position: relative;
  cursor: pointer;
  background: none;
  border: none;
  vertical-align: middle;
}

.header__nav-toggle span {
    display: block;
    position: absolute;
    height: 2px;
    width: 21px;
    background: var(--heading-color);
    opacity: 1;
    left: 0;
    transition: 0.25s ease-in-out;
    will-change: transform;
}

.header__nav-toggle span:nth-child(1) {
    top: 0;
}

.header__nav-toggle span:nth-child(2) {
    top: 6px;
}

.header__nav-toggle span:nth-child(3) {
    top: 12px;
}

.header__nav-toggle--open span:nth-child(1) {
    top: 6px;
    -webkit-transform: rotate(135deg);
    -ms-transform: rotate(135deg);
    transform: rotate(135deg);
}

.header__nav-toggle--open span:nth-child(2) {
    opacity: 0;
    -webkit-transform: translateX(-10px);
    -ms-transform: translateX(-10px);
    transform: translateX(-10px);
}

.header__nav-toggle--open span:nth-child(3) {
    top: 6px;
    -webkit-transform: rotate(-135deg);
    -ms-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.header__links {
  font-size: 15px;
}

.header__link {
  display: inline-block;
}

.header__link:not(:first-child) {
    margin-left: 22px;
}

.header__link svg {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0); /* Force acceleration on Safari */
}
  
.header__link  a {
  color: var(--heading-color);
  fill: var(--heading-color);
}

.header__link a:hover {
  color: var(--accent-color);
  fill: var(--accent-color);
}

.header-link-main {
  font-weight: 500;
}

.header-link-main a:hover {
  color: var(--heading-color);
  fill: var(--heading-color);
}

.header__secondary-nav .header__link {
  position: relative;
}

.header__secondary-nav {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
    text-align: right;
  }

.header__cart-count {
  position: absolute;
  width: 100%;
  bottom: 9px;
  left: 0;
  text-align: center;
  font-size: 10px;
  font-size: 0.55556rem;
  font-weight: 600;
  color: var(--background);
  line-height: 0;
}

.header__cart-count-wrapper .header__cart-count {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition: -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
}

.header__cart-count-wrapper:hover .header__cart-count {
  -webkit-transform: scale(1.15);
  -ms-transform: scale(1.15);
  transform: scale(1.15);
}

.header__password {
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: transparent;
  border: none;
}

@media screen and (max-width: 559px) {
  .header__links {
    width: 88px;
  }
}

@media screen and (min-width: 560px) {
  .header {
    padding: 0;
  }

  .header__logo {
    margin-left: 25px;
  }
}

@media screen and (min-width: 801px) {
  .header {
    padding: 0;
  }
    
  .header svg {
      width: 6.1875rem;
      height: 1.5rem;
      margin-right: -5px;
      margin-left: 25px;  
  }
  
  .header-container {
    padding: 0px 25px 23px;
  }  

  .header__links {
    margin-bottom: -18px;
  }
  
  .header__logo--centered {
    position: absolute;
    margin: 0;
    left: 50%;
    top: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
  }

  .header__inner {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }

  .header__logo,
  .header__secondary-nav {
    display: inline-block;
    vertical-align: middle;
  }

  .header__secondary-nav {
    margin-bottom: 15px;
  }

  .header__cart-count {
    position: relative;
    display: inline-block;
    width: 16px;
    height: 16px;
    top: -2px;
    vertical-align: middle;
    text-align: center;
    border-radius: 100%;
    color: var(--background);
    background: var(--accent-color);
    line-height: 16px;
  }

  .header__link:not(:first-child) {
    margin-left: 0px;
  }

  .header__link .icon-search {
    position: relative;
    top: -3px;
  }

  .ie9 .header__inner {
      display: block;
    }

  .ie9 .header__secondary-nav {
      float: right;
      margin-top: 1px;
  }
}

@media screen and (min-width: 1025px) {
  .header {
    opacity: 0;
  }
  
  .header-container {
    padding: 0px 40px 23px;
  }  

  .header--init {
    opacity: 1;
  }

  .header__logo {
    margin-left: 0;
    margin-right: 25px;
  } 

  .header__main-nav {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 17px;
  }

  .header__main-nav--stretched {
    -webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
  }

  .header__secondary-nav {
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
  }
  
  .header__links {
    text-align: center;
    margin-bottom: -14px;
  }
  
  .header-main-nav-item-wrap {
    display: inline-block;
  }

  .header-main-nav-item-wrap:first-child {    
    padding-left: 13px;
    }
    
  .header-main-nav-item-wrap:hover:first-child {
    border-left-style: solid;
    border-left-width: 1px;
    border-left-color: #bae8bb;
    }    
    
  .header-main-nav-item-wrap:not(:first-child) {
    padding-left: 13px;
    }
    
  .header-main-nav-item-wrap:not(:last-child) {
    padding-right: 13px;
    border-right-style: solid;
    border-right-width: 1px;
    border-right-color: #bae8bb;
  }
}

@media screen and (min-width: 1280px) {
  .header--tall {
    padding: 35px 0;
  }
  
  .header-main-nav-item-wrap {
    display: inline-block;
  }

  .header-main-nav-item-wrap:first-child {    
    padding-left: 20px;
    }
    
  .header-main-nav-item-wrap:hover:first-child {
    border-left-style: solid;
    border-left-width: 1px;
    border-left-color: #bae8bb;
    }
    
  .header-main-nav-item-wrap:not(:first-child) {
    padding-left: 20px;
    }
    
  .header-main-nav-item-wrap:not(:last-child) {
    padding-right: 20px;  
  }
  
  .header__links {
    font-size: 16px;
    margin-bottom: -18px;
    line-height: 1.3rem;
  }
}

/**
 * NAVIGATION
 */

.header__link .icon-dropdown-arrow,
.header__link .icon-next {
  width: 9px;
  height: 9px;
  vertical-align: baseline;
}

.header__main-nav .header__link .icon-dropdown-arrow {
  margin-left: 6px;
  -webkit-transform: rotateZ(0deg);
  transform: rotateZ(0deg);
  transition: -webkit-transform 0.25s ease-in-out;
  transition: transform 0.25s ease-in-out;
}

.header__main-nav .header__link:hover .icon-dropdown-arrow,
.header__main-nav .header__link--focused .icon-dropdown-arrow {
  -webkit-transform: rotateZ(-180deg);
  transform: rotateZ(-180deg);
}

.nav-dropdown {
  position: absolute;
  padding: 15px 0;
  background: var(--background);
  visibility: hidden;
  opacity: 0;
  transition: opacity 0.2s ease-in-out, visibility 0s 0.2s ease-in-out;
  border-left: 1px solid #bae8bb;
  border-bottom: 1px solid #bae8bb;
  white-space: normal;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.04);
  width: 207px;
  text-align: left;
}

.nav-dropdown--first {
  top: 100%;
  margin-left: -14px;
  margin-top: -42px;
  padding: 25px 0 15px;
}

@media screen and (min-width: 1280px) {
  .nav-dropdown--first {
  margin-left: -21px;
  margin-top: -39px;
  }
}

.nav-dropdown--second {
  left: 100%;
  top: -22px;
  background: #fcfcfc; 
  border-color: #bae8bb;
  color: #777;
}

.header__link:hover > .nav-dropdown,
.header__link--focused > .nav-dropdown,
.nav-dropdown__item:hover > .nav-dropdown {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.2s ease-in-out, visibility 0s ease-in-out;
}

.nav-dropdown__item {
  position: relative;
}

.nav-dropdown__link {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 6.5px 32px;
  line-height: 20px;
}

.nav-dropdown__link .icon-next {
    margin-left: 13px;
}

.nav-dropdown--first > .nav-dropdown__item > .nav-dropdown__link {
  color: var(--heading-color);
}

.nav-dropdown--first > .nav-dropdown__item:hover > .nav-dropdown__link {
  color: var(--accent-color);
}

.nav-dropdown--second > .nav-dropdown__item > .nav-dropdown__link {
  color: var(--text-color);
}

.nav-dropdown--second > .nav-dropdown__item:hover > .nav-dropdown__link {
  color: var(--accent-color);
}

.mega-nav {
  position: absolute;
  width: 100%;
  left: 0;
  top: 100%;
  padding: 25px 0 35px 0;
  background: var(--background);
  box-shadow: 0 2px 3px rgba(var(--text-color), 0.1);
  text-align: center;
  visibility: hidden;
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transform-origin: top;
  -ms-transform-origin: top;
  transform-origin: top;
  will-change: transform;
  transition: all 0.3s cubic-bezier(0.215, 0.61, 0.355, 1);
}

.mega-nav__item {
  display: inline-block;
  margin: 0 15px;
  color: var(--heading-color);
  vertical-align: bottom;
}

.mega-nav__item:hover {
    color: var(--accent-color);
}

.mega-nav__image {
  max-width: 150px;
  max-height: 150px;
}

.mega-nav__title {
  display: block;
  margin-top: 8px;
  text-transform: uppercase;
  font-size: 1.15em;
  letter-spacing: .02rem;
}

/* Toggle mega-nav */

.header__link--need-extra-space:hover > .link {
  padding-bottom: 100%; /* This allows to add more space to keep the hover activated */
}

.header__link:hover > .mega-nav,
.header__link--focused > .mega-nav {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  visibility: visible;
}

/**
 * CURRENCY SELECTOR
 */

.currency-selector svg {
  right: 0;
  width: 9px;
  height: 9px;
  vertical-align: baseline;
  fill: #7a859c;
}

.currency-selector select {
  height: auto;
  padding-right: 16px;
  border: none;
  font-size: inherit;
}

.currency-selector select:focus {
    outline: auto 5px -webkit-focus-ring-color;
}

/**
 * SIDEBAR NAVIGATION
 */

.sidebar-nav {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100vh;
  width: 100%;
  left: 0;
  top: 100%;
  padding: 0 50px;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
  background: var(--background);
  opacity: 0;
  transition: all 0.25s ease-in-out;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  will-change: transform;
}

.sidebar-nav:focus {
    outline: none;
}

.page__container--secondary .sidebar-nav {
  border-top: 1px solid var(--border-color);
}

.sidebar-nav--open {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.sidebar-nav__links {
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  color: var(--heading-color);
  font-size: 18px;
  font-size: 1rem;
}

.sidebar-nav__link {
  position: relative;
  display: block;
  padding-right: 30px;
}

.sidebar-nav__links > li {
  padding: 16px 0;
  border-bottom: 1px solid var(--border-color);
}

.sidebar-nav__links > li:last-child {
    border-bottom: none;
}

.sidebar-nav__link--level-1 {
  padding: 6px 0;
}

.sidebar-nav__link--level-2,
.sidebar-nav__link--level-3 {
  padding: 5px 0;
}

.sidebar-nav__sub-links {
  display: none; /* Sublinks are hidden by default */
  margin: 0 0 2px 15px;
  color: var(--text-color);
}

.sidebar-nav__sub-links .sidebar-nav__sub-links {
  color: var(--light-text-color); /* For nested links */
}

.sidebar-nav__sub-links--visible {
  display: block;
}

.sidebar-nav__link > .plus-button-container {
  position: absolute;
  right: 0;
  top: 5px;
}

.sidebar-nav__currency {
  display: block;
  padding: 8px 0;
  font-size: 13px;
  font-size: 0.72222rem;
}

.sidebar-nav__currency .currency-selector {
  float: right;
}

.sidebar-nav .social-media {
  margin: 18px 0 42px 0;
}

@media screen and (min-width: 560px) {
  .sidebar-nav {
    max-width: 400px;
  }
}
@-webkit-keyframes headerSearchCircle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

@keyframes headerSearchCircle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

/**
 * GENERAL SEARCH
 */

.header-search {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: absolute;
  visibility: hidden;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  top: 0;
  left: 0;
  min-height: 100%;
  width: 100%;
  background: var(--secondary-background);
  z-index: 2;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
  opacity: 0;
  transition: all 0.35s cubic-bezier(0.7, 0, 0.3, 1);
  will-change: transform;
}

.header-search--open {
  visibility: visible;
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.header-search + .header::before {
  content: '';
  position: absolute;
  visibility: hidden;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  background: #000000;
  opacity: 0;
  z-index: 1;
  transition: opacity 0.3s;
}

.header-search--open + .header::before {
  opacity: 0.6;
  visibility: visible;
}

/**
 * FORM PART
 */

.header-search__form-wrapper {
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  max-width: 100%;
}

.header-search__form {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.header-search__form .icon-search {
  width: 22px;
  height: 22px;
  margin-top: -2px;
  color: var(--heading-color);
}

.header-search__close {
  position: relative;
  background: none;
  padding: 0;
  border: none;
  -webkit-appearance: none;
  color: var(--light-text-color);
  transition: color 0.15s ease-in-out;
}

  /* This allows to increase clickable area */
.header-search__close::after {
    content: '';
    position: absolute;
    top: -5px;
    bottom: -5px;
    left: -10px;
    right: -10px;
}

.header-search__close:hover {
    color: var(--heading-color);
}

.header-search__close .icon-cross {
  width: 16px;
  height: 16px;
  cursor: pointer;
}

.header-search__input-wrapper {
  -webkit-flex: 1 1 auto;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 0 22px;
}

.header-search__input {
  border: none;
  font-size: 25px;
  font-size: 1.38889rem;
  color: var(--heading-color);
  background: transparent;
  vertical-align: middle;
  width: 100%;
  background-color: rgba(0, 0, 0, 0) !important;
}

.header-search__input:focus {
    outline: none;
}

.header-search__input::-ms-clear {
    display: none;
}

/**
 * RESULTS PART
 */

.header-search__results-wrapper {
  display: none;
  position: absolute;
  width: 100%;
  top: 100%;
  left: 0;
  margin-top: -1px;
  background: var(--background);
}

.header-search__results {
  padding: 36px 0;
  border-top: 1px solid rgba(var(--text-color), 0.1);
}

.header-search__see-more {
  display: inline-block;
  margin-top: 32px;
}

.header-search__spinner-container {
  margin: 20px 0;
  text-align: center;
}

.header-search__spinner {
  position: relative;
  display: inline-block;
  width: 50px;
  height: 50px;
  vertical-align: middle;
  border: 2px solid var(--text-color);
  border-left-color: var(--secondary-background);
  border-radius: 100%;
  -webkit-animation: headerSearchCircle infinite .75s linear;
  animation: headerSearchCircle infinite .75s linear;
}

.header-search__no-results {
  font-weight: 400;
  font-size: 22px;
}

@media screen and (min-width: 560px) {
  .header-search__results-wrapper {
    display: block;
  }
}

// Products

.header-search__products {
  margin-top: 24px;
}

.header-search__products .product-item {
  margin-bottom: 0;
}

.header-search__products .product-item__image {
  max-height: 215px;
}

@media screen and (min-width: 801px) and (max-width: 1024px) {
  .header-search__products .grid__cell:nth-child(4) {
    display: none;
  }
}

@media screen and (min-width: 560px) {
  .header-search__products + .header-search__see-more[data-results-count="1"],
  .header-search__products + .header-search__see-more[data-results-count="2"],
  .header-search__pages + .header-search__see-more[data-results-count="1"],
  .header-search__pages + .header-search__see-more[data-results-count="2"],
  .header-search__pages + .header-search__see-more[data-results-count="3"],
  .header-search__pages + .header-search__see-more[data-results-count="4"] {
    display: none;
  }

  .header-search__products {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }

  .header-search__products > .grid__cell {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  .header-search__products .product-item {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
  }
}

@media screen and (min-width: 801px) {
  .header-search__products + .header-search__see-more[data-results-count="3"] {
    display: none;
  }
}

@media screen and (min-width: 1025px) {
  .header-search__products + .header-search__see-more[data-results-count="4"] {
    display: none;
  }
}

// Pages and articles

.header-search__pages {
  margin-top: -10px;
}

.header-search__page {
  display: block;
  padding: 14px 0;
  box-shadow: 0 -1px var(--border-color) inset;
  font-weight: 600;
  color: var(--heading-color);
}
@-webkit-keyframes instagramTileAnimation {
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

@keyframes instagramTileAnimation {
  to {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
}

.instagram-feed {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-top: 30px;
  font-size: 0;
  white-space: nowrap;
  overflow: hidden;
}

.instagram-tile__info {
  display: none;
}

.instagram-tile__image-wrapper {
  display: block;
  background-size: cover;
  background-position: center center;
  transition: none;
  float: right; /* this allows to prevent a white border to appears when the browser computes a half pixel width */
}

.instagram-tile__image-wrapper--placeholder {
  background: #c4c4ca;
  fill: #545353;
}

.instagram__tile-wrapper {
  position: relative;
  display: none; /* all are hidden by default */
  vertical-align: middle;
  white-space: normal;
}

.instagram__tile-wrapper-hidder {
  position: relative;
  overflow: hidden;
}

.instagram__tile-wrapper--featured .instagram-tile__info {
  display: block;
  font-size: 1rem;
}

/* By default next and prev tiles are hidden and displayed using an animation */

.instagram-tile {
  display: inline-block;
  background: var(--background);
}

.instagram-tile--prev,
.instagram-tile--next {
  position: absolute;
  left: 0;
  top: 0;
  visibility: hidden;
  will-change: transform;
}

.instagram-tile--next {
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
}

.instagram-tile--prev {
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
}

.instagram-tile__likes {
  margin-bottom: 0;
  font-weight: 600;
  font-size: 0.9em;
}

.instagram-tile__likes svg {
    margin-right: 8px;
}

.instagram-tile__button {
  display: none;
  position: absolute;
  padding: 10px;
  top: 50%;
  -webkit-appearance: none;
  background: transparent;
  color: #ffffff;
  font-size: 16px;
  font-size: 0.88889rem;
  border: none;
  z-index: 2;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.instagram__tile-wrapper--featured .instagram-tile__button {
  display: block;
}

.instagram-tile__button--prev {
  left: -45px;
}

.instagram-tile__button--next {
  right: -45px;
}

.instagram__tile-wrapper:not(.instagram__tile-wrapper--featured) .instagram-tile__image-wrapper {
  pointer-events: none;
}

/* On pocket, laptop and small desktop devices we only display 3 images around the pivot */
.instagram__tile-wrapper:nth-child(7),
.instagram__tile-wrapper:nth-child(8),
.instagram__tile-wrapper:nth-child(9) {
  display: table-cell;
}

/*
 * Animations
 */

.instagram-feed--animating-next .instagram-tile--next,
.instagram-feed--animating-prev .instagram-tile--prev {
  -webkit-animation: instagramTileAnimation 0.35s ease-in-out forwards;
  animation: instagramTileAnimation 0.35s ease-in-out forwards;
  visibility: visible;
  z-index: 1;
}

@media screen and (max-width: 559px) {
  .instagram__tile-wrapper,
  .instagram-tile__image-wrapper {
    width: 30%;
    min-width: 30vw;
    height: 30vw;
  }

  .instagram__tile-wrapper--featured {
    width: 40%;
    min-width: 40vw;
  }

  .instagram__tile-wrapper--featured .instagram-tile__image-wrapper {
    width: 40vw;
    height: 40vw;
  }

  .instagram__tile-wrapper--featured .instagram-tile__info {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    padding: 10px 0 0 15px;
    color: #ffffff;
  }

  .instagram-tile__caption,
  .instagram-tile__date {
    display: none;
  }
}

@media screen and (min-width: 560px) {
  /* Starting from handheld, we display the full tweet with description */
  .instagram__tile-wrapper,
  .instagram-tile__image-wrapper {
    width: 20%;
    min-width: 20vw;
    height: 20vw;
  }

  .instagram__tile-wrapper--featured {
    width: 60%;
    min-width: 60vw;
  }

  .instagram__tile-wrapper--featured .instagram-tile__image-wrapper {
    width: 30vw;
    height: 30vw;
  }

  .instagram__tile-wrapper--featured .instagram-tile {
    display: table;
    table-layout: fixed;
  }

  .instagram__tile-wrapper--featured .instagram-tile__info {
    display: table-cell;
    width: 50%;
    vertical-align: top;
  }

  .instagram-tile__info {
    position: relative;
  }

  .instagram-tile__info-wrapper {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    position: absolute;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    padding: 15px 20px;
  }

  .instagram-tile__likes {
    color: var(--accent-color);
    font-size: 18px;
    font-size: 1rem;
  }

  .instagram-tile__caption {
    margin-top: 10px;
    font-size: 16px;
    font-size: 0.88889rem;
  }

  .instagram-tile__date {
    font-size: 12px;
    font-size: 0.66667rem;
  }

  .instagram-tile__button {
    font-size: 26px;
    font-size: 1.44444rem;
  }

  .instagram-tile__button--prev {
    left: -60px;
  }

  .instagram-tile__button--next {
    right: -60px;
  }
}

@media screen and (min-width: 1025px) {
  .instagram-feed {
    margin-top: 46px;
  }

  .instagram-tile__info-wrapper {
    padding: 26px 40px;
  }

  .instagram-tile__caption {
    margin-top: 24px;
  }
}

@media screen and (min-width: 1280px) {
  /* Starting wide screen we display 5 items */
  .instagram__tile-wrapper:nth-child(6),
  .instagram__tile-wrapper:nth-child(10) {
    display: table-cell;
  }

  .instagram__tile-wrapper,
  .instagram-tile__image-wrapper {
    width: 15%;
    min-width: 15vw;
    height: 15vw;
  }

  .instagram__tile-wrapper--featured {
    width: 40%;
    min-width: 40vw;
  }

  .instagram__tile-wrapper--featured .instagram-tile__image-wrapper {
    width: 20vw;
    height: 20vw;
  }
}

@media screen and (min-width: 1280px) {
  /* Starting ultra wide screen we display 7 items */
  .instagram__tile-wrapper:nth-child(5),
  .instagram__tile-wrapper:nth-child(11) {
    display: table-cell;
  }

  .instagram__tile-wrapper,
  .instagram-tile__image-wrapper {
    width: 11%;
    min-width: 11vw;
    height: 11vw;
  }

  .instagram__tile-wrapper--featured {
    width: 34%;
    min-width: 34vw;
  }

  .instagram__tile-wrapper--featured .instagram-tile__image-wrapper {
    width: 17vw;
    height: 17vw;
  }
}
@-webkit-keyframes miniCartSpinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

@keyframes miniCartSpinner {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

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

.mini-cart {
  position: absolute;
  right: 0;
  top: 100%;
  width: 100%;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
  background: var(--background);
  opacity: 0;
  transition: all 0.25s ease-in-out;
  visibility: hidden;
  will-change: transform;
}

.mini-cart:focus {
    outline: none;
}

.page__container--secondary .mini-cart {
  border-top: 1px solid var(--border-color);
}

.mini-cart--open {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
  visibility: visible;
}

.mini-cart__inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-between;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 100vh;
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.mini-cart__inner--centered {
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.mini-cart__items {
  position: relative;
  width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.mini-cart__items::before {
  position: fixed;
  content: '';
  height: 100%;
  width: 100%;
  max-height: calc(100% - 124px);
  background: rgba(0, 0, 0, 0);
  transition: background 0.2s ease-in-out, visibility 0s ease-in-out 0.2s;
  visibility: hidden;
}

.mini-cart__items--loading::before {
  background: rgba(0, 0, 0, 0.2);
  visibility: visible;
  transition: background 0.2s ease-in-out;
}

.mini-cart__items--loading::after {
  position: fixed;
  content: '';
  display: inline-block;
  width: 50px;
  height: 50px;
  top: calc(50% - 104px);
  left: calc(50% - 25px);
  vertical-align: middle;
  border: 2px solid var(--text-color);
  border-left-color: transparent;
  border-radius: 100%;
  -webkit-animation: miniCartSpinner infinite .75s linear;
  animation: miniCartSpinner infinite .75s linear;
}

.mini-cart__item {
  display: table;
  width: 100%;
}

.mini-cart__item-wrapper:not(:last-child) {
  border-bottom: 1px solid var(--border-color);
}

.mini-cart-item__info,
.mini-cart__total-label-container {
  width: 55%;
}

.mini-cart__total {
  position: relative;
  display: table;
  width: 100%;
  border-top: 1px solid var(--border-color);
}

.mini-cart__item > *,
.mini-cart__total > * {
  display: table-cell;
  padding-top: 16px;
  padding-bottom: 16px;
  vertical-align: middle;
}

.mini-cart-item__image-container,
.mini-cart__image-container-spacer {
  width: 76px;
  min-width: 76px;
}

.mini-cart-item__image {
  display: block;
  max-width: 65px;
  max-height: 65px;
  margin: 0 auto;
}

.mini-cart-item__vendor {
  margin-bottom: -2px;
}

.mini-cart-item__title {
  margin-bottom: 0;
  font-weight: 600;
}

.mini-cart-item__variant {
  font-size: 14px;
  font-size: 0.77778rem;
  color: var(--heading-color);
}

.mini-cart-item__price-container,
.mini-cart__total-price-container {
  text-align: right;
}

.mini-cart-item__price {
  color: var(--heading-color);
  font-weight: 500;
}

.mini-cart-item__remove-container,
.mini-cart__remove-container-spacer {
  padding: 0 15px;
  width: 50px;
}

.mini-cart-item__remove-container {
  text-align: right;
}

.mini-cart-item__remove-container a:hover {
    color: var(--accent-color);
}

.mini-cart-item__remove-container svg {
    width: 14px;
    height: 14px;
}

.mini-cart__total-price {
  font-weight: 600;
}

.mini-cart__buttons {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -5px;
  padding: 0 20px 20px 20px;
}

.mini-cart__buttons .button {
  margin: 0 5px;
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
  padding-left: 5px;
  padding-right: 5px;
}

.mini-cart__empty-state {
  padding: 30px;
  text-align: center;
}

.mini-cart__empty-state p {
    margin-bottom: 30px;
}

@media screen and (min-width: 560px) {
  .mini-cart {
    min-width: 470px;
    max-width: 470px;
  }

  .mini-cart__inner {
    display: block;
    height: auto;
    width: auto;
  }

  .mini-cart__item > *,
  .mini-cart__total > * {
    padding-top: 24px;
    padding-bottom: 24px;
  }

  .mini-cart__items {
    max-height: 280px;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
  }

  .mini-cart__items::before {
    max-height: calc(100% - 157px);
  }

  .mini-cart__buttons {
    margin: 0;
    padding: 0 15px 30px 15px;
  }

  .mini-cart__buttons .button {
    margin: 0 15px;
  }
}

@media screen and (min-width: 1300px) {
  .mini-cart {
    right: calc((100vw - 1300px) / 2);
  }
}
.modal__close {
  position: absolute;
  right: 15px;
  top: 15px;
  color: var(--light-text-color);
}

.modal__close:hover {
    color: var(--accent-color);
}

.modal__close svg {
    width: 15px;
    height: 15px;
    vertical-align: top;
}

.modal__header {
  padding: 20px;
  border-bottom: 1px solid var(--border-color);
}

.modal__title {
  margin-bottom: 14px;
  letter-spacing: .02rem;
}

.modal__form {
  max-width: 460px;
  margin: 30px auto 0 auto;
}

@media screen and (min-width: 560px) {
  .modal__close {
    top: 30px;
    right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .modal__form {
    margin-top: 42px;
  }

  .modal__title {
    margin-bottom: 20px;
  }
}
.pagination {
  position: relative;
  margin-top: 30px;
  padding-top: 14px;
  text-align: center;
  overflow: hidden;
  line-height: 26px;
  border-top: 1px solid var(--border-color);
}

.pagination--minimal {
  margin-top: 0 !important;
  border-top: none;
}

.pagination__next,
.pagination__prev {
  position: absolute;
}

.pagination__next svg,
.pagination__prev svg {
  display: inline-block;
  width: 10px;
  height: 10px;
}

.pagination__next {
  right: 0;
}

.pagination__next svg {
    margin-left: 12px;
}

.pagination__prev {
  left: 0;
}

.pagination__prev svg {
    margin-right: 12px;
}

.pagination__nav {
  visibility: hidden;
}

.pagination__nav {
  display: inline-block;
  letter-spacing: 0;
}

.pagination__nav-item {
  display: inline-block;
  margin: 0 4px;
  width: 26px;
  height: 26px;
  text-align: center;
}

.pagination__nav-link {
  display: block;
}

.pagination__nav-item--active {
  background: #f8f8f9;
  color: #52535C;
  border: 1px solid #e0e0e0;
}

.pagination--minimal .pagination__nav {
  visibility: hidden !important;
}

@media screen and (min-width: 560px) {
  .pagination:not(.pagination--minimal) {
    padding-top: 20px;
  }

  .pagination__nav {
    visibility: visible;
  }
}

@media screen and (min-width: 801px) {
  .pagination {
    line-height: 38px;
  }

  .pagination__nav-item {
    margin: 0 6px;
    width: 38px;
    height: 38px;
  }
}

@media screen and (min-width: 1025px) {
  .pagination {
    margin-top: 72px;
  }
}
.newsletter {
  background: var(--accent-color);
  color: var(--background);
  text-align: center;
}

.newsletter__inner {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  position: relative;
  padding: 40px 0;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.newsletter__cta {
  position: relative;
  display: inline-block;
  margin: 0 0 10px 0;
}

.newsletter__image-container {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: auto;
}

.newsletter__image-container--softened::before, .newsletter__image-container--softened::after {
  position: absolute;
  content: "";
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.newsletter__image-container--softened::before {
  background-image: linear-gradient(to right, var(--accent-color) 0%, rgba(var(--accent-color-rgb), 0.9) 60px, rgba(var(--accent-color-rgb), 0.1) 100%);
}
.newsletter__image-container--softened::after {
  background-image: linear-gradient(to left, var(--accent-color) 0%, rgba(var(--accent-color-rgb), 0.9) 60px, rgba(var(--accent-color-rgb), 0.1) 100%);
}

.no-cssgradients .newsletter__image-container--softened {
  opacity: 0.2;
}

.newsletter__image {
  display: block;
  height: 100%;
}

@media screen and (min-width: 560px) {
  .newsletter__cta {
    margin: 0;
  }

  .newsletter__form {
    margin-left: 25px;
  }

  .newsletter__inner {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }
}

@media screen and (min-width: 801px) {
  .newsletter__inner {
    padding: 90px 0;
  }

  .newsletter__cta {
    font-size: 26px;
    font-size: 1.44444rem;
  }

  .newsletter__form {
    margin-left: 35px;
  }
}

@media screen and (min-width: 1280px) {
  .newsletter__form {
    margin-left: 105px;
  }
}
/**
 * Some specific rules that change the header on password page
 */

.template-password .main,
.shopify-section__password {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.password {
  position: relative;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-direction: column;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-justify-content: space-around;
  -ms-flex-pack: distribute;
  justify-content: space-around;
  max-width: 500px;
  width: 100%;
  margin: 0 auto;
  padding: 25px;
  text-align: center;
  color: #ffffff;
}

.password__overlay {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  background-position: center;
  background-size: cover;
}

.password__aside {
  -webkit-flex: 1 0 auto;
  -ms-flex: 1 0 auto;
  flex: 1 0 auto;
}

.password__main {
  margin: 50px 0 75px 0;
}

.password__title {
  margin-bottom: 0.5em;
  color: currentColor;
}

.password__message {
  margin-bottom: 2em;
}

.password__aside {
  font-size: 0.9em;
}

.password__admin-link {
  display: inline-block;
  margin-bottom: 20px;
  position: relative;
  font-size: 14px;
  font-size: 0.77778rem;
  text-transform: uppercase;
  font-weight: 700;
  letter-spacing: 0.9px;
}

.password__admin-link::after {
    content: '';
    position: absolute;
    height: 1px;
    width: 100%;
    bottom: 2px;
    left: 0;
    background: currentColor;
}

.password__powered-by svg {
    margin-left: 4px;
    width: 90px;
    height: 25px;
    vertical-align: bottom;
}

@media screen and (min-width: 560px) {
  .password__aside {
    -webkit-flex: none;
    -ms-flex: none;
    flex: none;
  }
}

@media screen and (min-width: 1025px) {
  .password__message {
    margin-bottom: 3.6em;
  }
}
/**
 * PRODUCT SLIDESHOW
 */

.product__slideshow {
  margin-bottom: 50px;
}

.product__slide-image {
  margin: 0 auto;
  max-height: 315px;
}

.product__thumbnails {
  margin-top: 18px;
  text-align: center;
}

.product__thumbnail {
  display: inline-block;
  margin: 5px;
  cursor: pointer;
  transition: opacity 0.2s ease-in-out;
}

.product__thumbnail--active {
  opacity: 0.5;
}

.product__thumbnail-image {
  max-width: 50px;
  max-height: 50px;
  vertical-align: middle;
}

@media screen and (max-width: 559px) {
  .product__slides {
    margin: 0 -25px;
  }
}

@media screen and (min-width: 560px) {
  .product__slide-image {
    max-height: 500px;
  }

  .product__thumbnail {
    margin: 10px 15px;
  }

  .product__thumbnail-image {
    max-width: 80px;
    max-height: 80px;
  }
}

@media screen and (min-width: 801px) {
  .product__details {
    margin-left: 50px;
    margin-bottom: 34px;
  }
}

@media (min-height: 900px) {
  .product__slide-image {
    max-height: 600px;
  }
}

@media (min-height: 950px) {
  .product__slide-image {
    max-height: 650px;
  }
}

@media (min-height: 1100px) {
  .product__slide-image {
    max-height: 750px;
  }
}

/**
 * PRODUCT META
 */

.product__meta {
  margin-bottom: 20px;
  text-align: center;
  color: var(--heading-color);
}

.product__brand {
  margin-bottom: 2px;
}

.product-brand-wrap {
  display: inline-block;
  padding-bottom: 15px
}

.product__title {
    margin-bottom: 8px;
    font-size: 32px;
    line-height: 40px;
    padding-top: 0px;
    font-weight: 600;  
}

.product-page-sku {
  color: var(--text-color);
  font-size: 16px;
  margin: -5px 0 10px;
}

.product__price {
  margin-bottom: 0;
  display: inline-block;
  color: var(--accent-color);
  letter-spacing: 0.04em;
  font-size: 1.29rem;
  line-height: 1.7;
}

.product__price--old {
  text-decoration: line-through;
  margin-left: 18px;
  color: var(--light-text-color);
  font-weight: 400;
}

.product__review-badge {
  margin-top: 14px;
  font-size: 12px;
  font-size: 0.66667rem;
  color: var(--light-text-color);
  text-transform: uppercase;
  font-weight: 700;
}

.spr-badge-caption {
  margin-left: 12px;
  vertical-align: middle;
}

@media screen and (min-width: 801px) {
  .product__meta {
    margin-bottom: 25px;
    text-align: left;
  }

  .product__prices,
  .product__review-badge {
    display: inline-block;
  }

  .product__review-badge {
    float: right;
    margin-top: 2px;
  }
}

@media screen and (min-width: 1025px) {
  .product__brand {
    margin-bottom: 12px;
  }

  .product-brand-wrap {
    padding-bottom: 15px
  }
  
  .product__title {
    margin: 0 0 16px -4px;
    font-size: 48px;
    line-height: 58px;
    padding-top: 0;
  }
  
  .product-page-sku {	
    margin: -6px 0 15px;	
  }

  .product__review-badge {
    margin-top: 10px;
  }

  .product__price {
    font-size: 30px;
    font-size: 1.45rem; /* The normal h4 size is slightly too big on desktop so we use a different size exceptionally */
  }
}

/**
 * COLOR SWATCH AND SIZE SELECTOR
 */

.color-swatch {
  display: inline-block;
  width: 42px;
  height: 42px;
  background-size: contain;
  vertical-align: middle;
}

.color-swatch--white {
  border: 2px solid var(--border-color);
}

.color-swatch--mini {
  width: 11px;
  height: 11px;
  vertical-align: baseline;
  border-width: 1px;
}

.product__available-colors {
  margin-bottom: -10px;
}

.product__color {
  position: relative;
  margin: 0 10px 10px 0;
  display: inline-block;
}

.product__color:last-child {
    margin-right: 0;
}

.product__color .color-swatch {
  cursor: pointer;
}

.product__color--unavailable .color-swatch {
  cursor: not-allowed;
  opacity: 0.3;
}

.product__color--unavailable::after,
.product__color--unavailable::before {
    position: absolute;
    content: '';
    top: 0;
    width: 58px;
    height: 2px;
    background: var(--heading-color);
}

.product__color--unavailable::before {
    left: 1px;
    -webkit-transform: rotateZ(45deg);
    transform: rotateZ(45deg);
    -webkit-transform-origin: top left;
    -ms-transform-origin: top left;
    transform-origin: top left;
}

.product__color--unavailable::after {
    right: 1px;
    -webkit-transform: rotateZ(-45deg);
    transform: rotateZ(-45deg);
    -webkit-transform-origin: top right;
    -ms-transform-origin: top right;
    transform-origin: top right;
}

.color-swatch + svg {
  position: absolute;
  width: 15px;
  height: 15px;
  left: calc(50% - 7.5px);
  top: calc(50% - 7.5px);
  display: none;
  color: #ffffff;
  pointer-events: none;
}

.color-swatch--white + svg {
  color: var(--heading-color);
}

.product__color input:checked ~ svg {
  display: block;
}

.product__size {
  display: inline-block;
}

.product__size-label {
  display: block;
  padding: 10px 16px;
  font-size: 16px;
  font-size: 0.88889rem;
  font-weight: 600;
  color: var(--heading-color);
  cursor: pointer;
}

input:checked + .product__size-label {
    background: #5f6b83;
    color: var(--background);
}

.product__size--unavailable .product__size-label {
  cursor: not-allowed;
  text-decoration: line-through;
  color: var(--light-text-color);
}

.product__color input[type="radio"],
.product__size input[type="radio"] {
  display: none;
}

.product-variant-wrap {
  display: inline-block; 
  vertical-align: top; 
  min-width: 257px;
}

@media screen and (max-width: 800px) {
  .product-variant-wrap {
    width: 100%;
  }
  
  .product-variant-wrap .product__variants .form__control {
    margin-bottom: 43px;
  }
}

@media screen and (min-width: 801px) {
  .product-variant-wrap .product__variants .form__control {
    margin-top: 15px;
  }
}

/**
 * PRODUCT FORM
 */

.product__description {
  padding-top: 35px;
  border-top: 1px solid #d4d4d6;
  margin-bottom: 20px;
}

.product__tabs {
  padding: 14px 0;
}

.product__form {
  margin-bottom: 25px;
}

.product__form .form__control {
  margin-bottom: 25px;
}

.product__form .quantity-selector__current-quantity {
  width: 48px;
}

@media screen and (max-width: 800px) {
  /* On small devices, the form selectors are inline to win some space */

  .product__details {
    max-width: 500px;
    margin: 0 auto;
  }

  .product__form .form__control {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
  }

  .product__form .form__label {
    margin: 0;
    min-width: 100px;
    max-width: 100px;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
  }

  .product__form .styled-select {
    width: 100%;
  }

  .product__add-to-cart {
    margin-top: 14px;
    width: 100%;
    font-size: 20px;
    font-size: 1.11111rem;
    padding-top: 20px;
    padding-bottom: 20px;
  }
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .product__form .form__label {
    min-width: 160px;
    max-width: 160px;
  }
}

@media screen and (min-width: 801px) {
  .product__add-to-cart {
    margin-top: 15px;
    min-width: 235px;
  }

  /* On larger screen we want the selector to be able to be on the same line if there is enough space */


  .product__variants {
    margin-left: unset;
    margin-right: unset;
  }
  
  .product__variants .form__control {
    display: inline-block;
    margin-left: 0px;
    margin-right: 30px;
  }
}

/**
 * QUANTITY SELECTOR
 */

.quantity-selector,
.quantity-selector--input {
  display: inline-block;
  color: var(--heading-color);
  white-space: nowrap;
  border: 1px solid #d4d4d6;
  padding: 10px 12px;
  background: #f8f8fa;
  height: 49px;
}

.quantity-selector a,
.quantity-selector--input a {
    display: inline-block;
    padding: 0 6px; /* this allows to slightly increase the clickable area */
    color: var(--light-text-color);
}

.quantity-selector a:hover,
.quantity-selector--input a:hover {
      color: var(--heading-color);
}

.quantity-selector svg,
.quantity-selector--input svg {
    stroke: currentColor;
    stroke-width: 1px;
    width: 14px;
    height: 14px;
}

.quantity-selector__current-quantity {
  display: inline-block;
  width: 28px;
  vertical-align: middle;
  text-align: center;
}

.product-quantity-wrap {
  display: inline-block; 
  vertical-align: top;
}

@media screen and (max-width: 800px) {
  .product-quantity-wrap {
    margin-bottom: 10px;
  }
}

@media screen and (min-width: 801px) {
  .product-quantity-wrap {
    margin-right: 30px;
  }
}

@media screen and (min-width: 1025px) {
  .quantity-selector svg {
    width: 16px;
    height: 16px;
  }

  .quantity-selector__current-quantity {
    width: 48px;
  }
}

/**
 * PRODUCT FEATURES
 */

.product-features {
  padding: 36px 0;
  background: var(--product-features-background);
  color: var(--product-features-color);
  text-align: center;
}

.product-features__list {
  margin-bottom: -36px;
}

.product-features__item {
  margin-bottom: 36px;
}

.product-features__icon.fa {
  margin-bottom: 14px;
  font-size: 2.5em;
}

.product-features__title {
  margin-bottom: 14px;
  color: var(--product-features-color);
  font-size: 14px;
  font-size: 0.77778rem;
}

.product-features__content {
  max-width: 290px;
  margin: 0 auto;
  opacity: 0.7;
  font-size: 14px;
  font-size: 0.77778rem;
}

@media screen and (min-width: 801px) {
  .product-features {
    padding: 55px 0;
  }

  .product-features__list {
    margin-bottom: -60px;
  }

  .product-features__item {
    margin-bottom: 60px;
  }

  .product-features__title {
    margin-bottom: 18px;
  }

  .product-features__content {
    font-size: 16px;
    font-size: 0.88889rem;
  }
}

/**
 * RELATED PRODUCTS
 */

.template-product .related-products {
  overflow: hidden;
  background: var(--secondary-background);
}

.list-products {
  margin-bottom: -25px;
}

.list-products > .grid__cell {
  margin-bottom: 25px;
}

.product-item {
  position: relative;
  width: 100%;
  font-size: 18px;
  font-size: 1rem;
  color: var(--heading-color);
  text-align: left;
  background: var(--background);
}

.slick-slide .product-item--push {
  transition: all 0.25s ease;
  border: 1px solid #eeeeef;
}

.product-item--push {
  transition: all 0.25s ease;
  border: none;
}

@media screen and (min-width: 560px) {
  .product-item--push {
    border: none;
  }
}

.product-item--bordered {
  border: 1px solid var(--border-color);
}

.product-item__labels {
  position: absolute;
  left: 0;
  top: 18px;
  pointer-events: none;
}

.product-item__image-container {
  font-size: 0;
  margin: 0;
  -webkit-margin-start: 0;
  -webkit-margin-end: 0;
  -webkit-margin-before: 0;
  -webkit-margin-after: 0;
  transition: all 0.25s ease;
}

.product-item__image {
  margin: 0 auto;
  opacity: 1;
  transition: all 0.25s ease-in-out;
}

.product-item__image:hover { 
  opacity: 0.9;
} 

.hover-color-wrap {
  max-width: 300px;
  margin-right: auto;
  margin-left: auto;
  height:auto;
  transition: all 0.25s ease-in-out;
}

.hover-color-wrap:hover {
  background-color: #ababbd;
}

.product-item__image--constrained {
  max-height: 250px;
}

.product-item__image--fill {
  width: 100%;
  max-height: none !important;
}

.product-item__link {
  display: block;
}

.product-item__info {
  padding: 5px 0 50px;
  max-width: 355px;
  margin-left: auto;	
  margin-right: auto;
}

.product-item__info > .text--uppercase {
  font-weight: 500;
}

@media screen and (max-width: 559px) {
  .slick-slide .product-item__info {
    margin: 0 20px;
  }
}

@media screen and (min-width: 560px) {
  .product-item__info {
    height: unset;
  }
}

.product-item__vendor {
  margin: 1.2em 0 0;
}

.product-item__title {
  margin-bottom: 0.3em;
}

.product-item__title {
  font-size: 1.21em;
  line-height: 1.35;
}

.product-item__price {
  display: inline-block;
  color: var(--accent-color);
  font-size: 0.95rem;
}

.product-item__price--old {
  margin-left: 4px;
  text-decoration: line-through;
  color: var(--light-text-color);
  font-size: 0.95rem;
}

.product-item__available-colors {
  margin-top: 10px;
}

.product-item__color {
  display: inline-block;
  margin: 0 4px;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  transition: -webkit-transform 0.2s ease-in-out;
  transition: transform 0.2s ease-in-out;
}

.product-item__color:hover {
    -webkit-transform: scale(1.3);
    -ms-transform: scale(1.3);
    transform: scale(1.3);
}

.product-item__see-more {
  margin: 20px 0 6px 0;
}

@media screen and (max-width: 559px) {
  .product-item__image {
    max-height: 300px;
  }
  

  /* On homepage and cart page, we are using a slideshow to display the collections */

  .template-index .list-products,
  .template-product .list-products,
  .template-cart .list-products {
    margin: 0 -25px;
  }

  .template-index .list-products .grid__cell,
  .template-product .list-products .grid__cell,
  .template-cart .list-products .grid__cell {
    margin: 0 5px;
    padding: 0;
  }

  .template-index .list-products .product-item,
  .template-product .list-products .product-item,
  .template-cart .list-products .grid__cell {
    margin-bottom: 0;
  }
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .product-item__image {
    max-height: 325px;
  }
}

@media screen and (min-width: 560px) {
  /* This allows to have tile that are the same height */

  .list-products {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }

  .list-products.grid--center {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
  }

  .list-products > .grid__cell {
    -webkit-flex: 0 1 auto;
    -ms-flex: 0 1 auto;
    flex: 0 1 auto;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  .list-products .product-item {
    -webkit-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
  }

  .product-item {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@media screen and (min-width: 801px) {
  .list-products {
    margin-bottom: -32px;
  }

  .list-products > .grid__cell {
    margin-bottom: 32px;
  }
}

@media screen and (min-width: 1025px) {
  .product-item__info {
    padding: 5px 0px 30px;
    margin-left: unset;
    margin-right: unset;
  }
  
  .product-item--bordered {
    padding: 20px 20px 0;
  }
}

/**
 * ICON
 */

.spr-icon {
  margin-right: 6px;
  top: 3px !important;
  font-size: 15px !important;
  font-size: 0.83333rem !important;
  opacity: 1 !important;
}

.spr-icon:last-child {
    margin-right: 0;
}

.spr-icon::before,
.spr-icon::after{
  font-family: 'icomoon' !important;
  speak: none;
  font-style: normal;
  font-weight: normal;
  font-variant: normal;
  text-transform: none;
  line-height: 1 !important;
  text-decoration: inherit;
  width: auto !important;
  text-align: center;
  font-size: 120%;
}

.spr-icon-star,
.spr-icon-star-half-alt,
.spr-icon-star-hover {
  color: #ffb400 !important;
}

.spr-icon-star-empty:not(.spr-icon-star-hover) {
  color: var(--light-text-color) !important;
}

.spr-icon-star::before,
.spr-icon-star-empty::before {
  content: '\e900' !important;
}

.spr-icon-star-half-alt::before {
  content: '\e901' !important;
}

.spr-icon-star-half-alt::after {
  content: '\e902' !important;
  color: var(--light-text-color) !important;
}

/**
 * BADGE
 */

.spr-badge-starrating {
  margin: 0;
}

/**
 * REVIEWS
 */

#shopify-product-reviews {	
  margin: 0 !important;	
  /* First, let's hide everything we do not want */	
  /* We want to re-order elements */	
}	
#shopify-product-reviews .spr-header-title,	
#shopify-product-reviews .spr-review-footer,	
#shopify-product-reviews .spr-form-title {	
  display: none !important;	
}	
#shopify-product-reviews .spr-container {	
  padding: 0 !important;	
  border: none !important;	
}	
#shopify-product-reviews .spr-reviews,	
#shopify-product-reviews .spr-review,	
#shopify-product-reviews .spr-review-content,	
#shopify-product-reviews .spr-review-reply,	
#shopify-product-reviews .spr-review-header-byline,	
#shopify-product-reviews .spr-review-header-starratings {	
  margin: 0;	
}	
#shopify-product-reviews .spr-header {	
  margin-bottom: 10px;	
  padding: 25px 25px 30px 25px;	
  background: var(--secondary-background);	
}	
#shopify-product-reviews .spr-summary {	
  display: flex;	
  align-items: flex-start;	
  flex-direction: column;	
}	
#shopify-product-reviews .spr-summary-caption {	
  margin-bottom: 4px;	
  font-size: 13px;	
  color: var(--light-text-color);	
  text-transform: uppercase;	
  font-weight: 700;	
  order: 1;	
}	
#shopify-product-reviews .spr-summary-starrating {	
  order: 2;	
  margin: 0 0 18px 0;	
}	
#shopify-product-reviews .spr-summary-starrating .spr-icon {	
  font-size: 18px !important;	
}	
#shopify-product-reviews .spr-summary-actions {	
  flex: 1 0 auto;	
  order: 3;	
}	
#shopify-product-reviews .spr-review-header-starratings {	
  margin-bottom: 12px;	
}	
#shopify-product-reviews .spr-review-header-starratings .spr-icon {	
  margin-right: 4px;	
  font-size: 11px !important;	
}	
#shopify-product-reviews .spr-review-content {	
  margin-bottom: 28px;	
}	
#shopify-product-reviews .spr-review-header-title {	
  margin-bottom: 6px;	
  font-weight: 600;	
  color: var(--heading-color);	
}	
#shopify-product-reviews .spr-review-content-body,	
#shopify-product-reviews .spr-review-reply-body {	
  font-size: 0.9rem;	
  line-height: 1.45;	
}	
#shopify-product-reviews .spr-review-header-byline {	
  position: absolute;	
  bottom: 20px;	
  left: 0;	
  opacity: 1;	
  font-style: normal;	
  font-family: Figtree;		
  color: var(--light-text-color);	
  letter-spacing: .02rem;	
}	
#shopify-product-reviews .spr-review-header-byline strong {	
  font-weight: inherit;	
}	
#shopify-product-reviews .spr-review-reply {	
  margin: 8px 0 18px 0;	
  padding: 15px;	
  border-left: 2px solid var(--heading-color);	
  background: var(--secondary-background);	
}	
#shopify-product-reviews .spr-review {	
  position: relative;	
  padding: 15px 0 22px 0;	
  border-bottom: 1px solid var(--border-color);	
  border-top: none;	
}	
#shopify-product-reviews .spr-pagination {	
  padding-top: 20px;	
  border-top: none;	
  line-height: 26px;	
}	
#shopify-product-reviews .spr-pagination a:hover {	
  color: var(--accent-color);	
}	
#shopify-product-reviews .spr-pagination-page {	
  display: inline-block;	
  margin: 0 4px;	
  width: 26px;	
  height: 26px;	
  text-align: center;	
  letter-spacing: 0;	
}	
#shopify-product-reviews .spr-pagination-page.is-active {	
  background: var(--heading-color);	
  color: var(--background);	
}	
#shopify-product-reviews .spr-form-input-text,	
#shopify-product-reviews .spr-form-input-email,	
#shopify-product-reviews .spr-form-input-textarea {	
  display: block;	
  width: 100%;	
  padding: 12px 14px;	
  border: 1px solid var(--border-color);	
  border-radius: 0;	
  color: var(--heading-color);	
  font-size: 1rem;	
  line-height: normal;	
  background: var(--background);	
  font-weight: 400;	
  -webkit-appearance: none;	
}	
#shopify-product-reviews .spr-form-input-text:active, #shopify-product-reviews .spr-form-input-text:focus,	
#shopify-product-reviews .spr-form-input-email:active,	
#shopify-product-reviews .spr-form-input-email:focus,	
#shopify-product-reviews .spr-form-input-textarea:active,	
#shopify-product-reviews .spr-form-input-textarea:focus {	
  outline: none;	
  border-color: var(--accent-color);	
}	
#shopify-product-reviews .spr-form-input-text::-moz-placeholder, #shopify-product-reviews .spr-form-input-email::-moz-placeholder, #shopify-product-reviews .spr-form-input-textarea::-moz-placeholder {	
  color: var(--light-text-color);	
}	
#shopify-product-reviews .spr-form-input-text:-ms-input-placeholder, #shopify-product-reviews .spr-form-input-email:-ms-input-placeholder, #shopify-product-reviews .spr-form-input-textarea:-ms-input-placeholder {	
  color: var(--light-text-color);	
}	
#shopify-product-reviews .spr-form-input-text::placeholder,	
#shopify-product-reviews .spr-form-input-email::placeholder,	
#shopify-product-reviews .spr-form-input-textarea::placeholder {	
  color: var(--light-text-color);	
}	
#shopify-product-reviews .spr-form-contact-name,	
#shopify-product-reviews .spr-form-contact-email,	
#shopify-product-reviews .spr-form-review-rating,	
#shopify-product-reviews .spr-form-review-title,	
#shopify-product-reviews .spr-form-review-body {	
  margin-bottom: 20px;	
}

@media screen and (min-width: 560px) {	
  #shopify-product-reviews .spr-header {	
    margin-bottom: 20px;	
    padding: 25px;	
  }	
  #shopify-product-reviews .spr-summary {	
    position: relative;	
    flex-direction: row;	
    align-items: flex-start;	
  }	
  #shopify-product-reviews .spr-summary-caption {	
    margin-bottom: 32px;	
    font-size: 15px;	
  }	
  #shopify-product-reviews .spr-summary-starrating {	
    position: absolute;	
    margin: 0;	
    left: 0;	
    bottom: 0;	
  }	
  #shopify-product-reviews .spr-review {	
    padding-left: 102px;	
  }	
  #shopify-product-reviews .spr-review-header-byline {	
    left: 102px;	
  }	
  #shopify-product-reviews .spr-review-header-starratings {	
    position: absolute;	
    margin: 0;
    left: 0;	
    top: 15px;	
  }	
}

.section {
  padding: 0;
}

.section--positioned {
  position: relative;
}

.template-index .section {
  padding: 0;
}

.section__title {
  position: relative;
  margin-bottom: 1.1em;
  text-align: center;
  z-index: 1;
  color: var(--heading-color);
  font-weight: 100;
  font-size: 1.75rem;
}

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

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

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

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

.tabs__nav {
  position: relative;
}

.tabs__nav-inner {
  white-space: nowrap;
  margin: 0 -25px 0 -25px;
  padding: 0 25px;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

.tabs__nav-inner::before,
.tabs__nav-inner::after {
  position: absolute;
  content: '';
  top: 0;
  width: 50px;
  height: 100%;
  opacity: 0;
  transition: opacity 0.2s ease-in-out;
  pointer-events: none;
  -webkit-transform: translateZ(0);
  transform: translateZ(0); /* Needed in iOS */
}

.tabs__nav-inner::before {
  background: linear-gradient(to right, var(--background), rgba(var(--background), 0.8), rgba(var(--background), 0));
  left: -25px;
}

.tabs__nav-inner::after {
  background: linear-gradient(to left, var(--background), rgba(var(--background), 0.8), rgba(var(--background), 0));
  right: -25px;
}

.tabs__nav-inner--shadowed-left::before,
.tabs__nav-inner--shadowed-right::after {
  opacity: 1;
}

.no-csspointerevents .tabs__nav-inner::before,
.no-csspointerevents .tabs__nav-inner::after {
  display: none; /* Unfortunately some older browser do not support pointerevents none, so we need to remove that as it would make the link not accessible */
}

.tabs__nav-item {
  display: inline-block;
  padding: 6px 0 3px 0;
  border-bottom: 2px solid transparent;
  transition: all 0.2s ease-in-out;
  cursor: pointer;
  font-size: 13.5px;
  color: var(--light-text-color);
}

.tabs__nav-item--active {
  color: var(--heading-color);
}

.tabs__nav-item--active:hover {
  color: var(--heading-color) !important;
}

.tabs__nav-item:hover {
  color: var(--accent-color);
}

.tabs__nav-item + .tabs__nav-item {
  margin-left: 15px;
}

.tablinks {
  font-weight: 600;
  font-size: 18px !important;
}

.tabs__content {
  transition: height 0.25s ease-in-out;
  overflow: hidden;
}

.tabs__content-item {
  display: none;
}

.tabs__content-item--active {
  display: block;
  -webkit-animation: tabsOpeningEffect 0.3s ease-in-out;
  animation: tabsOpeningEffect 0.3s ease-in-out;
}

@media screen and (min-width: 560px) {
  .tabs__nav-inner {
    margin: 0;
    padding: 0;
  }

  .tabs__nav-inner::before,
  .tabs__nav-inner::after {
    width: 70px;
  }

  .tabs__nav-inner::before {
    left: 0;
  }

  .tabs__nav-inner::after {
    right: 0;
  }
}

@media screen and (min-width: 1025px) {
  .tabs__nav {
    margin: 0;
    padding: 0;
  }
}

@-webkit-keyframes slideOpeningRtl {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

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

@keyframes slideOpeningRtl {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }

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

@-webkit-keyframes slideOpeningLtr {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

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

@keyframes slideOpeningLtr {
  0% {
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }

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

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

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

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

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

@-webkit-keyframes slideContentClosing {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

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

@keyframes slideContentClosing {
  0% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }

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

/**
 * ----------------------------------------
 * Images and slides
 * ----------------------------------------
 */

.slideshow-section--dual {
  margin-top: 32px !important;
}

.slideshow-section--dual::after {
    content: '';
    display: table;
    clear: both;
}

.dual-slideshow {
  position: relative;
  margin-bottom: 72px;
}

/* The main slideshow is the one that contain the active slide and the buttons / content */
.slideshow--main {
  position: relative;
  width: calc(85vw - 25px);
  z-index: 2;
}

/* The anchor slideshow is the one that contains the right image with the overlay */
.slideshow--anchor {
  position: absolute;
  bottom: -72px;
  right: -25px;
  overflow: hidden;
  z-index: 1;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.slideshow__slide {
  position: absolute;
  display: table;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  visibility: hidden;
  font-size: 0; /* Allows to remove spacing in image */
}

.slideshow__content {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  min-height: 70px;
  max-height: 70px;
}

.slideshow__heading {
  position: relative;
  top: 0;
  margin: 0;
  max-width: 400px;
  font-size: 32px;
  font-size: 1.77778rem;
  line-height: 1.2;
  text-transform: none;
  color: var(--accent-color);
  font-weight: var(--slideshow-heading-font-weight);
  font-family: Figtree;
}

.slideshow__button {
  position: absolute;
  bottom: -23px;
  left: 0;
}

.slideshow__heading,
.slideshow__button {
  opacity: 0;
  -webkit-transform: translateY(-30px);
  -ms-transform: translateY(-30px);
  transform: translateY(-30px);
  z-index: 2;
}

.slideshow__slide--active {
  position: relative;
  visibility: visible;
}

.slideshow__slide--animating {
  z-index: 1;
  visibility: visible;
}

.slideshow__media-container {
  overflow: hidden;
}

.slideshow__media {
  display: none;
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
  font-family: 'object-fit: cover; object-position: center center;'; /* for polyfilling IE */
}

.slideshow__media--placeholder {
  background: #cecece;
  fill: #4c4c4c;
}

.slideshow__slide--animating .slideshow__media,
.slideshow__slide--active .slideshow__media {
  display: block;
}

.slideshow__slide--video.slideshow__slide--animating .slideshow__media,
.slideshow__slide--video.slideshow__slide--active .slideshow__media {
  display: table;
  width: 100%;
}

.slideshow__slide--video .slideshow__media {
  background: #000000;
}

.slideshow__plyr-container {
  display: table-cell;
  vertical-align: middle;
}

.slideshow__plyr-container .plyr--playing {
  z-index: 2; /* This allows the iframe to be over the title and arrows for maximum readability */
}

/**
 * ----------------------------------------
 * Animation states
 * ----------------------------------------
 */

.slideshow--anchor .slideshow__media-container {
  -webkit-transform: translateZ(0);
  transform: translateZ(0); /* Force hardware acceleration (we could have used will-change but it caused issue on Safari 9 */
}

.slideshow--anchor .slideshow__slide--animating-ltr .slideshow__media-container,
.slideshow--main .slideshow__slide--animating-ltr .slideshow__media,
.slideshow--main .slideshow__slide--animating-ltr .slideshow__media-controls {
  -webkit-animation: slideOpeningLtr 0.45s ease-in-out;
  animation: slideOpeningLtr 0.45s ease-in-out;
}

.slideshow--anchor .slideshow__slide--animating-rtl .slideshow__media-container,
.slideshow--main .slideshow__slide--animating-rtl .slideshow__media,
.slideshow--main .slideshow__slide--animating-rtl .slideshow__media-controls {
  -webkit-animation: slideOpeningRtl 0.45s ease-in-out;
  animation: slideOpeningRtl 0.45s ease-in-out;
}

.slideshow--main .slideshow__slide--active .slideshow__heading,
.slideshow--main .slideshow__slide--active .slideshow__button {
  -webkit-animation: slideContentOpening 0.45s ease-in-out forwards;
  animation: slideContentOpening 0.45s ease-in-out forwards;
}

.slideshow--main .slideshow__slide--removing .slideshow__heading,
.slideshow--main .slideshow__slide--removing .slideshow__button {
  -webkit-animation: slideContentClosing 0.3s ease-in-out;
  animation: slideContentClosing 0.3s ease-in-out;
}

.no-cssanimations .slideshow--main .slideshow__slide--active .slideshow__heading,
.no-cssanimations .slideshow--main .slideshow__slide--active .slideshow__button {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

/**
 * ----------------------------------------
 * Navigation and slide count
 * ----------------------------------------
 */

.slideshow__nav-button {
  position: absolute;
  padding: 4px;
  background: url(data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///yH5BAEAAAAALAAAAAABAAEAAAIBRAA7); /* We cannot use "transparent" as IE9-10 make the button unclickable */
  top: calc(50% - 17px);
  right: 0;
  border: none;
  color: var(--background);
  z-index: 2;
}

.slideshow__nav-button svg {
    width: 28px;
    height: 28px;
}

.slideshow__nav-prev {
  right: 14px;
}

.slideshow__nav-next {
  right: -48px;
}

.slideshow__slide-count {
  position: absolute;
  bottom: 32px;
  left: 25px;
  color: var(--background);
  z-index: 2;
  font-weight: 600;
  line-height: 0;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.slideshow__current-slide {
  font-size: 34px;
  font-size: 1.88889rem;
}

.slideshow__total-slides {
  font-size: 16px;
  font-size: 0.88889rem;
}

/**
 * ----------------------------------------
 * Composed styles
 * ----------------------------------------
 */

.slideshow--main .slideshow__media-container,
.slideshow--main .slideshow__nav {
    position: relative;
    left: -25px;
    width: 85vw;
    height: 50vw;
}

.slideshow--main .slideshow__media-container {
    margin-top: 40px;
  }

.slideshow--main .slideshow__nav {
    position: absolute;
    bottom: 0;
  }

.slideshow--main .slideshow__slide-count {
    display: none;
}

.slideshow--anchor .slideshow__media {
    -webkit-filter: grayscale(100%);
    filter: grayscale(100%);
}

.slideshow--anchor .slideshow__media-container::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--accent-color);
}

.slideshow--anchor .slideshow__media-container {
    position: relative;
    width: 25vw;
    height: calc(50vw + 110px);
}

.no-backgroundblendmode .slideshow--anchor .slideshow__media-container::after {
    background: rgba(var(--accent-color), 0.55);
}

/**
 * ----------------------------------------
 * Responsive
 * ----------------------------------------
 */

@media screen and (min-width: 560px) {
  .slideshow-section--dual {
    margin-top: 40px !important;
  }

  .slideshow__content {
    min-height: 120px;
    max-height: 120px;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  }

  .slideshow__heading {
    max-width: none;
    margin-bottom: 20px;
    -webkit-align-self: flex-start;
    -ms-flex-item-align: start;
    align-self: flex-start;
    font-size: 40px;
    font-size: 2.22222rem;
  }

  .slideshow__button {
    position: relative;
    bottom: 0;
  }

  .slideshow__nav-prev {
    right: 24px;
  }

  .slideshow__nav-next {
    right: -60px;
  }

  .slideshow__current-slide {
    font-size: 40px;
    font-size: 2.22222rem;
  }

  .slideshow__total-slides {
    font-size: 18px;
    font-size: 1rem;
  }
}

@media screen and (min-width: 801px) {
  .slideshow--main .slideshow__media-container,
  .slideshow--main .slideshow__nav {
      max-width: 800px;
      max-height: 525px;
  }

  .slideshow--anchor .slideshow__media-container {
      max-height: 800px;
      width: 525px;
  }
}

@media screen and (min-width: 1025px) {
  .shopify-section__slideshow {
    position: relative;
  }

  .slideshow-section--dual {
    margin-top: 0 !important;
  }

  .dual-slideshow {
    position: static;
    margin-bottom: 168px;
    padding-top: 88px;
  }

  .slideshow__heading,
  .slideshow__button {
    position: relative;
  }

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

  .slideshow__heading {
    max-width: 500px;
    height: auto;
    padding-left: 0;
    margin-bottom: 30px;
    font-size: 66px;
    font-size: 3.66667rem;
  }

  .slideshow--main {
    width: 950px;
  }

  .slideshow--main .slideshow__media-container {
      margin-top: 0;
    }

  .slideshow--main .slideshow__media-container,
  .slideshow--main .slideshow__nav {
      position: absolute;
      top: 0;
      left: 250px;
      width: 700px;
    }

  .slideshow--main .slideshow__slide--active,
  .slideshow--main .slideshow__media-container,
  .slideshow--main .slideshow__nav {
      height: 425px;
    }

  .slideshow--main .slideshow__slide-count {
      display: block;
  }

  .slideshow--anchor {
    top: 0;
    right: 0;
    bottom: auto;
  }

  .slideshow--anchor .slideshow__media-container {
      height: 680px;
  }

  .slideshow--anchor .slideshow__slide-count {
      display: none;
  }

  .slideshow__slide-count {
    right: 18px;
    left: auto;
    bottom: -30px;
  }

  .slideshow__current-slide {
    font-size: 80px;
    font-size: 4.44444rem;
  }

  .slideshow__total-slides {
    font-size: 20px;
    font-size: 1.11111rem;
  }
}

@media screen and (min-width: 1280px) {
  .slideshow--main {
    width: 1128px;
  }

  .slideshow--main .slideshow__slide {
      padding-left: 80px;
    }

  .slideshow--main .slideshow__media-container,
  .slideshow--main .slideshow__nav {
      left: 328px;
      width: 800px;
    }

  .slideshow--main .slideshow__slide,
  .slideshow--main .slideshow__media-container,
  .slideshow--main .slideshow__nav {
      height: 525px;
  }

  .slideshow--anchor .slideshow__media-container {
      width: 35vw;
      height: 780px;
      max-width: none;
  }

  .slideshow__nav-button {
    transition: right 0.15s ease-in-out;
  }

  .slideshow__nav-button svg {
      width: 36px;
      height: 36px;
  }

  .slideshow__nav-prev {
    right: 68px;
  }

  .slideshow__nav-prev:hover {
    right: 76px;
  }

  .slideshow__nav-next {
    right: -112px;
  }

  .slideshow__nav-next:hover {
    right: -120px;
  }
}

.testimonials {
  padding: 0 0 30px;
}

.testimonial {
  padding: 25px 30px 25px 30px;
  background: #f0f2f9;
  text-align: center;
  font-size: 16px;
  font-size: 0.88889rem;
}

.testimonial--has-image {
  padding-top: 0 !important;
}

.testimonial__picture {
  width: 90px;
  margin: -45px auto 24px auto;
  border-radius: 100%;
  background: var(--background);
}

.testimonial__author {
  font-weight: 600;
  color: var(--heading-color);
}

@media screen and (max-width: 559px) {
  .testimonials__grid-item--spaced {
    margin-top: 70px;
  }

  .testimonials__grid-item--spaced:first-child {
      margin-top: 45px;
  }

  .testimonials__grid-item:not(.testimonials__grid-item--spaced) + .testimonials__grid-item {
    margin-top: 25px;
  }
}

@media screen and (min-width: 560px) {
  .testimonials,
  .testimonial {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
  }

  .testimonials {
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 20px 0 30px;
  }

  .testimonial {
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
    flex-direction: column;
  }

  .testimonials__grid-item {
    margin-top: 0;
  }

  .testimonials__grid-item--spaced {
    margin-top: 28px;
  }
}

@media screen and (min-width: 801px) {
  .testimonial {
    padding: 45px 50px 45px 50px;
  }
}

/**
 * LOGIN PAGES
 */

.login__forgot-link,
.login__register-link {
  font-size: 15px;
  font-size: 0.83333rem;
  color: var(--light-text-color);
}

.login__forgot-link {
  display: inline-block;
  margin-top: 10px;
}

.login__register-link {
  margin-top: 24px;
}

/**
 * ORDERS
 */

.customer__orders {
  margin-bottom: 40px;
}

@media screen and (min-width: 560px) {
  .customer__orders .table {
    padding-top: 20px;
  }
}

@media screen and (min-width: 1280px) {
  .customer__orders {
    padding-right: 100px;
  }
}

/**
 * ORDER DETAILS
 */

.order__details {
  margin-bottom: 30px;
}

.order__items tbody,
.order__headings th:not(:first-child):not(:last-child) {
  text-align: center;
}

.order__items tfoot td:first-child,
.order__items tfoot tr:last-child td {
  border-bottom: none;
}

.order__items tfoot tr:last-child {
  color: var(--heading-color);
  font-weight: 600;
}

.order__items tfoot tr:nth-last-child(2) td {
  border-bottom-color: var(--heading-color);
}

.order-item__image {
  margin-right: 28px;
  max-width: 80px;
  max-height: 80px;
  float: left;
}

.order-item__product {
  margin-bottom: 0;
}

.order-item__variant {
  font-size: 0.8em;
  font-style: italic;
}

.order__address:not(:last-child) {
  margin-bottom: 32px;
}

@media screen and (min-width: 560px) {
  .order__items {
    padding-top: 24px;
  }

  .order-item td:first-child {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
  }
}

@media screen and (min-width: 801px) {
  .order__address:not(:last-child) {
    margin-bottom: 54px;
  }
}

@media screen and (min-width: 1025px) {
  .order__details {
    padding-right: 100px;
  }
}

/**
 * ADDRESSES
 */

.customer__addresses-link {
  display: inline-block;
  margin-top: 24px;
}

.customer-address::first-line {
  padding-bottom: 10px;
  color: var(--heading-color);
  font-size: 1.1em;
  font-weight: 600;
}

.customer-address br:first-of-type {
  display: block;
  content: '';
  margin: 7px 0;
}

.customer-addresses__item {
  margin-bottom: 25px;
}

.customer-addresses + .pagination {
  margin: 0 0 25px 0;
}

.address-actions a:last-child {
  position: relative;
  display: inline-block;
  margin-left: 32px;
}

.address-actions a:last-child::after {
    position: absolute;
    content: '';
    bottom: 2px;
    left: 0;
    width: calc(100% - 2.8px); /* 2.8px is the letter-spacing, so that the border does not extend too much */
    height: 1px;
    background: currentColor;
}

@media screen and (min-width: 801px) {
  .customer-addresses ~ .button-wrapper {
    margin-top: 35px;
  }

  .customer-addresses + .pagination {
    max-width: 90%;
    margin-bottom: 58px;
    margin-left: auto;
    margin-right: auto;
  }
}
/**
 * THIS FILE CONTAINS SOME MISC SECTIONS AND ELEMENTS THAT DIDN'T DESERVE THEIR OWN FILES...
 */

/**
 * Contact
 */

.contact-page-content {
  margin-bottom: 30px;
}


/**
 * About Us
 */

.about-us-hero {
  width: 100%;
  height: 224px;
  background-image: url("https://cdn.shopify.com/s/files/1/2804/7386/files/about-us_hero.jpg?12811362503941713612");
  background-repeat: no-repeat;
  background-position: center;
}

.about-us-contact-wrap {
  width: 100%;
  text-align: center;
}

.about-us-contact {
  padding: 0 15px;
  display: inline-block;
}

.about-us-phone {
  width: 17px;
  margin-right: 3px;
  display: inline-block;
  vertical-align: middle;
}

.about-us-email {
  width: 20px;
  margin-right: 5px;
  display: inline-block;
  vertical-align: middle;
}

@media screen and (min-width: 801px) {
  .about-us-hero {
    width: 810px;
    margin-left: auto;
    margin-right: auto;
    height: 224px;
  }
  .about-us-hero-wrap {
    background-color: #fff; 
    width: 100%;
    padding-top: 40px;
  }
}


/**
 * Alert
 */

.alert {
  margin-bottom: 20px;
  padding: 10px 15px;
  font-size: 0.9em;
  font-weight: 600;
  text-align: left;
}

.alert--error {
  background: #dc6e6e;
  color: #ffffff;
}

.alert--success {
  background: #50b350;
  color: #ffffff;
}

.alert__errors {
  margin: 10px 0 0 30px;
  list-style-position: outside;
}

/**
 * Slider dots
 */

.slider-dots {
  margin-top: 20px;
  margin-bottom: -5px;
  padding-bottom: 25px;
  text-align: center;
}

.slider-dots > li {
  display: inline-block;
}

.slider-dots button {
  position: relative;
  margin: 5px;
  padding: 0;
  width: 8px;
  height: 8px;
  border: none;
  border-radius: 100%;
  background: rgba(var(--heading-color-rgb), 0.4);
  transition: background 0.25s ease-in-out;
  font-size: 0;
}

.slider-dots > .slick-active > button {
  background: var(--heading-color);
}

/**
 * Labels
 */

.labels {
  text-align: left;
  white-space: pre-line;
}

.label {
  display: inline-block;
  padding: 6px 8px;
  font-size: 12px;
  font-size: 0.66667rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .05rem;
}

.label ~ .label {
  margin-top: 6px;
}

.labels--inline br {
  display: none;
}

.labels--inline .label ~ .label {
  margin-top: 0;
  margin-left: 6px;
}

.label--on-sale, .label--clearance {
  background: var(--product-on-sale-label-background);
  color: white;
}

.label--unavailable {
  background: var(--product-unavailable-label-background);
  color: white;
}

.label--custom {
  background: var(--accent-color);
  color: white;
}

/**
 * Image background (component that allows to display text over an image)
 */

.image-background {
  display: table;
  position: relative;
  table-layout: fixed;
  padding: 25px 30px;
  height: 230px;
  width: 100%;
  background-size: cover !important;
  background-position: center center;
}

.image-background__content {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}

.image-background__title {
  overflow-wrap: break-word;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  color: var(--background);
  font-weight: 400;
  text-transform: none;
}

@media screen and (min-width: 560px) {
  .image-background {
    height: 350px;
  }
}

@media screen and (min-width: 1025px) {
  .image-background {
    height: 400px;
    padding-left: 60px;
    padding-right: 60px;
  }
}

/**
 * Promotion module in home page
 */

/* This section is a bit particular visually, so if it's the first or last, we remove some margin so that it looks better */

.shopify-section__promotion:last-of-type .section {
  margin-bottom: 0;
}

.shopify-section__promotion:first-of-type .section {
  margin-top: 0;
}

.promotion {
  position: relative;
  padding: 60px 0;
  background-size: cover;
  background-position: center center;
}

.promotion__overlay {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}

.promotion__text {
  position: relative;
  margin: 0 auto;
  text-align: center;
}

@media screen and (min-width: 560px) {
  .promotion {
    padding: 100px 0;
  }

  .promotion__text {
    padding: 0 50px;
  }
}

@media screen and (min-width: 1025px) {
  .promotion {
    padding: 145px 0;
  }

  .promotion__text {
    padding: 0 150px;
  }
}

/**
 * Share buttons
 */

.share-buttons__item svg {
  width: 14px;
  height: 14px;
}

.share-buttons--horizontal {
  margin-bottom: 20px;
}

.share-buttons--horizontal .share-buttons__list {
    display: inline-block;
    margin-left: 24px;
    color: var(--light-text-color);
}

.share-buttons--horizontal .share-buttons__item {
    display: inline-block;
    margin: 0 5px;
}

.share-buttons--vertical {
  padding: 24px 0 8px 0;
  width: 96px;
  background: var(--secondary-background);
  text-align: center;
}

.share-buttons--vertical .share-buttons__list {
    margin-top: 15px;
    color: var(--light-text-color);
}

.share-buttons--vertical .share-buttons__item {
    margin: 15px 0;
}

.share-buttons--vertical .share-buttons__item a {
    display: inline-block;
    transition: all 0.2s ease-in-out;
}

.share-buttons--vertical .share-buttons__item a:hover {
    -webkit-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

/**
 * Social
 */

.social-media__item {
  display: inline-block;
}

.social-media__item + .social-media__item {
  margin-left: 24px;
}

.social-media__item svg {
  width: 25px;
  height: 25px;
}

.social-media--small .social-media__item + .social-media__item {
    margin-left: 16px;
}

.social-media--small svg {
    width: 18px;
    height: 18px;
}

/**
 * Plus button that transform into a menus
 */

.plus-button-container {
  position: relative;
}

  /* This allows to increase the clickable area of the button */
.plus-button-container::after {
    content: '';
    position: absolute;
    top: -10px;
    bottom: -10px;
    left: -15px;
    right: -15px;
}

.plus-button {
  position: relative;
  display: inline-block;
  width: 16px;
  height: 16px;
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: none;
  vertical-align: middle;
  -webkit-appearance: none;
}

.plus-button::before,
.plus-button::after {
    content: '';
    position: absolute;
    background-color: currentColor;
    transition: -webkit-transform 0.25s ease-out;
    transition: transform 0.25s ease-out;
  }

  /* Vertical line */
.plus-button::before {
    top: 0;
    left: 50%;
    width: 2px;
    height: 100%;
    margin-left: -1px;
  }

  /* horizontal line */
.plus-button::after {
    top: 50%;
    left: 0;
    width: 100%;
    height: 2px;
    margin-top: -1px;
}

.plus-button--active::before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.plus-button--active::after {
    -webkit-transform: rotate(180deg);
    -ms-transform: rotate(180deg);
    transform: rotate(180deg);
}

/**
 * Search
 */

.product-item--article .product-item__image {
  width: 100%;
}

/**
 * FAQ
 */

.faq__item:not(:last-child) {
  margin-bottom: 0.9em;
}

.faq__item--expandable > .faq__question {
  cursor: pointer;
}

.faq__item--expandable > .faq__answer {
  display: none;
}

.faq__separator:not(:first-child) {
  margin-top: 1.2em;
}

.faq__question {
  margin-bottom: 0.2em;
}

.faq__question::before {
  content: '•';
  margin-right: 12px;
}




/**
 * NAT MISC EDITS
 */

.news-archive {
  font-size: 0.9em !important;
  color: var(--light-text-color);
  text-align: center;
}

.news-archive-link {
  color: var(--light-text-color) !important;
  text-decoration: underline;
  display: block;
}

.news-archive-link:hover {
    color: var(--accent-color) !important;
}

.points-will-earn-cart-message {
  padding-top: 30px;
  text-align: center;
}

.contact-hours-column{
  width: 100%;
  padding-bottom: 30px;
  display: inline-block;
  vertical-align: top; 
  text-align: center;
}

.contact-address-column-wrap{
  width: 100%;
  display: inline-block;
  vertical-align: top; 
  text-align: left;
  border-top: 1px solid #eee;
  border-bottom: 1px solid #eee;
  padding-bottom: 25px;
}

.contact-address-column{
  width: 100%;
  padding: 30px 10px 0 0;
  display: inline-block;
  vertical-align: top; 
  text-align: center;
}

.back-blog-button {
  padding-top: 25px;
}
  
.back-blog-button a {
  text-decoration: none !important;
}

.back-blog-button-icon {
  color: #fff;
  fill: #fff;
}

.product-bulk-wrap {
  margin-bottom: 15px;
}

.product-bulk-box {
  border: 1px solid #c0c0c0;
  padding: 6px 10px 12px;
}

.product-bulk-title {
  background-color: #fff;
  padding: 0 4px;
  display: inline-block;
  margin-bottom: 3px;
}

.product-bulk-text {
  margin-top: -19px !important;
}

.product-bulk-text p {
  font-size: .92rem;
  color: #666;
  margin: 2px 3px;
}

.ro-bold-wrap {
  width: 100%; 
  margin-top: 13px;
}

@media screen and (max-width: 559px) {
  .mobile-stretch {
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
}
  
@media screen and (min-width: 560px) {
  .contact-address-column{
    width: 48%;
  }
  
  .points-will-earn-cart-message {
    text-align: right;
  }
}
  
@media screen and (min-width: 801px) {
  .product-bulk-wrap {
    margin-top: 15px;
  }
  
  .product-bulk-box {
    display: inline-block;
  }
  
  .ro-bold-wrap {
    margin-top: 28px;
  }
}

@media screen and (min-width: 1025px) {
  .contact-address-column{
    width: 32%;
  }
  .back-blog-button {
    padding-top: 48px;
  }
}

/**
 * Rewards Page
 */

.rewards-first-column {
  display: inline-block;
  vertical-align: top;
  margin-bottom: 25px;
  width: 100%;
  padding-right: 0;
}

.rewards-second-column {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  padding-left: 0px;
  margin-bottom: 25px;
  float: right;
  border-left: 0;
}

.rewards-point-img {
  max-width: 320px;
  margin-right: auto;
  margin-left: auto;
}

.rewards-button a {
      color: #fff;
}
    
@media screen and (min-width: 560px) {
  .rewards-second-column{
    width: 49.5%;
    padding-left: 25px;
    border-left: 1px solid #e9e9e9;
  }
  
  .rewards-first-column{
    width: 49.5%;
    padding-right: 25px;
  }  
}    

@media screen and (min-width: 801px) {
  .cartbutton {
    margin-top: 0 !important;
    width: 48.75%;
    margin-right: 0.9%;
    margin-bottom: 10px;
    min-width: 235px;
    display: inline-block;
  }
}


/**
 * Register Page
 */

.register-benefits-column-1 {
  width: 49%;
  display: inline-block;
  vertical-align: top;
  padding: 40px 5% 55px;
  text-align: center;
}

.register-benefits-column-2 {
  width: 49%;
  display: inline-block;
  vertical-align: top;
  padding: 40px 5% 55px;
  text-align: center;
}

.register-benefits-wrap {
  width: 100%;
  margin-top: 35px;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.register-benefits-logo {
  width: 100%;
}

.register-benefits-info {
  text-align: center;
  width: 100%;
}

.register-benefits-title {
  color: var(--heading-color);	
  font-size: 1.83rem;	
  line-height: 1.85rem;	
  margin: 5px 0 25px;
}

.register-benefits-text {
  color: #7a859c;
  margin-bottom: 10px;
}

.register-benefits-link {
  color: var(--accent-color);
  font-size: .969rem;
}
  
.register-benefits-link:hover {
    color: #3b5aa7;
}

.register-benefits-statement {
  margin-top: 30px;
  color: var(--accent-color);
  font-size: 1.05rem;
}

.register-benefits-icon-cart {
  height: 1.15rem;
  width: 1.5rem;
  margin-right: .4rem;
  color: var(--accent-color);
  fill: var(--accent-color);
}

@media screen and (max-width: 800px) {
  .register-benefits-column-1 {
    width: 100%;
  }

  .register-benefits-column-2 {
    width: 100%;
    padding-top: 0;
  }
}

/**
 * Accounts Page
 */

.account-page-ss-wrap {
  background-image: url(https://cdn.shopify.com/s/files/1/2804/7386/files/SDS-SubscribeAndSave_account.png?13668178567466544532); 
  background-repeat: no-repeat; 
  background-size: 105px; 
  background-position-y: 42px;
  padding: 40px 0 40px 123px;
  border-top: 1px solid #eaeaea;
}


/**
 * Coupon Page
 */

.coupon-page__header {
  background-color: #f5f8fe;
  text-align: center;
  padding: 40px 20px 50px;
  border-bottom: 1px solid #f0f0f0;
  color: #909cbc;
}

.coupon-header {
  color: #5671b8;
}

.coupon-sub-header {
  font-size: 17px;
}

.coupon-container {
  padding: 10px 0 0;
}

.coupon-page-grid {
  width: 100%;
  padding: 10px;
}

.coupon-grid-item {
  display: inline-block;
  vertical-align: top;
  width: 100%;
  padding: 29px 1.8% 40px;
  border: 1px solid #e2e2e2;
  text-align: center;
  margin-bottom: 9px;
  margin-right: 0.67%;
}

.coupon-page-newsletter {
  width: 100%;
}

.coupon-newsletter-header {
  color: #e0e8fb;
  background: #849bce;
  padding: 28px 35px;
  text-align: center;
}

.coupon-newsletter-header-title {
  color: #fff;
  font-size: 1.5rem;
  line-height: 1.8rem;
  margin-bottom: 12px;
}

.coupon-page-email {
  background-color: #6f86be !important;
}

.coupon-page-code-box {
  padding: 11px 19px 11px;
  border: 1px solid #e9e9e9;
  background: #f5f6fa;
  display: inline-block;
  margin-top: 25px;
  margin-bottom: 5px;
}

.coupon-page-button {
  margin-top: 35px;
}

.coupon-page-link {
  color: var(--accent-color);
  text-decoration: underline;
  font-weight: 500;
}
  
.coupon-page-link:hover {
    color: #3b5aa7;
}

@media screen and (min-width: 560px) and (max-width: 800px) {
  .coupon-page-grid {
    padding: 35px;
  }
}

@media screen and (min-width: 801px) {
  .coupon-grid-item {
    width: 49% !important;
    margin: 0 0.32% 9px;
  }
  
  .coupon-page-grid {
    padding: 35px 31px 0;
  }
}

@media screen and (min-width: 1025px) {
  .coupon-header {
    font-size: 3.5rem;
  } 
  
  .coupon-container {
    padding: 40px 40px 0;
  }
  
  .coupon-page-newsletter {
    width: 32%;
    float: right;
    display: inline-block; 
    vertical-align: top;
  }
  
  .coupon-page-grid {
    width: 65.35%;
    display: inline-block; 
    vertical-align: top;
    padding: 0;
  }
  
  .coupon-newsletter-header-title {
    font-size: 2.2rem;
    line-height: 2.7rem;
    margin-bottom: 18px;
  }
  
  .coupon-newsletter-header {
    text-align: left;
  }
}

@media screen and (min-width: 1280px) {
  .coupon-header {
    font-size: 4rem;
  } 
  .coupon-newsletter-header-title {
    font-size: 2.4rem;
    line-height: 2.75rem;
    margin-bottom: 20px;
  }
}



/**
 * Announcement Bar
 */

.container-announcement {
  padding-top: 0px;
  padding-bottom: 0px;
  background-color: inherit;
  margin-left: auto;
  margin-right: auto;
}

.announcement-bar__content {
  font-size: 0.91rem;
  font-weight: 700;
  letter-spacing: .02rem;
}

@media screen and (max-width: 559px) {
  .announcement-bar__content {
    padding: 5px 0;
  }
}


/**
 * Collection and Product lists
 */

@media screen and (max-width: 559px) {
  .coll-list-mobile {
    margin: 0 5px 0 -5px !important;
  }
  
  .prod-list-mobile {
    margin: 0 30px 0 20px !important;
  }
  
  .coll-item-mobile {
    margin-bottom: 20px !important;
  }  
}

@media screen and (min-width: 1025px) {
  .coll-item-title {
    font-size: 1.5rem !important;
  }
}

@media screen and (min-width: 1280px) {
  .coll-item-title {
    font-size: 1.86rem !important;
  }
}


/**
 * Header
 */

.link-a-bar:hover {
  color: var(--accent-color);
}

.header--minimal .header-container {
  padding: 20px 25px;
}

.minimal-languages-toggle {
  position: absolute;
  left: 0;
  top: 50%;
}

.header-languages {
  vertical-align: middle;
  font-size: 1rem;
  margin-bottom: 11px;
}

.languages-toggle {
  border: none;
  font-weight: 500;
}

.languages-toggle:hover {
    color: var(--accent-color);
}

.languages-toggle button {
    border: 0;
    background: #fff;
    padding-right: 0;
}

.languages-toggle svg {
    width: 10px;
    height: 6px;
    margin: 0;
}

.languages-toggle ul {
    position: absolute;
    background: #fff;
    padding: 6px 16px;
    border-radius: 16px;
    border: 1px solid #f1f0f3;
    margin-top: -42px;
    margin-left: -11px;
}

.languages-toggle li {
    font-size: .9rem;
    font-weight: 500;
    display: block;
    text-align: left;
    margin: 4px 0;
}

.sidebar-nav-languages-switcher {
  font-size: 1rem;
  letter-spacing: .02rem;
  border: none;
  width: 100%;
  padding: 6px 0;
}

@media screen and (max-width: 800px) {
  .languages-toggle {
    padding-top: 12px;
  }
  .languages-toggle ul {
      margin-top: -50px;
  }
  .languages-toggle li {
    margin: 6px 0;
  }
}

@media screen and (min-width: 801px) {
  .header-languages {
    margin-bottom: 2px;
  }
}

.bilingual-search-icon {
  font-size: 17px;
  font-weight: 500;
}

.header-search-icon {
    width: 14px !important;
    height: 19px !important;
    margin-right: 4px !important;
    margin-bottom: -3px;
}

.nav-icon-hy-five {
  width: 13px !important;
  height: 17px !important;
  margin: 0 8px -3px 0 !important;
}

.nav-icon-hy-pax {
  width: 20px !important;
  height: 13px !important;
  margin: 0 8px -2px 0 !important;
}

.nav-icon-hy-stix {
  width: 14px !important;
  height: 17px !important;
  margin: 0 8px -3px 0 !important;
}

.nav-icon-hy-gear {
  width: 20px !important;
  height: 17px !important;
  margin: 0 8px -3px 0 !important;
}

.nav-icon-swipes {
  width: 20px !important;
  height: 10px !important;
  margin: 0 8px 0 0 !important;
}

/**
 * Product Page
 */

.product-size-brochure { 
  width: 100%;
}

.product-size-brochure-label {
  display: block;
  margin-bottom: 12px!important;
  min-width: unset!important;
  max-width: unset!important;
}

.product-size-brochure-item {
  display: inline-block;
}

.product-size-brochure-item:not(:last-child) {
  padding-right: 20px;
  margin-right: 15px;
  border-right: 1px solid #f5e4df;
}

.product-spec-table {
  gap: 0 20px;
}

.product-spec-table td:last-child,
.product-spec-table th:last-child {
    padding-right: 0;
    text-align: left;
}

.product-spec-table th {
  text-align: right;
  background: #f4faeb;
  border-bottom: 1px solid rgba(158, 159, 161, 0.4);
  font-weight: 600;
  letter-spacing: .02rem;
  font-size: 12.3px;
  font-size: 0.77rem;
  color: var(--heading-color);
  padding: 14px 10px;
}

.product-spec-table td {
  padding: 14px 10px;
  font-size: 13px;
  font-size: 0.8rem;
  letter-spacing: .02rem;
  color: #6d6e78;
}

.product-btn-wrap {
  text-align: right;
  margin-top: 20px;
}

.justify-content-end {
    text-align: right !important;
}

@media screen and (min-width: 801px) {
  .product-size-brochure {
    padding-bottom: 35px; 
    margin-bottom: 10px; 
    border-bottom: 1px solid #ebebeb;
  }
}

@media screen and (min-width: 1280px) {
  .product-spec-table th {
    letter-spacing: .02rem;
    font-size: 13.4px;
    font-size: 0.84rem;
  }
  
  .product-spec-table td {
    font-size: 14.7px;
    font-size: 0.92rem;
    letter-spacing: .02rem;
  }
}


/* Print View Styling 
================================================== */
  @media print {
    #shopify-section-announcement, #shopify-section-extra-bar, #shopify-section-header, .product__meta .hidden-lap-and-up,
  	#shopify-section-related-products, .button, .footer, .no-print {
		display: none;
    }
    .grid__cell {
      display: inline-block;
      vertical-align: top;
      width: 50%;
    }
    .spec-item-header {
      background: none !important;
    }
    .h2 {
      font-size: 24px;
      font-size: 1.5rem;
      line-height: 2rem;
    }
    .tabs__content-item {
      display: block;
    }
    .product__meta {
      text-align: left;
      border-bottom: 1px solid rgba(158,159,161,0.4);
      padding-bottom: 20px;
    }
    body, h1, h2, p, table, th, td {
      color: #000000 !important;
    }
    .main-wrap-color {
      border: none !important;
    }
    .print-product-img {
      display: block !important;
    }
    .product__description {
      font-size: 16px;
      font-size: .89rem;
    }
    .product-spec-table {
      margin-bottom: 25px;
    }
    ul {
      font-size: 14px;
      font-size: .78rem;
    }
  }

.print-product-img {
  display: none;
}


/* Collection Pages */

.coll-sidebar-wrap {
  margin-bottom: 50px;
  border-bottom: 1px solid #d2d3e0;
}

.coll-sidebar {
  display: table-cell;
  vertical-align: top;
  width: 27%;
  padding-right: 35px;
  padding-bottom: 40px;
}

.coll-sidebar-img {
  background-size: cover;
  background-position: center center;
  height: 180px;
  width: 100%;
  margin: 28px 0 30px;
}

.coll-sidebar-desc {
  font-size: 16px;
  font-size: 1rem;
}

.coll-sidebar-content {
  display: table-cell;
  vertical-align: top;
  width: 100%;
  padding-left: 0;
  padding-bottom: 40px;
  margin-left: -5px;
}

.coll-sidebar-content .product-item__info {
  padding: 15px 0px;
}

.coll-secondary-content {
  padding-bottom: 40px;
  border-bottom: 1px solid #dce4d3;
  margin-bottom: 45px;
}

.sub-collection-table {
  margin-top: 40px;
  border-bottom: 1px solid rgba(185,187,206,0.4);
  font-size: .75rem;
  color: var(--text-color);
}

.sub-coll-table-header {
  background: #bab6d6 !important;
  color: #edebfb;
  text-transform: uppercase;
  font-size: .6rem;
  font-weight: 700;
  letter-spacing: 1px;
  line-height: .8rem;
}

.sub-coll-table-link {
  text-decoration: underline;
}

.sub-coll-table-link:hover {
    color: var(--accent-color);
}

.sub-coll-table-header td {
  border-color: rgba(255, 255, 255, 0.4) !important;
}

.sub-coll-table-header td:last-child {
    border-right: none !important;
}
  
.sub-coll-table-header td:first-child {
    border-left: none;
}

.sub-collection-table tr:nth-child(odd) {
  background: #f5f5f5;
}
  
.sub-collection-table td:last-child {
  border-right: 1px solid rgba(185,187,206,0.4);
}

.sub-collection-table td {
  border-bottom: none;
  padding: 12px !important;
  border-left: 1px solid rgba(185,187,206,0.4);
  text-align: left !important;
}

@media screen and (max-width: 559px) {
  .sub-collection-table {
    table-layout: fixed;
  }
  
  .sub-collection-table tbody {
    display: block;
    overflow-x: auto;
  }
}

@media screen and (min-width: 560px) {
  .sub-collection-table {
    font-size: .85rem;
  }
  
  .sub-coll-table-header {
    letter-spacing: .02rem;
    font-size: .7rem;
  }
}

@media screen and (min-width: 801px) and (max-width: 1024px) {
  .coll-sidebar-img {
    height: 150px;
  }
}

@media screen and (min-width: 801px) {
  .coll-sidebar-content {
    width: 72%;
    border-left: 1px solid #ededf4;
    padding-left: 30px;
  }
  
  .coll-secondary-menu-grid {
    margin-left: auto;
    margin-right: auto;
  }
}

@media screen and (min-width: 1280px) {
  .coll-sidebar {
    width: 24%;
    padding-right: 35px;
  }  
  .coll-sidebar-content {
    width: 76%;
  }
  .coll-menu-nowrap {
    -webkit-flex-wrap: nowrap;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
  }
}


/* Homepage */

.hp-511-fp-wrap {
  display: inline-block !important;
  vertical-align: middle !important;
  width: 100% !important;
}

.hp-511-fp-img {
  height: unset;
  padding: 0px 45px 30px;
}

.hp-511-pw-logo {
  width: 100%;
  max-width: 260px;
  margin: 0 auto !important;
}

.hp-511-fp-content {
  display: inline-block !important;
  vertical-align: middle !important;
  width: 100% !important;
  padding: 0;
  text-align: center;
}

.hp-511-fp-p {
  line-height: 30px;
}

.hp-image-hero {
  margin-bottom: -8px;
}

.hp-image-no-text {
  height: 180px;
}

@media screen and (max-width: 559px) {
  .hp-511-fp-img {
    padding: 0px 0px 30px;
  }
  
  .hp-image-no-text {
    height: 130px;
  }
}

@media screen and (min-width: 801px) {
  .hp-511-fp-wrap {
    width: 55% !important;
  }
  
  .hp-511-fp-img {
    padding: 0px 60px 0px 25px;
  }
  
  .hp-511-fp-img-right {
    padding: 0px 25px 0px 60px;
  }
  
  .hp-511-pw-logo {
    max-width: 320px;
  }
  
  .hp-511-pw-logo-right {
    margin: 0 0 0 auto !important;
  }
  
  .hp-511-fp-content {
    width: 44% !important;
    padding: 30px 30px 45px 70px;
    border-left: 3px solid #eee;
    border-top: none;
    text-align: left;
  }
  
  .hp-511-fp-content-right {
    padding: 30px 70px 45px 30px;
    border-left: none;
    border-right: 3px solid #eee;
    text-align: right;
  }
}

/* Catalog Pages */

.link-blog-sections {
  color: #444444;
  display: flex;
  padding: 15px 18px;
  justify-content: center;
}

.link-blog-sections:hover {
    color: #444444;
}

.link-bs-wrap {
  position: relative;
}

.link-bs-back {
  background: #74b027;
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.link-bs-1 {
  opacity: .32;
}
.link-bs-1:hover {
  opacity: .23;
}

.link-bs-2 {
  opacity: .25;
}
.link-bs-2:hover {
  opacity: .19;
}

.link-bs-3 {
  opacity: .21;
}
.link-bs-3:hover {
  opacity: .14;
}

.link-bs-4 {
  opacity: .16;
}
.link-bs-4:hover {
  opacity: .10;
}

.link-bs-5 {
  opacity: .12;
}
.link-bs-5:hover {
  opacity: .07;
}

.link-bs-6 {
  background: #e2eff8;
  transition: none;
}
.link-bs-6:hover {
  background: #ecf6fa;
}

.catalog-thumb-wrap {
  display: inline-block;
  max-width: 100%;
  width: 250px;
  height: 188px;
  position: relative;
}

.catalog-thumb {
  max-width: 95%;
  max-height: 95%;
  height: auto;
  width: auto;
  position: absolute;
  top: 0px;
  bottom: 0px;
  left: 0px;
  right: 0px;
  margin: auto !important;
  box-shadow: rgba(55, 50, 50, 0.72) 0px 2px 2px 0px;
  border-width: 0px;
  background-position: center center;
  background-size: contain;
  background-repeat: no-repeat;
}

.catalog-thumb-btn {
  width: 60px;
    height: 60px;
    position: absolute;
    top: 0px;
    left: 0px;
    right: 0px;
    bottom: 0px;
    margin: auto;
    background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIxLjEuMCwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MCA1MCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgNTAgNTA7IiB4bWw6c3BhY2U9InByZXNlcnZlIj4KPHN0eWxlIHR5cGU9InRleHQvY3NzIj4KCS5zdDB7b3BhY2l0eTowLjk7fQoJLnN0MXtmaWxsOm5vbmU7c3Ryb2tlOiNGRkZGRkY7c3Ryb2tlLXdpZHRoOjI7fQo8L3N0eWxlPgo8ZyBpZD0iUGFnZS0xIj4KCTxnIGlkPSJWaWV3LUljb24iIHRyYW5zZm9ybT0idHJhbnNsYXRlKC02NC4wMDAwMDAsIC04NS4wMDAwMDApIj4KCQk8ZyBpZD0iX3gzMV8uLXZpZXciIHRyYW5zZm9ybT0idHJhbnNsYXRlKDIwLjAwMDAwMCwgMjAuMDAwMDAwKSI+CgkJCTxnIGlkPSJHcm91cC00IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg0NC4wMDAwMDAsIDY1LjAwMDAwMCkiPgoJCQkJPGcgaWQ9Ikdyb3VwIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxMS4wMDAwMDAsIDkuMDAwMDAwKSIgY2xhc3M9InN0MCI+CgkJCQkJPHBhdGggaWQ9IlJlY3RhbmdsZV8yXyIgY2xhc3M9InN0MSIgZD0iTTEzLDdIMkMxLjQsNywxLDcuNCwxLDh2MThjMCwwLjYsMC40LDEsMSwxaDI1YzAuNiwwLDEtMC40LDEtMVY4YzAtMC42LTAuNC0xLTEtMWgtMi43CgkJCQkJCSIvPgoJCQkJCTxwYXRoIGlkPSJSZWN0YW5nbGVfMV8iIGNsYXNzPSJzdDEiIGQ9Ik0xNCw2LjZ2MTkuOGwxMC01VjEuNkwxNCw2LjZ6Ii8+CgkJCQk8L2c+CgkJCTwvZz4KCQk8L2c+Cgk8L2c+CjwvZz4KPC9zdmc+Cg==");
    background-position: center center;
    transition: all 0.3s ease 0s;
    transform: scale(0.9);
    will-change: transform;
    border-radius: 100%;
    background-color: rgba(0, 0, 0, 0.7);
    opacity: 0.8;
}

.catalog-thumb-btn:hover {
  transform: scale(1);
  background-color: rgba(0, 0, 0, 0.66);
  opacity: 1;
}

.catalog-back-btn {
  position: absolute;
  right: 20px;
  margin-top: -10px;
  font-size: 16px;
  font-size: 0.89rem;
  color: var(--accent-color);
}

.catalog-back-btn:hover {
  color: var(--lighten-accent-color-less);
}

.icon-catalog-back {
  width: 8px !important;
  height: 10.5px !important;
  margin-top: -2px !important;
}

.catalog-wrap {
  overflow: hidden;
  margin-bottom: -8px;
}

.catalog-wrap-1600, .catalog-wrap-1920, .catalog-wrap-1280, .catalog-wrap-1024, .catalog-wrap-tablet {
    display: none;
}

.minimal-header-logo {
  max-width: 160px !important;
}

.acr-catalog-height {
  data-fbo-height: 800px;
}

@media screen and (max-width: 400px) {
  .catalog-wrap {
    padding: 0 15%;
  }
  .catalog-back-btn {
    display: none;
  }
  .catalog-back-btn-mobile {
    text-align: center;
    margin-bottom: 30px;
    font-size: 16px;
    font-size: 0.89rem;
    color: var(--secondary-button-background);
  }
}

@media screen and (min-width: 401px) {
  .catalog-back-btn-mobile {
    display: none;
  }
}

@media screen and (max-width: 800px) {
  .link-bs-wrap {
    display: inline-block;
    margin-bottom: 6px !important;
    font-size: .83rem;
  }
}
  
@media screen and (min-width: 560px) {
  .link-blog-sections {
    justify-content: flex-start;
  }
}

@media screen and (min-width: 1025px) {
  .minimal-header-logo {
    padding: 0 0 8px;
  }
}

@media screen and (min-width: 560px) and (max-width: 1023px) {
  .catalog-wrap-tablet {
    display: block;
  }
}

@media screen and (min-width: 1024px) and (max-width: 1279px) {
  .catalog-wrap-1024 {
    display: block;
  }
}

@media screen and (min-width: 1280px) and (max-width: 1549px) {
  .catalog-wrap-1280 {
    display: block;
  }
}

@media screen and (min-width: 1550px) and (max-width: 1919px) {
  .catalog-wrap-1600 {
    display: block;
  }
}

@media screen and (min-width: 1920px) {
  .catalog-wrap-1920 {
    display: block;
  }
}

/**
 * 1ACR HP Sections
 */

.hp-all-brands {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 60px;
}

.hp-brands-item {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
}

.hp-feature-text {
  max-width: 950px;
  margin: 10px auto;
  line-height: 27px;
}

@media screen and (max-width: 800px) {
  .hp-all-brands {
    flex-wrap: wrap;
  }
  .hp-brands-item {
    max-width: 140px;
  }
}

@media screen and (min-width: 801px) {
  .hp-all-brands {
    gap: 50px;
    padding-left: 100px;
    padding-right: 100px;
  }
}

@media screen and (min-width: 1280px) {
  .hp-all-brands {
    gap: 70px;
  }
}