/** Shopify CDN: Minification failed

Line 83:2 Expected identifier but found "*"
Line 157:2 Expected identifier but found "*"
Line 1803:2 Expected identifier but found "*"
Line 12502:0 All "@import" rules must come first
Line 12503:0 All "@import" rules must come first
Line 12620:0 All "@import" rules must come first
Line 12621:0 All "@import" rules must come first
Line 12790:0 Expected "{" but found end of file

**/
@charset "UTF-8";
/*============================================================================
  LEGACY STYLESHEETS - To be migrated to individual files
==============================================================================*/
/*============================================================================
Shopify Timber
Copyright 2015 Shopify Inc.
Author Carson Shold @cshold
Built with Sass - http://sass-lang.com/

Some things to know about this file:
- Sass is compiled on Shopify's server so you don't need to convert it to CSS yourself
- The output CSS is compressed and comments are removed
- You cannot use @imports in this file
* Use grunt or gulp tasks to enable @imports - https://github.com/Shopify/shopify-css-import
- Helpers variables, mixins, and starter classes are provided. Change as needed.
- The file is prepped with a CSS reset
- The font icons are prepared using https://icomoon.io/app
==============================================================================*/
/*============================================================================
Table of Contents

#Breakpoint and Grid Variables
#General Variables
#Sass Mixins
#Normalize
#Grid Setup
#Basic Styles
#Helper Classes
#Typography
#Rich Text Editor
#Links and Buttons
#Lists
#Tables
#Reponsive Tables
#OOCSS Media Object
#Images and Iframes
#Forms
#Icons
#Pagination
#Site Header
#Site Nav and Dropdowns
#Mobile Nav
#Drawers
#Site Footer
#Product and Collection Grids
#Collection Filters
#Breadcrumbs
#Product Page
#Notes and Form Feedback
#Cart Page
#Ajax Cart Styles
==============================================================================*/
/*============================================================================
#Breakpoint and Grid Variables
==============================================================================*/
/*================ The following are dependencies of csswizardry grid ================*/
/*============================================================================
#General Variables
==============================================================================*/
/*================ Typography ================*/
/*============================================================================
#Sass Mixins
==============================================================================*/
.clearfix:after {
  content: "";
  display: table;
  clear: both;
}
.clearfix {
  *zoom: 1;
}

/*============================================================================
Prefixer mixin for generating vendor prefixes:
- Based on https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/addons/_prefixer.scss
- Usage:

// Input:
.element {
@include prefixer(transform, scale(1), ms webkit spec);
}

// Output:
.element {
-ms-transform: scale(1);
-webkit-transform: scale(1);
transform: scale(1);
}
==============================================================================*/
/*============================================================================
Layer promotion mixin for creating smoother animations with higher FPS.
==============================================================================*/
/*============================================================================
Dependency-free breakpoint mixin
- Based on http://blog.grayghostvisuals.com/sass/sass-media-query-mixin/
- Usage docs: http://shopify.github.io/Timber/#sass-mixins
==============================================================================*/
/*============================================================================
#Normalize
==============================================================================*/
*, input, :before, :after, ::before, ::after {
  box-sizing: border-box;
}

html, body {
  padding: 0;
  margin: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, nav, section, summary {
  display: block;
}

audio, canvas, progress, video {
  display: inline-block;
  vertical-align: baseline;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  height: auto;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*============================================================================
#Grid Setup
- Based on csswizardry grid, but with floated columns, a fixed gutter size, and BEM classes
- Breakpoints defined above, under #Breakpoint and Grid Variables
- Note the inclusion of .grid-uniform to take care of clearfixes on evenly sized grid items
==============================================================================*/
/* Force clearfix on grids */
.grid:after, .grid--full:after, .grid--rev:after,
.grid-uniform:after {
  content: "";
  display: table;
  clear: both;
}
.grid, .grid--full, .grid--rev,
.grid-uniform {
  *zoom: 1;
}

/* Manual grid__item clearfix */
.grid__item.clear {
  clear: both;
}

/*============================================================================
Drop relative positioning into silent classes which can't take advantage of
the `[class*="push--"]` and `[class*="pull--"]` selectors.
==============================================================================*/
/*============================================================================
Grid Setup
1. Allow the grid system to be used on lists.
2. Remove any margins and paddings that might affect the grid system.
3. Apply a negative `margin-left` to negate the columns' gutters.
==============================================================================*/
.grid, .grid--full, .grid--rev,
.grid-uniform {
  list-style: none;
  margin: 0;
  padding: 0;
  margin-left: -30px;
}

.grid__item {
  box-sizing: border-box;
  float: left;
  min-height: 1px;
  padding-left: 15px;
  vertical-align: top;
  width: 100%;
}

/*============================================================================
Reversed grids allow you to structure your source in the opposite
order to how your rendered layout will appear.
==============================================================================*/
.grid--rev {
  direction: rtl;
  text-align: left;
}
.grid--rev > .grid__item {
  direction: ltr;
  text-align: left;
  float: right;
}

/* Gutterless grids have all the properties of regular grids, minus any spacing. */
.grid--full {
  margin-left: 0;
}
/*============================================================================
WIDTHS
- Create width classes, prefixed by the specified namespace.
==============================================================================*/
/*================ Clearfix helper on uniform grids ================*/
/*================ Helper show/hide classes around our breakpoints ================*/
/*================ Our regular, non-responsive width and helper classes ================*/
/** Whole */
.one-whole {
  width: 100%;
}

/* Halves */
.one-half {
  width: 50%;
}

/* Thirds */
.one-third {
  width: 33.333%;
}

.two-thirds {
  width: 66.666%;
}

/* Quarters */
.one-quarter {
  width: 25%;
}

.two-quarters {
  width: 50%;
}

.three-quarters {
  width: 75%;
}

/* Fifths */
.one-fifth {
  width: 20%;
}

.two-fifths {
  width: 40%;
}

.three-fifths {
  width: 60%;
}

.four-fifths {
  width: 80%;
}

/* Sixths */
.one-sixth {
  width: 16.666%;
}

.two-sixths {
  width: 33.333%;
}

.three-sixths {
  width: 50%;
}

.four-sixths {
  width: 66.666%;
}

.five-sixths {
  width: 83.333%;
}

/* Eighths */
.one-eighth {
  width: 12.5%;
}

.two-eighths {
  width: 25%;
}

.three-eighths {
  width: 37.5%;
}

.four-eighths {
  width: 50%;
}

.five-eighths {
  width: 62.5%;
}

.six-eighths {
  width: 75%;
}

.seven-eighths {
  width: 87.5%;
}

/* Tenths */
.one-tenth {
  width: 10%;
}

.two-tenths {
  width: 20%;
}

.three-tenths {
  width: 30%;
}

.four-tenths {
  width: 40%;
}

.five-tenths {
  width: 50%;
}

.six-tenths {
  width: 60%;
}

.seven-tenths {
  width: 70%;
}

.eight-tenths {
  width: 80%;
}

.nine-tenths {
  width: 90%;
}

/* Twelfths */
.one-twelfth {
  width: 8.333%;
}

.two-twelfths {
  width: 16.666%;
}

.three-twelfths {
  width: 25%;
}

.four-twelfths {
  width: 33.333%;
}

.five-twelfths {
  width: 41.666%;
}

.six-twelfths {
  width: 50%;
}

.seven-twelfths {
  width: 58.333%;
}

.eight-twelfths {
  width: 66.666%;
}

.nine-twelfths {
  width: 75%;
}

.ten-twelfths {
  width: 83.333%;
}

.eleven-twelfths {
  width: 91.666%;
}

.show {
  display: block !important;
}

.hide {
  display: none !important;
}

.text-left {
  text-align: left !important;
}

.text-right {
  text-align: right !important;
}

.text-center {
  text-align: center !important;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

/*================ Our responsive classes, if we have enabled them ================*/
@media only screen and (max-width: 480px) {
  /** Whole */
  .small--one-whole {
    width: 100%;
  }
  /* Halves */
  .small--one-half {
    width: 50%;
  }
  /* Thirds */
  .small--one-third {
    width: 33.333%;
  }
  .small--two-thirds {
    width: 66.666%;
  }
  /* Quarters */
  .small--one-quarter {
    width: 25%;
  }
  .small--two-quarters {
    width: 50%;
  }
  .small--three-quarters {
    width: 75%;
  }
  /* Fifths */
  .small--one-fifth {
    width: 20%;
  }
  .small--two-fifths {
    width: 40%;
  }
  .small--three-fifths {
    width: 60%;
  }
  .small--four-fifths {
    width: 80%;
  }
  /* Sixths */
  .small--one-sixth {
    width: 16.666%;
  }
  .small--two-sixths {
    width: 33.333%;
  }
  .small--three-sixths {
    width: 50%;
  }
  .small--four-sixths {
    width: 66.666%;
  }
  .small--five-sixths {
    width: 83.333%;
  }
  /* Eighths */
  .small--one-eighth {
    width: 12.5%;
  }
  .small--two-eighths {
    width: 25%;
  }
  .small--three-eighths {
    width: 37.5%;
  }
  .small--four-eighths {
    width: 50%;
  }
  .small--five-eighths {
    width: 62.5%;
  }
  .small--six-eighths {
    width: 75%;
  }
  .small--seven-eighths {
    width: 87.5%;
  }
  /* Tenths */
  .small--one-tenth {
    width: 10%;
  }
  .small--two-tenths {
    width: 20%;
  }
  .small--three-tenths {
    width: 30%;
  }
  .small--four-tenths {
    width: 40%;
  }
  .small--five-tenths {
    width: 50%;
  }
  .small--six-tenths {
    width: 60%;
  }
  .small--seven-tenths {
    width: 70%;
  }
  .small--eight-tenths {
    width: 80%;
  }
  .small--nine-tenths {
    width: 90%;
  }
  /* Twelfths */
  .small--one-twelfth {
    width: 8.333%;
  }
  .small--two-twelfths {
    width: 16.666%;
  }
  .small--three-twelfths {
    width: 25%;
  }
  .small--four-twelfths {
    width: 33.333%;
  }
  .small--five-twelfths {
    width: 41.666%;
  }
  .small--six-twelfths {
    width: 50%;
  }
  .small--seven-twelfths {
    width: 58.333%;
  }
  .small--eight-twelfths {
    width: 66.666%;
  }
  .small--nine-twelfths {
    width: 75%;
  }
  .small--ten-twelfths {
    width: 83.333%;
  }
  .small--eleven-twelfths {
    width: 91.666%;
  }
  .small--show {
    display: block !important;
  }
  .small--hide {
    display: none !important;
  }
  .small--text-left {
    text-align: left !important;
  }
  .small--text-right {
    text-align: right !important;
  }
  .small--text-center {
    text-align: center !important;
  }
  .small--left {
    float: left !important;
  }
  .small--right {
    float: right !important;
  }
  .grid-uniform .small--one-half:nth-child(2n+1),
  .grid-uniform .small--one-third:nth-child(3n+1),
  .grid-uniform .small--one-quarter:nth-child(4n+1),
  .grid-uniform .small--one-fifth:nth-child(5n+1),
  .grid-uniform .small--one-sixth:nth-child(6n+1),
  .grid-uniform .small--two-sixths:nth-child(3n+1),
  .grid-uniform .small--three-sixths:nth-child(2n+1),
  .grid-uniform .small--two-eighths:nth-child(4n+1),
  .grid-uniform .small--four-eighths:nth-child(2n+1),
  .grid-uniform .small--five-tenths:nth-child(2n+1),
  .grid-uniform .small--one-twelfth:nth-child(12n+1),
  .grid-uniform .small--two-twelfths:nth-child(6n+1),
  .grid-uniform .small--three-twelfths:nth-child(4n+1),
  .grid-uniform .small--four-twelfths:nth-child(3n+1),
  .grid-uniform .small--six-twelfths:nth-child(2n+1) {
    clear: both;
  }
}
@media only screen and (min-width: 481px) and (max-width: 768px) {
  /** Whole */
  .medium--one-whole {
    width: 100%;
  }
  /* Halves */
  .medium--one-half {
    width: 50%;
  }
  /* Thirds */
  .medium--one-third {
    width: 33.333%;
  }
  .medium--two-thirds {
    width: 66.666%;
  }
  /* Quarters */
  .medium--one-quarter {
    width: 25%;
  }
  .medium--two-quarters {
    width: 50%;
  }
  .medium--three-quarters {
    width: 75%;
  }
  /* Fifths */
  .medium--one-fifth {
    width: 20%;
  }
  .medium--two-fifths {
    width: 40%;
  }
  .medium--three-fifths {
    width: 60%;
  }
  .medium--four-fifths {
    width: 80%;
  }
  /* Sixths */
  .medium--one-sixth {
    width: 16.666%;
  }
  .medium--two-sixths {
    width: 33.333%;
  }
  .medium--three-sixths {
    width: 50%;
  }
  .medium--four-sixths {
    width: 66.666%;
  }
  .medium--five-sixths {
    width: 83.333%;
  }
  /* Eighths */
  .medium--one-eighth {
    width: 12.5%;
  }
  .medium--two-eighths {
    width: 25%;
  }
  .medium--three-eighths {
    width: 37.5%;
  }
  .medium--four-eighths {
    width: 50%;
  }
  .medium--five-eighths {
    width: 62.5%;
  }
  .medium--six-eighths {
    width: 75%;
  }
  .medium--seven-eighths {
    width: 87.5%;
  }
  /* Tenths */
  .medium--one-tenth {
    width: 10%;
  }
  .medium--two-tenths {
    width: 20%;
  }
  .medium--three-tenths {
    width: 30%;
  }
  .medium--four-tenths {
    width: 40%;
  }
  .medium--five-tenths {
    width: 50%;
  }
  .medium--six-tenths {
    width: 60%;
  }
  .medium--seven-tenths {
    width: 70%;
  }
  .medium--eight-tenths {
    width: 80%;
  }
  .medium--nine-tenths {
    width: 90%;
  }
  /* Twelfths */
  .medium--one-twelfth {
    width: 8.333%;
  }
  .medium--two-twelfths {
    width: 16.666%;
  }
  .medium--three-twelfths {
    width: 25%;
  }
  .medium--four-twelfths {
    width: 33.333%;
  }
  .medium--five-twelfths {
    width: 41.666%;
  }
  .medium--six-twelfths {
    width: 50%;
  }
  .medium--seven-twelfths {
    width: 58.333%;
  }
  .medium--eight-twelfths {
    width: 66.666%;
  }
  .medium--nine-twelfths {
    width: 75%;
  }
  .medium--ten-twelfths {
    width: 83.333%;
  }
  .medium--eleven-twelfths {
    width: 91.666%;
  }
  .medium--show {
    display: block !important;
  }
  .medium--hide {
    display: none !important;
  }
  .medium--text-left {
    text-align: left !important;
  }
  .medium--text-right {
    text-align: right !important;
  }
  .medium--text-center {
    text-align: center !important;
  }
  .medium--left {
    float: left !important;
  }
  .medium--right {
    float: right !important;
  }
  .grid-uniform .medium--one-half:nth-child(2n+1),
  .grid-uniform .medium--one-third:nth-child(3n+1),
  .grid-uniform .medium--one-quarter:nth-child(4n+1),
  .grid-uniform .medium--one-fifth:nth-child(5n+1),
  .grid-uniform .medium--one-sixth:nth-child(6n+1),
  .grid-uniform .medium--two-sixths:nth-child(3n+1),
  .grid-uniform .medium--three-sixths:nth-child(2n+1),
  .grid-uniform .medium--two-eighths:nth-child(4n+1),
  .grid-uniform .medium--four-eighths:nth-child(2n+1),
  .grid-uniform .medium--five-tenths:nth-child(2n+1),
  .grid-uniform .medium--one-twelfth:nth-child(12n+1),
  .grid-uniform .medium--two-twelfths:nth-child(6n+1),
  .grid-uniform .medium--three-twelfths:nth-child(4n+1),
  .grid-uniform .medium--four-twelfths:nth-child(3n+1),
  .grid-uniform .medium--six-twelfths:nth-child(2n+1) {
    clear: both;
  }
}
@media only screen and (max-width: 768px) {
  /** Whole */
  .medium-down--one-whole {
    width: 100%;
  }
  /* Halves */
  .medium-down--one-half {
    width: 50%;
  }
  /* Thirds */
  .medium-down--one-third {
    width: 33.333%;
  }
  .medium-down--two-thirds {
    width: 66.666%;
  }
  /* Quarters */
  .medium-down--one-quarter {
    width: 25%;
  }
  .medium-down--two-quarters {
    width: 50%;
  }
  .medium-down--three-quarters {
    width: 75%;
  }
  /* Fifths */
  .medium-down--one-fifth {
    width: 20%;
  }
  .medium-down--two-fifths {
    width: 40%;
  }
  .medium-down--three-fifths {
    width: 60%;
  }
  .medium-down--four-fifths {
    width: 80%;
  }
  /* Sixths */
  .medium-down--one-sixth {
    width: 16.666%;
  }
  .medium-down--two-sixths {
    width: 33.333%;
  }
  .medium-down--three-sixths {
    width: 50%;
  }
  .medium-down--four-sixths {
    width: 66.666%;
  }
  .medium-down--five-sixths {
    width: 83.333%;
  }
  /* Eighths */
  .medium-down--one-eighth {
    width: 12.5%;
  }
  .medium-down--two-eighths {
    width: 25%;
  }
  .medium-down--three-eighths {
    width: 37.5%;
  }
  .medium-down--four-eighths {
    width: 50%;
  }
  .medium-down--five-eighths {
    width: 62.5%;
  }
  .medium-down--six-eighths {
    width: 75%;
  }
  .medium-down--seven-eighths {
    width: 87.5%;
  }
  /* Tenths */
  .medium-down--one-tenth {
    width: 10%;
  }
  .medium-down--two-tenths {
    width: 20%;
  }
  .medium-down--three-tenths {
    width: 30%;
  }
  .medium-down--four-tenths {
    width: 40%;
  }
  .medium-down--five-tenths {
    width: 50%;
  }
  .medium-down--six-tenths {
    width: 60%;
  }
  .medium-down--seven-tenths {
    width: 70%;
  }
  .medium-down--eight-tenths {
    width: 80%;
  }
  .medium-down--nine-tenths {
    width: 90%;
  }
  /* Twelfths */
  .medium-down--one-twelfth {
    width: 8.333%;
  }
  .medium-down--two-twelfths {
    width: 16.666%;
  }
  .medium-down--three-twelfths {
    width: 25%;
  }
  .medium-down--four-twelfths {
    width: 33.333%;
  }
  .medium-down--five-twelfths {
    width: 41.666%;
  }
  .medium-down--six-twelfths {
    width: 50%;
  }
  .medium-down--seven-twelfths {
    width: 58.333%;
  }
  .medium-down--eight-twelfths {
    width: 66.666%;
  }
  .medium-down--nine-twelfths {
    width: 75%;
  }
  .medium-down--ten-twelfths {
    width: 83.333%;
  }
  .medium-down--eleven-twelfths {
    width: 91.666%;
  }
  .medium-down--show {
    display: block !important;
  }
  .medium-down--hide {
    display: none !important;
  }
  .medium-down--text-left {
    text-align: left !important;
  }
  .medium-down--text-right {
    text-align: right !important;
  }
  .medium-down--text-center {
    text-align: center !important;
  }
  .medium-down--left {
    float: left !important;
  }
  .medium-down--right {
    float: right !important;
  }
  .grid-uniform .medium-down--one-half:nth-child(2n+1),
  .grid-uniform .medium-down--one-third:nth-child(3n+1),
  .grid-uniform .medium-down--one-quarter:nth-child(4n+1),
  .grid-uniform .medium-down--one-fifth:nth-child(5n+1),
  .grid-uniform .medium-down--one-sixth:nth-child(6n+1),
  .grid-uniform .medium-down--two-sixths:nth-child(3n+1),
  .grid-uniform .medium-down--three-sixths:nth-child(2n+1),
  .grid-uniform .medium-down--two-eighths:nth-child(4n+1),
  .grid-uniform .medium-down--four-eighths:nth-child(2n+1),
  .grid-uniform .medium-down--five-tenths:nth-child(2n+1),
  .grid-uniform .medium-down--one-twelfth:nth-child(12n+1),
  .grid-uniform .medium-down--two-twelfths:nth-child(6n+1),
  .grid-uniform .medium-down--three-twelfths:nth-child(4n+1),
  .grid-uniform .medium-down--four-twelfths:nth-child(3n+1),
  .grid-uniform .medium-down--six-twelfths:nth-child(2n+1) {
    clear: both;
  }
}
@media only screen and (min-width: 769px) {
  /** Whole */
  .large--one-whole {
    width: 100%;
  }
  /* Halves */
  .large--one-half {
    width: 50%;
  }
  /* Thirds */
  .large--one-third {
    width: 33.333%;
  }
  .large--two-thirds {
    width: 66.666%;
  }
  /* Quarters */
  .large--one-quarter {
    width: 25%;
  }
  .large--two-quarters {
    width: 50%;
  }
  .large--three-quarters {
    width: 75%;
  }
  /* Fifths */
  .large--one-fifth {
    width: 20%;
  }
  .large--two-fifths {
    width: 40%;
  }
  .large--three-fifths {
    width: 60%;
  }
  .large--four-fifths {
    width: 80%;
  }
  /* Sixths */
  .large--one-sixth {
    width: 16.666%;
  }
  .large--two-sixths {
    width: 33.333%;
  }
  .large--three-sixths {
    width: 50%;
  }
  .large--four-sixths {
    width: 66.666%;
  }
  .large--five-sixths {
    width: 83.333%;
  }
  /* Eighths */
  .large--one-eighth {
    width: 12.5%;
  }
  .large--two-eighths {
    width: 25%;
  }
  .large--three-eighths {
    width: 37.5%;
  }
  .large--four-eighths {
    width: 50%;
  }
  .large--five-eighths {
    width: 62.5%;
  }
  .large--six-eighths {
    width: 75%;
  }
  .large--seven-eighths {
    width: 87.5%;
  }
  /* Tenths */
  .large--one-tenth {
    width: 10%;
  }
  .large--two-tenths {
    width: 20%;
  }
  .large--three-tenths {
    width: 30%;
  }
  .large--four-tenths {
    width: 40%;
  }
  .large--five-tenths {
    width: 50%;
  }
  .large--six-tenths {
    width: 60%;
  }
  .large--seven-tenths {
    width: 70%;
  }
  .large--eight-tenths {
    width: 80%;
  }
  .large--nine-tenths {
    width: 90%;
  }
  /* Twelfths */
  .large--one-twelfth {
    width: 8.333%;
  }
  .large--two-twelfths {
    width: 16.666%;
  }
  .large--three-twelfths {
    width: 25%;
  }
  .large--four-twelfths {
    width: 33.333%;
  }
  .large--five-twelfths {
    width: 41.666%;
  }
  .large--six-twelfths {
    width: 50%;
  }
  .large--seven-twelfths {
    width: 58.333%;
  }
  .large--eight-twelfths {
    width: 66.666%;
  }
  .large--nine-twelfths {
    width: 75%;
  }
  .large--ten-twelfths {
    width: 83.333%;
  }
  .large--eleven-twelfths {
    width: 91.666%;
  }
  .large--show {
    display: block !important;
  }
  .large--hide {
    display: none !important;
  }
  .large--text-left {
    text-align: left !important;
  }
  .large--text-right {
    text-align: right !important;
  }
  .large--text-center {
    text-align: center !important;
  }
  .large--left {
    float: left !important;
  }
  .large--right {
    float: right !important;
  }
  .grid-uniform .large--one-half:nth-child(2n+1),
  .grid-uniform .large--one-third:nth-child(3n+1),
  .grid-uniform .large--one-quarter:nth-child(4n+1),
  .grid-uniform .large--one-fifth:nth-child(5n+1),
  .grid-uniform .large--one-sixth:nth-child(6n+1),
  .grid-uniform .large--two-sixths:nth-child(3n+1),
  .grid-uniform .large--three-sixths:nth-child(2n+1),
  .grid-uniform .large--two-eighths:nth-child(4n+1),
  .grid-uniform .large--four-eighths:nth-child(2n+1),
  .grid-uniform .large--five-tenths:nth-child(2n+1),
  .grid-uniform .large--one-twelfth:nth-child(12n+1),
  .grid-uniform .large--two-twelfths:nth-child(6n+1),
  .grid-uniform .large--three-twelfths:nth-child(4n+1),
  .grid-uniform .large--four-twelfths:nth-child(3n+1),
  .grid-uniform .large--six-twelfths:nth-child(2n+1) {
    clear: both;
  }
}
/*============================================================================
PUSH
- Push classes, to move grid items over to the right by certain amounts
==============================================================================*/
[class*=push--] {
  position: relative;
}

/* Whole */
.push--one-whole {
  left: 100%;
}

/* Halves */
.push--one-half {
  left: 50%;
}

/* Thirds */
.push--one-third {
  left: 33.333%;
}

.push--two-thirds {
  left: 66.666%;
}

/* Quarters */
.push--one-quarter {
  left: 25%;
}

.push--two-quarters {
  left: 50%;
}

.push--three-quarters {
  left: 75%;
}

/* Fifths */
.push--one-fifth {
  left: 20%;
}

.push--two-fifths {
  left: 40%;
}

.push--three-fifths {
  left: 60%;
}

.push--four-fifths {
  left: 80%;
}

/* Sixths */
.push--one-sixth {
  left: 16.666%;
}

.push--two-sixths {
  left: 33.333%;
}

.push--three-sixths {
  left: 50%;
}

.push--four-sixths {
  left: 66.666%;
}

.push--five-sixths {
  left: 83.333%;
}

/* Eighths */
.push--one-eighth {
  left: 12.5%;
}

.push--two-eighths {
  left: 25%;
}

.push--three-eighths {
  left: 37.5%;
}

.push--four-eighths {
  left: 50%;
}

.push--five-eighths {
  left: 62.5%;
}

.push--six-eighths {
  left: 75%;
}

.push--seven-eighths {
  left: 87.5%;
}

/* Tenths */
.push--one-tenth {
  left: 10%;
}

.push--two-tenths {
  left: 20%;
}

.push--three-tenths {
  left: 30%;
}

.push--four-tenths {
  left: 40%;
}

.push--five-tenths {
  left: 50%;
}

.push--six-tenths {
  left: 60%;
}

.push--seven-tenths {
  left: 70%;
}

.push--eight-tenths {
  left: 80%;
}

.push--nine-tenths {
  left: 90%;
}

/* Twelfths */
.push--one-twelfth {
  left: 8.333%;
}

.push--two-twelfths {
  left: 16.666%;
}

.push--three-twelfths {
  left: 25%;
}

.push--four-twelfths {
  left: 33.333%;
}

.push--five-twelfths {
  left: 41.666%;
}

.push--six-twelfths {
  left: 50%;
}

.push--seven-twelfths {
  left: 58.333%;
}

.push--eight-twelfths {
  left: 66.666%;
}

.push--nine-twelfths {
  left: 75%;
}

.push--ten-twelfths {
  left: 83.333%;
}

.push--eleven-twelfths {
  left: 91.666%;
}

@media only screen and (min-width: 481px) and (max-width: 768px) {
  /* Whole */
  .push--medium--one-whole {
    left: 100%;
  }
  /* Halves */
  .push--medium--one-half {
    left: 50%;
  }
  /* Thirds */
  .push--medium--one-third {
    left: 33.333%;
  }
  .push--medium--two-thirds {
    left: 66.666%;
  }
  /* Quarters */
  .push--medium--one-quarter {
    left: 25%;
  }
  .push--medium--two-quarters {
    left: 50%;
  }
  .push--medium--three-quarters {
    left: 75%;
  }
  /* Fifths */
  .push--medium--one-fifth {
    left: 20%;
  }
  .push--medium--two-fifths {
    left: 40%;
  }
  .push--medium--three-fifths {
    left: 60%;
  }
  .push--medium--four-fifths {
    left: 80%;
  }
  /* Sixths */
  .push--medium--one-sixth {
    left: 16.666%;
  }
  .push--medium--two-sixths {
    left: 33.333%;
  }
  .push--medium--three-sixths {
    left: 50%;
  }
  .push--medium--four-sixths {
    left: 66.666%;
  }
  .push--medium--five-sixths {
    left: 83.333%;
  }
  /* Eighths */
  .push--medium--one-eighth {
    left: 12.5%;
  }
  .push--medium--two-eighths {
    left: 25%;
  }
  .push--medium--three-eighths {
    left: 37.5%;
  }
  .push--medium--four-eighths {
    left: 50%;
  }
  .push--medium--five-eighths {
    left: 62.5%;
  }
  .push--medium--six-eighths {
    left: 75%;
  }
  .push--medium--seven-eighths {
    left: 87.5%;
  }
  /* Tenths */
  .push--medium--one-tenth {
    left: 10%;
  }
  .push--medium--two-tenths {
    left: 20%;
  }
  .push--medium--three-tenths {
    left: 30%;
  }
  .push--medium--four-tenths {
    left: 40%;
  }
  .push--medium--five-tenths {
    left: 50%;
  }
  .push--medium--six-tenths {
    left: 60%;
  }
  .push--medium--seven-tenths {
    left: 70%;
  }
  .push--medium--eight-tenths {
    left: 80%;
  }
  .push--medium--nine-tenths {
    left: 90%;
  }
  /* Twelfths */
  .push--medium--one-twelfth {
    left: 8.333%;
  }
  .push--medium--two-twelfths {
    left: 16.666%;
  }
  .push--medium--three-twelfths {
    left: 25%;
  }
  .push--medium--four-twelfths {
    left: 33.333%;
  }
  .push--medium--five-twelfths {
    left: 41.666%;
  }
  .push--medium--six-twelfths {
    left: 50%;
  }
  .push--medium--seven-twelfths {
    left: 58.333%;
  }
  .push--medium--eight-twelfths {
    left: 66.666%;
  }
  .push--medium--nine-twelfths {
    left: 75%;
  }
  .push--medium--ten-twelfths {
    left: 83.333%;
  }
  .push--medium--eleven-twelfths {
    left: 91.666%;
  }
}
@media only screen and (max-width: 768px) {
  /* Whole */
  .push--medium-down--one-whole {
    left: 100%;
  }
  /* Halves */
  .push--medium-down--one-half {
    left: 50%;
  }
  /* Thirds */
  .push--medium-down--one-third {
    left: 33.333%;
  }
  .push--medium-down--two-thirds {
    left: 66.666%;
  }
  /* Quarters */
  .push--medium-down--one-quarter {
    left: 25%;
  }
  .push--medium-down--two-quarters {
    left: 50%;
  }
  .push--medium-down--three-quarters {
    left: 75%;
  }
  /* Fifths */
  .push--medium-down--one-fifth {
    left: 20%;
  }
  .push--medium-down--two-fifths {
    left: 40%;
  }
  .push--medium-down--three-fifths {
    left: 60%;
  }
  .push--medium-down--four-fifths {
    left: 80%;
  }
  /* Sixths */
  .push--medium-down--one-sixth {
    left: 16.666%;
  }
  .push--medium-down--two-sixths {
    left: 33.333%;
  }
  .push--medium-down--three-sixths {
    left: 50%;
  }
  .push--medium-down--four-sixths {
    left: 66.666%;
  }
  .push--medium-down--five-sixths {
    left: 83.333%;
  }
  /* Eighths */
  .push--medium-down--one-eighth {
    left: 12.5%;
  }
  .push--medium-down--two-eighths {
    left: 25%;
  }
  .push--medium-down--three-eighths {
    left: 37.5%;
  }
  .push--medium-down--four-eighths {
    left: 50%;
  }
  .push--medium-down--five-eighths {
    left: 62.5%;
  }
  .push--medium-down--six-eighths {
    left: 75%;
  }
  .push--medium-down--seven-eighths {
    left: 87.5%;
  }
  /* Tenths */
  .push--medium-down--one-tenth {
    left: 10%;
  }
  .push--medium-down--two-tenths {
    left: 20%;
  }
  .push--medium-down--three-tenths {
    left: 30%;
  }
  .push--medium-down--four-tenths {
    left: 40%;
  }
  .push--medium-down--five-tenths {
    left: 50%;
  }
  .push--medium-down--six-tenths {
    left: 60%;
  }
  .push--medium-down--seven-tenths {
    left: 70%;
  }
  .push--medium-down--eight-tenths {
    left: 80%;
  }
  .push--medium-down--nine-tenths {
    left: 90%;
  }
  /* Twelfths */
  .push--medium-down--one-twelfth {
    left: 8.333%;
  }
  .push--medium-down--two-twelfths {
    left: 16.666%;
  }
  .push--medium-down--three-twelfths {
    left: 25%;
  }
  .push--medium-down--four-twelfths {
    left: 33.333%;
  }
  .push--medium-down--five-twelfths {
    left: 41.666%;
  }
  .push--medium-down--six-twelfths {
    left: 50%;
  }
  .push--medium-down--seven-twelfths {
    left: 58.333%;
  }
  .push--medium-down--eight-twelfths {
    left: 66.666%;
  }
  .push--medium-down--nine-twelfths {
    left: 75%;
  }
  .push--medium-down--ten-twelfths {
    left: 83.333%;
  }
  .push--medium-down--eleven-twelfths {
    left: 91.666%;
  }
}
@media only screen and (min-width: 769px) {
  /* Whole */
  .push--large--one-whole {
    left: 100%;
  }
  /* Halves */
  .push--large--one-half {
    left: 50%;
  }
  /* Thirds */
  .push--large--one-third {
    left: 33.333%;
  }
  .push--large--two-thirds {
    left: 66.666%;
  }
  /* Quarters */
  .push--large--one-quarter {
    left: 25%;
  }
  .push--large--two-quarters {
    left: 50%;
  }
  .push--large--three-quarters {
    left: 75%;
  }
  /* Fifths */
  .push--large--one-fifth {
    left: 20%;
  }
  .push--large--two-fifths {
    left: 40%;
  }
  .push--large--three-fifths {
    left: 60%;
  }
  .push--large--four-fifths {
    left: 80%;
  }
  /* Sixths */
  .push--large--one-sixth {
    left: 16.666%;
  }
  .push--large--two-sixths {
    left: 33.333%;
  }
  .push--large--three-sixths {
    left: 50%;
  }
  .push--large--four-sixths {
    left: 66.666%;
  }
  .push--large--five-sixths {
    left: 83.333%;
  }
  /* Eighths */
  .push--large--one-eighth {
    left: 12.5%;
  }
  .push--large--two-eighths {
    left: 25%;
  }
  .push--large--three-eighths {
    left: 37.5%;
  }
  .push--large--four-eighths {
    left: 50%;
  }
  .push--large--five-eighths {
    left: 62.5%;
  }
  .push--large--six-eighths {
    left: 75%;
  }
  .push--large--seven-eighths {
    left: 87.5%;
  }
  /* Tenths */
  .push--large--one-tenth {
    left: 10%;
  }
  .push--large--two-tenths {
    left: 20%;
  }
  .push--large--three-tenths {
    left: 30%;
  }
  .push--large--four-tenths {
    left: 40%;
  }
  .push--large--five-tenths {
    left: 50%;
  }
  .push--large--six-tenths {
    left: 60%;
  }
  .push--large--seven-tenths {
    left: 70%;
  }
  .push--large--eight-tenths {
    left: 80%;
  }
  .push--large--nine-tenths {
    left: 90%;
  }
  /* Twelfths */
  .push--large--one-twelfth {
    left: 8.333%;
  }
  .push--large--two-twelfths {
    left: 16.666%;
  }
  .push--large--three-twelfths {
    left: 25%;
  }
  .push--large--four-twelfths {
    left: 33.333%;
  }
  .push--large--five-twelfths {
    left: 41.666%;
  }
  .push--large--six-twelfths {
    left: 50%;
  }
  .push--large--seven-twelfths {
    left: 58.333%;
  }
  .push--large--eight-twelfths {
    left: 66.666%;
  }
  .push--large--nine-twelfths {
    left: 75%;
  }
  .push--large--ten-twelfths {
    left: 83.333%;
  }
  .push--large--eleven-twelfths {
    left: 91.666%;
  }
}
/*============================================================================
#Basic Styles
==============================================================================*/
html {
  background-color: var(--color_footer_bg);
}
@media screen and (max-width: 768px) {
  html {
    background-color: var(--color_body_bg);
  }
}

body {
  background-color: var(--color_body_bg);
}

[tabindex="-1"]:focus {
  outline: none;
}

@media screen and (min-width: 480px) {
  .page-section-padding {
    margin: 0 1%;
  }
}
@media screen and (max-width: 768px) {
  .page-section-padding {
    margin: 0 1%;
  }
}

.section-margin {
  margin: 30px 0px 30px 0px;
}
@media screen and (max-width: 768px) {
  .section-margin {
    margin: 5px 0 5px 0;
  }
}

.section-padding {
  padding: 30px 0px 30px 0px;
}
@media screen and (max-width: 768px) {
  .section-padding {
    padding: 5px 0 5px 0;
  }
}

.header-wrapper:after {
  content: "";
  display: table;
  clear: both;
}
.header-wrapper {
  *zoom: 1;
  max-width: 1920px;
  margin: 0 0;
  padding: 0;
}
@media screen and (min-width: 480px) {
  .header-wrapper {
    padding: 0 0;
  }
}

.main-content {
  display: block;
}

/*============================================================================
#Helper Classes
==============================================================================*/
.is-transitioning {
  display: block !important;
  visibility: visible !important;
}

.display-table {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.display-table-cell {
  display: table-cell;
  vertical-align: middle;
  float: none;
}

@media screen and (min-width: 769px) {
  .large--display-table {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .large--display-table-cell {
    display: table-cell;
    vertical-align: middle;
    float: none;
  }
}
.visually-hidden {
  position: absolute;
  overflow: hidden;
  clip: rect(0 0 0 0);
  height: 1px;
  width: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

/*============================================================================
#Typography
==============================================================================*/
.btn,
.btn--tertiary,
.rte .btn--tertiary,
.btn--secondary,
.rte .btn--secondary,
.rte .btn {
  font-family: "Fira Sans", sans-serif !important; /* ✅ Add this */
  font-size: 0.8rem;
  text-transform: var(--button_text_transform);
  word-break: break-word;
}
.shopify-payment-button__button {
  font-family: "Fira Sans", sans-serif !important; /* ✅ Add this */
  font-size: 0.8rem !important;
  text-transform: var(--button_text_transform) !important;
}

select,
button.crossborder__toggle,
.btn.filter-button,
.filter-button.btn--tertiary,
.filter-button.btn--secondary,
.swatch-element__text,
.btn.sorting-button,
.sorting-button.btn--tertiary,
.sorting-button.btn--secondary {
  text-transform: var(--input_style);
}
@media screen and (min-width: 769px) {
  select,
  button.crossborder__toggle,
  .btn.filter-button,
  .filter-button.btn--tertiary,
  .filter-button.btn--secondary,
  .swatch-element__text,
  .btn.sorting-button,
  .sorting-button.btn--tertiary,
  .sorting-button.btn--secondary {
    font-size: 0.8rem;
  }
}
select,
button.crossborder__toggle,
.btn.filter-button,
.filter-button.btn--tertiary,
.filter-button.btn--secondary,
.swatch-element__text,
.btn.sorting-button,
.sorting-button.btn--tertiary,
.sorting-button.btn--secondary {
  font-family: var(--bodyFontStack);
  font-weight: var(--bodyFontWeight);
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  line-height: 1.3;
}

select {
  color: var(--colorTextBody);
}

input,
textarea {
  font-size: 0.8rem;
  font-family: var(--bodyFontStack);
  font-weight: var(--bodyFontWeight);
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  line-height: 1.3;
}

label,
button,
.swatch,
.shopify-payment-button__button--unbranded,
.shopify-payment-button__button,
.filter-label.filter-label--main {
  font-size: 0.8rem;
  font-family: var(--bodyFontStack);
  font-weight: var(--headingFontWeight);
  text-transform: var(--button_text_transform);
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%;
  line-height: 1.3;
}

label.filter-label.filter-label--internal {
  font-weight: var(--bodyFontWeight) !important;
}

.filter-dropdown--sort .sorting-label {
  font-weight: var(--bodyFontWeight) !important;
}

label {
  color: var(--colorPrimary);
}

input::placeholder, textarea::placeholder {
  color: var(--colorTextBody);
  font-family: var(--bodyFontStack);
  font-size: 0.8rem;
  opacity: 1;
}

/* --- Font Modifiers --- */
@media screen and (max-width: 768px) {
  .h2--normal {
    font-size: 1.728rem;
  }
  .h2--large {
    font-size: 2.074rem;
  }
  .h2--extra-large {
    font-size: 2.488rem;
  }
  .h2--jumbo {
    font-size: 4.3rem;
  }
  .h4--normal {
    font-size: 1.2rem;
  }
  .h4--large {
    font-size: 1.4rem;
  }
  .h4--extra-large {
    font-size: 1.728rem;
  }
}
@media screen and (min-width: 769px) {
  .h2--normal {
    font-size: 1.953rem;
  }
  .h2--large {
    font-size: 2.441rem;
  }
  .h2--extra-large {
    font-size: 3.052rem;
  }
  .h2--jumbo {
    font-size: 11.642rem;
  }
  .h4--normal {
    font-size: 1.25rem;
  }
  .h4--large {
    font-size: 1.5rem;
  }
  .h4--extra-large {
    font-size: 1.953rem;
  }
}
.h5--no-margin {
  margin: 0;
}

.h1--centered {
  text-align: center;
}

.h2--small {
  font-size: 1.2em;
}

.p-link--no-accent {
  color: var(--colorTextBody);
}

.header-link--no-accent {
  color: var(--colorPrimary);
}

.h4--underline {
  text-decoration: underline;
}

.text--underline {
  text-decoration: underline;
  text-underline-offset: 0.25em;
}

.text--no-margin {
  margin: 0;
}

.text--margin-top-bottom {
  margin: 15px 0;
}

.p--bold {
  font-weight: var(--bodyFontWeight--bold);
}

.p--small {
  font-size: 0.8rem;
}

@media screen and (min-width: 769px) {
  .p--large {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 768px) {
  .p--large {
    font-size: 1rem;
  }
}

.p--crossed-out {
  text-decoration: line-through;
}

.p--accent {
  color: var(--color_accent) !important;
}

.p--accent-inverse {
  color: var(--color_secondary_accent_inverse) !important;
}

.p--faded {
  opacity: 0.6;
}

.p--padding-right {
  padding-right: 10px;
}

.left-margin--none {
  margin-left: 0;
}

.margin--none {
  margin: 0 0 0 0;
}

.list--none {
  list-style: none;
}

@media screen and (min-width: 769px) {
  .padding--top-bottom {
    padding: 0.5vw 0;
  }
}
@media screen and (max-width: 768px) {
  .padding--top-bottom {
    padding: 1.5vw 0;
  }
}

@media screen and (min-width: 769px) {
  .padding--top-bottom--medium {
    padding: 1vw 0;
  }
}
@media screen and (max-width: 768px) {
  .padding--top-bottom--medium {
    padding: 4vw 0;
  }
}

@media screen and (min-width: 769px) {
  .margin--top-bottom--medium {
    margin: 30px 0;
  }
}
@media screen and (max-width: 768px) {
  .margin--top-bottom--medium {
    margin: 20px 0;
  }
}

.padding--top-bottom-large {
  padding: 5% 0;
}

.content__inherit-colors {
  color: inherit;
}

.btn--flex {
  align-self: flex-start;
}

.btn--overlay-link {
  z-index: 401;
}

/*================ Use em() Sass function to declare font-size ================*/
p {
  margin: 0 0 15px 0;
}
p img {
  margin: 0;
}

em {
  font-style: italic;
}

b, strong {
  font-weight: bold;
}

small {
  font-size: 0.8rem;
}

sup, sub {
  position: relative;
  font-size: 60%;
  vertical-align: baseline;
}

sup {
  top: -0.5em;
}

sub {
  bottom: -0.5em;
}

.site-header__logo-left a, .site-header__logo-left img, .site-header__logo-center a, .site-header__logo-center img {
  font-family: var(--headingFontStack);
  font-weight: var(--headingFontStack);
  font-style: var(--headingFontStyle);
  letter-spacing: 0.01em;
}

/*================ Blockquotes ================*/
blockquote {
  font-size: 1.125em;
  line-height: 1.45;
  font-style: italic;
  margin: 0 0 30px;
  padding: 15px 30px;
  border-left: 1px solid var(--color_body_text_25);
}
blockquote p {
  margin-bottom: 0;
}
blockquote p + cite {
  margin-top: 15px;
}
blockquote cite {
  display: block;
  font-size: 0.75em;
}
blockquote cite:before {
  content: "— ";
}

/*================ Code ================*/
code, pre {
  background-color: #faf7f5;
  font-family: Consolas, monospace;
  font-size: 1em;
  border: 0 none;
  padding: 0 2px;
  color: #51ab62;
}

pre {
  overflow: auto;
  padding: 15px;
  margin: 0 0 30px;
}

/*================ Horizontal Rules ================*/
hr {
  clear: both;
  border-top: solid var(--color_body_text_25);
  border-width: 1px 0 0;
  margin: 30px 0;
  height: 0;
}
@media screen and (max-width: 768px) {
  hr {
    margin-bottom: 15px;
  }
}
hr.hr--small {
  margin: 15px 0;
}
hr.hr--clear {
  border-top-color: transparent;
}

/*================ Section Headers ================*/
.section-header {
  margin-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .section-header {
    margin-bottom: 0;
  }
}

.shopify-section.section-header {
  margin-bottom: 0;
}

@media screen and (min-width: 769px) {
  .section-header {
    width: 100%;
  }
}
.collection-view {
  display: inline-block;
  border: 1px solid var(--color_body_text_25);
  border-radius: 0;
  padding: 0 5px;
  height: 37px;
  overflow: hidden;
  /*================ Only show on larger screens ================*/
}
@media screen and (min-width: 769px) {
  .collection-view {
    display: inline-block;
  }
}

.change-view {
  display: block;
  background: none;
  border: 0 none;
  float: left;
  padding: 10px 8px;
  color: var(--color_body_text_25);
  line-height: 1;
}
.change-view:hover, .change-view:focus {
  color: var(--colorPrimary);
}

.change-view--active {
  cursor: default;
  color: var(--colorPrimary);
}

/*============================================================================
#Rich Text Editor
==============================================================================*/
.rte {
  margin-bottom: 15px;
}
.rte a {
  text-decoration: underline;
}
.rte h1 a, .rte h2 a, .rte h3 a, .rte h4 a, .rte h5 a, .rte h6 a {
  text-decoration: none;
}
.rte li {
  margin-bottom: 0.4em;
}
.rte img {
  width: auto;
  height: auto;
}

.rte--header {
  margin-bottom: 0;
}

/*============================================================================
#Links and Buttons
==============================================================================*/
a,
.text-link {
  color: var(--colorLink);
  text-decoration: none;
  background: transparent;
}

a:hover,
a:focus {
  color: var(--color_accent);
}

/*================ Force an input/button to look like a text link ================*/
.text-link {
  display: inline;
  border: 0 none;
  background: none;
  padding: 0;
  margin: 0;
}

/*============================================================================
#Lists
==============================================================================*/
ul, ol {
  margin: 0 0 15px 20px;
  padding: 0;
}

ol {
  list-style: decimal;
}

ul ul, ul ol,
ol ol, ol ul {
  margin: 4px 0 5px 20px;
}

li {
  margin-bottom: 0.25em;
}

ul.square {
  list-style: square outside;
}

ul.disc {
  list-style: disc outside;
}

ol.alpha {
  list-style: lower-alpha outside;
}

.no-bullets {
  list-style: none outside;
  margin-left: 0;
}

.inline-list {
  margin-left: 0;
}
.inline-list li {
  display: inline-block;
  margin-bottom: 0;
}

/*============================================================================
#Tables
==============================================================================*/
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

table.full {
  width: 100%;
  margin-bottom: 1em;
}

.table-wrap {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

th {
  font-weight: bold;
}

th, td {
  text-align: left;
  padding: 15px;
  border: 1px solid var(--color_body_text_25);
}

/*============================================================================
Responsive tables, defined with .table--responsive on table element.
Only defined for IE9+
==============================================================================*/
@media screen and (max-width: 480px) {
  .table--responsive thead {
    display: none;
  }
  .table--responsive tr {
    display: block;
  }
  .table--responsive tr,
  .table--responsive td {
    float: left;
    clear: both;
    width: 100%;
  }
  .table--responsive th,
  .table--responsive td {
    display: block;
    text-align: right;
    padding: 15px;
  }
  .table--responsive td:before {
    content: attr(data-label);
    float: left;
    text-align: center;
    padding-right: 10px;
  }
  .table--responsive.cart-table img {
    margin: 0 auto;
  }
  .table--responsive.cart-table .js-qty {
    float: right;
  }
}

@media screen and (max-width: 480px) {
  .table--small-hide {
    display: none !important;
  }
  .table__section + .table__section {
    position: relative;
    margin-top: 10px;
    padding-top: 15px;
  }
  .table__section + .table__section:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 15px;
    right: 15px;
    border-bottom: 1px solid var(--color_body_text_25);
  }
}
/*============================================================================
#OOCSS Media Object
- http://www.stubbornella.org/content/2010/06/25/the-media-object-saves-hundreds-of-lines-of-code/
==============================================================================*/
.media,
.media-flex {
  overflow: hidden;
  _overflow: visible;
  zoom: 1;
}

.media-img {
  float: left;
  margin-right: 30px;
}

.media-img-right {
  float: right;
  margin-left: 30px;
}

.media-img img,
.media-img-right img {
  display: block;
}

/*============================================================================
#Images and Iframes
==============================================================================*/
img {
  border: 0 none;
}

svg:not(:root) {
  overflow: hidden;
}

img,
iframe {
  max-width: 100%;
}

.video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto;
}
.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*============================================================================
#Forms
==============================================================================*/
form {
  margin-bottom: 0;
}

/*============================================================================
.form-vertical {
margin-bottom: $gutter / 2;
}
==============================================================================*/
/*================ Prevent zoom on touch devices in active inputs ================*/
input,
textarea,
button,
select {
  padding: 0;
  margin: 0;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
}

button {
  background: none;
  border: none;
  cursor: pointer;
  border-radius: var(--button_border_radius);
}

button,
input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
}

button {
  background: none;
  border: none;
  display: inline-block;
  cursor: pointer;
}

input[type=image] {
  padding-left: 0;
  padding-right: 0;
}

fieldset {
  border: none;
  padding: 0;
}

legend {
  border: 0;
  padding: 0;
}

button,
input[type=submit] {
  cursor: pointer;
}

input,
textarea {
  border: none;
  max-width: 100%;
  padding: 1em 1.5em;
  transition: all 0.2s linear;
  outline: transparent;
  border-radius: var(--button_border_radius);
  color: var(--colorTextBody);
  background-color: var(--color_body_input_bg);
}
input:focus,
textarea:focus {
  border: 1px solid var(--input_active_background);
  outline: transparent;
  background-color: var(--input_active_background);
  color: var(--input_active_text);
}
input:focus::placeholder,
textarea:focus::placeholder {
  color: var(--input_active_placeholder);
}
input[disabled], input.disabled,
textarea[disabled],
textarea.disabled {
  cursor: default;
  color: var(--btn_primary_text_color);
  background-color: var(--sold_badge_color);
  border-color: var(--sold_badge_color);
}
input.input-full,
textarea.input-full {
  width: 100%;
}

.single-option-selector {
  border-bottom: 4px solid var(--color_secondary_accent);
  border-top: none;
  border-left: none;
  border-right: none;
  width: 200px;
  padding: 8px 10px 8px 0px;
}

textarea {
  min-height: 100px;
}

/*================ Input element overrides ================*/
input[type=checkbox],
input[type=radio] {
  display: inline;
  margin: 0 8px 0 0;
  padding: 0;
  width: auto;
}

input[type=checkbox] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
}

input[type=radio] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
}

input[type=image] {
  padding-left: 0;
  padding-right: 0;
}

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: right center;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='100' height='50' fill='var(--color_body_text)'><polygon points='0,0 50,0 25,25'/></svg>");
  background-repeat: no-repeat;
  background-position: right 10px center;
  border: 1px solid var(--color_body_text);
  width: 100%;
  padding: 8px 30px 8px 15px;
  background-size: 12px;
  text-overflow: "";
  cursor: pointer;
  /*================ Hide the svg arrow in IE9 and below ================*/
}
.ie9 select, .lt-ie9 select {
  padding-right: 10px;
  background-image: none;
}

optgroup {
  font-weight: bold;
}

option {
  color: #000;
  background-color: #fff;
}

select::-ms-expand {
  display: none;
}

/*================ Form labels ================*/
.hidden-label {
  position: absolute;
  height: 0;
  width: 0;
  margin-bottom: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px);
}
.ie9 .hidden-label, .lt-ie9 .hidden-label {
  position: static;
  height: auto;
  width: auto;
  margin-bottom: 2px;
  overflow: visible;
  clip: initial;
}

label[for] {
  cursor: pointer;
}

/*================ Horizontal Form ================*/
.form-vertical {
  overflow: visible;
}
.form-vertical input,
.form-vertical select,
.form-vertical textarea {
  display: block;
  margin-bottom: 10px;
}
.form-vertical input[type=radio],
.form-vertical input[type=checkbox] {
  display: inline-block;
}

/*================ Error styles ================*/
input.error,
select.error,
textarea.error {
  border-color: #d02e2e;
  background-color: #fff6f6;
  color: #d02e2e;
}

label.error {
  color: #d02e2e;
}

/*================ Input Group ================*/
.input-group {
  position: relative;
  border-collapse: separate;
}
.input-group .footer__input,
.input-group .input-group-field:first-child,
.input-group .input-group-btn:first-child,
.input-group .input-group-btn:first-child > .btn,
.input-group .input-group-btn:first-child > .btn--tertiary,
.input-group .input-group-btn:first-child > .btn--secondary,
.input-group input[type=hidden]:first-child + .input-group-field,
.input-group input[type=hidden]:first-child + .input-group-btn > .btn,
.input-group input[type=hidden]:first-child + .input-group-btn > .btn--tertiary,
.input-group input[type=hidden]:first-child + .input-group-btn > .btn--secondary {
  border-radius: var(--button_border_radius);
}
.input-group .footer__input,
.input-group .input-group-field:last-child,
.input-group .input-group-btn:last-child > .btn,
.input-group .input-group-btn:last-child > .btn--tertiary,
.input-group .input-group-btn:last-child > .btn--secondary {
  border-radius: var(--button_border_radius);
}
.input-group input::-moz-focus-inner {
  border: 0;
  padding: 0;
  margin-top: -1px;
  margin-bottom: -1px;
}

.input-group-field,
.input-group-btn {
  vertical-align: middle;
  margin: 0;
}

.input-group .input-group-field {
  width: 100%;
}

@media screen and (max-width: 768px) {
  .input-group-field.banner {
    width: 60%;
  }
}
.input-group-btn {
  position: relative;
  white-space: nowrap;
  padding: 0;
}

/*============================================================================
#Icons
==============================================================================*/
.icon-fallback-text .icon {
  display: none;
}
.supports-fontface .icon-fallback-text .icon {
  display: inline-block;
}

.social-icons li {
  padding: 0 7.5px 7.5px 0;
}

/*============================================================================
#Pagination
==============================================================================*/
.pagination {
  margin-bottom: 1em;
  text-align: center;
}
.pagination > span {
  display: inline-block;
  line-height: 1;
}
.pagination a {
  display: block;
  color: var(--color_primary);
}
.pagination a,
.pagination .page.current {
  padding: 8px;
}
.pagination .current {
  color: var(--color_accent);
}

/*============================================================================
#Drawers
==============================================================================*/
.js-drawer-open {
  overflow: hidden;
}

.drawer {
  -webkit-transform: translateZ(0);
  will-change: transform;
  display: none;
  position: fixed;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  top: 0;
  bottom: 0;
  padding: 0 15px 15px;
  max-width: 95%;
  z-index: 10;
  color: var(--color_mobile_links);
  background-color: var(--color_mobile_bg);
  transition: all 0.4s cubic-bezier(0.46, 0.01, 0.32, 1);
}
.drawer a:hover, .drawer a:focus {
  opacity: 0.7;
}
.drawer input,
.drawer textarea {
  border-color: #fff;
}

.drawer--left {
  width: 300px;
  left: -300px;
  border-right: 1px solid #fff;
}
.js-drawer-open-left .drawer--left {
  display: block;
  -ms-transform: translateX(300px);
  -webkit-transform: translateX(300px);
  transform: translateX(300px);
}
.lt-ie9 .js-drawer-open-left .drawer--left {
  left: 0;
}

.drawer--right {
  width: 300px;
  right: -300px;
  border-left: 1px solid #fff;
}
.js-drawer-open-right .drawer--right {
  display: block;
  -ms-transform: translateX(-300px);
  -webkit-transform: translateX(-300px);
  transform: translateX(-300px);
}
.lt-ie9 .js-drawer-open-right .drawer--right {
  right: 0;
}

.drawer--bottom {
  max-width: 100%;
  width: 100%;
  height: 100%;
  top: 115% !important;
  bottom: -100%;
  border-top: 1px solid #fff;
  z-index: 9002;
}
.js-drawer-open-bottom .drawer--bottom {
  display: block;
  overflow: hidden;
  -ms-transform: translateY(-115%);
  -webkit-transform: translateY(-115%);
  transform: translateY(-115%);
}
.lt-ie9 .js-drawer-open-bottom .drawer--bottom {
  bottom: 0;
}

#PageContainer {
  margin: 0 auto;
}

/*
Affecting the user's position so when
leaving the menu, they lose their place. 
*/
.is-moved-by-drawer {
  /*@include promote-layer();
    transition: $drawerTransition;

    .js-drawer-open-left & {
    @include transform(translateX($drawerNavWidth));
  }

    .js-drawer-open-right & {
    @include transform(translateX(-$drawerCartWidth));
  }*/
}

.drawer__close {
  display: flex;
  justify-content: flex-start;
}

.drawer__close button {
  position: relative;
  padding: 10px;
  color: inherit;
}

.drawer__title {
  width: 100%;
}

.mobile__nav-wrapper {
  background-color: var(--color_mobile_bg);
  position: absolute;
  bottom: 10px;
  left: 0;
  right: 0;
  padding: 5px 12.5%;
}

.mobile__nav-links {
  padding: 5px;
}

.mobile-account-link {
  display: inline-block;
  margin: 10px 15px 10px 0;
}

.mobile-menu-hr {
  border-top: initial;
  border: 1px solid #fff;
  margin: 15px 15px;
}

/*============================================================================
#Site Footer
==============================================================================*/
.site-footer {
  background-color: var(--color_footer_bg);
}
/*============================================================================
#Product and Collection Grids
==============================================================================*/
.grid__image {
  display: block;
  margin: 0 auto 15px;
}
.grid__image img {
  display: block;
  margin: 0 auto;
}

/*============================================================================
#Collection Filters
==============================================================================*/
.filter--active {
  font-weight: bold;
}

/*============================================================================
#Breadcrumbs
==============================================================================*/
.breadcrumb {
  margin-bottom: 30px;
}
.breadcrumb a,
.breadcrumb span {
  display: inline-block;
  padding: 0 7px 0 0;
  margin-right: 7px;
}
.breadcrumb a:first-child,
.breadcrumb span:first-child {
  padding-left: 0;
}

/*============================================================================
#Product Page
==============================================================================*/
@media screen and (min-width: 769px) {
  .product-template__container {
    display: grid;
  }
}
@media screen and (max-width: 768px) {
  .product-template__container {
    display: block;
  }
}
.product__photo img[data-sizes=auto] {
  height: 100%;
  object-fit: contain;
}

@media screen and (min-width: 769px) {
  .product__photo img[data-sizes=auto].lazyload,
  .product__photo img[data-sizes=auto].lazyloading {
    width: 100%;
    height: 100%;
  }
}
.product__photo img[data-sizes=auto].lazyload,
.product__photo img[data-sizes=auto].lazyloading {
  object-fit: contain;
  max-height: 720px;
  max-width: 100%;
}

.product__photo .lazyload {
  display: none;
}

.product__photo.product-single__photos .lazyload {
  display: block;
}

.product__photo.is-selected .lazyload {
  display: block;
}

.product-single__variants {
  display: none;
}
.no-js .product-single__variants {
  display: block;
}

.product-single__thumbnails a, .product-single__thumbnails img {
  display: block;
  margin: 0 auto;
  text-align: center;
}
.product-single__thumbnails li {
  margin-bottom: 30px;
}

.product__meta {
  align-self: flex-start;
  text-align: initial;
}

@media screen and (min-width: 769px) {
  .product-template__container {
    grid-template-columns: 1fr minmax(550px, min-content);
    column-gap: var(--article_gap);
  }
  .product__meta {
    padding: 2em 3em;
  }
}
@media screen and (max-width: 768px) {
  .product-template__container {
    width: 92vw;
  }
  .product__meta.card-shadow {
    box-shadow: none;
  }
}
/*============================================================================
#Notes and Form Feedback
==============================================================================*/
.note,
.errors {
  border-radius: 0;
  padding: 6px 12px;
  margin-bottom: 15px;
  border: 1px solid transparent;
  font-size: 0.9em;
  text-align: left;
}
.note ul,
.note ol,
.errors ul,
.errors ol {
  margin-top: 0;
  margin-bottom: 0;
}
.note li:last-child,
.errors li:last-child {
  margin-bottom: 0;
}
.note p,
.errors p {
  margin-bottom: 0;
}

.note {
  border-color: var(--color_body_text_25);
}

.errors ul {
  list-style: disc outside;
  margin-left: 20px;
}

.form-success {
  color: #56ad6a;
  background-color: #ecfef0;
  border-color: #56ad6a;
}
.form-success a {
  color: #56ad6a;
  text-decoration: underline;
}
.form-success a:hover {
  text-decoration: none;
}

.form-error,
.errors {
  color: #d02e2e;
  background-color: #fff6f6;
  border-color: #d02e2e;
}
.form-error a,
.errors a {
  color: #d02e2e;
  text-decoration: underline;
}
.form-error a:hover,
.errors a:hover {
  text-decoration: none;
}

/*============================================================================
#Cart Page
==============================================================================*/
.cart__row {
  position: relative;
  margin-top: 30px;
  padding-top: 30px;
  border-top: 1px solid var(--color_body_text_25);
}
.cart__row:first-child {
  margin-top: 0;
}
.cart__row:first-child {
  padding-top: 0;
}
.cart__row .js-qty {
  margin: 0 auto;
}

.cart-table th {
  font-weight: normal;
}
.cart-table td,
.cart-table th {
  padding: 30px 15px;
  border: none;
}

@media screen and (min-width: 769px) {
  .cart__row--table-large {
    display: table;
    table-layout: fixed;
    width: 100%;
  }
  .cart__row--table-large .grid__item {
    display: table-cell;
    vertical-align: middle;
    float: none;
  }
}
.cart__subtotal {
  margin: 0 0 0 10px;
  display: inline;
}

.cart__mini-labels {
  display: block;
  margin: 10px 0;
  font-size: 12px/var(--baseSizeMain)0em;
}
@media screen and (min-width: 769px) {
  .cart__mini-labels {
    display: none;
  }
}

.cart__remove {
  display: block;
}

.hvr-grow {
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  box-shadow: 0 0 1px rgba(0, 0, 0, 0);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -moz-osx-font-smoothing: grayscale;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
}

.hvr-grow:hover, .hvr-grow:focus, .hvr-grow:active {
  -webkit-transform: scale(1.03);
  -webkit-font-smoothing: antialiased;
  transform: perspective(1px) scale(1.03);
}

.center {
  text-align: center !important;
}

.section-border {
  border: 1px solid rgba(224,224,224,1);
  -webkit-box-shadow: 0px 0px 3px 1px rgba(224,224,224,1);
  -moz-box-shadow: 0px 0px 3px 1px rgba(224,224,224,1);
  box-shadow: 0px 0px 3px 1px rgba(224,224,224,1);
}

@media (max-width: 1180px) {
  .three-fifths-width {
    padding: 0px 0px 15px 15px;
  }
  .masonryh {
    padding-left: 0;
  }
  .masonry__aspect-ratio-inner {
    padding-top: 15px;
  }
}
@media (min-width: 1181px) {
  .full-width {
    padding: 0 15px 0 15px;
  }
  .half-width {
    padding: 0 15px 0 15px;
  }
  .quarter-width {
    padding: 15px;
  }
  .two-fifths-width {
    padding: 0px 0px 30px 0px;
  }
  .three-fifths-width {
    padding: 0px 0px 30px 30px;
  }
  .three-fifths-pad {
    padding-left: 0px !important;
  }
  .masonry__aspect-ratio-inner {
    padding-top: 30px;
  }
}
.content-class {
  height: 100%;
}

.newsletter-content-class {
  padding: 10px; /*height: 100%;*/
}

.list-collections-content {
  padding: 0px;
  padding-top: 100%;
  height: 100%;
}

.sliderh {
  height: 960px;
  min-height: auto;
}

.masonryh {
  height: 860px;
  min-height: auto;
}

.masonryhrow {
  height: 480px;
  min-height: auto;
}

/*.newsletterh {height: 425px; min-height: auto;}
.promotionh {height: 425px; min-height: auto;}*/
.bannerh {
  height: 680px;
  min-height: auto;
}

.featured-collectionh {
  min-height: auto;
}

.featuresh {
  height: 470px;
  min-height: auto;
}

.blogh {
  height: 570px;
  min-height: auto;
}

.desktop-cart {
  padding-right: 15px;
}

.headroom {
  will-change: transform;
  transition: transform 200ms linear;
}

.headroom--pinned {
  transform: translateY(0%);
}

.headroom--unpinned {
  transform: translateY(-100%);
}

/*============================================================================


.scroll_fixed {
position:absolute;
top:210px;
width: 100%;
}
.scroll_fixed.fixed {
position:fixed;
top:0;
} 


==============================================================================*/
img.collection-image {
  width: 100%;
}

.collection-image-grid {
  background: var(--color_body_bg);
}

.featured-product-collection {
  height: 400px;
  min-height: auto;
}

/* 
Site Footer
*/
.site-footer a:hover {
  color: var(--color_accent);
}

.footer-content {
  display: flex;
}

.footer-copyright {
  text-align: center;
}
.header-wrapper {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.remove-left {
  margin-left: -15px;
}

@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

/*===============================
Flickity v2.2.1
https://flickity.metafizzy.co
===============================*/
.flickity-enabled {
  position: relative;
}

.flickity-button:disabled {
  display: none;
}

.flickity-enabled:focus {
  outline: none;
}

.flickity-viewport {
  overflow: hidden;
  position: relative;
  height: 100%;
}

.flickity-slider {
  position: absolute;
  width: 100%;
  height: 100%;
}

/* ---- draggable ---- */
.flickity-enabled.is-draggable {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
  cursor: move;
  cursor: -webkit-grab;
  cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}

/* ---- flickity-button ---- */
.flickity-button {
  position: absolute;
  border: none;
  background: transparent;
  opacity: 0.8;
  color: var(--color_secondary_accent);
}

.flickity-button:hover {
  cursor: pointer;
  color: var(--color_secondary_accent);
}

.flickity-button:focus {
  outline: none;
  box-shadow: 0 0 0 5px var(--color_accent_subdued);
  opacity: 1;
}

.flickity-button:active {
  opacity: 0.6;
}

.flickity-button:disabled {
  opacity: 0.3;
  cursor: auto;
  /* prevent disabled button from capturing pointer up event. #716 */
  pointer-events: none;
}

.flickity-button-icon {
  fill: currentColor;
}

/* ---- previous/next buttons ---- */
.flickity-prev-next-button {
  top: 50%;
  border-radius: 50%;
  /* vertically center */
  transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
  left: 15px;
}

.flickity-prev-next-button.next {
  right: 15px;
}

/* ---- right to left ---- */
.flickity-rtl .flickity-prev-next-button.previous {
  left: auto;
  right: 0;
}

.flickity-rtl .flickity-prev-next-button.next {
  right: auto;
  left: 0;
}

.flickity-prev-next-button .flickity-button-icon {
  position: absolute;
  left: 12.5%;
  top: 12.5%;
  width: 75%;
  height: 75%;
}

@media screen and (min-width: 769px) {
  .flickity-prev-next-button.previous {
    left: 15px;
  }
  .flickity-prev-next-button.next {
    right: 15px;
  }
  .flickity-prev-next-button {
    width: 30px;
    height: 30px;
  }
  .flickity-button {
    opacity: 0;
    transition: all 0.3s ease;
  }
  .flickity-enabled:hover .flickity-button, .flickity-enabled:focus .flickity-button {
    opacity: 1;
  }
}
@media screen and (max-width: 768px) {
  .flickity-prev-next-button.previous {
    left: 7.5px;
  }
  .flickity-prev-next-button.next {
    right: 7.5px;
  }
  .flickity-prev-next-button {
    width: 20px;
    height: 20px;
  }
}
/*
@media screen and (min-width: 1181px){
  .logo-list{
    .flickity-prev-next-button.previous { left: -30px; }
    .flickity-prev-next-button.next { right: -30px; }
  }
}

@media screen and (min-width: 769px) and (max-width: 1180px){
  .logo-list{
    .flickity-prev-next-button.previous { left: -15px; }
    .flickity-prev-next-button.next { right: -15px; }
  }
}

@media screen and (max-width: 768px){
  .logo-list{
    .flickity-prev-next-button.previous { left: -20px; }
    .flickity-prev-next-button.next { right: -20px; }
  }
}
*/
/* ---- page dots ---- */
.flickity-page-dots {
  width: 100%;
  margin: 0;
  list-style: none;
  text-align: center;
  line-height: 1;
}

.flickity-page-dots .dot:first-child:nth-last-child(1) {
  opacity: 0;
}

.flickity-rtl .flickity-page-dots {
  direction: rtl;
}

.flickity-page-dots .dot {
  display: inline-block;
  background: #333;
  opacity: 0.25;
  cursor: pointer;
}

.flickity-page-dots {
  width: 100%;
  position: absolute;
  left: 0;
  text-align: center;
}

.flickity-page-dots .dot {
  display: inline-block;
  width: 10px;
  height: 10px;
  margin: 0 5px;
  border-radius: 50%;
  opacity: 0.45;
  cursor: pointer;
}

.flickity-page-dots .dot {
  height: 5px;
  width: 40px;
  margin: 2px;
  border-radius: 0;
}

/*
  .flickity-page-dots--custom {
    visibility: hidden;
    position: relative;
    padding: 15px 0;
  }
  .is-selected .flickity-page-dots--custom {
    visibility: visible;
    position: relative;
    padding: 15px 0;
  }
*/
.flickity-page-dots .dot.is-selected {
  opacity: 1;
}

/* ---- flickity-fade ---- */
.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

/* ---- home-logo-list overrides ---- */
.logo-list.flickity-enabled, .logo-list.logo-list--grid {
  opacity: 1;
}

.logo-list {
  opacity: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

/* Flickity Slideshow with Promotions */
.masonry-slider .flickity-viewport {
  min-height: 100%;
}

/*
.animatations__preload{
  -webkit-transition: none !important;
  -moz-transition: none !important;
  -ms-transition: none !important;
  -o-transition: none !important;
  display: none;
}

.animations__loaded{
  display: block;
}
*/
@media screen and (max-width: 480px) {
  .flickity-page-dots {
    padding: 15px 10%;
  }
}
@media screen and (max-width: 768px) {
  .flickity-page-dots {
    padding: 15px 30px;
  }
}
@media screen and (min-width: 769px) and (max-width: 1180px) {
  .flickity-page-dots {
    padding: 15px 40px;
  }
}
@media screen and (min-width: 1181px) {
  .flickity-page-dots {
    padding: 15px 60px;
  }
}
/*===============================
GENERAL
===============================*/
/*** Importing from "tools/at-query" ***/
@media screen and (max-width: 768px) {
  p#ComparePrice {
    display: block;
  }
  .sliderh {
    margin-bottom: 15px;
  }
}
.site-header.card-shadow {
  border-radius: initial;
}

.promo__content-wrapper,
.promo__border,
.svg.placeholder-svg-product-loop,
.flickity-slider .featured-collection__image > img,
.product-loop-element,
.home-promotion-block,
.collection-grid__content-wrapper,
.gallery__wrapper,
.section-parallax .section__body,
.blog__card-wrapper img,
.gallery__content-wrapper,
.card-background,
.blog-card {
  border-radius: var(--card_border_radius);
}

.card__radius-right {
  border-top-right-radius: var(--card_border_radius);
  border-bottom-right-radius: var(--card_border_radius);
}

.card__radius-left {
  border-top-left-radius: var(--card_border_radius);
  border-bottom-left-radius: var(--card_border_radius);
}

.blog__card-wrapper img {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
}

.featured-collection .card-background {
  overflow: hidden;
}

.collection-grid__content-wrapper {
  overflow: hidden;
}

.card-shadow,
.search-form,
.grid-column-wrapper {
  background-color: var(--card_bg);
  box-shadow: var(--card_shadow_size) var(--card_shadow);
  border-radius: var(--card_border_radius);
}

@media screen and (min-width: 769px) {
  .collection-desktop-bg {
    background-color: var(--card_bg);
    box-shadow: var(--card_shadow_size) var(--card_shadow);
    border-radius: var(--card_border_radius);
  }
}
@media screen and (max-width: 768px) {
  .collection-mobile-bg {
    background-color: var(--card_bg);
    box-shadow: var(--card_shadow_size) var(--card_shadow);
    border-radius: var(--card_border_radius);
  }
}
@media screen and (min-width: 769px) {
  .d-inline {
    display: inline-block;
  }
  .d-inline-full {
    width: 100%;
    display: inline-block;
  }
}
.jim-card {
  position: relative !important;
  overflow: visible !important;
  height: 100%;
}

.jim-card::after {
  content: "";
  position: absolute;
  z-index: -1;
  width: 100%;
  height: 100%;
  opacity: 0;
  top: 0;
  left: 0;
  box-shadow: 0px 0px 7px 1px var(--card_shadow);
  transition: opacity 0.3s ease-in-out;
}

.jim-card:hover::after {
  opacity: 1;
}

p.white {
  color: var(--color_primary);
}

h1.black {
  color: var(--color_primary);
}

h1.white {
  color: var(--color_primary);
}

.secondary {
  color: var(--color_secondary_header);
}

h3.secondary {
  color: var(--color_secondary_header);
}

.secondary#button.btn--secondary {
  margin-top: 5%;
}

h5.white {
  color: var(--color_primary);
  font-weight: 500;
}

h5.black {
  color: var(--color_primary);
  font-weight: 500;
}

h3.white {
  color: var(--color_primary);
  font-weight: 500;
  margin-top: 15px;
  margin-bottom: 33px;
}

h3.black {
  color: var(--color_primary);
  font-weight: 500;
}

.full-width-secondary {
  margin: 15px 0 15px 0;
  padding-right: 15px;
}

.section-background {
  background-color: var(--card_bg);
}

.mobile-linklist-title > span {
  position: absolute;
  left: 15px;
}
.mobile-linklist-title > span.go-back {
  position: initial;
}
.mobile-linklist-title > span.go-back svg {
  position: absolute;
  left: 15px;
  transform: rotate(180deg);
  top: 12px;
}

.chevron-size {
  font-size: 28px;
}

/*.wrapper{
{% if template == 'collection' %}
max-width: initial;
{% endif %}
}*/
.dim {
  display: none;
  position: fixed;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  z-index: 100;
}

.mobile-social li {
  padding: 0;
}

.mobile-account-link {
  font-size: 0.9em;
}

img[data-sizes=auto] {
  display: block;
  width: 100%;
  object-fit: contain;
}

img.lazyload {
  max-width: 100%;
  max-height: 100%;
  height: inherit;
  width: inherit;
}

@keyframes text {
  from {
    clip-path: inset(0 100% 0 0);
  }
  to {
    clip-path: inset(0 0 0 0);
  }
}
@keyframes revealer {
  0%, 50% {
    transform-origin: 0 50%;
  }
  60%, 100% {
    transform-origin: 100% 50%;
  }
  60% {
    transform: scaleX(1);
  }
  100% {
    transform: scaleX(0);
  }
}
@-webkit-keyframes fadeInLeftSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
@keyframes fadeInLeftSmall {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-10%, 0, 0);
    transform: translate3d(-10%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: none;
    transform: none;
  }
}
/* Setting up lazyloading & custom animation classes */
.animations-enabled .lazyload,
.animations-enabled .lazyloading,
.animations-enabled .lazyloaded {
  opacity: 0;
  transition: transform 0.3s ease, opacity 1s ease;
}

.animations-enabled .section-parallax .section__image {
  transition: initial;
}

.editor-window .lazyload,
.editor-window .lazyloading,
.editor-window .lazyloaded {
  opacity: 1 !important;
}

.editor-window .section__image-animations--left-reveal {
  opacity: 1 !important;
  -webkit-transform: none !important;
  transform: none !important;
}

.animations-enabled .fadeInLeftSmall {
  -webkit-animation-name: fadeInLeftSmall;
  animation-name: fadeInLeftSmall;
  -webkit-animation-fill-mode: forwards;
}

.animations-enabled .section__image-animations--scale {
  transform: scale(1.25) translateZ(0);
  opacity: 0;
}

.animations-enabled .section__image-animations--left-reveal {
  animation-duration: 1s;
  opacity: 0;
}

.animations-enabled .section__load-animations--left-reveal {
  animation-name: text;
  white-space: nowrap;
  text-transform: uppercase;
}

.animations-enabled .section__load-animations--left-reveal:after {
  content: "";
  position: absolute;
  z-index: 999;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: transparent;
  transform: scaleX(0);
  transform-origin: 0 50%;
  pointer-events: none;
  animation-name: revealer;
}

.animations-enabled .section__load-animations--scale {
  transform: scale(1) translateZ(0);
  opacity: 1;
}

.animations-enabled .section__load-animations--fade {
  opacity: 1;
}

.lazysection.lazyloaded {
  opacity: 1;
}

/*** Importing from "partials/qty-controls" ***/
/*===============================
QUANTITY CONTROLS
===============================*/
.quantity-wrapper {
  margin-top: 5px;
  width: 100%;
  float: initial;
}
.quantity-wrapper input[type=text]:disabled {
  color: var(--color_body_text);
  background-color: var(--color_body_text_55);
}
.quantity-wrapper input[type=button]:disabled {
  color: var(--color_body_text);
  background-color: var(--color_body_text_55);
}
@media screen and (min-width: 769px) {
  .quantity-wrapper {
    display: block;
    margin: 0 auto;
  }
}

.qty {
  border-radius: 0;
  position: relative;
  width: 40px;
  height: 35px;
  display: inline-block !important;
  color: var(--color_body_text);
  background-color: var(--card_bg);
  border: initial;
  border-top: 1px solid var(--color_body_text_border);
  border-bottom: 1px solid var(--color_body_text_border);
  text-align: center;
  padding: 8px 0px 8px 0px;
  vertical-align: top;
  background: var(--card_bg);
}

input.qtyplus {
  border-radius: 0;
  position: relative;
  width: 25px;
  height: 35px;
  display: inline-block !important;
  color: var(--color_body_text);
  background-color: var(--card_bg);
  background-color: var(--color_body_input_bg);
  border: 1px solid var(--color_body_text_border);
  border-radius: 0;
  padding: 8px 2px;
  z-index: 5;
  margin-left: -5px;
}

input.qtyminus {
  border-radius: 0;
  position: relative;
  width: 25px;
  height: 35px;
  display: inline-block !important;
  color: var(--color_body_text);
  background-color: var(--card_bg);
  background-color: var(--color_body_input_bg);
  border: 1px solid var(--color_body_text_border);
  border-radius: 0;
  padding: 8px 2px;
  z-index: 5;
  margin-right: -5px;
}

/********** Number Field Fixes **********/
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

input[type=number] {
  -moz-appearance: textfield;
}

/*===============================
HOMEPAGE - SECTIONS
===============================*/
@media screen and (min-width: 1180px) {
  .flex-one-quarter {
    width: 25%;
  }
}
@media screen and (max-width: 1179px) {
  .flex-one-quarter {
    width: 33%;
  }
}
@media screen and (max-width: 980px) {
  .flex-one-quarter {
    width: 50%;
  }
}
@media screen and (max-width: 568px) {
  .flex-one-quarter {
    width: 100%;
  }
}

@media screen and (min-width: 1180px) {
  .flex-one-quarter--image-only {
    width: 25%;
  }
}
@media screen and (max-width: 1179px) {
  .flex-one-quarter--image-only {
    width: 25%;
  }
}
@media screen and (max-width: 980px) {
  .flex-one-quarter--image-only {
    width: 33%;
  }
}
@media screen and (max-width: 568px) {
  .flex-one-quarter--image-only {
    width: 50%;
  }
}
.flex-one-quarter--image-only {
  justify-content: center;
}

@media screen and (min-width: 1280px) {
  .flex-one-fifth {
    width: 20%;
  }
}
@media screen and (max-width: 1279px) {
  .flex-one-fifth {
    width: 33%;
  }
}
@media screen and (max-width: 980px) {
  .flex-one-fifth {
    width: 50%;
  }
}
@media screen and (max-width: 568px) {
  .flex-one-fifth {
    width: 100%;
  }
}

@media screen and (min-width: 1280px) {
  .flex-one-fifth--image-only {
    width: 20%;
  }
}
@media screen and (max-width: 1279px) {
  .flex-one-fifth--image-only {
    width: 33%;
  }
}
@media screen and (max-width: 980px) {
  .flex-one-fifth--image-only {
    width: 33%;
  }
}
@media screen and (max-width: 568px) {
  .flex-one-fifth--image-only {
    width: 50%;
  }
}
.flex-one-fifth--image-only {
  justify-content: center;
}

@media screen and (min-width: 1280px) {
  .flex-one-third {
    width: 33.333%;
  }
}
@media screen and (max-width: 1279px) {
  .flex-one-third {
    width: 33.333%;
  }
}
@media screen and (max-width: 768px) {
  .flex-one-third {
    width: 100%;
  }
}

@media screen and (min-width: 1280px) {
  .flex-one-third--image-only {
    width: 33.333%;
  }
}
@media screen and (max-width: 1279px) {
  .flex-one-third--image-only {
    width: 33.333%;
  }
}
@media screen and (max-width: 980px) {
  .flex-one-third--image-only {
    width: 33.333%;
  }
}
@media screen and (max-width: 568px) {
  .flex-one-third--image-only {
    width: 50%;
  }
}
.flex-one-third--image-only {
  justify-content: center;
}

@media screen and (min-width: 1280px) {
  .flex-one-half {
    width: 50%;
  }
}
@media screen and (max-width: 1279px) {
  .flex-one-half {
    width: 50%;
  }
}
@media screen and (max-width: 768px) {
  .flex-one-half {
    width: 100%;
  }
}

.logo-list-section .flex-grid-item {
  opacity: 0;
  -webkit-transition: opacity 0.7s;
  transition: opacity 0.7s;
}
.logo-list-section .flex-grid-item:nth-child(1) {
  transition-delay: 0.1s;
}
.logo-list-section .flex-grid-item:nth-child(2) {
  transition-delay: 0.2s;
}
.logo-list-section .flex-grid-item:nth-child(3) {
  transition-delay: 0.3s;
}
.logo-list-section .flex-grid-item:nth-child(4) {
  transition-delay: 0.4s;
}
.logo-list-section .flex-grid-item:nth-child(5) {
  transition-delay: 0.5s;
}
.logo-list-section .flex-grid-item:nth-child(6) {
  transition-delay: 0.6s;
}
.logo-list-section .flex-grid-item:nth-child(7) {
  transition-delay: 0.7s;
}
.logo-list-section .flex-grid-item:nth-child(8) {
  transition-delay: 0.8s;
}
.logo-list-section .flex-grid-item:nth-child(9) {
  transition-delay: 0.9s;
}
.logo-list-section .flex-grid-item:nth-child(10) {
  transition-delay: 1s;
}
.logo-list-section.section-revealed .flex-grid-item {
  opacity: 1;
}

/* Logo List Section */
@media screen and (max-width: 768px) {
  .logo-list-section .logo-list {
    padding: 20px 10px !important;
  }
}
.logo-list-section .logo-list {
  padding-bottom: 20px;
  padding: 20px 40px;
}
@media screen and (min-width: 769px) {
  .logo-list-section .logo-list.logo-list-header-enabled {
    padding: 0 40px 30px 40px;
  }
}
.logo-list-section .logo-list p {
  margin-bottom: 0;
}

.logo-list--grid {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}

.body-text {
  color: var(--colorTextBody);
}

.flex-grid-item {
  padding: 15px;
  display: flex;
  justify-content: flex-start;
  grid-gap: 10px;
}

.flex-grid-column-image .placeholder-svg {
  width: auto;
  height: 100px;
}

.flex-grid-item__direction-column {
  flex-direction: column;
}
.flex-grid-item__direction-column img {
  margin: 0 auto;
}

.flex-grid-item__direction-column--left {
  flex-direction: column;
}
.flex-grid-item__direction-row {
  flex-direction: row;
}

.flex-grid-item__alignment-left {
  align-items: flex-start;
}
.flex-grid-item__alignment-left .flex-grid-item__text-content {
  padding-left: 15px;
  width: 100%;
}
.flex-grid-item__alignment-left img {
  margin-top: 0 !important;
  height: auto !important;
}

.flex-grid-item__column-left {
  flex-direction: column;
  align-items: left;
}
.flex-grid-item__column-left .flex-grid-item__text-content {
  padding-top: 15px;
  min-height: 100%;
}
@media screen and (max-width: 768px) {
  .flex-grid-item__column-left {
    margin: 0 auto;
  }
}

/* --- Language Selects -- */
.selectors-form__item {
  padding: 5px 0;
}

.disclosure {
  position: relative;
}

.header__selectors-form__item {
  display: inline-block;
}

.crossborder__form {
  display: flex;
  flex-wrap: wrap;
}

.crossborder__toggle {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-right: 15px;
  border-radius: 5px;
  background-position: right center;
  background-size: 12px;
  padding: 5px 10px;
  text-indent: 0.01px;
  text-overflow: "";
  cursor: pointer;
  white-space: nowrap;
}

.crossborder__toggle--header {
  color: var(--header_crossborder_content);
  background-color: var(--header_crossborder_background);
}

.crossborder__toggle--mobile-drawer {
  color: var(--mobile_crossborder_content);
  background-color: var(--mobile_crossborder_background);
  font-size: var(--nav-font-size);
  font-weight: 600;
}

.crossborder__disclosure-list {
  background-color: var(--card_bg);
  box-shadow: var(--dropdown_shadow);
  padding: 11px 0px;
  position: absolute;
  display: none;
  max-height: 300px;
  overflow-y: auto;
  border-style: solid;
  border-color: var(--card_bg);
  border-width: 1px;
  border-radius: 5px;
  font-size: var(--nav-font-size);
  z-index: 700;
}

.crossborder__disclosure-list--header {
  top: 115%;
  margin: 10px 0 0 0;
}

.crossborder__disclosure-list--mobile-drawer {
  bottom: 115%;
  margin: 0 0 10px 0;
}

.disclosure-section--zIndex {
  z-index: 600 !important;
}

.disclosure-list--visible {
  display: block;
}

.crossborder__disclosure-item {
  font-size: 0.8rem;
  border-bottom: 1px solid transparent;
  white-space: nowrap;
  padding: 5px 45px 4px 15px;
  text-align: left;
  color: var(--color_body_text);
}
.crossborder__disclosure-item:active {
  background-color: var(--color_primary_background_active);
}

.crossborder__disclosure-option {
  color: var(--color_body_text);
}
.crossborder__disclosure-option:focus, .crossborder__disclosure-option:hover {
  color: var(--color_accent) !important;
}

.crossborder__disclosure-item--current .crossborder__disclosure-option {
  color: var(--color_accent);
}

.child-site-nav__link a:focus, .child-site-nav__link a:hover {
  color: var(--color_accent) !important;
}

input#Email.input-group-field.home {
  color: var(--color_secondary_header);
}

/*===============================
NEWSLETTER SIGNUP FORM
===============================*/
.newsletter__container {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
}

.newsletter__input::placeholder {
  color: var(--color_body_text);
}

.newsletter__input--secondary::placeholder {
  color: var(--color_secondary_header);
}

.newsletter__input--newsletter-modal {
  color: var(--color_newsletter_content);
  border-color: var(--color_newsletter_content);
  background: var(--color_newsletter_background);
}

.newsletter__input--newsletter-modal::placeholder {
  color: var(--color_newsletter_content);
}

.newsletter__input {
  flex: 1 1 auto;
}

.input-group-btn {
  display: flex;
}

.newsletter__input--secondary {
  background-color: transparent;
  border-color: var(--color_secondary_header);
  color: var(--color_secondary_header);
}

@media screen and (max-width: 480px) {
  .input-group-btn--internal-block {
    width: 100%;
  }
  .newsletter__container {
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  .newsletter__container {
    justify-content: flex-start;
    align-items: center;
  }
}
@media screen and (min-width: 769px) {
  .newsletter__container {
    justify-content: flex-end;
    align-items: center;
  }
}
/*===============================
CONTENT LOOP
===============================*/
.content-loop-item__content {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  justify-content: flex-start;
  flex-wrap: wrap;
  position: relative;
  height: 100%;
}

.content-loop-item__link {
  height: 100%;
  width: 100%;
  position: absolute;
}

.content-loop-item__content.content-loop-item--search-modal {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  position: relative;
  height: 100%;
  grid-gap: 1rem;
  padding: 0.5rem;
}

.content-loop-item--search-page {
  padding: 15px;
}

.content-loop-item--article-sidebar {
  padding: 10px 0;
}

.content-loop-item--article-footer {
  padding: 15px;
}

.content-loop-item__image img {
  height: 100%;
  max-height: 100px;
}

@media screen and (max-width: 568px) {
  .content-loop-item--one-whole {
    width: 100%;
  }
  .content-loop-item--one-third {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .content-loop-item__image {
    width: 40%;
    height: 100%;
  }
  .content-loop-item__text {
    flex: 1 1 auto;
    width: 60%;
  }
  .content-loop-item__image--search-page {
    padding: 0 10px 0 0;
  }
  .content-loop-item__image--search-page {
    padding: 10px;
  }
  .content-loop-item__image--article-sidebar {
    padding: 0 10px 0 0;
  }
  .content-loop-item__text--search-page {
    padding: 10px;
  }
}
@media screen and (min-width: 569px) and (max-width: 768px) {
  .content-loop-item--one-whole {
    width: 50%;
  }
  .content-loop-item--one-third {
    width: 50%;
  }
}
@media screen and (min-width: 769px) {
  .content-loop-item--one-whole {
    width: 100%;
  }
  .content-loop-item--one-third {
    width: 33%;
  }
}
@media screen and (min-width: 769px) and (max-width: 1099px) {
  .content-loop-item__image--article-sidebar {
    flex: 1 1 auto;
    padding: 0 0 10px 0;
  }
  .content-loop-item__image--search-page {
    flex: 1 1 auto;
    padding: 10px;
  }
  .content-loop-item__text {
    flex: 1 1 auto;
  }
  .content-loop-item__text--search-page {
    padding: 10px;
  }
}
@media screen and (min-width: 1100px) {
  .content-loop-item__image {
    width: 40%;
    height: 100%;
  }
  .content-loop-item__text {
    flex: 1 1 auto;
    width: 60%;
  }
  .content-loop-item__image--search-page {
    padding: 10px;
  }
  .content-loop-item__text--search-page {
    padding: 10px;
  }
  .content-loop-item__image--article-sidebar {
    padding: 0 10px 0 0;
  }
  .content-loop-item__text--article-sidebar {
    padding: 0;
  }
}
/*========== Mobile ==========*/
.mobile-menu-hr {
  margin: 15px 15px 5px;
}

.header-icons .icon:hover {
  color: var(--color_accent);
}

span#mobile-search-exit {
  position: absolute;
  top: 20px;
  right: 4%;
  cursor: pointer;
  z-index: 30;
  padding: 15px;
}

.site-nav--mobile .icon {
  font-size: 1.6em;
}

.mobile-nav__link-group {
  text-align: left;
  -webkit-animation-duration: 0.25s !important;
  top: 55px;
  overflow: auto;
}
.mobile-nav__link-group h4 {
  font-weight: normal;
  margin-bottom: 5px;
  color: var(--color_mobile_links);
  max-width: 80%;
  margin: 0 auto;
  word-break: break-word;
  line-height: initial;
}
.mobile-nav__link-group h4.active {
  color: var(--color_accent);
}
.mobile-nav__link-group h4.mobile-nav__text-link {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
.mobile-nav__link-group h4.mobile-nav__text-link:hover {
  opacity: 0.7;
}
.mobile-nav__link-group button {
  width: 100%;
  outline: 0;
  height: 100%;
  position: relative;
}
.mobile-nav__link-group .mobile-nav-arrow {
  position: absolute;
  top: 0;
  right: 10px;
  width: 60px;
  height: 100%;
  color: var(--color_mobile_links);
}
.mobile-nav__link-group .mobile-nav-arrow.active {
  color: var(--color_accent);
}
.mobile-nav__link-group .mobile-nav-arrow svg {
  height: 100%;
}
.mobile-nav__link-group .mobile-linklist-title {
  font-weight: bold;
  max-width: 75%;
  margin: 0 auto 0 auto;
  color: inherit;
}
.mobile-nav__link-group .mobile-nav__link h2 {
  font-weight: normal;
}
.mobile-nav__link-group .go-back {
  cursor: pointer;
}

#NavDrawer {
  padding: 0;
}
#NavDrawer .drawer__header {
  height: 40px;
  z-index: 100;
  position: relative;
  width: 100%;
}
#NavDrawer .mobile-nav__group {
  font-size: 0.9em;
}
#NavDrawer .mobile__nav-social-media {
  background-color: var(--color_mobile_bg);
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  width: 100%;
}
#NavDrawer .mobile__nav-social-media .mobile-social {
  margin: 10px 0;
}
#NavDrawer .mobile__nav-social-media .social-icons.mobile-social li {
  margin: 0 5px 0px 0;
  vertical-align: middle;
}
#NavDrawer .mobile__nav-social-media .mobile-copyright {
  height: 68px;
  padding: 0 10px;
}
#NavDrawer .mobile__nav-social-media .crossborder__form {
  width: 100%;
  margin: 10px 0;
}
#NavDrawer .mobile-menu-footer {
  width: 100%;
  text-align: left;
}

@media screen and (min-width: 300px) and (max-width: 768px) {
  .js-drawer-open #shopify-section-header {
    z-index: 301;
  }
  .js-drawer-open .sticky-header {
    visibility: hidden;
  }
  .mobile-icon svg:hover path {
    fill: var(--color_accent);
  }
  .mobile-icon svg:hover ellipse {
    stroke: var(--color_accent);
  }
  .sticky-header {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    margin-top: 5%;
    margin-right: 5%;
    text-align: right;
    z-index: 450;
  }
  .sticky-header img {
    width: 50px;
    height: 50px;
    opacity: 0.8;
    z-index: 9001;
  }
}
@media screen and (min-width: 375px) and (max-device-width: 768px) {
  .sticky-header {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    margin-top: 15%;
    margin-right: 5%;
    text-align: right;
  }
  .sticky-header img {
    width: 50px;
    height: 50px;
  }
}
.sticky-header.search-is-open {
  top: 0 !important;
}

/*** END import from "partials/header" ***/
/*** Importing from "partials/masonry" ***/
/*===============================
SECTION - MASONRY
===============================*/
@media screen and (max-width: 1197px) {
  svg.placeholder-svg-center {
    max-width: 100%;
    max-height: 100%;
    text-align: center;
    float: center;
    background: #f7f7f7;
  }
  svg.placeholder-svg {
    max-width: 100%;
    max-height: 100%;
    text-align: right;
    float: right;
  }
  svg.placeholder-svg-left {
    max-width: 80%;
    max-height: 100%;
    text-align: right;
    float: left;
  }
}
/*** END import from "partials/masonry" ***/
/*===============================
SECTION - PROMOTIONS / NEWSLETTER
===============================*/
.contact_form_inputs {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}

.section-newsletter__container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

@media screen and (max-width: 768px) {
  .section-newsletter__container {
    width: 100%;
  }
}
/* --- Move to Home-Features --- */
input#Email.input-group-field.home {
  z-index: 1;
}
input#Email.input-group-field.home label {
  z-index: 2;
}
input#Email.input-group-field.home + label {
  font-weight: 400;
  position: absolute;
  right: 54%;
}
input#Email.input-group-field.home:focus + label {
  display: none;
}

input.input-group-field.banner + label {
  position: absolute;
  right: 51%;
  padding-top: 10px;
}
input.input-group-field.banner:hover + label.search-label {
  visibility: hidden;
}
input.input-group-field.banner:focus + label.search-label {
  display: none;
}
input.input-group-field.banner:active + label.search-label {
  display: none;
  visibility: hidden;
}

/*label.search-label:focus  {display:none; opacity: 0;}
label.search-label:hover  {display:none;}
label.search-label:active  {display:none;}*/
label.search-label {
  z-index: 1;
}
label.search-label:focus {
  display: none;
  opacity: 0;
}
label.search-label:hover, label.search-label:active {
  display: none;
}

.form-error, .errors {
  color: #d02e2e;
  background-color: transparent !important;
  border-color: transparent !important;
  width: 100%;
  clear: both;
}

.errors ul {
  list-style: disc outside;
  border: transparent !important;
  margin: 0;
}

.form-error, .errors {
  color: #d02e2e;
  background-color: transparent !important;
  border-color: transparent !important;
  padding: 0;
}

.errors li {
  list-style: none;
}

/*** Importing from "partials/newsletter" ***/
.newsletter-color {
  background: var(--color_accent);
}

.newsletter {
  margin: 0 auto;
  padding: 5%;
  text-align: center;
}

@media screen and (max-width: 768px) {
  .newsletter {
    transform: none;
  }
}
input#Email.input-group-field.home {
  display: inline-block;
  background-color: transparent;
  border: 1px solid var(--color_secondary_header);
  color: var(--color_secondary_header);
  border-radius: var(--button_border_radius);
  vertical-align: bottom;
}
@media screen and (max-width: 767px) {
  input#Email.input-group-field.home {
    z-index: 1;
  }
}

input::-webkit-placeholder {
  color: var(--color_body_text);
}

input#Email::-webkit-input-placeholder { /* Chrome */
  color: var(--color_secondary_header);
}

.input#Email::-moz-placeholder { /* Firefox 19+ */
  color: var(--color_secondary_header);
}

.input#Email:-ms-input-placeholder { /* IE 10+ */
  color: var(--color_secondary_header);
}

.input#Email:-moz-placeholder { /* Firefox 18- */
  color: var(--color_secondary_header);
}

button#subscribe.btn.home, button#subscribe.home.btn--tertiary, button#subscribe.home.btn--secondary {
  background-color: var(--color_secondary_header);
  text-align: center;
  border-radius: var(--button_border_radius);
}
button#subscribe.btn.home:hover, button#subscribe.home.btn--tertiary:hover, button#subscribe.home.btn--secondary:hover {
  opacity: 0.8;
}

@media screen and (max-width: 768px) {
  input#Email.input-group-field.home {
    z-index: 1;
  }
  input#Email.input-group-field.home::-webkit-input-placeholder {
    font-size: 12px;
  }
  input#Email.input-group-field.home:-moz-placeholder { /* Firefox 18- */
    font-size: 12px;
  }
  input#Email.input-group-field.home::-moz-placeholder { /* Firefox 19+ */
    font-size: 12px;
  }
  input#Email.input-group-field.home:-ms-input-placeholder {
    font-size: 12px;
  }
}
/*** END import from "partials/newsletter" ***/
/*===============================
SECTION - IMAGE WITH TEXT
===============================*/
.left-image {
  background-size: cover;
}

.left-image-placeholder {
  height: 400px;
  background-size: cover;
  background-position: center;
  background-size: 400px 800px;
}

.right-image {
  background-size: cover;
}

.right-image.feature-image-fit {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.left-image.feature-image-fit {
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
}

.feature-bottom {
  background-position: top;
}

.feature-middle {
  background-position: center;
}

.feature-bottom {
  background-position: bottom;
}

.home-promotion-block .placeholder-features,
.placeholder-background {
  min-height: 250px;
  background: var(--lifestyle1-svg);
  background-size: cover;
  background-color: white;
  fill: #292929;
}
@media screen and (min-width: 769px) {
  .home-promotion-block .placeholder-features,
  .placeholder-background {
    min-height: 400px;
  }
}

.placeholder-background {
  height: 100%;
}

/*===============================
SECTION - BANNER 1
===============================*/
.section-parallax__content {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

.collection-page__promo {
  z-index: 0;
  position: relative;
}

.collection-page__promo,
.collection-page__promo-content {
  min-height: 100%;
}

.collection-page__promo-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 15px;
  flex: 1 1 auto;
  position: relative;
}

.collection-page__promo-content.collection-page__promo-content--image {
  background-color: transparent;
}

@media screen and (max-width: 480px) {
  .collection-page__promo {
    padding: 1%;
  }
  .collection-page__promo--one-quarter.collection-page__product-mobile--one-whole,
  .collection-page__promo--one-third.collection-page__product-mobile--one-whole,
  .collection-page__promo--one-quarter.collection-page__product-mobile--one-whole {
    width: 100%;
  }
  .collection-page__promo--one-quarter.collection-page__product-mobile--one-half,
  .collection-page__promo--one-third.collection-page__product-mobile--one-half,
  .collection-page__promo--one-quarter.collection-page__product-mobile--one-half {
    width: 50%;
  }
}
@media screen and (min-width: 481px) {
  .collection-page__promo {
    padding: 7.5px;
  }
  .collection-page__promo--one-quarter {
    width: 50%;
  }
  .collection-page__promo--one-half {
    width: 50%;
  }
  .collection-page__promo--one-third {
    width: 50%;
  }
}
/*--- Larger than 768px ---*/
@media screen and (min-width: 769px) {
  .collection-page__promo {
    padding: 15px;
  }
  .collection-page__promo--one-third {
    width: 33%;
  }
  .collection-page__promo--one-half {
    width: 50%;
  }
}
/*--- Larger than 768px, Smaller than 1100 ---*/
@media screen and (min-width: 769px) and (max-width: 1099px) {
  .collection-page__promo--one-quarter {
    width: 33%;
  }
}
/*--- Larger than 999px ---*/
@media screen and (min-width: 1180px) {
  .collection-page__promo {
    padding: 15px;
  }
}
@media screen and (min-width: 1100px) {
  .collection-page__promo--one-quarter {
    width: 25%;
  }
  .collection-page__promo--one-half {
    width: 50%;
  }
}
@media screen and (min-width: 1180px) {
  .collection-page__promo {
    padding: 15px;
  }
}
/* ---- Legacy styles ---- */
/*===============================
SECTION - FEATURED PRODUCT
===============================*/
.home-featured-products {
  display: flex;
  flex-wrap: wrap;
}

.featured-product__element--full-width {
  width: 100%;
}

.featured-product__element--full-width-1-1 {
  width: 100%;
  padding: 0;
}

.featured-product__element--full-width-1-2 {
  width: 100%;
}

.featured-product__element--full-width-2-2 {
  width: 100%;
}

.featured-product__element--half-width-1-1 {
  width: 100%;
  padding: 0;
}

@media screen and (max-width: 768px) {
  .feature-product__product-section {
    width: 100%;
  }
}
@media screen and (min-width: 769px) {
  .feature-product__product-section {
    width: 50%;
  }
}
@media screen and (max-width: 1180px) {
  .featured-product__element--full-width-1-2 {
    padding: 0 0 7.5px 0;
  }
  .featured-product__element--full-width-2-2 {
    padding: 7.5px 0 0 0;
  }
  .featured-product__element--half-width-1-2 {
    width: 100%;
    padding: 0 0 7.5px 0;
  }
  .featured-product__element--half-width-2-2 {
    width: 100%;
    padding: 7.5px 0 0 0;
  }
}
@media screen and (min-width: 1181px) {
  .featured-product__element--full-width-1-2 {
    padding: 0 0 15px 0;
  }
  .featured-product__element--full-width-2-2 {
    padding: 15px 0 0 0;
  }
  .featured-product__element--half-width-1-2 {
    width: 50%;
    padding: 0 15px 0 0;
  }
  .featured-product__element--half-width-2-2 {
    width: 50%;
    padding: 0 0 0 15px;
  }
}
@media screen and (min-width: 769px) {
  .featured-productsh {
    position: relative;
  }
}
@media screen and (max-width: 768px) {
  .block-padding {
    padding: 0 0 0 0;
  }
  .product-description-padding {
    padding-top: 5%;
  }
}
.section__featured-product .promotion-placeholder-image {
  margin-bottom: 0;
}
.section__featured-product .promotion-placeholder-image img {
  margin: 0 auto;
}
.section__featured-product .promotion-placeholder-image div {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .section__featured-product .grid__item {
    padding-left: 0;
  }
}

div.second-slider .unslider {
  height: 100%;
}

div.second-slider .my-slider.unslider-horizontal {
  height: 94%;
}

div.second-slider .unslider-nav ol {
  list-style: none;
  text-align: center;
  position: static;
  width: 100%;
}

div.second-slider .unslider-nav ol li.unslider-active {
  background: var(--color_secondary_header);
}

div.second-slider .unslider-nav ol li {
  border: 1px solid var(--color_secondary_header);
  width: 12px;
  height: 12px;
}

.featured-productsh, .flex-direction {
  display: flex;
  flex-direction: column;
}

.featured-product-container, .flex-one {
  align-items: center;
  display: flex;
  flex: 1;
  justify-content: center;
}

.featured-product-container {
  align-items: flex-start;
  justify-content: center;
}

@media only screen and (max-width: 768px) {
  .featured-product-container {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
  }
  .form-vertical {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
  }
}
select.product-single__variants {
  height: 44px;
  margin-bottom: 0;
  background-color: var(--card_bg);
}
@media screen and (max-width: 768px) {
  select.product-single__variants {
    margin: 0 auto 10px 0;
  }
}
select.product-single__variants {
  border: 1px solid var(--color_body_text-80);
  max-width: 450px;
  width: 100%;
  padding: 8px 30px 8px 15px;
  background-size: 12px;
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink' width='100' height='50' fill='var(--color_body_text)'><polygon points='0,0 50,0 25,25'/></svg>");
  background-repeat: no-repeat;
  background-position: right 10px center;
}

.featured-product-container button#AddToCart {
  padding: 6x 25px;
}
.featured-product-container select {
  border: 1px solid;
  border-color: var(--color_body_text-80);
  outline: initial;
}
.featured-product-container select option {
  text-align: center;
}

/*** END import from "partials/featured-product" ***/
/*===============================
SECTION - BLOG
===============================*/
@media screen and (max-width: 1180px) {
  h1.home-blog-text {
    margin: 0 0 0.5em;
  }
  .grid__item.home-blog-article-wrapper.one-third {
    width: 100%;
  }
  .grid__item.home-blog-article-wrapper.one-half {
    width: 100%;
  }
  .single-blog-flex .grid__item.large--three-fifths.medium-down--one-whole {
    width: 100%;
  }
  .single-blog-flex .grid__item.large--two-fifths.medium-down--one-whole {
    width: 100%;
  }
  .home-blog-padding {
    padding-bottom: 5%;
  }
}
@media screen and (max-width: 1180px) {
  .single-blog-flex {
    display: flex;
    flex-wrap: wrap-reverse;
  }
}

.mobile-blog-title {
  padding: 10px 0 0 10px;
}

@media screen and (min-width: 768px) {
  #shopify-section-home-blog {
    margin: 0 15px 0 15px;
  }
}
.home-blog-author {
  font-weight: bold;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  .home-blog-author {
    margin-bottom: 20px;
  }
}

.home-blog-tags {
  position: relative;
}
@media screen and (min-width: 1300px) {
  .home-blog-tags {
    padding-right: 20px;
  }
}

.home-blog-image {
  height: 175px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  margin-bottom: 5%;
}

@media screen and (min-width: 1300px) {
  .home-blog-image {
    height: 300px;
    background-size: cover;
    background-repeat: no-repeat;
  }
}
.mobile-content-background {
  background-color: white;
  padding: 20px;
}
@media screen and (min-width: 768px) {
  .mobile-content-background {
    padding: 40px;
  }
}

.home-blog-article-wrapper {
  display: inline-block;
}
.home-blog-article-wrapper:first-child {
  margin-top: 0;
}

hr.home-article-hr {
  border: solid #f7f7f7;
  border-width: 0.5px;
  margin: 5% 0 5% 0;
}
@media screen and (min-width: 1181px) {
  hr.home-article-hr {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .home-blog-text p {
    line-height: 1.5;
  }
}

@media screen and (min-width: 1181px) {
  h1.home-blog-text {
    margin-bottom: 5%;
  }
}
.blog li.inactive-tag {
  background-color: #ECECEB;
  padding: 10px 20px;
  margin: -10px 10px 10px 10px;
}

hr.comment-hr {
  color: var(--color_body_text_subdued);
  border: 1px solid;
  width: 100%;
}

.comment-hr-active {
  color: var(--color_body_text_subdued);
  margin: 10px 0;
}

@media only screen and (min-device-width: 375px) and (max-device-width: 667px) {
  .home-blog-text {
    padding: 0;
  }
}
@media only screen and (min-width: 769px) {
  .home-blog-text {
    padding-right: 50px;
  }
}
.percWrapper span {
  margin-left: -3px;
}

.product__savingsPerc {
  display: inline;
  color: #808080;
}

#product-alt-description {
  font-weight: 500;
}

#shopify-section-home-blog .blog-tabs li.current,
#shopify-section-home-blog .blog-tabs li {
  line-height: 1;
}
#shopify-section-home-blog .blog-tabs h4 {
  margin-bottom: 0;
}

.blog-tabs {
  list-style: none;
  margin: 0;
}
.blog-tabs li {
  display: block;
  cursor: pointer;
  text-align: right;
  padding-top: 10px;
  padding-bottom: 8px;
}
.blog-tabs li.active span {
  border-bottom: 2px solid var(--color_secondary_accent);
  display: inline;
}

@media screen and (max-width: 768px) {
  ul.blog-tabs {
    display: flex;
    align-items: center;
    justify-content: space-around;
    margin: 0 auto;
    padding: 15px 0;
  }
}
.tab-content {
  display: none;
}

.tab-content.current {
  display: inherit;
}

@media screen and (max-width: 768px) {
  .mobile-blog-button h4 {
    margin-bottom: 0;
    border-radius: var(--button_border_radius);
  }
}
/*===============================
SECTION - FOOTER
===============================*/
.payment-icon {
  height: 26px;
}

@media screen and (min-width: 375px) and (max-device-width: 768px) {
  .sticky-footer {
    max-height: max-content;
    position: fixed;
    left: 0;
    width: 100%;
    background-color: var(--navbar_background_color);
    color: var(--navbar_link_color);
    justify-content: space-between;
    padding: 10px 20px;
    align-items: center;
  }
}
@media screen and (min-width: 300px) and (max-width: 768px) {
  .sticky-footer {
    max-height: max-content;
    position: fixed;
    left: 0;
    width: 100%;
    background-color: var(--navbar_background_color);
    color: var(--navbar_link_color);
    justify-content: space-between;
    padding: 10px 20px;
    align-items: center;
    display: flex !important;
    z-index: 9001;
  }
}
.sticky-position--bottom {
  bottom: 0;
}

.sticky-position--top {
  top: 0;
}

/*===============================
COLLECTION PAGE
===============================*/
@media screen and (max-width: 768px) {
  .form-horizontal {
    display: inline-block;
    width: 100%;
    height: auto;
    position: relative;
  }
  .form-horizontal select {
    width: 170px;
  }
}
@media screen and (max-width: 519px) {
  .form-horizontal {
    margin-bottom: 10px;
  }
}
@media screen and (min-width: 520px) {
  .form-horizontal {
    display: inline-block;
  }
  .form-horizontal label[for] {
    margin-right: 10px;
  }
}
.form-horizontal select {
  border: none;
  border-bottom: 4px solid var(--color_secondary_accent);
}

.collection-page__sidebar {
  background-color: var(--card_bg);
  margin-top: 15px;
}

/*--- Below Fold Collection Elements ---*/
.collection-page__loop {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}

.collection-page__product {
  position: relative;
}

/*--- Smaller than 768px ---*/
@media screen and (max-width: 768px) {
  .collection-page__loop {
    margin-right: -7.5px;
    margin-left: -7.5px;
  }
}
@media screen and (max-width: 480px) {
  .collection-page__product--one-quarter.collection-page__product-mobile--one-whole,
  .collection-page__product--one-third.collection-page__product-mobile--one-whole,
  .collection-page__product--one-half.collection-page__product-mobile--one-whole {
    width: 100%;
  }
  .collection-page__product--one-quarter.collection-page__product-mobile--one-half,
  .collection-page__product--one-third.collection-page__product-mobile--one-half,
  .collection-page__product--one-half.collection-page__product-mobile--one-half {
    width: 50%;
  }
  .collection-page__product {
    padding: 1%;
  }
}
@media screen and (min-width: 481px) {
  .collection-page__product {
    padding: 1%;
  }
  .collection-page__product--one-quarter {
    width: 50%;
  }
  .collection-page__product--one-third {
    width: 50%;
  }
  .collection-page__product--one-half {
    width: 50%;
  }
  .collection-page__product--one-quarter::before {
    content: "";
    width: 1px;
    margin-left: -1px;
    float: left;
    height: 0;
    padding-top: 50%;
  }
  .collection-page__product--one-quarter::after { /* to clear float */
    content: "";
    display: table;
    clear: both;
  }
}
/*--- Larger than 768px ---*/
@media screen and (min-width: 769px) {
  .collection-page__loop {
    margin-right: -15px;
    margin-left: -15px;
  }
  .collection-page__product {
    padding: 15px;
  }
  .collection-page__product--one-third {
    width: 33%;
  }
  .collection-page__product--one-half {
    width: 50%;
  }
}
/*--- Larger than 768px, Smaller than 1100 ---*/
@media screen and (min-width: 769px) and (max-width: 1099px) {
  .collection-page__product--one-quarter {
    width: 33%;
  }
  .collection-page__product--one-quarter::before {
    content: "";
    width: 1px;
    margin-left: -1px;
    float: left;
    height: 0;
    padding-top: 33%;
  }
  .collection-page__product--one-quarter::after { /* to clear float */
    content: "";
    display: table;
    clear: both;
  }
}
/*--- Smaller than 1100 ---*/
@media screen and (max-width: 1099px) {
  .collection-page__loop-wrapper {
    padding: 2% 4% 2% 4%;
  }
}
/*--- Larger than 1099px ---*/
@media screen and (min-width: 1100px) {
  .collection-page__product--one-quarter {
    width: 25%;
  }
  .collection-page__product--one-half {
    width: 50%;
  }
  .collection-page__product--one-quarter::before {
    content: "";
    width: 1px;
    margin-left: -1px;
    float: left;
    height: 0;
    padding-top: 25%;
  }
  .collection-page__product--one-quarter::after { /* to clear float */
    content: "";
    display: table;
    clear: both;
  }
  .collection-page__content-wrapper {
    display: flex;
    padding: 40px 5%;
  }
  .collection-page__loop-wrapper {
    padding: 30px 4% 30px 4%;
  }
  .collection-page__loop-wrapper--sidebar {
    width: 75%;
    padding: 0;
  }
  .collection-page__sidebar {
    width: 25%;
  }
}
/*** Importing from "partials/collection-pages" ***/
.collection-color-overlay {
  height: 100%;
  z-index: 11;
  position: absolute;
  top: 0;
  width: 100%;
}

.collection-link-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  z-index: 13;
}

/*** END import from "partials/collection-pages" ***/
@media screen and (min-width: 769px) {
  .collection-featured-image-300 {
    width: 100%;
    height: 300px;
    background-size: cover;
    background-position: center center;
  }
  .collection-featured-image-350 {
    width: 100%;
    height: 350px;
    background-size: cover;
    background-position: center center;
  }
  .collection-featured-image-400 {
    width: 100%;
    height: 400px;
    background-size: cover;
    background-position: center center;
  }
  .collection-featured-image-450 {
    width: 100%;
    height: 450px;
    background-size: cover;
    background-position: center center;
  }
  .collection-featured-image-500 {
    width: 100%;
    height: 500px;
    background-size: cover;
    background-position: center center;
  }
  .collection-featured-image-550 {
    width: 100%;
    height: 550px;
    background-size: cover;
    background-position: center center;
  }
}
@media screen and (max-width: 768px) {
  .collection-featured-image-300,
  .collection-featured-image-350,
  .collection-featured-image-400,
  .collection-featured-image-450,
  .collection-featured-image-500,
  .collection-featured-image-550 {
    height: 250px;
    background-size: cover;
    background-position: center center;
    width: 100%;
  }
}
.tbm_no-collection {
  background: #fff;
  padding: 20px;
  text-align: center;
}
.tbm_no-collection h3 {
  margin-bottom: 0;
}

/*===============================
 FILTERS  GO HERE
===============================*/
.collection-sorting,
.collection-filtering {
  display: flex;
  align-items: center;
  text-align: center;
  margin: 0 auto;
}
.collection-sorting .filter-dropdown,
.collection-filtering .filter-dropdown {
  text-align: left;
}
@media screen and (max-width: 768px) {
  .collection-sorting,
  .collection-filtering {
    justify-content: space-between;
    width: 100%;
    margin: 0;
  }
}
@media screen and (min-width: 548px) {
  .collection-sorting .tag-sort-exists,
  .collection-filtering .tag-sort-exists {
    margin-right: 50px;
  }
}

.template-collection .filtering-header {
  display: inline-block;
}

.filter-wrapper {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}

.filtering-header {
  width: 100%;
  border-top: solid 1px var(--color_primary_subdued);
  order: 2;
}

.filter-dropdown {
  position: absolute;
  top: 150%;
  height: 0;
  border-radius: 5px;
  min-width: 100%;
  background-color: var(--card_bg);
  z-index: 105;
  display: none;
  box-shadow: var(--dropdown_shadow);
}
.filter-dropdown ul {
  margin: 0;
  padding: 11px 0;
}
.filter-dropdown ul li {
  list-style-type: none;
  white-space: nowrap;
  padding: 5px 20px 4px 15px;
  font-size: 0.9em;
}
.filter-dropdown ul li:hover {
  color: var(--color_accent);
}
.filter-dropdown ul li.disabled {
  opacity: 0.3;
}

@media screen and (min-width: 769px) {
  .filter-wrapper {
    justify-content: flex-start;
    align-items: flex-end;
  }
  .filtering-header {
    padding-top: 15px;
  }
  .sorting-header {
    flex: 1 1 auto;
    padding-bottom: 15px;
  }
  .collection-desc--full {
    margin: 0 auto;
  }
  .sorting-header--full-width {
    width: 100%;
  }
  .collection-sort {
    justify-content: flex-end;
  }
  .filter-label--main {
    padding-right: 15px;
  }
  .filter-dropdown--sort {
    right: 0;
  }
  .filter-dropdown--tags {
    left: 0;
  }
  .filter-more .filter-dropdown--tags {
    right: 0;
    left: unset;
  }
  .filter-dropdown ul li ul {
    padding: 5px 0 0 0;
  }
  .sorting-header--blank-description:before {
    content: "";
    width: 60%;
  }
}
@media screen and (max-width: 768px) {
  .filter-wrapper {
    justify-content: flex-start;
  }
  .filtering-header {
    padding-top: 15px;
  }
  .sorting-header {
    width: 100%;
    padding-bottom: 15px;
  }
  .collection-sort {
    justify-content: flex-start;
  }
  .filter-button {
    min-width: 0;
    width: initial;
  }
  .filter-dropdown--sort {
    left: 0;
  }
  .filter-dropdown--tags {
    left: 0;
  }
  .filter-more .filter-dropdown--tags {
    right: 0;
    left: unset;
  }
  .filter-dropdown--tags ul li ul {
    padding: 5px 0 0 0;
  }
  .filter-dropdown ul li li {
    margin-left: 0;
  }
}
.collection-filtering {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .collection-filtering {
    align-items: center;
    justify-content: flex-start;
  }
}

.filter-label {
  white-space: nowrap;
  text-transform: none;
}
.sorting-label {
  text-transform: none;
}

@media screen and (max-width: 768px) {
  .filter-label-main {
    display: none;
  }
}

.icon-arrow-down {
  padding: 0 5px 0 20px;
}

.collection-filters {
  display: flex;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .collection-filters {
    min-width: 100%;
  }
}
.collection-filters .filter.filter-more {
  margin: 0;
}
.collection-filters .filter {
  position: relative;
  margin-right: 10px;
  /* Primary filter buttons */
}
.collection-filters .filter > .btn, .collection-filters .filter > .btn--tertiary, .collection-filters .filter > .btn--secondary {
  white-space: nowrap;
  padding: 5px 10px;
  color: var(--color_body_text);
  background-color: #ececec;
  border: solid 1px #ececec;
  border-radius: 5px;
}
.collection-filters .filter > .btn:hover, .collection-filters .filter > .btn--tertiary:hover, .collection-filters .filter > .btn--secondary:hover {
  background-color: var(--color_accent);
  border: solid 1px var(--color_accent);
  color: var(--color_secondary_header);
}
.collection-filters .filter > .btn:hover svg g, .collection-filters .filter > .btn--tertiary:hover svg g, .collection-filters .filter > .btn--secondary:hover svg g {
  fill: var(--color_body_text);
}
.collection-filters .filter > .btn > .icon, .collection-filters .filter > .btn--tertiary > .icon, .collection-filters .filter > .btn--secondary > .icon {
  display: none;
}
.collection-filters .filter:last-child {
  margin-right: 0;
}
.collection-filters .filter.filter-group > .btn > .icon, .collection-filters .filter.filter-group > .btn--tertiary > .icon, .collection-filters .filter.filter-group > .btn--secondary > .icon {
  display: inline-block;
}
.collection-filters .filter.opened > .btn svg g, .collection-filters .filter.opened > .btn--tertiary svg g, .collection-filters .filter.opened > .btn--secondary svg g, .collection-filters .filter.selected > .btn svg g, .collection-filters .filter.selected > .btn--tertiary svg g, .collection-filters .filter.selected > .btn--secondary svg g {
  fill: var(--color_secondary_header);
}
.collection-filters .filter.opened > .btn:active svg g, .collection-filters .filter.opened > .btn--tertiary:active svg g, .collection-filters .filter.opened > .btn--secondary:active svg g, .collection-filters .filter.selected > .btn:active svg g, .collection-filters .filter.selected > .btn--tertiary:active svg g, .collection-filters .filter.selected > .btn--secondary:active svg g {
  fill: var(--color_secondary_header);
}
.collection-filters .filter.opened > .btn:hover svg g, .collection-filters .filter.opened > .btn--tertiary:hover svg g, .collection-filters .filter.opened > .btn--secondary:hover svg g, .collection-filters .filter.selected > .btn:hover svg g, .collection-filters .filter.selected > .btn--tertiary:hover svg g, .collection-filters .filter.selected > .btn--secondary:hover svg g {
  fill: var(--color_body_text);
}
.collection-filters .filter.opened > .btn, .collection-filters .filter.opened > .btn--tertiary, .collection-filters .filter.opened > .btn--secondary, .collection-filters .filter.opened > .btn:hover, .collection-filters .filter.opened > .btn:active, .collection-filters .filter.opened > .btn:visited, .collection-filters .filter.selected > .btn, .collection-filters .filter.selected > .btn--tertiary, .collection-filters .filter.selected > .btn--secondary, .collection-filters .filter.selected > .btn:hover, .collection-filters .filter.selected > .btn:active, .collection-filters .filter.selected > .btn:visited {
  background-color: var(--color_accent);
  border: solid 1px var(--color_accent);
  color: var(--color_secondary_header);
}
.collection-filters .filter.disabled {
  opacity: 0.3;
}
.collection-filters .filter.disabled > .btn, .collection-filters .filter.disabled > .btn--tertiary, .collection-filters .filter.disabled > .btn--secondary {
  cursor: not-allowed;
  color: var(--color_body_text);
  background-color: var(--card_bg);
  border: solid 1px var(--color_body_text);
}
.collection-filters .filter.disabled > .btn, .collection-filters .filter.disabled > .btn--tertiary, .collection-filters .filter.disabled > .btn--secondary, .collection-filters .filter.disabled > .btn:hover, .collection-filters .filter.disabled > .btn:active, .collection-filters .filter.disabled > .btn:visited {
  color: var(--color_body_text);
}

/*===============================
COLLECTION - LIST COLLECTION
===============================*/
#collection-list-template svg {
  display: block;
}
#collection-list-template .collection-overlay {
  position: absolute;
  z-index: 399;
  width: 100%;
  top: 50%;
  transform: translateY(-50%);
  text-align: center;
  color: #fff;
}
#collection-list-template .collection-overlay h2 {
  letter-spacing: 1px;
}
#collection-list-template .collection-overlay h4 {
  font-weight: 500;
  padding: 10px;
}
@media screen and (min-width: 769px) {
  #collection-list-template .template-list-collections .grid--full {
    margin-left: -12px;
  }
}
#collection-list-template .content-class {
  position: relative;
  overflow: hidden;
  height: 100%;
  display: block;
  width: 100%;
  float: left;
}
#collection-list-template .list-collections-content img {
  max-height: 100%;
  vertical-align: middle;
  width: 100%;
  object-fit: cover;
}
@media (max-width: 769px) {
  #collection-list-template .collections-height > a {
    display: none;
  }
}

.btn--text-left {
  margin: 0 auto 0 0;
}

.btn--text-center {
  margin: 0 auto;
}

.btn--text-right {
  margin: 0 0 0 auto;
}

.homepage-collection-wrapper img {
  object-fit: cover !important;
  height: 100%;
}

.homepage-collection-wrapper {
  display: grid;
}

.collection-grid__content-wrapper {
  position: relative;
  text-align: center;
}

.collection-grid__content-wrapper img {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
}

@media screen and (min-width: 1100px) {
  .homepage-collection-wrapper {
    grid-gap: 30px;
  }
  .homepage-collection-wrapper--1 {
    grid-template-columns: 1fr;
  }
  .homepage-collection-wrapper--2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .homepage-collection-wrapper--3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .homepage-collection-wrapper--4 {
    grid-template-columns: repeat(4, 4fr);
  }
  .homepage-collection-wrapper--5 {
    grid-template-columns: repeat(5, 5fr);
  }
}
@media screen and (max-width: 1099px) and (min-width: 769px) {
  .homepage-collection-wrapper {
    grid-gap: 30px;
  }
  .homepage-collection-wrapper--1 {
    grid-template-columns: 1fr;
  }
  .homepage-collection-wrapper--2 {
    grid-template-columns: repeat(2, 1fr);
  }
  .homepage-collection-wrapper--3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .homepage-collection-wrapper--4 {
    grid-template-columns: repeat(3, 3fr);
  }
  .homepage-collection-wrapper--5 {
    grid-template-columns: repeat(3, 3fr);
  }
}
@media screen and (max-width: 768px) {
  .homepage-collection-wrapper {
    grid-gap: 15px;
  }
  .homepage-collection-wrapper--mobile-1 {
    grid-template-columns: 1fr;
  }
  .homepage-collection-wrapper--mobile-2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
/*===============================
SECTION - BRAND FEATURES
===============================*/
.right-text {
  flex-direction: column;
  display: flex;
  align-items: center;
  justify-content: center;
}

/*===============================
SECTION - RICH TEXT
===============================*/
.section__rich-text-wrapper {
  display: flex;
}

/*===============================
GLOBAL - VIDEO 
================================*/
.video-preload-image--fadeOut {
  opacity: 0 !important;
  visibility: hidden;
}

.section-video iframe {
  pointer-events: initial !important;
}

.section-video {
  position: relative;
  width: 100%;
  height: 100%;
}

.video-wrapper {
  position: relative;
  height: 100%;
}

[data-youtube] {
  height: 100%;
}

.video-section__size--100 {
  height: auto;
  width: 100%;
}

.flickity-slider iframe {
  width: 100%;
}

.video-section__header--background {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 120%;
  height: 0;
  padding-bottom: 66.25%;
  transform: translate(-50%, -50%);
  pointer-events: none;
}

.video-preload-image {
  opacity: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  transition: opacity 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94), visibility 0.5s linear;
}

.video-section__header--title {
  position: relative;
  flex: 0 0 auto;
  align-self: center;
  width: 100%;
  font-family: "Permanent Marker", cursive;
  font-size: 50px;
  font-weight: normal;
  text-align: center;
  color: white;
  line-height: 1;
}

.video-section__video-wrapper {
  position: relative;
  overflow: hidden;
}

.video-section__wrapper .plyr.plyr--full-ui.plyr--video,
.video-section__wrapper .plyr__video-wrapper {
  width: 100%;
  height: 100%;
  max-height: none;
  z-index: 14;
  position: absolute;
  top: 0;
}

.video-section__billboard {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  z-index: 15;
  background-color: var(--color_secondary_accent);
}

.video-section__video-wrapper {
  position: relative;
  overflow: hidden;
}

.video-section__video-wrapper .plyr button, .video-section__video-wrapper .plyr__controls {
  z-index: 15;
}

.loft-icon__play-video {
  opacity: 0.6;
  transition: opacity 0.3s linear, transform 0.15s cubic-bezier(0.68, 0.2, 0.83, 0.67);
}

.video-section__video-wrapper:hover,
.loft-interactive-element__button:focus {
  cursor: pointer;
}
.video-section__video-wrapper:hover .loft-icon__play-video,
.loft-interactive-element__button:focus .loft-icon__play-video {
  opacity: 1;
  transform: scale(1.07);
}

.video-section__video {
  height: 100%;
  width: 100%;
  object-fit: cover;
  object-position: center;
  top: 0;
  left: 0;
}

.loft-interactive-element__button:focus {
  outline: 1px solid;
}

.loft-interactive-element__button:focus:not(:focus-visible) {
  outline: none;
}

.loft-icon__loader {
  position: absolute;
  width: 6em;
  height: 6em;
  top: calc(50% - 3em);
  left: calc(50% - 3em);
  z-index: 13;
}

.loft-interactive-element__button {
  position: absolute;
  z-index: 16;
  height: 6em;
  width: 6em;
  top: calc(50% - 3em);
  left: calc(50% - 3em);
}

/*===============================
PLACEHOLDER CONTENT
===============================*/
svg.placeholder-svg-product-loop {
  max-width: 100%;
  max-height: 100%;
  text-align: center;
  float: left;
  width: 100%;
  background: #f7f7f7;
}

.placeholder-svg-product-loop-featured-image {
  background-color: #f7f7f7;
}

.placeholder__slideshow-with-promos {
  background-color: var(--color_primary_placeholder);
  height: 100% !important;
}

.placeholder__gallery {
  background-color: var(--color_primary_placeholder);
}

/*===============================
SECTION - PRODUCT TEMPLATE
===============================*/
.product__price-container {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  grid-gap: 1em;
}

.product-single__vendor a {
  text-decoration: underline;
}

.variant-inventory__container, .variant-transfer__container {
  display: inline-flex;
  align-items: center;
  margin-bottom: 0;
  box-sizing: border-box;
  background-color: var(--color_secondary_accent);
  padding: 7px 30px 7px 10px;
  border-radius: 0.5em;
  margin: 5px 0 5px 0;
  max-width: 450px;
}

.feather-alert-circle {
  margin-right: 10px;
}

.product__notes {
  padding: 15px 0 0 0;
}

.product__trust-icons {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}

.trust-icons__element-wrapper {
  padding: 15px;
  display: flex;
  border-radius: 15px;
  background-color: var(--color_body_text-97);
  margin: 0 10px 10px 0;
  flex: 1;
  min-width: 200px;
}

.trust-icons__element-wrapper--one-third {
  flex: 1 1 30%;
}

.trust-icons__element-wrapper--one-quarter {
  width: 20%;
}

.trust-icons__element-wrapper--one-half {
  flex: 1 1 45%;
}

.trust-icons__element-img {
  width: 50px;
  height: auto;
  text-align: center;
  padding: 5px;
}

.trust-icons__element-text-wrapper {
  padding: 5px;
  flex: 1;
}

.shopify-model-viewer-ui {
  position: relative;
  display: inline-block;
  cursor: pointer;
  text-align: left !important;
}

.shopify-model-viewer-ui model-viewer {
  transform: translateZ(0);
  z-index: 1;
}

.shopify-model-viewer-ui model-viewer.shopify-model-viewer-ui__disabled {
  pointer-events: none;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen model-viewer {
  position: relative;
  width: 100vw;
  height: 100vh;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--exit-fullscreen {
  display: block;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--enter-fullscreen {
  display: none;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--desktop:hover .shopify-model-viewer-ui__controls-area, .shopify-model-viewer-ui.shopify-model-viewer-ui--desktop.shopify-model-viewer-ui--child-focused .shopify-model-viewer-ui__controls-area {
  opacity: 1;
}

.shopify-model-viewer-ui:not(.shopify-model-viewer-ui--desktop) .shopify-model-viewer-ui__controls-area {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-overlay {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  display: flex;
  flex-direction: column;
  background: var(--color_body_bg) !important;
  opacity: 0;
  border: 1px solid var(--color_body_text_05);
  position: absolute;
  bottom: 10px;
  right: 10px;
  z-index: 1;
  transition: opacity 0.1s linear;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area:not(.shopify-model-viewer-ui__controls-area--playing) {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: var(--color_body_text);
  border-radius: 0;
  border: none;
  margin: 0px;
  cursor: pointer;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button:not(.focus-visible) {
  outline: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control {
  padding: 0px;
  height: 44px;
  width: 44px;
  background: transparent;
  position: relative;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: var(--color_body_text_55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: var(--color_body_text_55);
  background: var(--color_body_text_05);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  position: absolute;
  content: "";
  border-bottom: 1px solid var(--color_body_text_05);
  width: 28px;
  bottom: 0px;
  right: 8px;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon {
  width: 44px;
  height: 44px;
  fill: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background: var(--color_body_bg);
  position: absolute;
  border: 1px solid var(--color_body_text_05);
  top: 50%;
  left: 50%;
  padding: 0;
  transform: translate3d(-50%, -50%, 0);
  height: 62px;
  width: 62px;
  z-index: 1;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  color: var(--color_body_text_55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__poster-control-icon {
  width: 60px;
  height: 60px;
  z-index: 1;
  fill: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--exit-fullscreen {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--enter-fullscreen {
  display: block;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__spritesheet {
  display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__sr-only {
  border: 0;
  clip: rect(0, 0, 0, 0);
  height: 1px;
  margin: -1px;
  overflow: hidden;
  padding: 0;
  position: absolute;
  white-space: nowrap;
  width: 1px;
}

video, model-viewer {
  width: 100%;
}

model-viewer {
  min-height: 400px;
  position: absolute;
  top: 0;
}

.shopify-model-viewer-ui__button--poster[hidden] {
  display: none;
}

.plyr__control.plyr__control--overlaid {
  background-color: var(--color_body_bg);
  border-color: var(--color_body_text_05);
}
.plyr__control.plyr__control--overlaid.plyr__tab-focus, .plyr__control.plyr__control--overlaid:hover {
  color: var(--color_body_text_55);
}

.plyr--vimeo, .plyr--youtube {
  position: absolute;
  top: 0;
}

.video-wrapper {
  position: relative;
  overflow: hidden;
  max-width: 100%;
  padding-bottom: 56.25%;
  height: 0;
  height: auto;
}
.video-wrapper iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.thumb_badge {
  position: absolute;
  top: 0;
  right: 0;
  width: 30px;
  height: 30px;
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .thumb_badge {
    display: none;
  }
}

#ProductThumbs-product-template {
  position: relative;
}

.plyr.plyr--full-ui.plyr--video {
  color: var(--color_body_text);
  background-color: transparent;
}
.plyr.plyr--full-ui.plyr--video .plyr__video-wrapper {
  background-color: transparent;
}
.plyr.plyr--full-ui.plyr--video .plyr__poster {
  background-color: var(--color_body_bg);
}
.plyr.plyr--full-ui.plyr--video:fullscreen .plyr__video-wrapper .plyr.plyr--full-ui.plyr--video:fullscreen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video {
  /* stylelint-disable-next-line */
}
.plyr.plyr--full-ui.plyr--video:-webkit-full-screen .plyr__video-wrapper, .plyr.plyr--full-ui.plyr--video:-webkit-full-screen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video {
  /* stylelint-disable-next-line */
}
.plyr.plyr--full-ui.plyr--video:-moz-full-screen .plyr__video-wrapper, .plyr.plyr--full-ui.plyr--video:-moz-full-screen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video {
  /* stylelint-disable-next-line */
}
.plyr.plyr--full-ui.plyr--video:-ms-fullscreen .plyr__video-wrapper, .plyr.plyr--full-ui.plyr--video:-ms-fullscreen .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video .plyr--fullscreen-fallback .plyr__video-wrapper,
.plyr.plyr--full-ui.plyr--video .plyr--fullscreen-fallback .plyr__poster {
  background-color: #000;
}
.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid {
  background-color: var(--color_body_bg);
  border-color: var(--color_body_text_05);
}
.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid.plyr__tab-focus, .plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid:hover {
  color: var(--color_body_text_55);
}
.plyr.plyr--full-ui.plyr--video .plyr__controls {
  background-color: var(--color_body_bg);
  border-color: var(--color_body_text_05);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-thumb {
  box-shadow: 2px 0 0 0 var(--color_body_bg);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-thumb {
  box-shadow: 2px 0 0 0 var(--color_body_bg);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-thumb {
  box-shadow: 2px 0 0 0 var(--color_body_bg);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-runnable-track {
  background-image: linear-gradient(to right, var(--color_body_text) 0, var(--color_body_text_05) 0);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-track {
  background-color: var(--color_body_text_05);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-fill-upper {
  background-color: var(--color_body_text_05);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  box-shadow: 0 0 0 4px var(--color_body_text_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-moz-range-track {
  box-shadow: 0 0 0 4px var(--color_body_text_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-ms-track {
  box-shadow: 0 0 0 4px var(--color_body_text_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 0 0 3px var(--color_body_text_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-ms-thumb {
  box-shadow: 0 0 0 3px var(--color_body_text_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px var(--color_body_text_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress .plyr__tooltip {
  background-color: var(--color_body_text);
  color: var(--color_body_bg);
}
.plyr.plyr--full-ui.plyr--video .plyr__progress .plyr__tooltip::before {
  border-top-color: var(--color_body_text);
}
.plyr.plyr--full-ui.plyr--video.plyr--loading .plyr__progress__buffer {
  background-image: linear-gradient(-45deg, var(--color_body_text_05) 25%, transparent 25%, transparent 50%, var(--color_body_text_05) 50%, var(--color_body_text_05) 75%, transparent 75%, transparent);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range] {
  color: var(--color_body_bg);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-moz-range-thumb {
  box-shadow: 2px 0 0 0 var(--color_body_text);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-ms-thumb {
  box-shadow: 2px 0 0 0 var(--color_body_text);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-webkit-slider-thumb {
  box-shadow: 2px 0 0 0 var(--color_body_text);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-webkit-slider-runnable-track {
  background-image: linear-gradient(to right, currentColor var(--value), var(--color_body_bg_5) var(--value));
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-moz-range-track, .plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-ms-fill-upper {
  background-color: var(--color_body_bg_5);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
  box-shadow: 0 0 0 4px var(--color_body_bg_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-moz-range-track {
  box-shadow: 0 0 0 4px var(--color_body_bg_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-ms-track {
  box-shadow: 0 0 0 4px var(--color_body_bg_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-moz-range-thumb {
  box-shadow: 0 0 0 3px var(--color_body_bg_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-ms-thumb {
  box-shadow: 0 0 0 3px var(--color_body_bg_25);
}
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-webkit-slider-thumb {
  box-shadow: 0 0 0 3px var(--color_body_bg_25);
}

.shopify-model-viewer-ui {
  color: var(--color_body_text);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
  background: var(--color_body_bg);
  border-color: var(--color_body_text_05);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
  color: var(--color_body_text);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
  color: var(--color_body_text_55);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
  color: var(--color_body_text_55);
  background: var(--color_body_text_05);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
  border-color: var(--color_body_text_05);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
  background: var(--color_body_bg);
  border-color: var(--color_body_text_05);
}
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover, .shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
  color: var(--color_body_text_55);
}

.spr-badge {
  margin-bottom: 15px;
}

/*Trailblaze Pre-Update Fixes*/
[data-unit-price-wrapper] {
  display: none;
}

.has-unit-price [data-unit-price-wrapper] {
  display: block;
}

.product-hidden {
  display: none;
}

.product-element {
  margin: 15px;
  background-color: white;
}

.selector-wrapper {
  margin-top: 15px;
  margin-bottom: 15px;
}

.product-single {
  display: block;
}
@media screen and (min-width: 769px) {
  .product-single {
    display: flex;
  }
  .product-single .btn--small {
    padding: 4px 10px 4px 0px;
  }
  .product-single .single-option-selector {
    max-width: 115px;
    border: none;
    outline: initial;
    border-bottom: 4px solid #ffff00;
  }
}

.product-single__thumbnails {
  margin: 0 auto;
}
@media screen and (max-width: 768px) {
  .product-single__thumbnails {
    width: 100%;
  }
}

.product-single__thumbnail {
  width: 100px;
}

a.quick-view {
  z-index: 2017;
  cursor: pointer;
  color: var(--color_accent);
  outline: 0;
}

.quantity-selector {
  width: 100%;
}

ul.tabs {
  display: block;
  margin: 0 auto;
}

ul.tabs li {
  display: inline-block;
  margin: 0;
}

@media screen and (min-width: 769px) {
  .product-description__tab {
    padding: 0 30px 30px 0;
  }
}
@media screen and (max-width: 768px) {
  .product-description__tab {
    padding: 0 15px 15px 0;
  }
}
.product-description__tab a:hover {
  color: var(--color_secondary_accent);
  border-bottom: 3px solid var(--color_secondary_accent);
}

ul.tabs li a.active {
  position: relative;
  border-bottom: 3px solid var(--color_accent);
  color: var(--color_accent);
}

ul.tabs:before, ul.tabs:after {
  content: " ";
  display: block;
  height: 0;
  overflow: hidden;
  visibility: hidden;
  width: 0;
}

ul.tabs:after {
  clear: both;
}

.js-qty {
  float: none !important;
  margin-top: 10px;
  margin-bottom: 20px;
}

.product-h3 {
  font-weight: 400;
  line-height: 1.2;
}

div#shopify-section-home-featured-collection {
  margin-top: 15px;
}

.quick-view {
  display: none;
}
@media screen and (min-width: 769px) {
  .quick-view {
    display: block;
  }
}

.quick-smart-wrapper {
  display: none;
}

.cart-errors {
  margin: 15px 0;
  color: red;
}

#Quantity.quantity-selector {
  width: 220px;
  max-width: 220px;
}

#shopify-section-product-recommendations .product-grid-pricing {
  display: block;
}

@media screen and (max-width: 768px) {
  /*PAGE TOP BUTTONS*/
  .selector-wrapper select {
    margin: 0 auto 10px;
  }
  .template-product .product-single {
    display: block;
  }
  .template-product .product-single .product-single__photos {
    display: block;
    margin-bottom: 0;
  }
  .template-product .product-single .product-single__photos ul#ProductThumbs {
    width: 100%;
    margin: 0;
  }
  .template-product .product-single .grid__item > .product-description {
    text-align: initial;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  .template-product .mobile-inline-btn {
    margin-right: auto;
    margin-left: 0;
  }
}
@media screen and (min-width: 769px) {
  #AddToCartSold {
    display: block;
    height: 44px;
    width: 100%;
    max-width: 450px;
    display: block;
    padding: 12px 20px;
    line-height: 0;
    margin: 0 auto;
  }
}
button::-moz-focus-inner {
  padding: 0;
  border: 0;
}

/*PRODUCTS - RELATED SECTION*/
.grid-product-container .product-price-grid {
  margin-bottom: 30px;
}
.grid-product-container .grid-product-container {
  position: relative;
}
@media (max-width: 768px) {
  .grid-product-container .mobile-homepage-banner {
    margin: 10px 0 10px 0;
  }
}
.grid-product-container .grid-product-container:hover {
  color: var(--color_accent);
  transition: all 0.3s;
}
.grid-product-container .grid-product-container a {
  color: inherit;
}

/*
Swatches Styles
*/
/* Label */
.swatch .header {
  margin: 0.5em 0;
}

.swatch .swatch-element .soldout {
  background-color: var(--sold_badge_color);
  opacity: 0.4;
}

/* Hide radio buttons.*/
.swatch input {
  opacity: 0;
  position: absolute;
}

.product-details-form {
  overflow: visible !important;
}

.full-width-secondary {
  margin-top: 15px;
  padding-right: 15px;
}
@media screen and (min-width: 768px) {
  .full-width-secondary {
    margin-bottom: 15px;
    margin-top: 0;
  }
}

@media screen and (max-width: 768px) {
  .mobile-block {
    margin-bottom: 15px;
  }
}
.product-image-wrapper {
  margin-top: 30px;
}

.product-single__media-wrapper {
  margin: 0 auto;
  width: 100%;
}

.product-single__media {
  margin: 0 auto;
  width: 100%;
  position: relative;
}
.product-single__media model-viewer,
.product-single__media .shopify-model-viewer-ui,
.product-single__media img,
.product-single__media > video,
.product-single__media .plyr,
.product-single__media .media-item {
  left: 0;
  display: block;
  width: 100%;
  max-width: 100%;
}
.product-single__media iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  max-width: 100%;
}
.product-single__media iframe,
.product-single__media .media-video,
.product-single__media model-viewer,
.product-single__media .shopify-model-viewer-ui,
.product-single__media .media-item,
.product-single__media .plyr,
.product-single__media .plyr__video-wrapper {
  height: 100%;
  width: 100%;
}

.product-single__view-in-space {
  background-color: var(--color_body_text_05);
  border: none;
  width: 100%;
  min-height: 44px;
  padding-top: 10px;
  padding-bottom: 10px;
  display: block;
  color: var(--color_body_text);
  margin-bottom: 10px;
}
.product-single__view-in-space[data-shopify-xr-hidden] {
  display: none;
}
@media screen and (min-width: 769px) {
  .product-single__view-in-space[data-shopify-xr-hidden] {
    display: none;
  }
}
.product-single__view-in-space:hover .product-single__view-in-space-text, .product-single__view-in-space:focus .product-single__view-in-space-text {
  border-bottom-color: var(--color_body_text);
}
.product-single__view-in-space svg.icon {
  height: 25px;
  width: 25px;
  margin-top: -3px;
  margin-right: 2.43px;
  fill: transparent;
  vertical-align: middle;
}
.product-single__view-in-space svg.icon .icon-3d-badge-full-color-outline {
  stroke: none;
}
.product-single__view-in-space svg.icon .icon-3d-badge-full-color-element {
  fill: var(--color_body_text);
  opacity: 1;
}

.product-single__view-in-space-text {
  border-bottom: 1px solid transparent;
}

.shopify-section .spr-container {
  border-color: transparent;
  padding: 0;
}

@media screen and (min-width: 769px) {
  .spr-header h2 {
    font-size: var(--header2) !important;
  }
}
@media screen and (max-width: 768px) {
  .spr-header h2 {
    font-size: var(--header2-mobile) !important;
  }
}
/*===============================
SEARCH PAGE
===============================*/
.search-bar-snippet input.input-group-field.banner {
  width: 300px;
  display: inline-block;
  border-color: var(--btn_background_color);
  border-radius: var(--button_border_radius);
}
.search-bar-snippet .form-searched {
  display: none;
}
.search-bar-snippet input.input-group-field.banner::placeholer {
  color: var(--color_body_text);
}
.search-bar-snippet input.input-group-field.banner::-webkit-input-placeholder {
  color: var(--color_body_text);
}
.search-bar-snippet input.input-group-field.banner::-moz-placeholder {
  color: var(--color_body_text);
}
.search-bar-snippet input.input-group-field.banner:-ms-input-placeholder {
  color: var(--color_body_text);
}

.search-form {
  margin: 0 0 30px 0;
  text-align: center;
  padding: 40px;
  box-shadow: 0px 7px 7px -2px var(--card_shadow);
}
.search-form input.input-group-field.banner {
  width: 40%;
}
@media screen and (max-width: 768px) {
  .search-form {
    margin-bottom: 15px;
  }
  .search-form input.input-group-field.banner {
    width: 100%;
    margin-bottom: 10px;
  }
}

/*===============================
PAGES
===============================*/
.page-wrapper {
  padding: 60px 4%;
}
@media screen and (max-width: 768px) {
  .page-wrapper {
    padding: 15px 4%;
    background-color: var(--card_bg);
  }
}

.page-title {
  text-align: center;
}

.page__image {
  overflow: hidden;
}
.page__image img {
  object-fit: cover !important;
  height: 100%;
  object-position: 50% 50%;
}

/*===============================
CONTACT PAGE
===============================*/
@media screen and (max-width: 768px) {
  .contact-us-page.form-vertical {
    display: block;
  }
}
.contact-us-page.form-vertical form#contact_form {
  display: block;
}

/*===============================
BLOG PAGES
===============================*/
.blog__header {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.blog__header .article__categories {
  margin: 0;
}

.blog__tag--selected {
  background-color: var(--color_accent);
  color: var(--color_secondary_header);
  border-color: var(--color_accent);
}

.blog__header.text-left {
  justify-content: left !important;
}

.blog__header.text-center {
  justify-content: center !important;
}

.blog__header.text-right {
  justify-content: right !important;
}

.blog__header.text-right .footer-rss {
  align-self: flex-end;
}

.blog__header.text-center .footer-rss {
  align-self: center;
}

.blog__header.text-left .footer-rss {
  align-self: flex-start;
}

.collection__title.blog {
  display: flex;
  justify-content: center;
}

.footer-rss {
  padding-top: 4px;
  display: inline-block;
  max-height: 20px;
  margin-left: 5px;
  max-width: 20px;
  opacity: 0.8;
}
.footer-rss svg {
  float: left;
  max-width: 20px;
}

.footer-rss:hover {
  opacity: 1;
}
.footer-rss:hover svg path {
  fill: var(--color_accent);
}

.rss-fallback-text {
  visibility: hidden;
}

.blog-image {
  height: 300px;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}

.blog li a {
  background-color: #292929;
  color: white;
  padding: 10px 20px;
  margin: 10px;
}

ul.no-bullets.blog {
  margin-bottom: 30px;
}

/*===============================
PAGE - LIST-COLLECTIONS - FEATURED
===============================*/
.compat-object-fit {
  background-position: center !important;
  background-size: cover;
  background-repeat: no-repeat !important;
}
.compat-object-fit img {
  opacity: 0;
}

/*===============================
CUSTOMER ACCOUNT
===============================*/
#CustomerLoginForm .errors {
  position: initial;
}

.acct-large {
  padding-left: 0px;
  text-align: center;
}

@media (min-width: 769px) {
  .acct-large {
    padding-right: 20px;
  }
}
.acct-info {
  padding: 20px;
  text-align: left;
}

.acct-left {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 0;
}

.acct-right {
  display: inline-block;
  vertical-align: middle;
  margin-bottom: 0;
  float: right;
}

.acct-width {
  padding-left: 0px;
  margin: 0 auto;
  float: none;
}

.form-vertical.address {
  overflow: hidden;
}

.acctgrid {
  padding-left: 15px;
  margin-top: 30px;
}

select#AddressCountryNew {
  background: #fff;
}

@media (max-width: 480px) {
  .acctgrid {
    padding-left: 30px !important;
  }
}
select#AddressProvinceNew {
  background: #fff;
}

select#AddressCountry_5146083657 {
  background: #fff;
}

select#AddressProvince_5146083657 {
  background: #fff;
}

.form-vertical {
  overflow: hidden;
}

.address-container {
  text-align: center;
  padding: 20px;
  margin: 0px 0px 30px 0px;
}

.address-container div.grid--full {
  position: initial;
}

.addbtn {
  padding-left: 0px !important;
}

a.return-to {
  margin-top: 30px;
}

.address-wrapper {
  margin-bottom: 30px;
}

.account-order-info {
  background-color: white;
  padding: 15px;
}
.account-order-info h5 {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  a.return-to {
    text-align: center !important;
    display: block;
  }
}
@media (max-width: 480px) {
  .address-wrapper {
    border-bottom: 1px solid grey;
    margin-bottom: 30px;
  }
}
/*===============================
PASSWORD PAGE
===============================*/
.template-password p {
  margin: 30px 30px;
}

.banner-content_password {
  padding: 0px;
  overflow: hidden;
  position: relative;
}
@media screen and (min-width: 769px) {
  .banner-content_password {
    background-attachment: fixed;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
  }
}

.banner-overlay_password {
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  top: 0;
  text-align: center;
}

.overlay-content_password {
  position: relative;
  top: 50%;
  transform: translateY(-50%);
  width: 60%;
  margin: 0 auto;
  background: var(--card_bg_color_alpha_8);
  padding: 30px;
}

@media (max-width: 864px) {
  .banner-content_password {
    height: 300px;
    background-size: cover;
    background-position: center;
  }
}
.banner-content_password {
  height: 500px;
}

@media (max-width: 768px) {
  .overlay-content_password {
    width: 90% !important;
  }
}
#shopify-section-password-content .contact-form {
  display: block !important;
  height: auto !important;
}

.banner-content_password {
  height: 100%;
  overflow: visible;
}

.banner-overlay_password {
  position: relative;
  top: none;
}

.overlay-content_password {
  top: none;
  transform: none;
  position: relative;
  margin: 5% auto 5% auto;
}

.site-header__logo-link_password {
  max-width: 300px;
}

.password-message {
  margin: 5% auto;
}

@media screen and (max-width: 768px) {
  .input-group.password__input-group input {
    width: 205px;
  }
  .remodal-wrapper .input-group .btn, .remodal-wrapper .input-group .btn--tertiary, .remodal-wrapper .input-group .btn--secondary {
    margin-top: 2px;
  }
}
@media screen and (min-width: 769px) {
  .password__input-group {
    height: 36px;
  }
  #shopify-section-password-content input {
    height: 100%;
  }
  #shopify-section-password-content .input-group .btn, #shopify-section-password-content .input-group .btn--tertiary, #shopify-section-password-content .input-group .btn--secondary {
    margin-top: -5px;
    height: 100%;
  }
  .remodal-wrapper .input-group .btn, .remodal-wrapper .input-group .btn--tertiary, .remodal-wrapper .input-group .btn--secondary {
    height: 36px;
    vertical-align: baseline;
  }
}
.template-404 p {
  text-align: center;
}

/*===============================
ACCOUNT TEMPLATE
===============================*/
@media only screen and (max-device-width: 768px) {
  #account-page-template {
    /* Force table to not be like tables anymore */
  }
  #account-page-template table, #account-page-template thead, #account-page-template tbody, #account-page-template th, #account-page-template td, #account-page-template tr {
    display: block !important;
  }
  #account-page-template {
    /* Hide table headers (but not display: none;, for accessibility) */
  }
  #account-page-template thead tr {
    position: absolute !important;
    top: -9999px;
    left: -9999px;
  }
  #account-page-template tr {
    border: 1px solid #ccc;
  }
  #account-page-template td {
    /* Behave  like a "row" */
    border: none;
    border-bottom: 1px solid #eee;
    position: relative;
    padding-left: 50%;
  }
  #account-page-template td:before {
    /* Now like a table header */
    position: absolute;
    /* Top/left values mimic padding */
    top: 6px;
    left: 6px;
    width: 45%;
    padding-right: 10px;
    white-space: nowrap;
  }
  #account-page-template {
    /*
    Label the data
    */
  }
  #account-page-template td:nth-of-type(1):before {
    content: "Order";
  }
  #account-page-template td:nth-of-type(2):before {
    content: "Date";
  }
  #account-page-template td:nth-of-type(3):before {
    content: "Payment Status";
  }
  #account-page-template td:nth-of-type(4):before {
    content: "Fulfillment Status";
  }
  #account-page-template td:nth-of-type(5):before {
    content: "Total";
  }
}

/*===============================
CUSTOMER ORDER TEMPLATE
===============================*/
#customer-order-template .order-text {
  text-align: left;
}
#customer-order-template .line-item-discount {
  margin-left: 0;
}
#customer-order-template .line-item-discount li {
  justify-content: left;
}
#customer-order-template .order_summary.discount .order-text {
  font-style: italic;
}
@media only screen and (max-device-width: 768px) {
  #customer-order-template .order-text {
    text-align: left !important;
  }
  #customer-order-template {
    /* Force table to not be like tables anymore */
  }
  #customer-order-template table, #customer-order-template thead, #customer-order-template tbody, #customer-order-template th, #customer-order-template td, #customer-order-template tr {
    display: block !important;
  }
  #customer-order-template {
    /* Hide table headers (but not display: none;, for accessibility) */
  }
  #customer-order-template thead tr {
    position: absolute !important;
    top: -9999px;
    left: -9999px;
  }
  #customer-order-template tr {
    border: 1px solid #ccc;
    width: 100%;
    display: block !important;
    overflow: hidden;
  }
  #customer-order-template td {
    /* Behave  like a "row" */
    border: none;
    border-bottom: 1px solid #eee;
    position: relative;
    padding-left: 50%;
  }
  #customer-order-template td:before {
    /* Now like a table header */
    position: absolute;
    /* Top/left values mimic padding */
    top: 32%;
    left: 6px;
    width: 45%;
    padding-right: 10px;
    white-space: nowrap;
    font-weight: bold;
  }
  #customer-order-template {
    /*
    Label the data
    */
  }
  #customer-order-template tfoot {
    display: block !important;
  }
  #customer-order-template tfoot td {
    padding-left: 0%;
    display: table-cell !important;
    float: left;
    width: 75%;
  }
  #customer-order-template td.order-text.t2 {
    float: right;
    width: 25%;
    text-align: right !important;
  }
  #customer-order-template .order-left {
    font-weight: bold;
  }
  #customer-order-template tfoot td:before {
    width: auto;
  }
  #customer-order-template td:nth-of-type(1):before {
    content: "Product";
  }
  #customer-order-template tfoot td:nth-of-type(1):before {
    content: "";
  }
  #customer-order-template td:nth-of-type(2):before {
    content: "SKU";
  }
  #customer-order-template tfoot td:nth-of-type(2):before {
    content: "";
  }
  #customer-order-template td:nth-of-type(3):before {
    content: "Price";
  }
  #customer-order-template tfoot td:nth-of-type(3):before {
    content: "";
  }
  #customer-order-template td:nth-of-type(4):before {
    content: "Quantity";
  }
  #customer-order-template tfoot td:nth-of-type(4):before {
    content: "";
  }
  #customer-order-template td:nth-of-type(5):before {
    content: "Total";
  }
  #customer-order-template tfoot td:nth-of-type(5):before {
    content: "";
  }
}

img.itest {
  object-fit: contain;
}
@media screen and (min-width: 681px) {
  img.itest {
    height: 250px;
  }
}
@media screen and (max-width: 680px) {
  img.itest {
    height: 150px;
  }
}
@media screen and (max-width: 768px) {
  img.itest {
    padding: 0 5% 0 5%;
  }
}

span .money {
  border: none !important;
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  /* IE10+ specific styles go here */
  .featured-productsh,
  .flex-direction,
  .featured-product-container,
  .flex-one {
    display: block !important;
  }
  .hero-subtitle {
    width: 100%;
  }
  #shopify-section-footer {
    position: absolute;
    left: 0;
    display: inline-table;
    width: 100%;
  }
  .page-list-collection-featured,
  .page-list-collection {
    display: inline-block;
    width: 100%;
  }
  .main-menu-dropdown {
    height: auto;
  }
  .site-nav.mega-menu li {
    position: static !important;
  }
  .site-nav.mega-menu.single-menu {
    position: relative !important;
  }
  .site-nav li .site-nav__dropdown {
    position: relative;
    padding-left: 4.5%;
  }
  .site-nav li .site-nav__dropdown li {
    position: relative !important;
  }
  .site-nav li .main-menu-dropdown .child-link .grid ul, .site-nav li .main-menu-dropdown .child-link .grid--rev ul, .site-nav li .main-menu-dropdown .child-link .grid--full ul {
    padding-left: 4.5% !important;
  }
  .section-promotions {
    display: table;
    table-layout: fixed;
    height: auto;
    width: 100%;
  }
  .section-promotions .home-promotions {
    width: 100%;
  }
  .section-promotions .home-promotions .newsletterh {
    display: table-cell;
    float: none;
    vertical-align: middle;
  }
  .section-promotions .home-promotions .newsletterh .newsletter-content-class {
    height: 100%;
  }
  .section-promotions .home-promotions .newsletterh .newsletter.flex-one {
    width: 100%;
    height: 100%;
  }
  .section-promotions .home-promotions .newsletterh .home-reveal {
    display: flex;
    height: 100%;
    justify-content: center;
    align-content: center;
    flex-wrap: wrap;
  }
  .section-promotions .home-promotions img {
    height: 100%;
  }
  .section-promotions .home-promotions .promotion-content {
    display: table-cell;
    float: none;
    vertical-align: middle;
  }
  .section-promotions .home-promotions .promotion-content .content-class {
    height: 100%;
    display: block;
    float: left;
    width: 100%;
  }
}
.left-map,
.right-map {
  position: relative;
  height: 500px;
  padding: 0;
}
@media screen and (max-width: 768px) {
  .left-map,
  .right-map {
    height: 200px;
  }
}

@media screen and (max-width: 768px) {
  .address-text {
    height: 100%;
  }
}
.map-section {
  position: relative;
  width: 100%;
  overflow: hidden;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
  margin-top: 30px;
}
@media screen and (min-width: 769px) {
  .map-section {
    min-height: 500px;
  }
}

.map-section-main {
  height: 100%;
  width: 100%;
}

.map-section--load-error {
  height: auto;
}

.map-section__wrapper {
  height: 100%;
  flex-shrink: 0;
  flex-grow: 1;
}
@media screen and (min-width: 769px) {
  .map-section__wrapper {
    display: flex;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

.map-section__overlay {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  opacity: 0;
  z-index: 2;
}

.map-section__error {
  position: relative;
  z-index: 3;
}
@media screen and (min-width: 769px) {
  .map-section__error {
    position: absolute;
    margin: 0 2rem;
    top: 50%;
    transform: translateY(-50%);
  }
}

.map-section__content-wrapper {
  position: relative;
  height: 100%;
  width: 100%;
  display: flex;
  justify-content: center;
}

.map-section__content {
  position: relative;
  display: inline-block;
  z-index: 3;
  flex-wrap: wrap;
  display: flex;
  align-content: center;
}
.map-section__content > * {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .map-section__content {
    min-height: 300px;
  }
  .ie9 .map-section__content {
    top: 10%;
  }
}
.map-section--load-error .map-section__content {
  position: static;
  transform: translateY(0);
}

.map-section__link {
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  max-width: none;
  width: 100%;
  height: 100%;
  z-index: 2;
  transform: translateX(-50%);
}

.map-section__container {
  max-width: none;
  width: 100%;
  height: 55vh;
  left: 0;
}
@media screen and (min-width: 769px) {
  .map-section__container {
    position: absolute;
    height: 100%;
    top: 0;
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .map-section__container {
    height: 200px;
  }
}

.map_section__directions-btn [class^=icon] {
  height: 1em;
}
.map_section__directions-btn * {
  vertical-align: middle;
}

.map-section__background-wrapper {
  overflow: hidden;
  position: relative;
}
@media screen and (max-width: 768px) {
  .map-section__background-wrapper {
    height: 100%;
  }
}
@media screen and (min-width: 769px) {
  .map-section__background-wrapper {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
  }
}
.map-section__background-wrapper svg {
  width: 200%;
  height: 100%;
}
.ie9 .map-section__background-wrapper {
  width: 100%;
  height: 500px;
}

.map-section__image {
  height: 100%;
  position: relative;
  top: 0;
  left: 0;
  width: 100%;
  background-size: cover;
  background-position: center;
}
@media screen and (min-width: 769px) {
  .map-section__image {
    position: absolute;
  }
}
.map-section--display-map .map-section__image {
  display: none !important;
}
.map-section--load-error .map-section__image {
  display: block !important;
}

.gm-style-cc,
.gm-style-cc + div {
  visibility: hidden;
}

@media screen and (min-width: 769px) {
  .map-section__content {
    width: 85%;
  }
}
@media screen and (max-width: 768px) {
  .map-section__content {
    width: 100%;
  }
}
.collection-list__promo-content {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  justify-content: center;
  height: 100%;
}

.homepage-collection-list .section-title {
  padding: 3%;
}
.homepage-collection-list .collection-color-overlay {
  background-color: var(--color_accent);
}

.lazystretch {
  width: 100%;
  height: auto;
}

.disabled-swatch {
  opacity: 0.3 !important;
}

.collection-in-grid h2 {
  width: 100%;
}

.content-class-m5 .block-content-6 a > img {
  font-family: "object-fit: cover";
}

.block-content-1 a > img {
  font-family: "object-fit: cover";
}

.block-content-2 a > img {
  font-family: "object-fit: cover";
}

.block-content-3 a > img {
  font-family: "object-fit: cover";
}

.block-content-4 a > img {
  font-family: "object-fit: cover";
}

.block-content-5 a > img {
  font-family: "object-fit: cover";
}

.block-content-6 a > img {
  font-family: "object-fit: cover";
}

.btn--outline {
  border-color: inherit;
  border-style: solid;
  border-width: 1px;
  color: inherit;
  background-color: transparent;
}

.img--cover {
  object-fit: cover !important;
  object-position: center;
}

.product-badge {
  position: absolute;
  top: 20px;
  left: 15px;
  z-index: 1;
  text-transform: var(--button_text_transform);
}

.soldout-badge {
  background-color: var(--sold_badge_color);
  color: var(--sold_badge_color_text);
}

.sale-badge {
  background-color: var(--sale_badge_color);
  color: var(--sale_badge_color_text);
}

.sale-badge--rectangle {
  padding: 10px 20px;
  border-radius: var(--button_border_radius);
}

.soldout-badge--rectangle {
  padding: 10px 20px;
  overflow: hidden;
  white-space: nowrap;
  border-radius: var(--button_border_radius);
}

.soldout-badge--circle, .sale-badge--circle {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  display: inline-block;
  text-align: center;
  overflow: hidden;
  padding: 10px;
  position: relative;
}

.product-badge__circle-text {
  transform: translate(-50%, -50%);
  position: absolute;
  top: 50%;
  left: 50%;
  width: 80%;
}

.product-badge--product-page {
  top: initial;
  left: initial;
  position: relative;
}

.card-background {
  background-color: var(--card_bg);
  width: 100%;
  min-height: 100%;
  position: relative;
}

.card-shadow {
  width: 100%;
}

/* flickity-fade */
.flickity-enabled.is-fade .flickity-slider > * {
  pointer-events: none;
  z-index: 0;
}

.flickity-enabled.is-fade .flickity-slider > .is-selected {
  pointer-events: auto;
  z-index: 1;
}

.logo-list.flickity-enabled, .logo-list.logo-list--grid {
  opacity: 1;
}

.logo-list {
  opacity: 0;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

/*===============================
PROMOTIONS
===============================*/
.promo__wrapper {
  height: 100%;
  width: 100%;
  position: relative;
  overflow: hidden;
}

.promo__border-container {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 101;
}

.promo__border {
  border-style: solid;
  border-width: 1px;
  height: 100%;
  width: 100%;
  z-index: 101;
}

.promo__content-wrapper {
  overflow: hidden;
  position: relative;
  background-color: transparent;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
}

.promo__image {
  object-fit: cover !important;
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.promo__link {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 103;
  top: 0;
  left: 0;
}

.promo__text {
  z-index: 102;
  position: relative;
}

.promo__overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 100;
  top: 0;
  left: 0;
}

.featured-collection__promo-content-inner {
  height: auto;
}

.featured-collection__promo-content {
  display: flex;
  flex-wrap: wrap;
}

/*--- HEADER SPECIFIC ---*/
.promo__header-wrapper {
  position: relative;
  margin: 15px;
  align-self: flex-start;
  align-items: center;
  display: flex;
  max-width: 400px;
}

.promo__header-wrapper p {
  font-weight: var(--bodyFontWeight);
}

.single-dropdown .promo__header-container {
  display: none;
}

@media screen and (min-width: 1200px) {
  .promo__header-container {
    min-width: 25%;
  }
  .main-menu-dropdown .single-menu-container--promo {
    max-width: 75%;
  }
}
@media screen and (min-width: 1000px) and (max-width: 1199px) {
  .promo__header-container {
    min-width: 30%;
  }
  .main-menu-dropdown .single-menu-container--promo {
    max-width: 70%;
  }
}
@media screen and (min-width: 769px) and (max-width: 999px) {
  .promo__header-container {
    min-width: 40%;
  }
  .main-menu-dropdown .single-menu-container--promo {
    max-width: 60%;
  }
}
/*===============================
SWATCHES
===============================*/
.swatch-header {
  width: 100%;
}

.swatch .swatch-element {
  float: left;
}

.swatch-element {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  padding: 0 5px 5px 0;
}

.swatch label {
  position: relative;
  background-position: center;
  float: left;
  text-align: center;
  white-space: nowrap;
  opacity: 0.7;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: var(--color_swatches_btn);
  color: var(--color_swatches_text);
  overflow: hidden;
}

.swatch-element__text {
  padding: 0.8em 1.4em;
  margin: 0 5px 0 0;
  border-radius: 10px;
  border: solid 2px var(--color_swatches_border);
}

.swatch-element__image {
  position: absolute;
  height: 100% !important;
  object-fit: cover !important;
  width: 100%;
  overflow: hidden;
  opacity: 1 !important;
}

.swatch-element__color {
  border-radius: 50%;
  height: 45px;
  width: 45px;
  border: solid 2px var(--color_swatches_border);
  position: relative;
  display: inline-flex;
  justify-content: center;
}

.product-loop-element__swatch .swatch-element__color {
  height: 30px;
  width: 30px;
}

.product-loop-element__swatch .swatch-element__color .tooltip {
  top: calc(-100% - 15px);
}

.swatch-element__color--small {
  border-radius: 25px;
  height: 25px;
  width: 25px;
  border: solid 2px var(--color_swatches_border);
}

.swatch-element label {
  background-size: cover;
}

/* Styling selected swatch */
/* Slightly raised */
.swatch input:checked + label {
  opacity: 1;
  border-color: var(--color_accent);
}

.swatch .swatch-element {
  -webkit-transform: translateZ(0); /* webkit flicker fix */
  -webkit-font-smoothing: antialiased; /* webkit text rendering fix */
  /* To position the sold out graphic and tooltip */
  position: relative;
}

/* Tooltips */
.swatch-element__color .tooltip {
  text-transform: initial;
  width: max-content;
  display: flex;
  align-items: center;
  justify-content: center;
  top: calc(-100% + 5px);
  background: var(--color_accent);
  color: var(--color_secondary_header);
  border-radius: 5px;
  padding: 10px 15px;
  position: absolute;
  filter: alpha(opacity=0);
  -khtml-opacity: 0;
  -moz-opacity: 0;
  opacity: 0;
  visibility: hidden;
  /* Animations */
  -webkit-transform: translateY(10px);
  -moz-transform: translateY(10px);
  -ms-transform: translateY(10px);
  -o-transform: translateY(10px);
  transform: translateY(10px);
  -webkit-transition: all 0.25s ease-out;
  -moz-transition: all 0.25s ease-out;
  -ms-transition: all 0.25s ease-out;
  -o-transition: all 0.25s ease-out;
  transition: all 0.25s ease-out;
  -webkit-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  -moz-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  -ms-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  -o-box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  box-shadow: 2px 2px 6px rgba(0, 0, 0, 0.28);
  z-index: 10000;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

.swatch-element__color .tooltip--small {
  top: calc(-100% - 5px);
}

/* CSS triangle */
.swatch-element__color .tooltip:after {
  border-left: solid transparent 10px;
  border-right: solid transparent 10px;
  border-top: solid var(--color_accent) 10px;
  bottom: -10px;
  content: " ";
  height: 0;
  position: absolute;
  width: 0;
}

.swatch-element__color:hover .tooltip {
  filter: alpha(opacity=100);
  -khtml-opacity: 1;
  -moz-opacity: 1;
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0px);
  -moz-transform: translateY(0px);
  -ms-transform: translateY(0px);
  -o-transform: translateY(0px);
  transform: translateY(0px);
}

.swatch-element__image-container {
  overflow: hidden;
  width: 95%;
  height: 95%;
  position: relative;
  align-self: center;
  border-radius: 50%;
  border: 1px solid rgba(var(--card-bg-rgb), 0);
}

@media screen and (max-width: 768px) {
  .swatch--product {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
  }
}
/*===============================
PROMOTIONAL ELEMENTS
===============================*/
.ad-slot-text a,
.richtext__description a,
.collection-ad-text a {
  color: var(--color_secondary_accent);
}

@media screen and (min-width: 769px) {
  .single__media-iframe {
    content: "";
    background: transparent;
    width: 100%;
    height: 100%;
    min-height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: -100;
  }
}
/*===============================
LIST COLLECTION GRID

#templates > page.list-collections-grid.liquid
#sections > list-collections-grid.liquid
===============================*/
.list-collection__collection-container {
  display: grid;
}

.list-collection__collection-content {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
}

.list-collection__collection-content::before {
  content: "";
  width: 1px;
  margin-left: -1px;
  float: left;
  height: 0;
  padding-top: 100%;
}

.list-collection__collection-content::after { /* to clear float */
  content: "";
  display: table;
  clear: both;
}

.list-collection__link {
  height: 100%;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 16;
  position: absolute;
}

.list-collection__collection-title {
  position: absolute;
  z-index: 12;
  margin: 0;
}

.list-collection__background {
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: 11;
}

.list-collection__collection-image {
  position: absolute;
  z-index: 10;
  height: 100%;
}

.list-collection__img-fill-false {
  object-fit: contain;
}

.list-collection__img-fill-true {
  object-fit: cover !important;
}

@media screen and (min-width: 769px) {
  .list-collection__collection-container {
    grid-gap: 30px;
  }
  .list-collection__collection-container--2 {
    grid-template-columns: 1fr 1fr;
  }
  .list-collection__collection-container--3 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .list-collection__collection-container--4 {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  .list-collection__collection-container--5 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  }
  .list-collection__collection-container--6 {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  }
}
@media screen and (max-width: 768px) {
  .list-collection__collection-container {
    grid-template-columns: 1fr 1fr;
    grid-gap: 15px;
  }
}
/*!
 * animate.css -http://daneden.me/animate
 * Version - 3.5.1
 * Licensed under the MIT license - http://opensource.org/licenses/MIT
 *
 * Copyright (c) 2016 Daniel Eden
 */
:root {
  --animate-duration: 1s;
  --animate-delay: 1s;
  --animate-repeat: 1;
}

.animate__animated {
  -webkit-animation-duration: 1s;
  animation-duration: 1s;
  -webkit-animation-duration: var(--animate-duration);
  animation-duration: var(--animate-duration);
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
}

.animate__animated.animate__infinite {
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
}

.animate__animated.animate__repeat-1 {
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  -webkit-animation-iteration-count: var(--animate-repeat);
  animation-iteration-count: var(--animate-repeat);
}

.animate__animated.animate__repeat-2 {
  -webkit-animation-iteration-count: 2;
  animation-iteration-count: 2;
  -webkit-animation-iteration-count: calc(var(--animate-repeat) * 2);
  animation-iteration-count: calc(var(--animate-repeat) * 2);
}

.animate__animated.animate__repeat-3 {
  -webkit-animation-iteration-count: 3;
  animation-iteration-count: 3;
  -webkit-animation-iteration-count: calc(var(--animate-repeat) * 3);
  animation-iteration-count: calc(var(--animate-repeat) * 3);
}

.animate__animated.animate__delay-1s {
  -webkit-animation-delay: 1s;
  animation-delay: 1s;
  -webkit-animation-delay: var(--animate-delay);
  animation-delay: var(--animate-delay);
}

.animate__animated.animate__delay-2s {
  -webkit-animation-delay: 2s;
  animation-delay: 2s;
  -webkit-animation-delay: calc(var(--animate-delay) * 2);
  animation-delay: calc(var(--animate-delay) * 2);
}

.animate__animated.animate__delay-3s {
  -webkit-animation-delay: 3s;
  animation-delay: 3s;
  -webkit-animation-delay: calc(var(--animate-delay) * 3);
  animation-delay: calc(var(--animate-delay) * 3);
}

.animate__animated.animate__delay-4s {
  -webkit-animation-delay: 4s;
  animation-delay: 4s;
  -webkit-animation-delay: calc(var(--animate-delay) * 4);
  animation-delay: calc(var(--animate-delay) * 4);
}

.animate__animated.animate__delay-5s {
  -webkit-animation-delay: 5s;
  animation-delay: 5s;
  -webkit-animation-delay: calc(var(--animate-delay) * 5);
  animation-delay: calc(var(--animate-delay) * 5);
}

.animate__animated.animate__faster {
  -webkit-animation-duration: 0.5s;
  animation-duration: 0.5s;
  -webkit-animation-duration: calc(var(--animate-duration) / 2);
  animation-duration: calc(var(--animate-duration) / 2);
}

.animate__animated.animate__fast {
  -webkit-animation-duration: 0.8s;
  animation-duration: 0.8s;
  -webkit-animation-duration: calc(var(--animate-duration) * 0.8);
  animation-duration: calc(var(--animate-duration) * 0.8);
}

.animate__animated.animate__slow {
  -webkit-animation-duration: 2s;
  animation-duration: 2s;
  -webkit-animation-duration: calc(var(--animate-duration) * 2);
  animation-duration: calc(var(--animate-duration) * 2);
}

.animate__animated.animate__slower {
  -webkit-animation-duration: 3s;
  animation-duration: 3s;
  -webkit-animation-duration: calc(var(--animate-duration) * 3);
  animation-duration: calc(var(--animate-duration) * 3);
}

@media print, (prefers-reduced-motion: reduce) {
  .animate__animated {
    -webkit-animation-duration: 1ms !important;
    animation-duration: 1ms !important;
    -webkit-transition-duration: 1ms !important;
    transition-duration: 1ms !important;
    -webkit-animation-iteration-count: 1 !important;
    animation-iteration-count: 1 !important;
  }
  .animate__animated[class*=Out] {
    opacity: 0;
  }
}
/* Zooming exits */
@-webkit-keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.7, 0.7, 0.7);
    transform: scale3d(0.7, 0.7, 0.7);
  }
  to {
    opacity: 0;
  }
}
@keyframes zoomOut {
  from {
    opacity: 1;
  }
  50% {
    opacity: 0;
    -webkit-transform: scale3d(0.7, 0.7, 0.7);
    transform: scale3d(0.7, 0.7, 0.7);
  }
  to {
    opacity: 0;
  }
}
.animate__zoomOut {
  -webkit-animation-name: zoomOut;
  animation-name: zoomOut;
}

/* Fading entrances  */
@-webkit-keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
.animate__fadeIn {
  -webkit-animation-name: fadeIn;
  animation-name: fadeIn;
}

@-webkit-keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform-origin: 0 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDown {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform-origin: 0 0;
    transform: translate3d(0, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInDown {
  -webkit-animation-name: fadeInDown;
  animation-name: fadeInDown;
}

@-webkit-keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInDownBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInDownBig {
  -webkit-animation-name: fadeInDownBig;
  animation-name: fadeInDownBig;
}

@-webkit-keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInLeft {
  -webkit-animation-name: fadeInLeft;
  animation-name: fadeInLeft;
}

@-webkit-keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInLeftBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInLeftBig {
  -webkit-animation-name: fadeInLeftBig;
  animation-name: fadeInLeftBig;
}

@-webkit-keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInRight {
  -webkit-animation-name: fadeInRight;
  animation-name: fadeInRight;
}

@-webkit-keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInRightBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInRightBig {
  -webkit-animation-name: fadeInRightBig;
  animation-name: fadeInRightBig;
}

@-webkit-keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInUp {
  -webkit-animation-name: fadeInUp;
  animation-name: fadeInUp;
}

@-webkit-keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInUpBig {
  from {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInUpBig {
  -webkit-animation-name: fadeInUpBig;
  animation-name: fadeInUpBig;
}

@-webkit-keyframes fadeInTopLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInTopLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInTopLeft {
  -webkit-animation-name: fadeInTopLeft;
  animation-name: fadeInTopLeft;
}

@-webkit-keyframes fadeInTopRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInTopRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInTopRight {
  -webkit-animation-name: fadeInTopRight;
  animation-name: fadeInTopRight;
}

@-webkit-keyframes fadeInBottomLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInBottomLeft {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInBottomLeft {
  -webkit-animation-name: fadeInBottomLeft;
  animation-name: fadeInBottomLeft;
}

@-webkit-keyframes fadeInBottomRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes fadeInBottomRight {
  from {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__fadeInBottomRight {
  -webkit-animation-name: fadeInBottomRight;
  animation-name: fadeInBottomRight;
}

/* Fading exits */
@-webkit-keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.animate__fadeOut {
  -webkit-animation-name: fadeOut;
  animation-name: fadeOut;
}

@-webkit-keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes fadeOutDown {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.animate__fadeOutDown {
  -webkit-animation-name: fadeOutDown;
  animation-name: fadeOutDown;
}

@-webkit-keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
@keyframes fadeOutDownBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, 2000px, 0);
    transform: translate3d(0, 2000px, 0);
  }
}
.animate__fadeOutDownBig {
  -webkit-animation-name: fadeOutDownBig;
  animation-name: fadeOutDownBig;
}

@-webkit-keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes fadeOutLeft {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.animate__fadeOutLeft {
  -webkit-animation-name: fadeOutLeft;
  animation-name: fadeOutLeft;
}

@-webkit-keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
@keyframes fadeOutLeftBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-2000px, 0, 0);
    transform: translate3d(-2000px, 0, 0);
  }
}
.animate__fadeOutLeftBig {
  -webkit-animation-name: fadeOutLeftBig;
  animation-name: fadeOutLeftBig;
}

@-webkit-keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes fadeOutRight {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.animate__fadeOutRight {
  -webkit-animation-name: fadeOutRight;
  animation-name: fadeOutRight;
}

@-webkit-keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
@keyframes fadeOutRightBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(2000px, 0, 0);
    transform: translate3d(2000px, 0, 0);
  }
}
.animate__fadeOutRightBig {
  -webkit-animation-name: fadeOutRightBig;
  animation-name: fadeOutRightBig;
}

@-webkit-keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes fadeOutUp {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.animate__fadeOutUp {
  -webkit-animation-name: fadeOutUp;
  animation-name: fadeOutUp;
}

@-webkit-keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
@keyframes fadeOutUpBig {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(0, -2000px, 0);
    transform: translate3d(0, -2000px, 0);
  }
}
.animate__fadeOutUpBig {
  -webkit-animation-name: fadeOutUpBig;
  animation-name: fadeOutUpBig;
}

@-webkit-keyframes fadeOutTopLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
}
@keyframes fadeOutTopLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, -100%, 0);
    transform: translate3d(-100%, -100%, 0);
  }
}
.animate__fadeOutTopLeft {
  -webkit-animation-name: fadeOutTopLeft;
  animation-name: fadeOutTopLeft;
}

@-webkit-keyframes fadeOutTopRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
}
@keyframes fadeOutTopRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, -100%, 0);
    transform: translate3d(100%, -100%, 0);
  }
}
.animate__fadeOutTopRight {
  -webkit-animation-name: fadeOutTopRight;
  animation-name: fadeOutTopRight;
}

@-webkit-keyframes fadeOutBottomRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
}
@keyframes fadeOutBottomRight {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(100%, 100%, 0);
    transform: translate3d(100%, 100%, 0);
  }
}
.animate__fadeOutBottomRight {
  -webkit-animation-name: fadeOutBottomRight;
  animation-name: fadeOutBottomRight;
}

@-webkit-keyframes fadeOutBottomLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
}
@keyframes fadeOutBottomLeft {
  from {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
  }
}
.animate__fadeOutBottomLeft {
  -webkit-animation-name: fadeOutBottomLeft;
  animation-name: fadeOutBottomLeft;
}

/* Sliding entrances */
@-webkit-keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInDown {
  from {
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInDown {
  -webkit-animation-name: slideInDown;
  animation-name: slideInDown;
}

@-webkit-keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInLeft {
  from {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInLeft {
  -webkit-animation-name: slideInLeft;
  animation-name: slideInLeft;
}

@-webkit-keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInRight {
  from {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInRight {
  -webkit-animation-name: slideInRight;
  animation-name: slideInRight;
}

@-webkit-keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes slideInUp {
  from {
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
    visibility: visible;
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
.animate__slideInUp {
  -webkit-animation-name: slideInUp;
  animation-name: slideInUp;
}

/* Sliding exits */
@-webkit-keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
@keyframes slideOutDown {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, 100%, 0);
    transform: translate3d(0, 100%, 0);
  }
}
.animate__slideOutDown {
  -webkit-animation-name: slideOutDown;
  animation-name: slideOutDown;
}

@-webkit-keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
@keyframes slideOutLeft {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0);
  }
}
.animate__slideOutLeft {
  -webkit-animation-name: slideOutLeft;
  animation-name: slideOutLeft;
}

@-webkit-keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
@keyframes slideOutRight {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0);
  }
}
.animate__slideOutRight {
  -webkit-animation-name: slideOutRight;
  animation-name: slideOutRight;
}

@-webkit-keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
@keyframes slideOutUp {
  from {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
  to {
    visibility: hidden;
    -webkit-transform: translate3d(0, -100%, 0);
    transform: translate3d(0, -100%, 0);
  }
}
.animate__slideOutUp {
  -webkit-animation-name: slideOutUp;
  animation-name: slideOutUp;
}

.product__aspect-ratio-container .shopify-model-viewer-ui {
  position: absolute;
  top: 0;
}

.product__aspect-ratio-container .plyr.plyr--full-ui {
  position: absolute;
  top: 0;
}

/*============================================================================
  GLOBAL ELEMENTS
==============================================================================*/
.loft-grid {
  display: grid;
}

@media screen and (max-width: 768px) {
  .template-product .loft-grid {
    display: block;
  }
}
.btn, .btn--tertiary,
.rte .btn--tertiary, .btn--secondary,
.rte .btn--secondary {
  min-width: 150px;
}

.smart-wrapper {
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
}

.add-to-cart-btn span {
  background-color: transparent;
  color: var(--btn_background_color);
  border: 1px solid var(--btn_background_color);
  border-radius: var(--button_border_radius);
  padding: 1em 2em;
  width: 100%;
  letter-spacing: 0.1rem;
}
.add-to-cart-btn span:hover, .add-to-cart-btn span:active, .add-to-cart-btn span:focus {
  background-color: var(--color_btn_background_hover);
  color: var(--color_btn_text_hover);
  border-color: var(--color_btn_background_hover);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

.add-to-cart-btn:hover span {
  background-color: var(--color_btn_background_hover);
  color: var(--color_btn_text_hover);
  border-color: var(--color_btn_background_hover);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}

@media screen and (min-width: 501px) {
  .product-smart-wrapper {
    max-width: 450px;
  }
}
@media screen and (max-width: 500px) {
  .product-smart-wrapper {
    width: 100%;
  }
}
.shopify-payment-button__more-options {
  font-size: var(--header6);
  color: var(--btn_background_color);
  text-transform: none;
  text-decoration: underline;
  font-weight: var(--bodyFontWeight);
}

.smart-wrapper {
  width: 100%;
}
.smart-wrapper .shopify-payment-button__button--hidden {
  display: none;
}
.smart-wrapper div.shopify-payment-button {
  margin-top: 15px;
}
.smart-wrapper div.shopify-payment-button div {
  width: inherit;
  height: inherit;
}
.smart-wrapper div.shopify-payment-button div .shopify-payment-button__button--unbranded {
  padding: 0;
}
.smart-wrapper div.shopify-payment-button div .shopify-payment-button__button--unbranded,
.smart-wrapper div.shopify-payment-button div .shopify-payment-button__button.shopify-payment-button__button--branded {
  overflow: hidden;
  min-height: 44px;
  margin-bottom: 16px;
  border-radius: var(--button_border_radius);
  font-weight: var(--headingFontWeight);
}
.smart-wrapper div.shopify-payment-button div .shopify-payment-button__more-options {
  font-size: var(--header6) !important;
  color: var(--btn_background_color);
  text-transform: none;
  text-decoration: underline;
  font-weight: var(--bodyFontWeight);
}

.mobile-success {
  background-color: green;
}

.mobile-error {
  background-color: red;
}

.add-to-cart-btn {
  display: flex;
  cursor: pointer;
  overflow: hidden;
  width: 100%;
  line-height: calc(1 + 0.2 / var(--font-body-scale));
  min-height: 2.75rem;
}
.add-to-cart-btn.added-to-cart-success span {
  background: var(--cart_success) !important;
  color: var(--color_secondary_header) !important;
  border-color: var(--cart_success) !important;
}
.add-to-cart-btn.added-to-cart-error span {
  background: var(--cart_error) !important;
  color: var(--color_secondary_header) !important;
  border-color: var(--cart_error) !important;
}

button {
  overflow: visible;
}

button[disabled],
html input[disabled] {
  cursor: default;
}

.btn, .btn--tertiary,
.rte .btn--tertiary, .btn--secondary,
.rte .btn--secondary,
.rte .btn {
  display: inline-block;
  padding: 10px 40px;
  font-family: var(--headingFontStack);
  width: auto;
  font-weight: var(--headingFontWeight);
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  cursor: pointer;
  border: 1px solid transparent;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  display: inline-block;
  vertical-align: middle;
  -webkit-transform: perspective(1px) translateZ(0);
  transform: perspective(1px) translateZ(0);
  box-shadow: 0 0 1px transparent;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s;
  -webkit-transition-property: transform;
  transition-property: transform;
  outline: initial;
  transition: 0.3s;
  line-height: 1.3;
  border-radius: var(--button_border_radius);
  /*================ Set primary button colors - can override later ================*/
  background-color: var(--btn_background_color);
  color: var(--btn_primary_text_color);
}
.btn:hover, .btn--tertiary:hover, .btn--secondary:hover, .btn:active, .btn--tertiary:active, .btn--secondary:active, .btn:focus, .btn--tertiary:focus, .btn--secondary:focus,
.rte .btn:hover,
.rte .btn:active,
.rte .btn:focus {
  background-color: var(--color_btn_background_hover);
  color: var(--color_btn_text_hover);
  border-color: var(--color_btn_background_hover);
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
.btn[disabled], [disabled].btn--tertiary, [disabled].btn--secondary, .btn.disabled, .disabled.btn--tertiary, .disabled.btn--secondary,
.rte .btn[disabled],
.rte .btn.disabled {
  cursor: default;
  color: var(--btn_primary_text_color);
  background-color: var(--sold_badge_color);
}

.shopify-payment-button__button--unbranded {
  background-color: var(--btn_background_color) !important;
  color: var(--btn_primary_text_color) !important;
}
.shopify-payment-button__button--unbranded:hover, .shopify-payment-button__button--unbranded:active, .shopify-payment-button__button--unbranded:focus {
  background-color: var(--color_btn_background_hover) !important;
  color: var(--color_btn_text_hover) !important;
  border-color: var(--color_btn_background_hover) !important;
  -webkit-transition: all 0.3s !important;
  transition: all 0.3s !important;
}

.btn--secondary,
.rte .btn--secondary {
  background-color: var(--color_secondary_header);
  color: var(--color_accent);
  border: 1px solid var(--color_secondary_header);
}

.color-white {
  color: #fff !important;
  border-color: #fff !important;
}

.color-black {
  color: #000 !important;
  border-color: #000 !important;
}

.cart-continue-button {
  border-color: var(--color_secondary_header);
}

.btn--tertiary,
.rte .btn--tertiary {
  background-color: transparent;
  color: var(--btn_background_color);
  border: 1px solid var(--btn_background_color);
}

.btn--newsletter-modal {
  background-color: var(--color_newsletter_content);
  color: var(--color_newsletter_background);
}

.btn--newsletter-footer {
  background-color: var(--color_footer_text);
  color: var(--color_footer_bg);
}

.btn--full {
  width: 100%;
}

.btn--share {
  display: inline-flex;
}

/*============================================================================
  FEATURES
==============================================================================*/
.product__photo {
  width: 100%;
  background-color: var(--card_bg);
}

.product__photo.is-hidden:not(:first-child) {
  display: none;
}

/* fade in image when loaded */
.product__photo img.flickity-lazyloaded,
.product__photo img.flickity-lazyerror {
  opacity: 1;
}

.product__slides .flickity-page-dots {
  display: flex;
  padding: 15px 0;
  width: 100%;
  position: relative;
}
.product__slides .flickity-page-dots .dot {
  flex: 1 1 auto;
  margin: 0;
  opacity: 0.25;
  height: 2px;
  background: var(--colorTextBody);
}
.product__slides .flickity-page-dots .dot.is-selected {
  opacity: 1;
}

.product__slides-navigation-container {
  margin: 15px 0;
}

.product__slides-navigation {
  width: 100px;
  height: 100px;
  margin: 0 5px;
}

.product__slider-thumbnail {
  height: 100px;
  object-fit: cover !important;
  width: auto;
}

.product__slides-navigation.is-selected.is-nav-selected {
  border: 2px solid var(--color_secondary_accent);
}

.product__slides-navigation-badge {
  position: absolute;
  top: 6px;
  right: 6px;
  height: 26px;
  width: 26px;
  z-index: 10;
}

.product__slides-navigation-badge .icon {
  fill: #fff;
  width: 100%;
  height: 100%;
  vertical-align: baseline;
}

.product__slides-navigation-badge .icon-3d-badge-full-color-outline,
.product__slides-navigation-badge .icon-video-badge-full-color-outline {
  stroke: rgba(var(--colorTextBody), 0.05);
}

.product__slides-navigation-badge .icon-3d-badge-full-color-element,
.product__slides-navigation-badge .icon-video-badge-full-color-element {
  fill: var(--colorTextBody);
}

@media screen and (min-width: 769px) {
  .product__slides-navigation-container .flickity-prev-next-button.next,
  .product__slides .flickity-prev-next-button.next {
    right: -30px;
  }
  .product__slides-navigation-container .flickity-prev-next-button.previous,
  .product__slides .flickity-prev-next-button.previous {
    left: -30px;
  }
}
@media screen and (max-width: 768px) {
  .product__photo {
    margin: auto;
    display: flex;
    min-height: 100%;
    align-items: center;
  }
  .product__slides .flickity-prev-next-button.next {
    right: 0;
  }
  .product__slides .flickity-prev-next-button.previous {
    left: 0;
  }
}
.quantity {
  border: 0.1rem solid var(--color_body_text_subdued);
  position: relative;
  height: 3rem;
  width: 9rem;
  display: flex;
}

.quantity__input {
  color: currentColor;
  font-size: var(--smallDetail);
  font-weight: 500;
  opacity: 0.85;
  text-align: center;
  background-color: transparent;
  border: 0;
  padding: 0 0.5rem;
  width: 100%;
  flex-grow: 1;
  -webkit-appearance: none;
  appearance: none;
  align-self: center;
}

quantity-input input[disabled] {
  background-color: transparent;
  color: initial;
}

.quantity__button {
  width: 3rem;
  flex-shrink: 0;
  font-size: 1.8rem;
  border: 0;
  background-color: transparent;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--color_body_text_subdued);
  padding: 0;
}

.quantity__button svg {
  width: 1rem;
  pointer-events: none;
}

.quantity__input:-webkit-autofill,
.quantity__input:-webkit-autofill:hover,
.quantity__input:-webkit-autofill:active {
  box-shadow: 0 0 0 10rem transparent inset !important;
  -webkit-box-shadow: 0 0 0 10rem transparent inset !important;
}

.quantity__input::-webkit-outer-spin-button,
.quantity__input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

.quantity__input[type=number] {
  -moz-appearance: textfield;
}

/*============================================================================
  SECTIONS
==============================================================================*/
.promo-bar__icon-link:hover svg path, .btn--share:hover svg path {
  fill: var(--color_accent);
}

/* ------------------------------------------------------------ *\
Section Parallax
\* ------------------------------------------------------------ */
.loft-section__parallax {
  overflow: hidden;
}

.section-parallax {
  position: relative;
  display: table;
  width: 100%;
  text-align: center;
  overflow: hidden;
}
.section-parallax .section__image-outer {
  position: absolute;
  top: 0;
  left: 0;
  overflow: hidden;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}
.section-parallax .section__image {
  width: 100%;
  height: 150%;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  will-change: scroll-position;
  transition: opacity 0.4s;
}
@media (max-width: 1024px) {
  .section-parallax .section__image {
    top: 0;
    height: 100%;
    background-position: center center !important;
    transform: translate3d(0px, 0px, 0px) !important;
  }
}
.section-parallax .section__inner {
  display: table-cell;
  vertical-align: middle;
}
.section-parallax .section__body {
  position: relative;
  z-index: 2;
  max-width: 60%;
  margin: 0 auto;
}
@media (max-width: 1023px) {
  .section-parallax .section__body {
    max-width: 90%;
  }
}
.section-parallax .section__bar .btn--secondary {
  display: none;
}
@media (max-width: 767px) {
  .section-parallax .section__bar .btn--secondary {
    display: inline-block;
  }
}
@media (max-width: 767px) {
  .section-parallax .section__actions .btn, .section-parallax .section__actions .btn--secondary, .section-parallax .section__actions .btn--tertiary {
    display: none;
  }
}
.section-parallax .section__actions .btn--secondary {
  display: none;
}
@media (max-width: 767px) {
  .section-parallax .section__actions .btn--secondary {
    display: inline-block;
  }
}

.section-parallax--alt {
  display: block;
  height: 100%;
}
@media screen and (max-width: 768px) {
  .section-parallax--alt {
    overflow: initial;
  }
}
.section-parallax--alt .section__image-outer {
  position: relative;
  height: 500px;
}
@media screen and (max-width: 768px) {
  .section-parallax--alt .section__image-outer {
    height: 250px;
  }
}
.section-parallax--alt .section__image {
  position: relative;
  height: 150%;
}
@media screen and (max-width: 768px) {
  .section-parallax--alt .section__image {
    background-size: cover;
    height: 100%;
  }
}
.section-parallax--alt .section__inner {
  display: block;
  position: relative;
  width: 100%;
}
.section-parallax--alt .section__body {
  max-width: none;
  height: 100%;
  display: block;
  opacity: 1;
  background: rgb(255, 255, 255);
}
@media (max-width: 1365px) {
  .section-parallax--alt .section__body {
    height: 100%;
  }
}
@media (max-width: 768px) {
  .section-parallax--alt .section__body {
    height: 100%;
  }
}

/*===============================
HOME - GALLERY
===============================*/
.gallery-section {
  width: 100%;
  overflow: hidden;
}

.gallery {
  margin: 0 auto;
  width: 100%;
  -webkit-transition: opacity 0.4s;
  transition: opacity 0.4s;
}

.gallery.is-hidden {
  display: none;
}

.gallery.masonry-enabled {
  opacity: 1;
}

.grid, .grid--rev, .grid--full {
  width: 100%;
  position: relative;
}

.grid:after, .grid--rev:after, .grid--full:after {
  content: "";
  display: block;
  clear: both;
}

.video-section__gallery {
  width: 100%;
}

.gallery__video {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}

.gallery__video iframe {
  position: absolute;
  pointer-events: none;
  max-width: none;
}

.gallery__wrapper {
  position: relative;
  overflow: hidden;
}

.gallery__content-wrapper {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 101;
  display: flex;
  flex-wrap: wrap;
}

.gallery__content-wrapper--center-center {
  justify-content: center;
  align-items: center;
}

.gallery__content-wrapper--top-center {
  justify-content: center;
  align-items: flex-start;
}

.gallery__content-wrapper--bottom-center {
  justify-content: center;
  align-items: flex-end;
}

.gallery__content-wrapper--left-center {
  justify-content: flex-start;
  align-items: center;
}

.gallery__content-wrapper--right-center {
  justify-content: flex-end;
  align-items: center;
}

.gallery__content-wrapper--top-left {
  justify-content: flex-start;
  align-items: flex-start;
}

.gallery__content-wrapper--top-right {
  justify-content: flex-end;
  align-items: flex-start;
}

.gallery__content-wrapper--bottom-right {
  justify-content: flex-end;
  align-items: flex-end;
}

.gallery__content-wrapper--bottom-left {
  justify-content: flex-start;
  align-items: flex-end;
}

.gallery__wrapper:hover .gallery__img {
  transform: scale(1.035);
}

.gallery__img {
  object-fit: cover !important;
  height: 100%;
  width: 100%;
  transition: transform 3s ease;
  position: absolute;
  top: 0;
}

.gallery__border-container {
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  z-index: 101;
}

.gallery__border {
  border-style: solid;
  border-width: 1px;
  height: 100%;
  width: 100%;
}

.gallery__link {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 103;
}

.gallery__overlay {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 100;
  top: 0;
}

.gallery__text {
  z-index: 102;
}

@media screen and (min-width: 769px) {
  .gallery-section {
    margin-top: 0;
  }
  .gallery__wrapper--hover-true:hover .gallery__border,
  .gallery__wrapper--hover-true:hover .gallery__text,
  .gallery__wrapper--hover-true:hover .gallery__overlay {
    opacity: 1;
  }
  .gallery__wrapper--hover-true .gallery__border,
  .gallery__wrapper--hover-true .gallery__text,
  .gallery__wrapper--hover-true .gallery__overlay {
    opacity: 0;
    transition: opacity 0.6s;
  }
  .gallery__img--mobile {
    display: none;
  }
  .gallery__img--desktop {
    display: block;
  }
  .gallery--one-quarter, .gallery--one-third, .gallery--one-whole {
    height: 0;
  }
  .grid__height.grid__height-one-quarter {
    padding-top: 23%;
  }
  .grid__height.grid__height-one-third {
    padding-top: 32%;
  }
  .grid__height.grid__height-one-half {
    padding-top: 49%;
  }
  .gallery--one-quarter .grid-item--desktop-tall-rectangle {
    padding-top: 46%;
  }
  .gallery--one-third .grid-item--desktop-tall-rectangle {
    padding-top: 64%;
  }
  .gallery--one-half .grid-item--desktop-tall-rectangle {
    padding-top: 100%;
  }
  .gallery--one-half .grid-item--desktop-large-square {
    width: 100%;
    padding-top: 100%;
  }
  .gallery--one-half .grid-item--desktop-wide-rectangle {
    width: 100%;
  }
  .aspect-ratio-box-inside {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .desktop-large-square .gallery__video iframe,
  .desktop-small-square .gallery__video iframe {
    height: 200%;
    width: 200%;
  }
  .desktop-tall-rectangle .gallery__video iframe {
    height: 400%;
    width: 400%;
  }
  .desktop-wide-rectangle .gallery__video iframe {
    height: 150%;
    width: 150%;
  }
}
@media screen and (max-width: 768px) {
  .gallery__img--mobile {
    display: block;
  }
  .gallery__img--desktop {
    display: none;
  }
  .grid__height {
    padding-top: 49%;
  }
  .aspect-ratio-box-inside {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .mobile-small-square .gallery__video iframe,
  .mobile-small-square .gallery__video iframe {
    height: 200%;
    width: 200%;
  }
  .mobile-tall-rectangle .gallery__video iframe {
    height: 400%;
    width: 400%;
  }
  .mobile-wide-rectangle .gallery__video iframe {
    height: 150%;
    width: 150%;
  }
}
/*===============================
SECTION - FEATURED COLLECTION
This is merely a test
===============================*/
.featured-collection {
  width: 100%;
}

.section__featured-collection {
  overflow: hidden;
}

.flickity-slider .featured-collection__image {
  height: 100%;
}

.flickity-slider .featured-collection__image > img {
  height: auto;
}

.featured-collection__header {
  width: 96%;
  margin: 0 auto;
}

.featured-collection__loop {
  max-width: 100%;
  margin: 0 auto;
}

.featured-collection__image {
  display: flex;
  min-height: 100%;
}

.featured-collection__product {
  display: flex;
  justify-content: center;
  position: relative;
  min-height: 100%;
}

.product-loop-element {
  display: flex;
  justify-content: space-between;
  /* align-items: center; */
  height: 100%;
  width: 100%;
  flex-direction: column;
}

.featured-collection__promo {
  min-height: 100%;
  display: flex;
}

.featured-collection__promo .promo__content-wrapper {
  height: inherit;
}

.featured-collection__promo,
.featured-collection__promo-content {
  min-height: 100%;
}

.promo__content-wrapper {
  height: 100%;
}

.featured-collection__promo-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 100%;
  padding: 15px;
}

.featured-collection__promo-content.featured-collection__promo-content--image {
  background-color: transparent;
}

.featured-collection__promo-content-inner {
  height: auto;
}

.featured-collection__promo-content {
  display: flex;
}

.product-loop__image-container {
  flex: 1 1 auto;
}

.product-loop__secondary-image {
  visibility: hidden;
  opacity: 0 !important;
  position: absolute;
  transition: all 0.1s linear;
}

.product-loop-element__details {
  grid-gap: 10px;
}
.product-loop-element__details p, .product-loop-element__details span {
  margin: 0;
}

.product-loop__image-link {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  z-index: 12;
}

.featured-collection__loop .flickity-viewport {
  overflow: visible;
}

@media screen and (max-width: 480px) {
  .featured-collection__image {
    max-width: 92%;
    padding: 1%;
  }
  .featured-collection__promo {
    padding: 1%;
  }
  .featured-collection__product--one-quarter,
  .featured-collection__product--one-third,
  .featured-collection__product--one-half {
    width: 50%;
  }
  .featured-collection__promo--slider--one-half,
  .featured-collection__promo--slider--one-third,
  .featured-collection__promo--slider--one-quarter {
    width: 50%;
  }
  .featured-collection__promo--one-quarter,
  .featured-collection__promo--one-third,
  .featured-collection__promo--one-quarter {
    width: 50%;
  }
  .featured-collection__product {
    padding: 1%;
  }
  .product-loop-element__details {
    padding: 10px 5px;
  }
  .product-loop_title {
    margin-bottom: 5px;
  }
  .product-loop-element {
    padding: 5px;
  }
  .product-loop-element__reviews {
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 481px) {
  .featured-collection__image {
    width: 50%;
    padding: 15px 7.5px 15px 7.5px;
  }
  .featured-collection__promo {
    padding: 7.5px;
  }
  .featured-collection__product {
    padding: 7.5px;
  }
  .featured-collection__product--one-quarter,
  .featured-collection__product--one-third,
  .featured-collection__promo--one-quarter {
    width: 60%;
  }
  .featured-collection__product--one-half,
  .featured-collection__promo--one-half {
    width: 60%;
  }
  .featured-collection__promo--slider--one-half {
    width: 60%;
  }
  .featured-collection__promo--slider--one-third {
    width: 60%;
  }
  .featured-collection__promo--slider--one-quarter {
    width: 60%;
  }
  .product-loop-element__reviews {
    padding-bottom: 10px;
  }
  .product-loop-element {
    padding: 7.5px;
  }
  .product-loop-element__details {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
    padding: 10px;
  }
}
/*--- Larger than 768px ---*/
@media screen and (min-width: 769px) {
  .featured-collection__product,
  .featured-collection__promo,
  .featured-collection__image {
    padding: 15px 7.5px 15px 7.5px;
  }
  .featured-collection__product--one-third,
  .featured-collection__promo--one-third {
    width: 33.33%;
  }
  .featured-collection__product--one-half,
  .featured-collection__promo--one-half {
    width: 50%;
  }
  .featured-collection__promo--slider--one-third {
    width: 33.33%;
  }
}
@media screen and (max-width: 1099px) {
  .featured-collection__loop .flickity-viewport {
    margin-left: -7.5px;
  }
}
/*--- Larger than 768px, Smaller than 1100 ---*/
@media screen and (min-width: 769px) and (max-width: 1099px) {
  .featured-collection__product--one-quarter,
  .featured-collection__promo--one-quarter {
    width: 33.33%;
  }
  .featured-collection__promo--slider--one-quarter {
    width: 33.33%;
  }
}
/*--- Larger than 999px ---*/
@media screen and (min-width: 1180px) {
  .featured-collection__product,
  .featured-collection__promo,
  .featured-collection__image {
    padding: 15px;
  }
}
@media screen and (min-width: 1100px) {
  .product-loop__image-container {
    flex: 1 1 auto;
  }
  .product-loop-element {
    padding: 5px;
  }
  .featured-collection__product--one-quarter,
  .featured-collection__promo--one-quarter,
  .featured-collection__promo--slider--one-quarter {
    width: 25%;
  }
  .featured-collection__product--one-half,
  .featured-collection__promo--one-half,
  .featured-collection__promo--slider--one-half {
    width: 50%;
  }
  .product-loop-element__details {
    display: flex;
    flex-direction: column;
    flex: 1 1 auto;
  }
  .product-loop_title {
    margin-bottom: 10px;
  }
  .product-loop-element__reviews {
    padding-bottom: 10px;
  }
}
@media screen and (min-width: 1180px) {
  .featured-collection__loop .flickity-viewport {
    margin-left: -15px;
  }
  .featured-collection__image {
    width: 50%;
    padding: 15px;
  }
  .featured-collection__promo {
    padding: 15px;
  }
}
.product-loop__image-container {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
}

@media screen and (max-width: 768px) {
  .product-loop__tile-img {
    max-height: 100%;
    position: absolute;
  }
  .product-loop__tile-ratio::before {
    content: "";
    width: 1px;
    margin-left: -1px;
    float: left;
    height: 0;
  }
  .product-loop__tile-ratio::after {
    content: "";
    display: table;
    clear: both;
  }
  .product-loop__tile-ratio--one-quarter::before {
    padding-top: 111.1111111111%;
  }
  .product-loop__tile-ratio--one-third::before {
    padding-top: 72.1153846154%;
  }
  .product-loop__tile-ratio--one-half::before {
    padding-top: 44.5765230312%;
  }
}
@media screen and (min-width: 769px) {
  .product-loop__tile-image {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    visibility: visible;
    opacity: 1;
    height: 100%;
    padding-bottom: 0;
    transition: visibility 0s, opacity 0.5s linear;
  }
  .product-loop__tile-image img {
    height: 100%;
  }
  .product-loop__tile-image-wrapper::before {
    width: 1px;
    margin-left: -1px;
    float: left;
    height: 0;
    padding-top: 100%;
    content: "";
  }
  .product-loop__tile-image-wrapper::after {
    content: "";
    display: table;
    clear: both;
  }
  .product-loop-element:hover .product-loop-element__details--hover,
  .product-loop-element:hover .product-loop__image-link {
    visibility: visible;
    opacity: 1;
  }
  .product-loop-element:hover .product-loop__secondary-image {
    visibility: visible;
    opacity: 1 !important;
    height: 100%;
  }
  .product-loop-element:hover .product-loop__primary-image {
    visibility: hidden;
    opacity: 0;
  }
  .product-loop-element--hover {
    align-items: center;
  }
  .product-loop-element__details--hover,
  .product-loop__image-container--hover,
  .product-loop__image-link {
    z-index: 9;
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s linear;
  }
  .product-loop-element__details--hover {
    display: flex;
    justify-content: flex-end;
    align-items: flex-start;
    flex-wrap: wrap;
    flex-direction: column;
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    text-align: center;
  }
  .product-loop__image-container--hover {
    height: 200px;
  }
  .product-loop-element:hover .product-loop__quickview {
    visibility: visible;
    opacity: 1;
  }
  .product-loop__quickview {
    z-index: 15;
    position: absolute;
    visibility: hidden;
    opacity: 0;
    transition: visibility 0s, opacity 0.5s linear;
  }
  .product-loop__quickview--relative {
    position: relative;
    order: 5;
  }
  .product-loop-element__swatch {
    order: 4;
  }
  .product-loop_title--tile {
    order: 1;
  }
  .product-loop-element__reviews--tile {
    order: 2;
  }
  .product-loop-element__price--tile {
    order: 3;
  }
  .product-loop__quickview--hover {
    position: relative;
    width: 60%;
    order: 4;
  }
}
.subsection__wrapper {
  padding: 15px 4%;
  margin: 0 auto;
  max-width: 1920px;
}

.footer__block {
  margin: 0;
  display: grid;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 1 auto;
  align-self: flex-start;
  width: 100%;
  grid-gap: 10px;
}

.footer__block--full {
  margin: 0 4%;
  max-width: 100%;
}

.footer__block--one-whole {
  width: 100%;
}

.subsection__block {
  width: 100%;
  flex: 1 1 auto;
  padding: 10px 0;
}

.footer__content {
  padding: 30px 0;
  grid-gap: 30px;
  color: var(--color_footer_text);
}

.footer__content a {
  color: var(--color_footer_text);
  white-space: normal;
  word-break: break-word;
}

.footer__logo-wrapper {
  display: flex;
}

.footer__navigation {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
}

.footer__navigation--horizontal {
  flex-direction: row;
}

.footer__nav-wrapper {
  display: flex;
  flex-direction: column;
  grid-gap: 20px;
}

.footer__nav-wrapper--single {
  flex-grow: 0;
}

.footer__description {
  padding: 0 15px 0 0;
}
@media screen and (max-width: 768px) {
  .footer__description {
    margin-bottom: 5px;
  }
}

.footer__title {
  line-height: 1.5em;
  text-align: left;
  color: var(--color_footer_text);
}

.footer__sub-menu {
  margin: 0;
  grid-gap: 15px;
  display: grid;
}

.footer__sub-menu--horizontal {
  display: flex;
  flex-wrap: wrap;
}

.footer__link {
  list-style: none;
  margin: 0;
}

.footer__link--horizontal {
  padding: 0 25px 0 0;
  flex: 1 1 50%;
}

.footer__newsletter {
  display: flex;
}

.footer__newsletter--narrow {
  flex: 0 1 auto;
}

.footer__newsletter--full-width {
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  padding: 30px 0 45px 0;
  color: var(--color_footer_text);
}

.footer__newsletter-text {
  display: grid;
  grid-gap: 20px;
}

.footer__newsletter-text--full-width {
  flex: 1 1 auto;
  padding-right: 15px;
}

.footer__newsletter-form {
  display: flex;
  width: 100%;
  justify-content: flex-start;
}

.footer__newsletter-form--full-width {
  display: flex;
  width: 30%;
  flex: 1 1 auto;
  justify-content: flex-end;
}

.footer__input {
  width: 60%;
  background-color: var(--color_footer_bg);
  border: 1px solid var(--color_footer_text);
}

.footer__newsletter-form input#Email::-webkit-input-placeholder {
  color: var(--color_footer_text);
}

.footer__newsletter-form input#Email::-moz-placeholder {
  color: var(--color_footer_text);
}

.footer__newsletter-form input#Email:-ms-input-placeholder {
  color: var(--color_footer_text);
}

.footer__newsletter-form input#Email:-moz-placeholder {
  color: var(--color_footer_text);
}

.footer__button {
  display: flex !important;
}

.footer__newsletter-submit {
  width: 100%;
  min-width: 0;
  background-color: var(--color_footer_text);
  color: var(--color_footer_bg);
}

.footer__extra-icons {
  display: flex;
  flex-wrap: wrap;
  width: 100%;
}

.footer__badge-link {
  padding-right: 15px;
}

.footer__badge {
  height: auto;
  width: 130px;
}

.footer__social-icons {
  width: 100%;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}

.footer__payment {
  order: 2;
  text-align: left;
}

.footer__cross-border-wrapper {
  order: 1;
  display: flex;
  justify-content: flex-start;
}

.footer__subsection {
  background-color: var(--color_subfooter_bg);
  width: 100%;
}

.subsection__wrapper {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
}

.footer__copyright {
  order: 3;
}

.footer__copyright, .footer__copyright a {
  text-align: left;
  color: var(--color_subfooter_text);
}

.footer__nav-wrapper--single {
  padding-right: 30px;
  margin-bottom: 0;
}

.footer__title--single {
  margin-bottom: 0;
  white-space: nowrap;
}

@media screen and (min-width: 481px) {
  .footer__nav-wrapper--single {
    flex-grow: 0;
    flex: 0;
  }
}
@media screen and (min-width: 769px) {
  .footer__block {
    padding: 30px 0;
  }
  .footer__block--one-third {
    width: calc(50% - 30px);
  }
  .footer__block--two-thirds {
    width: calc(50% - 30px);
  }
  .footer__newsletter-text--full-width {
    max-width: 60%;
  }
  .footer__content {
    padding: 15px 0 0 0;
  }
  .subsection__block {
    width: 30%;
  }
  .footer__newsletter--full-width {
    padding: 30px 0;
  }
  .footer__newsletter-form--full-width {
    padding-left: 15px;
  }
  .footer__copyright {
    order: 1;
  }
  .footer__payment {
    order: 2;
    text-align: center;
  }
  .footer__cross-border-wrapper {
    order: 3;
    justify-content: flex-end;
  }
  .footer__copyright,
  .footer__payment,
  .footer__cross-border-wrapper {
    padding-left: 1%;
    padding-right: 1%;
    margin: 0;
  }
}
@media screen and (min-width: 1100px) {
  .footer__block--one-third {
    width: calc(33.3333333333% - 20px);
  }
  .footer__block--two-thirds {
    width: calc(66.6666666667% - 30px);
  }
}
.footer .footer__block-wrapper .footer__newsletter-hr {
  opacity: 0.3;
  border-top: 1px solid var(--color_footer_text);
  margin: 0;
}
.footer .footer__block-wrapper .footer__content {
  clear: both;
  flex-wrap: wrap;
  display: flex;
}
.footer .footer__block-wrapper .footer__content .footer__logo .site-header__logo {
  word-break: break-word;
}
@media screen and (max-width: 768px) {
  .footer .footer__block-wrapper .footer__content .footer__logo .site-header__logo .site-header__logo-image img {
    margin: 0 auto;
  }
}
.footer .footer__block-wrapper .footer__content .footer__logo .footer__social-icons .inline-list {
  margin-bottom: 0;
}
.footer .footer__block-wrapper .footer__content .footer__social-link {
  font-weight: 700;
}
@media screen and (max-width: 768px) {
  .footer .footer__content {
    flex-direction: column;
    align-items: center;
  }
  .footer .in-footer {
    margin-bottom: 15px;
  }
}

.payment-icons {
  margin: 0;
}

.newsletter__input--newsletter-footer {
  color: var(--color_footer_text);
  border-color: var(--color_footer_text);
  background: var(--color_footer_bg);
}

.newsletter__input--newsletter-footer::placeholder {
  color: var(--color_footer_text);
}

.crossborder__toggle--footer {
  color: var(--footer_crossborder_content);
  background-color: var(--footer_crossborder_background);
}

.crossborder__disclosure-list--footer {
  bottom: 115%;
  margin: 0 0 10px 0;
}

@media screen and (min-width: 769px) {
  .crossborder__disclosure-list--footer {
    right: 0;
  }
}
@media screen and (max-width: 768px) {
  .crossborder__disclosure-list--footer {
    left: 0;
  }
}
@media screen and (max-width: 768px) {
  .footer__subsection > .wrapper {
    display: flex !important;
    flex-wrap: wrap;
  }
}
.input-group-btn--footer-block {
  flex-grow: 1;
  flex: 1 1 auto;
}

@media screen and (max-width: 1300px) and (min-width: 769px) {
  .input-group-btn--footer-block {
    flex-grow: 1;
    flex: 1 1 auto;
  }
}
@media screen and (max-width: 380px) {
  .input-group-btn--footer-block {
    flex-grow: 1;
  }
}
/*============================================================================
  TEMPLATES
==============================================================================*/
/*===============================
ARTICLE TEMPLATE
===============================*/
.article__header-wrapper {
  display: grid;
}

.article__title-wrapper, .article__content {
  margin: 0 auto;
  width: 100%;
}

.article__header-promo {
  display: flex;
  align-self: center;
  flex-direction: column;
}

.article__wrapper {
  display: grid;
}

.article__wrapper .rte {
  max-width: 80ch;
}

.article__divider {
  margin: 30px 0 0 0;
}

.article__title-content {
  display: grid;
  grid-gap: 2.5rem;
}

.article__comment-wrapper {
  display: flex;
  flex-wrap: wrap;
  grid-gap: 10px;
}

.article__comment-wrapper input {
  flex: 1 1 auto;
  margin: 0;
}

.article__recent-articles {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 30px;
}

.article__blog-category {
  margin: 0 0 10px 0;
}

.article__blog-category a {
  background-color: var(--color_body_text_subdued);
  color: var(--colorTextBody);
  padding: 5px 10px;
  font-size: var(--header6);
  transition: all 0.2s linear;
  text-transform: var(--button_text_transform);
}

.article__blog-category a:hover {
  background-color: var(--color_accent);
  color: var(--color_secondary_header);
}

.article__social-container {
  display: flex;
  justify-content: flex-start;
  grid-gap: 10px;
  align-items: center;
  flex-wrap: wrap;
}

.article__social-container .social-sharing {
  margin: 0;
  width: 100%;
}

.article__text-divider {
  margin: 0 10px;
}

.article__categories {
  margin-bottom: 30px;
}

.article__categories ul {
  display: flex;
  grid-gap: 10px;
  flex-wrap: wrap;
  margin: 0;
}

.article__categories--text-center ul {
  justify-content: center;
}

.article__categories--text-left ul {
  justify-content: left;
}

.article__categories--text-right ul {
  justify-content: right;
}

.article__categories ul li {
  margin: 0;
}

.article__categories ul li a {
  display: block;
  background-color: var(--color_body_text_subdued);
  color: var(--colorTextBody);
  padding: 5px 10px;
  font-size: var(--header6);
  transition: all 0.2s linear;
  text-transform: var(--button_text_transform);
}

.article__categories ul li a:hover {
  background-color: var(--color_accent);
  color: var(--color_secondary_header);
}

.comment {
  padding: 20px;
  background-color: var(--color_secondary_accent_subdued);
  margin: 10px 0;
}

#blog-article-template input.btn.blogcomment, #blog-article-template input.blogcomment.btn--secondary, #blog-article-template input.blogcomment.btn--tertiary {
  width: 100%;
}
#blog-article-template textarea#CommentBody.input-full.blogcomment {
  height: 136px;
}
#blog-article-template .form-error, #blog-article-template .errors {
  width: 500px;
  position: relative;
}
#blog-article-template {
  /* Sidebar */
}
#blog-article-template .article__signup {
  margin-bottom: 30px;
}
@media only screen and (max-device-width: 868px) {
  #blog-article-template div.form-vertical.commentblog {
    display: block !important;
  }
  #blog-article-template .form-error, #blog-article-template .errors {
    width: auto !important;
  }
  #blog-article-template .form-vertical.commentblog .errors ul {
    text-align: left !important;
  }
}

@media screen and (min-width: 1400px) {
  .article__title-wrapper, .article__content {
    max-width: 70%;
  }
  .article__header-wrapper {
    padding-left: var(--article_gap);
    padding-right: var(--article_gap);
  }
}
@media screen and (min-width: 769px) {
  .article__title-full {
    grid-column-start: 1;
    grid-column-end: 3;
  }
  .article__wrapper--title-sidebar-article {
    grid-template-columns: calc(75% - var(--article_gap)) 25%;
  }
  .article__wrapper--sidebar-title-article {
    grid-template-columns: 25% calc(75% - var(--article_gap));
  }
  .article__header-wrapper--title-first {
    grid-template-columns: calc(75% - var(--article_gap)) 25%;
  }
  .article__header-wrapper--title-last {
    grid-template-columns: 25% calc(75% - var(--article_gap));
  }
  .article__header-wrapper--single-block {
    grid-template-columns: calc(75% - var(--article_gap));
  }
  .article__wrapper--text-first {
    grid-template-columns: calc(75% - var(--article_gap)) 25%;
  }
  .article__wrapper--text-last {
    grid-template-columns: 25% calc(75% - var(--article_gap));
  }
  .article__wrapper----single-block {
    grid-template-columns: calc(75% - var(--article_gap));
  }
  .article__title-indent {
    margin-left: calc(30% + 5vw);
  }
}
@media screen and (max-width: 768px) {
  .blog-article__article-content {
    max-width: 100%;
  }
  .comment-form {
    width: 100%;
  }
}
/*===============================
BLOG TEMPLATE
===============================*/
.blog__article-grid {
  display: grid;
}

.blog-card {
  background-color: var(--card_bg);
  height: 100%;
  display: flex;
  flex-direction: column;
  box-shadow: 0 2px 19px 5px rgba(0, 0, 0, 0.07);
}

.blog-copy {
  flex: 1 1 auto;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 1.5em;
  grid-gap: 1em;
}

.blog-copy .rte {
  margin: 0;
}

.blog__article-title {
  padding-bottom: 20px;
}

.blog__article-social {
  display: flex;
  justify-content: space-between;
}

.blog__article-social a {
  align-items: center;
  display: grid;
  grid-template-columns: auto auto;
  grid-gap: 5px;
}

@media screen and (min-width: 1000px) {
  .blog__article-grid--4 {
    grid-template-columns: repeat(4, 1fr);
  }
  .blog__grid-wrapper {
    display: grid;
  }
}
@media screen and (max-width: 999px) {
  .blog__article-grid--4 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 850px) {
  .blog__article-grid--3 {
    grid-template-columns: repeat(3, 1fr);
  }
  .blog__article-grid--2 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (max-width: 849px) {
  .blog__article-grid--3 {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media screen and (min-width: 769px) {
  .blog__article-grid {
    grid-gap: 30px;
  }
}
@media screen and (max-width: 768px) {
  .blog__article-grid {
    grid-gap: 15px;
  }
}
@media screen and (max-width: 400px) {
  .blog__article-grid {
    grid-gap: 15px;
    grid-template-columns: 1fr;
  }
}
/*============================================================================
  ELEMENTS
==============================================================================*/
.product__description {
  max-width: 450px;
  width: 100%;
}

.product__tab-title-container {
  list-style: none;
  display: flex;
  align-items: center;
  margin: 0;
  transition: all 0.4s ease-in-out;
}

.product__tab-title-container [role=tab][aria-selected=false] {
  position: relative;
  border-bottom: 3px solid transparent;
  opacity: 0.7;
}

.product__tab-title-container [role=tab][aria-selected=true] {
  position: relative;
  border-bottom: 3px solid var(--color_accent);
  color: var(--color_accent);
  opacity: 1;
}

.product__details-form {
  max-width: 800px;
  overflow: visible;
}

.variant-group fieldset {
  border: none;
  padding: 0;
}

.product-details {
  margin: 0 auto;
  width: 100%;
}

.rte a.view-more-quick {
  text-decoration: none;
}

@media screen and (min-width: 769px) {
  .product-details .quantity-wrapper {
    text-align: left;
  }
  .product__variant-wrapper {
    max-width: 450px;
  }
}
@media screen and (max-width: 768px) {
  .product__variant-wrapper {
    width: 92vw;
  }
}
#shopify-product-reviews {
  max-width: var(--wrapper--full);
  margin: 0 auto;
}

/*============================================================================
  GLOBAL SECTIONS
==============================================================================*/
/* base-focus */
/*
  Focus ring - default (with offset)
*/
*:focus {
  outline: 0;
  box-shadow: none;
}

*:focus-visible:not([type=password]),
*:focus-visible:not([type=text]),
*:focus-visible:not(textarea),
*:focus-visible:not(.flickity-viewport) {
  outline: 0.2rem solid var(--color_accent_subdued);
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.3rem var(--color-background), 0 0 0.5rem 0.4rem var(--color_accent_subdued);
}

.flickity-enabled:focus-visible, .flickity-slider:focus-visible {
  outline: 0;
  box-shadow: none;
}

input[type=email]:focus-visible, input[type=password]:focus-visible, input[type=text]:focus-visible, input[type=search]:focus-visible {
  outline: none;
  box-shadow: none;
}

/* Fallback - for browsers that don't support :focus-visible, a fallback is set for :focus */
.focused,
.no-js *:focus {
  outline: 0.2rem solid var(--color_accent_subdued);
  outline-offset: 0.3rem;
  box-shadow: 0 0 0 0.3rem var(--color-background), 0 0 0.5rem 0.4rem var(--color_accent_subdued);
}

/* Negate the fallback side-effect for browsers that support :focus-visible */
.no-js *:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

/*
  Focus ring - inset
*/
.focus-inset:focus-visible {
  outline: 0.2rem solid var(--color_accent_subdued);
  outline-offset: -0.2rem;
  box-shadow: 0 0 0.2rem 0 var(--color_accent_subdued);
}

.focused.focus-inset,
.no-js .focus-inset:focus {
  outline: 0.2rem solid var(--color_accent_subdued);
  outline-offset: -0.2rem;
  box-shadow: 0 0 0.2rem 0 var(--color_accent_subdued);
}

.no-js .focus-inset:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

/*
  Focus ring - none
*/
/* Dangerous for a11y - Use with care */
.focus-none {
  box-shadow: none !important;
  outline: 0 !important;
}

.focus-offset:focus-visible {
  outline: 0.2rem solid var(--color_accent_subdued);
  outline-offset: 0.2rem;
  box-shadow: 0 0 0 0.2rem var(--color-background), 0 0 0.5rem 0.1rem var(--color_accent_subdued);
}

.focus-offset.focused,
.no-js .focus-offset:focus {
  outline: 0.2rem solid var(--color_accent_subdued);
  outline-offset: 1rem;
  box-shadow: 0 0 0 1rem var(--color-background), 0 0 0.2rem 1.2rem var(--color_accent_subdued);
}

.no-js .focus-offset:focus:not(:focus-visible) {
  outline: 0;
  box-shadow: none;
}

.modal__overlay.quickview__overlay {
  backdrop-filter: blur(1px);
}

.modal__container.quickview__wrapper {
  max-height: 80vh;
  max-width: 1200px;
  margin: auto;
  border-radius: 10px;
  background-color: var(--card_bg);
}

.modal__header.quickview__header {
  justify-content: flex-end;
}

.quickview__header {
  position: relative;
  background-color: var(--card_bg);
  width: 100%;
  z-index: 100;
  padding: 15px 15px 0 0;
}

.modal__close.quickview__close {
  border-radius: 50%;
  height: 30px;
  width: 30px;
  font-size: 14px;
  color: var(--colorTextBody);
  background-color: var(--color_body_text_subdued);
  transition: all 0.2s linear;
}

.quickview__close:focus {
  color: var(--color_secondary_header);
  background-color: var(--color_accent);
  outline: none;
}

.quickview__close:hover {
  color: var(--color_secondary_header);
  background-color: var(--color_accent);
}

.quickview__wrapper .lazyloaded {
  opacity: 1;
}

.quickview__wrapper::-webkit-scrollbar {
  display: none;
}

.quickview__wrapper {
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}

.quickview__wrapper .section__unique-spacing--lg-sm, .quickview__wrapper .section__standard-spacing--even {
  padding: 30px;
}
.quickview__wrapper .product__photo img {
  max-height: 50vh;
}

.quickview__wrapper .product-template__container {
  padding-top: 0;
}

.quickview__wrapper .product__meta.card-shadow {
  box-shadow: none;
}

.quickview__wrapper .breadcrumbs {
  display: none;
}

/*===============================
NEWSLETTER MODAL
===============================*/
.modal__overlay--newsletter {
  align-items: flex-end !important;
  background: rgba(0, 0, 0, 0.2) !important;
}
.modal__overlay--newsletter .modal__close {
  position: absolute;
  top: 10px;
  right: 10px;
  border-radius: 50%;
  height: 30px;
  width: 30px;
  font-size: 14px;
  color: var(--color_newsletter_content);
  background-color: var(--color_newsletter_content_subdued);
  transition: all 0.2s linear;
}
.modal__overlay--newsletter .modal__close:focus {
  color: var(--color_btn_text_hover);
  background-color: var(--color_btn_background_hover);
  outline: none;
}
.modal__overlay--newsletter .modal__close:hover {
  color: var(--color_btn_text_hover);
  background-color: var(--color_btn_background_hover);
}

.tbm_modal-container {
  display: none;
  width: 100%;
  position: fixed;
  z-index: 1000000;
  bottom: 2%;
  left: 0;
}

.tbm_modal {
  position: absolute;
  padding: 30px 4%;
  background: var(--color_newsletter_background);
  color: var(--color_newsletter_content);
  display: table;
  width: 98% !important;
  bottom: 1% !important;
  align-items: flex-start;
  margin: 0 auto;
  max-width: unset !important;
  right: auto;
  display: flex;
  flex-wrap: wrap;
  border: 1px solid var(--color_newsletter_border);
  border-radius: 8px;
}
.tbm_modal .large--one-third {
  height: inherit;
}
.tbm_modal .newsletter__content-wrapper {
  display: flex;
  width: 100%;
  flex-wrap: wrap;
}
.tbm_modal .newsletter-content-wrapper {
  height: auto;
  margin-right: 10%;
}
@media screen and (min-width: 769px) {
  .tbm_modal .newsletter-content-wrapper {
    padding-right: 15px;
  }
}
@media screen and (max-width: 768px) {
  .tbm_modal .newsletter-content-wrapper {
    padding: 10%;
  }
}
.tbm_modal .form-error, .tbm_modal .errors {
  position: initial;
}

.modal__element.modal__element--text {
  flex-basis: 60%;
}

.modal__element.modal__element--form {
  flex-basis: 30%;
}

.modal__element p {
  margin: 0;
}

@media screen and (min-width: 769px) {
  .newsletter__content-wrapper {
    grid-gap: 30px;
  }
}
@media screen and (max-width: 768px) {
  .newsletter__content-wrapper {
    grid-gap: 15px;
  }
  .modal__element {
    padding: 7.5px;
  }
}
.modal__text-container {
  flex: 1 1 auto;
  flex-direction: column;
}

.modal__element {
  flex: 1 1 auto;
}

.form--success {
  width: 100%;
  padding: 15px;
  background-color: var(--color_btn_background_hover);
  color: var(--color_btn_text_hover);
  margin-top: 5px;
}

.form-success {
  width: 100%;
  margin-top: 5px;
  color: #56ad6a;
  background-color: #ecfef0;
  border-color: #56ad6a;
}
.form-success a {
  color: #56ad6a;
  text-decoration: underline;
}

.loft-form__container {
  display: flex;
}

.loft-form__container--horizontal-button {
  width: 100%;
  max-width: 500px;
  flex: 1 1 auto;
  justify-content: center;
}

.loft-form__container--horizontal-button input {
  background-color: var(--color_body_text_subdued);
  padding: 10px;
  flex-basis: 0;
  flex-grow: 999;
  min-width: 150px;
}

.loft-form__container--horizontal-button button {
  flex-grow: 1;
}

.loft-form__content {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-self: flex-start;
  justify-content: center;
}

.loft-form__content input, .loft-form__content button {
  line-height: 1rem;
}

.no-js .no-js-hidden {
  display: none !important;
}

/*============================================================================
  VENDORS
==============================================================================*/
/**************************\
  Basic Modal Styles
\**************************/
.modal__overlay {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.6);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 5000;
}

.modal__container {
  max-height: 100vh;
  width: 100%;
  max-width: 900px;
  border-radius: 4px;
  overflow-y: auto;
  box-sizing: border-box;
}

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}

.modal__title {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 600;
  font-size: 1.25rem;
  line-height: 1.25;
  color: #00449e;
  box-sizing: border-box;
}

.modal__close {
  background: transparent;
  border: 0;
}

.modal__close:before {
  content: "✕";
}

.modal__btn {
  font-size: 0.875rem;
  padding-left: 1rem;
  padding-right: 1rem;
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
  background-color: #e6e6e6;
  color: rgba(0, 0, 0, 0.8);
  border-radius: 0.25rem;
  border-style: none;
  border-width: 0;
  cursor: pointer;
  -webkit-appearance: button;
  text-transform: none;
  overflow: visible;
  line-height: 1.15;
  margin: 0;
  will-change: transform;
  -moz-osx-font-smoothing: grayscale;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  transition: -webkit-transform 0.25s ease-out;
  transition: transform 0.25s ease-out;
  transition: transform 0.25s ease-out, -webkit-transform 0.25s ease-out;
}

.modal__btn:focus, .modal__btn:hover {
  -webkit-transform: scale(1.05);
  transform: scale(1.05);
}

.modal__btn-primary {
  background-color: #00449e;
  color: #fff;
}

/**************************\
  Demo Animation Style
\**************************/
@keyframes mmfadeIn {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes mmfadeOut {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
@keyframes mmslideIn {
  from {
    transform: translateY(15%);
  }
  to {
    transform: translateY(0);
  }
}
@keyframes mmslideOut {
  from {
    transform: translateY(0);
  }
  to {
    transform: translateY(-10%);
  }
}
.micromodal-slide {
  display: none;
}

.micromodal-slide.is-open {
  display: block;
}

.micromodal-slide[aria-hidden=false] .modal__overlay {
  animation: mmfadeIn 0.2s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=false] .modal__container {
  animation: mmslideIn 0.2s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal__overlay {
  animation: mmfadeOut 0.2s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide[aria-hidden=true] .modal__container {
  animation: mmslideOut 0.2s cubic-bezier(0, 0, 0.2, 1);
}

.micromodal-slide .modal__container,
.micromodal-slide .modal__overlay {
  will-change: transform;
}

loft-cart {
  display: block;
}

loft-toast {
  position: relative;
  z-index: 6000;
}

loft-toast .loft-toast__wrapper {
  visibility: hidden;
  min-width: 250px;
  margin-left: -125px;
  background-color: var(--color_accent, green);
  color: var(--color_secondary_header, white);
  text-align: center;
  border-radius: 2px;
  position: fixed;
  left: 50%;
  bottom: 30px;
}

loft-toast .loft-toast__wrapper.show {
  visibility: visible;
  -webkit-animation: fadein 0.5s, fadeout 0.5s 5s;
  animation: fadein 0.5s, fadeout 0.5s 5s;
}

loft-toast .loft-toast__wrapper span {
  padding: 1em 2em;
  display: flex;
  justify-content: center;
  gap: 1em;
  grid-gap: 1em;
  align-items: center;
}

@-webkit-keyframes fadein {
  from {
    bottom: 0;
    opacity: 0;
  }

  to {
    bottom: 30px;
    opacity: 1;
  }
}

@keyframes fadein {
  from {
    bottom: 0;
    opacity: 0;
  }

  to {
    bottom: 30px;
    opacity: 1;
  }
}

@-webkit-keyframes fadeout {
  from {
    bottom: 30px;
    opacity: 1;
  }

  to {
    bottom: 0;
    opacity: 0;
  }
}

@keyframes fadeout {
  from {
    bottom: 30px;
    opacity: 1;
  }

  to {
    bottom: 0;
    opacity: 0;
  }
}
/* LOFT THEME — TYPOGRAPHY OVERRIDES */

/* --- Load fonts if not already present --- */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;600;700&display=swap');

/* 1) BLOG TITLES → BLACK */
.blog-article__title a,
.article-item__title a,
.blog-article__title,
.article-item__title {
  color: #000 !important;
}

/* 2) COLLECTION PAGES → PLAYFAIR, ALL CAPS */
.template-collection h1,
.template-collection h2,
.template-collection h3,
.template-collection .section-header__title,
.template-collection .product-item__title,
.template-collection .collection-title {
  font-family: 'Playfair Display', serif !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 700;
}

/* 3) NEWS PAGE “READ MORE” → FIRA, ALL CAPS */
.blog--news .article-item__read-more a,
.blog--news .article-item__read-more,
.blog--news .article-item__footer a,
.blog--news a.read-more {
  font-family: 'Fira Sans', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

/* Optional: read more hover effect */
.blog--news .article-item__read-more a,
.blog--news a.read-more {
  text-decoration: none;
}
.blog--news .article-item__read-more a:hover,
.blog--news a.read-more:hover {
  text-decoration: underline;
}
/* --- LOFT THEME: BLOG + NEWS TYPOGRAPHY FIX --- */

/* Blog post titles → black */
.blog-articles .article-item__title,
.blog-articles .article-item__title a,
.article-item__title,
.article-item__title a {
  color: #000 !important;
  font-family: inherit;
}

/* Read more → Fira Sans, all caps */
.article-item__read-more a,
.article-item__read-more {
  font-family: 'Fira Sans', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  color: #000 !important; /* optional: make read more black too */
}

/* Optional hover effect */
.article-item__read-more a:hover {
  text-decoration: underline;
}
/* --- LOFT THEME: Blog Titles & Read More Color Override --- */

/* Make blog titles black */
.blog-articles .article-item__title,
.blog-articles .article-item__title a,
.article-item__title,
.article-item__title a {
  color: #000 !important;
  --color-accent: #000 !important; /* overrides Loft variable */
  -webkit-text-fill-color: #000 !important; /* ensures Safari obeys */
}

/* Ensure hover doesn’t revert to red */
.article-item__title a:hover {
  color: #000 !important;
}

/* Make “Read More” links black + Fira Sans all caps */
.article-item__read-more,
.article-item__read-more a {
  font-family: 'Fira Sans', sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  color: #000 !important;
  --color-accent: #000 !important;
}

/* Keep hover effect subtle */
.article-item__read-more a:hover {
  color: #000 !important;
  text-decoration: underline;
}
/*
RESP0KE — TYPOGRAPHY OVERRIDES
--------------------------------------------------
What this does:
1) Blog post titles → black (instead of red)
2) All COLLECTION pages → Playfair Display, ALL CAPS
3) NEWS blog “Read more” links → Fira Sans, ALL CAPS

How to use:
- Paste this at the very bottom of your main CSS (e.g., assets/base.css or theme.css),
  OR create a new asset (assets/respoke-typography-overrides.css) and include it after the main stylesheet in theme.liquid.
- If your theme already loads Playfair Display / Fira Sans, you may remove the @import lines below.
--------------------------------------------------
*/

/* --- Load fonts if not already present --- */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Fira+Sans:wght@400;600;700&display=swap');

/* --------------------------------------------------
  1) BLOG TITLES → BLACK
  Targets common Shopify/Dawn-ish selectors for blog listing + single article
-------------------------------------------------- */
.template-blog .article-card__title a,
.template-blog .card__heading a,
.template-article .article-template__title,
.blog .card__heading a,
.article-card__title,
.article-template__title {
  color: #000 !important;
}

/* --------------------------------------------------
  2) COLLECTION PAGES → PLAYFAIR, ALL CAPS
  Applies to typical collection template headings, section titles, and product cards.
  Scoped to collection templates to avoid changing product detail pages, home, etc.
-------------------------------------------------- */
body.template-collection :where(h1, h2, h3, .h1, .h2, .h3,
  .collection-hero__title,
  .title,
  .title-wrapper,
  .title-wrapper-with-link,
  .collection .section-title,
  .collection-list-title,
  .product-card__title,
  .card__heading) {
  font-family: 'Playfair Display', 'Times New Roman', serif !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 700;
}

/* Optional: make product card titles a touch tighter on collection grids */
body.template-collection .product-card__title,
body.template-collection .card__heading {
  line-height: 1.15;
}

/* --------------------------------------------------
  3) NEWS PAGE “READ MORE” → FIRA, ALL CAPS
  If your News blog handle is "news", one of these body classes often exists in Shopify themes.
  We include several safe selectors; keep what matches your theme and prune the rest.
-------------------------------------------------- */
/* A) Narrow scope to the News blog only (preferred if available) */
body.blog--news .article-card__footer a,
body.blog--news a.read-more,
body.blog--news .article-card__footer .link,
body[class*="blog"][class*="news"] .article-card__footer a,
body[class*="blog"][class*="news"] a.read-more,
body[class*="blog"][class*="news"] .article-card__footer .link {
  font-family: 'Fira Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}

/* B) Fallback (applies to all blog read-more links, if you don’t have a dedicated News class) */
/* Uncomment to broaden sitewide on all blogs
.template-blog .article-card__footer a,
.template-blog a.read-more,
.template-blog .article-card__footer .link {
  font-family: 'Fira Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
}
*/

/* --- Small visual niceties (optional) --- */
/* Remove underlines on read-more by default, show on hover */
.article-card__footer a,
a.read-more {
  text-decoration: none;
}
.article-card__footer a:hover,
a.read-more:hover {
  text-decoration: underline;
}

/* ==================================================
   LOFT THEME – HARD OVERRIDES (BLOG / NEWS ONLY)
   Use when titles/links stay red due to inline vars or high-specificity rules.
   Paste BELOW existing rules so these win.
   ================================================== */

/* Scope to blog/news templates so we don't affect the rest of the site */
body.template-blog, body.template-article, body.blog {
  /* Nuke Loft's accent variables within blog scope */
  --accent: #000 !important;
  --color-accent: #000 !important;
  --link-color: #000 !important;
  --link-color-hover: #000 !important;
}

/* If Loft injects inline style="--color-accent: ..." on descendants, override it */
body.template-blog .blog-articles [style*="--color-accent"],
body.template-blog .blog-articles [class*="accent"],
body.template-blog .blog-articles .link--accent {
  --color-accent: #000 !important;
  color: #000 !important;
}

/* BLOG LIST: Titles → black, regardless of nested spans/wraps */
body.template-blog .blog-articles .article-item__title,
body.template-blog .blog-articles .article-item__title a,
body.template-blog .blog-articles .article-item__title a *,
body.template-blog .article-item__title,
body.template-blog .article-item__title a,
body.template-blog .article-item__title a * {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important; /* Safari edge case */
}

/* Prevent hover rollback to accent */
body.template-blog .article-item__title a:hover,
body.template-blog .article-item__title a:hover * {
  color: #000 !important;
}

/* READ MORE → Fira Sans, all caps, black */
body.template-blog .article-item__read-more,
body.template-blog .article-item__read-more a,
body.template-blog .article-item__read-more a * {
  font-family: 'Fira Sans', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif !important;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  font-weight: 600;
  color: #000 !important;
}
body.template-blog .article-item__read-more a:hover {
  text-decoration: underline;
  color: #000 !important;
}

/* COLLECTIONS: keep Playfair caps but do not force black globally */
body.template-collection :where(.section-header__title, .collection-title, .product-item__title, h1, h2, h3) {
  font-family: 'Playfair Display', 'Times New Roman', serif !important;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 700;
}
/* ===========================
   Newsletter color lock (grey theme)
   Keeps newsletter neutral even if global accent = red
   =========================== */

.section-newsletter,
.newsletter,
[id^="shopify-section"][class*="newsletter"],
section[class*="newsletter"] {
  --newsletter-accent: #7a7a7a; /* change this grey if needed */
  --color-accent: var(--newsletter-accent) !important;
  --link-color: var(--newsletter-accent) !important;
  --link-color-hover: var(--newsletter-accent) !important;
}

/* Newsletter buttons stay grey */
.section-newsletter .btn,
.section-newsletter .button,
.section-newsletter .button--primary,
.section-newsletter input[type="submit"],
.newsletter .btn,
.newsletter .button,
.newsletter .button--primary,
.newsletter i

