/*============================================================================
  Venture by Shopify

  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 native CSS/Sass @imports in this file without a build script
    - The font icons are prepared using https://icomoon.io/app
==============================================================================*/
/*================ FUNCTIONS ================*/
/*============================================================================
  Convert pixels to ems

  eg. for a relational value of 12px write em(12) when the parent is 16px
  if the parent is another value say 24px write em(12, 24)

  Based on https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/functions/_px-to-em.scss
==============================================================================*/
/*============================================================================
  Strips the unit from a number.

  @param {Number (With Unit)} $value
  @example scss - Usage
    $dimension: strip-units(10em);
  @example css - CSS Output
    $dimension: 10;
  @return {Number (Unitless)}

  based on https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/functions/_strip-units.scss
==============================================================================*/
/*================ VARIABLES ================*/
/*============================================================================
  Grid Breakpoints and Class Names
    - Do not change the variable names
==============================================================================*/
/*============================================================================
  Generate breakpoint-specific column widths and push classes
    - Default column widths: $grid-breakpoint-has-widths: ($small, $medium-up);
    - Default is no push classes
==============================================================================*/
/*================ Color Variables ================*/
/*================ Sizing Variables ================*/
/*================ Product Grid ================*/
/*================ Product slider ================*/
/*================ Collection Grid ================*/
/*================ Typography Variables ================*/
/*================ Z-Index ================*/
/*================ Drawers ================*/
/*================ Sticky nav ================*/
/*================ Links and Buttons ================*/
/*================ Product and Collection Cards ================*/
/*================ Search in header ================*/
/*================ Meganav ================*/
/*================ Hero ================*/
/*================ CANVAS ================*/
/*============================================================================
  Canvas Table of Contents

  #Mixins
  #Grid
  #Normalize
  #Helper Classes
  #Basic Styles
  #Icons
  #Lists
  #Rich Text Editor
  #Links and Buttons
  #Tables
  #Reponsive Tables
  #Images and Iframes
  #Forms
  #Site Nav and Dropdowns
  #Section Headers
  #Giftcard Template
==============================================================================*/
/*================ #Mixins ================*/
/*============================================================================
  Prefix mixin for generating vendor prefixes.
  Based on https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/addons/_prefixer.scss

  Usage:
    // Input:
    .element {
      @include prefix(transform, scale(1), ms webkit spec);
    }

    // Output:
    .element {
      -ms-transform: scale(1);
      -webkit-transform: scale(1);
      transform: scale(1);
    }
==============================================================================*/
/*================ Media Query Mixin ================*/
/*================ Responsive Show/Hide Helper ================*/
/*================ Responsive Text Alignment Helper ================*/
/*============================================================================
  #Grid
==============================================================================*/
/*============================================================================
  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 {
  *zoom: 1; }
  .grid:after {
    content: '';
    display: table;
    clear: both; }

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

.grid__item {
  float: left;
  padding-left: 20px;
  width: 100%; }

.grid__item[class*="--push"] {
  position: relative; }

/*============================================================================
  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; }

/*============================================================================
  Grid Columns
    - Create width classes, prepended by the breakpoint name.
==============================================================================*/
/*================ Grid push classes ================*/
/*================ Clearfix helper on uniform grids ================*/
/*================ Build Base Grid Classes ================*/
/** Whole */
.one-whole {
  width: 100%; }

/* Halves */
.one-half {
  width: 50%; }

/* Thirds */
.one-third {
  width: 33.33333%; }

.two-thirds {
  width: 66.66667%; }

/* 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.66667%; }

.two-sixths {
  width: 33.33333%; }

.three-sixths {
  width: 50%; }

.four-sixths {
  width: 66.66667%; }

.five-sixths {
  width: 83.33333%; }

/* 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.33333%; }

.two-twelfths {
  width: 16.66667%; }

.three-twelfths {
  width: 25%; }

.four-twelfths {
  width: 33.33333%; }

.five-twelfths {
  width: 41.66667%; }

.six-twelfths {
  width: 50%; }

.seven-twelfths {
  width: 58.33333%; }

.eight-twelfths {
  width: 66.66667%; }

.nine-twelfths {
  width: 75%; }

.ten-twelfths {
  width: 83.33333%; }

.eleven-twelfths {
  width: 91.66667%; }

.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; }

/*================ Build Responsive Grid Classes ================*/
@media only screen and (max-width: 749px), print {
  /** Whole */
  .small--one-whole {
    width: 100%; }

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

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

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

  /* 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.66667%; }

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

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

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

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

  /* 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.33333%; }

  .small--two-twelfths {
    width: 16.66667%; }

  .small--three-twelfths {
    width: 25%; }

  .small--four-twelfths {
    width: 33.33333%; }

  .small--five-twelfths {
    width: 41.66667%; }

  .small--six-twelfths {
    width: 50%; }

  .small--seven-twelfths {
    width: 58.33333%; }

  .small--eight-twelfths {
    width: 66.66667%; }

  .small--nine-twelfths {
    width: 75%; }

  .small--ten-twelfths {
    width: 83.33333%; }

  .small--eleven-twelfths {
    width: 91.66667%; }

  .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; }

  .small--show {
    display: block !important; }

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

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

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

  .small--text-center {
    text-align: center !important; } }
@media only screen and (min-width: 750px), print {
  /** Whole */
  .medium-up--one-whole {
    width: 100%; }

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

  /* Eighths */
  .medium-up--one-eighth {
    width: 12.5%; }

  .medium-up--two-eighths {
    width: 25%; }

  .medium-up--three-eighths {
    width: 37.5%; }

  .medium-up--four-eighths {
    width: 50%; }

  .medium-up--five-eighths {
    width: 62.5%; }

  .medium-up--six-eighths {
    width: 75%; }

  .medium-up--seven-eighths {
    width: 87.5%; }

  /* Tenths */
  .medium-up--one-tenth {
    width: 10%; }

  .medium-up--two-tenths {
    width: 20%; }

  .medium-up--three-tenths {
    width: 30%; }

  .medium-up--four-tenths {
    width: 40%; }

  .medium-up--five-tenths {
    width: 50%; }

  .medium-up--six-tenths {
    width: 60%; }

  .medium-up--seven-tenths {
    width: 70%; }

  .medium-up--eight-tenths {
    width: 80%; }

  .medium-up--nine-tenths {
    width: 90%; }

  /* Twelfths */
  .medium-up--one-twelfth {
    width: 8.33333%; }

  .medium-up--two-twelfths {
    width: 16.66667%; }

  .medium-up--three-twelfths {
    width: 25%; }

  .medium-up--four-twelfths {
    width: 33.33333%; }

  .medium-up--five-twelfths {
    width: 41.66667%; }

  .medium-up--six-twelfths {
    width: 50%; }

  .medium-up--seven-twelfths {
    width: 58.33333%; }

  .medium-up--eight-twelfths {
    width: 66.66667%; }

  .medium-up--nine-twelfths {
    width: 75%; }

  .medium-up--ten-twelfths {
    width: 83.33333%; }

  .medium-up--eleven-twelfths {
    width: 91.66667%; }

  .grid--uniform .medium-up--one-half:nth-child(2n+1),
  .grid--uniform .medium-up--one-third:nth-child(3n+1),
  .grid--uniform .medium-up--one-quarter:nth-child(4n+1),
  .grid--uniform .medium-up--one-fifth:nth-child(5n+1),
  .grid--uniform .medium-up--one-sixth:nth-child(6n+1),
  .grid--uniform .medium-up--two-sixths:nth-child(3n+1),
  .grid--uniform .medium-up--three-sixths:nth-child(2n+1),
  .grid--uniform .medium-up--two-eighths:nth-child(4n+1),
  .grid--uniform .medium-up--four-eighths:nth-child(2n+1),
  .grid--uniform .medium-up--five-tenths:nth-child(2n+1),
  .grid--uniform .medium-up--one-twelfth:nth-child(12n+1),
  .grid--uniform .medium-up--two-twelfths:nth-child(6n+1),
  .grid--uniform .medium-up--three-twelfths:nth-child(4n+1),
  .grid--uniform .medium-up--four-twelfths:nth-child(3n+1),
  .grid--uniform .medium-up--six-twelfths:nth-child(2n+1) {
    clear: both; }

  .medium-up--show {
    display: block !important; }

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

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

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

  .medium-up--text-center {
    text-align: center !important; } }
@media only screen and (min-width: 990px), print {
  /** Whole */
  .large-up--one-whole {
    width: 100%; }

  /* Halves */
  .large-up--one-half {
    width: 50%; }

  /* Thirds */
  .large-up--one-third {
    width: 33.33333%; }

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

  /* Quarters */
  .large-up--one-quarter {
    width: 25%; }

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

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

  /* Fifths */
  .large-up--one-fifth {
    width: 20%; }

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

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

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

  /* Sixths */
  .large-up--one-sixth {
    width: 16.66667%; }

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

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

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

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

  /* Eighths */
  .large-up--one-eighth {
    width: 12.5%; }

  .large-up--two-eighths {
    width: 25%; }

  .large-up--three-eighths {
    width: 37.5%; }

  .large-up--four-eighths {
    width: 50%; }

  .large-up--five-eighths {
    width: 62.5%; }

  .large-up--six-eighths {
    width: 75%; }

  .large-up--seven-eighths {
    width: 87.5%; }

  /* Tenths */
  .large-up--one-tenth {
    width: 10%; }

  .large-up--two-tenths {
    width: 20%; }

  .large-up--three-tenths {
    width: 30%; }

  .large-up--four-tenths {
    width: 40%; }

  .large-up--five-tenths {
    width: 50%; }

  .large-up--six-tenths {
    width: 60%; }

  .large-up--seven-tenths {
    width: 70%; }

  .large-up--eight-tenths {
    width: 80%; }

  .large-up--nine-tenths {
    width: 90%; }

  /* Twelfths */
  .large-up--one-twelfth {
    width: 8.33333%; }

  .large-up--two-twelfths {
    width: 16.66667%; }

  .large-up--three-twelfths {
    width: 25%; }

  .large-up--four-twelfths {
    width: 33.33333%; }

  .large-up--five-twelfths {
    width: 41.66667%; }

  .large-up--six-twelfths {
    width: 50%; }

  .large-up--seven-twelfths {
    width: 58.33333%; }

  .large-up--eight-twelfths {
    width: 66.66667%; }

  .large-up--nine-twelfths {
    width: 75%; }

  .large-up--ten-twelfths {
    width: 83.33333%; }

  .large-up--eleven-twelfths {
    width: 91.66667%; }

  .grid--uniform .large-up--one-half:nth-child(2n+1),
  .grid--uniform .large-up--one-third:nth-child(3n+1),
  .grid--uniform .large-up--one-quarter:nth-child(4n+1),
  .grid--uniform .large-up--one-fifth:nth-child(5n+1),
  .grid--uniform .large-up--one-sixth:nth-child(6n+1),
  .grid--uniform .large-up--two-sixths:nth-child(3n+1),
  .grid--uniform .large-up--three-sixths:nth-child(2n+1),
  .grid--uniform .large-up--two-eighths:nth-child(4n+1),
  .grid--uniform .large-up--four-eighths:nth-child(2n+1),
  .grid--uniform .large-up--five-tenths:nth-child(2n+1),
  .grid--uniform .large-up--one-twelfth:nth-child(12n+1),
  .grid--uniform .large-up--two-twelfths:nth-child(6n+1),
  .grid--uniform .large-up--three-twelfths:nth-child(4n+1),
  .grid--uniform .large-up--four-twelfths:nth-child(3n+1),
  .grid--uniform .large-up--six-twelfths:nth-child(2n+1) {
    clear: both; }

  .large-up--show {
    display: block !important; }

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

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

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

  .large-up--text-center {
    text-align: center !important; } }
/*================ Grid Push Classes ================*/
@media only screen and (min-width: 750px), print {
  /* Halves */
  .medium-up--push-one-half {
    left: 50%; }

  /* Thirds */
  .medium-up--push-one-third {
    left: 33.33333%; }

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

  /* Quarters */
  .medium-up--push-one-quarter {
    left: 25%; }

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

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

  /* Fifths */
  .medium-up--push-one-fifth {
    left: 20%; }

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

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

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

  /* Sixths */
  .medium-up--push-one-sixth {
    left: 16.66667%; }

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

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

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

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

  /* Eighths */
  .medium-up--push-one-eighth {
    left: 12.5%; }

  .medium-up--push-two-eighths {
    left: 25%; }

  .medium-up--push-three-eighths {
    left: 37.5%; }

  .medium-up--push-four-eighths {
    left: 50%; }

  .medium-up--push-five-eighths {
    left: 62.5%; }

  .medium-up--push-six-eighths {
    left: 75%; }

  .medium-up--push-seven-eighths {
    left: 87.5%; }

  /* Tenths */
  .medium-up--push-one-tenth {
    left: 10%; }

  .medium-up--push-two-tenths {
    left: 20%; }

  .medium-up--push-three-tenths {
    left: 30%; }

  .medium-up--push-four-tenths {
    left: 40%; }

  .medium-up--push-five-tenths {
    left: 50%; }

  .medium-up--push-six-tenths {
    left: 60%; }

  .medium-up--push-seven-tenths {
    left: 70%; }

  .medium-up--push-eight-tenths {
    left: 80%; }

  .medium-up--push-nine-tenths {
    left: 90%; }

  /* Twelfths */
  .medium-up--push-one-twelfth {
    left: 8.33333%; }

  .medium-up--push-two-twelfths {
    left: 16.66667%; }

  .medium-up--push-three-twelfths {
    left: 25%; }

  .medium-up--push-four-twelfths {
    left: 33.33333%; }

  .medium-up--push-five-twelfths {
    left: 41.66667%; }

  .medium-up--push-six-twelfths {
    left: 50%; }

  .medium-up--push-seven-twelfths {
    left: 58.33333%; }

  .medium-up--push-eight-twelfths {
    left: 66.66667%; }

  .medium-up--push-nine-twelfths {
    left: 75%; }

  .medium-up--push-ten-twelfths {
    left: 83.33333%; }

  .medium-up--push-eleven-twelfths {
    left: 91.66667%; } }
/*============================================================================
  #Normalize
  Based on normalize.css v3.0.2 | MIT License | git.io/normalize
==============================================================================*/
*, *:before, *:after {
  box-sizing: border-box; }

body {
  margin: 0; }

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

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

a {
  background-color: transparent; }

b,
strong {
  font-weight: 700; }

em {
  font-style: italic; }

small {
  font-size: 80%; }

smaller {
  font-size: 50%; }

large {
  font-size: 115%; }

larger {
  font-size: 140%; }

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

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

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

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

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

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

input[type="search"] {
  -webkit-appearance: none;
  -moz-appearance: none; }

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

td,
th {
  padding: 0; }

textarea {
  overflow: auto;
  -webkit-appearance: none;
  -moz-appearance: none; }

[tabindex='-1']:focus {
  outline: none; }

/*================ #Helper Classes ================*/
.clearfix {
  *zoom: 1; }
  .clearfix:after {
    content: '';
    display: table;
    clear: both; }

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

.js-focus-hidden:focus {
  outline: none; }

/*============================================================================
  Skip to content button
    - Overrides .visually-hidden when focused
==============================================================================*/
.skip-link:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: #666666;
  background-color: #f4f6f8;
  padding: 10px;
  z-index: 10000;
  transition: none; }

/*================ #Basic Styles ================*/
body,
html {
  background-color: #f4f6f8; }

.page-width {
  *zoom: 1;
  max-width: 90%;
  margin: 0 auto;
  padding: 0 10px; }
  .page-width:after {
    content: '';
    display: table;
    clear: both; }
  @media only screen and (min-width: 750px), print {
    .page-width {
      padding: 0 20px; } }

.main-content {
  display: block;
  margin-top: 20px;
  padding-bottom: 20px; }
  @media only screen and (min-width: 750px), print {
    .main-content {
      padding-bottom: 40px; } }

/*================ Typography ================*/
blockquote p + cite {
  margin-top: 10px; }
blockquote cite {
  display: block; }
  blockquote cite:before {
    content: '\2014 \0020'; }

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

pre {
  overflow: auto; }

/*================ #Icons ================*/
.icon {
  display: inline-block;
  vertical-align: middle;
  width: 20px;
  height: 20px; }
  .supports-no-svg .icon {
    display: none; }

.supports-no-svg .icon__fallback-text {
  position: static !important;
  overflow: inherit;
  clip: none;
  height: auto;
  width: auto;
  margin: 0; }

svg.icon:not(.icon--full-color) circle,
svg.icon:not(.icon--full-color) ellipse,
svg.icon:not(.icon--full-color) g,
svg.icon:not(.icon--full-color) line,
svg.icon:not(.icon--full-color) path,
svg.icon:not(.icon--full-color) polygon,
svg.icon:not(.icon--full-color) polyline,
svg.icon:not(.icon--full-color) rect,
symbol.icon:not(.icon--full-color) circle,
symbol.icon:not(.icon--full-color) ellipse,
symbol.icon:not(.icon--full-color) g,
symbol.icon:not(.icon--full-color) line,
symbol.icon:not(.icon--full-color) path,
symbol.icon:not(.icon--full-color) polygon,
symbol.icon:not(.icon--full-color) polyline,
symbol.icon:not(.icon--full-color) rect {
  fill: inherit;
  stroke: inherit; }

/*================ Payment Icons ================*/
.payment-icons {
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  cursor: default; }
  .payment-icons .icon {
    width: 40px;
    height: 24px; }

/*================ Social Icons ================*/
.social-icons .icon {
  width: 24px;
  height: 24px; }

/*================ #Lists ================*/
ul, ol {
  margin: 0;
  padding: 0; }

ol {
  list-style: decimal; }

.list--inline {
  padding: 0;
  margin: 0; }
  .list--inline li {
    display: inline-block;
    margin-bottom: 0; }

.rte ul, .rte ol {
  margin: 0 0 10px 20px; }
.rte ul {
  list-style: disc outside; }
  .rte ul ul {
    list-style: circle outside; }
    .rte ul ul ul {
      list-style: square outside; }

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

/*================ #Rich Text Editor ================*/
.rte__table-wrapper {
  max-width: 100%;
  overflow: auto;
  -webkit-overflow-scrolling: touch; }

/*================ #Links and Buttons ================*/
.btn, .btn--secondary,
.rte .btn--secondary,
.rte .btn,
.rte .btn--secondary {
  display: inline-block;
  width: auto;
  text-decoration: none;
  text-align: center;
  vertical-align: middle;
  white-space: nowrap;
  cursor: pointer;
  border: 1px solid transparent;
  -moz-user-select: none;
  -ms-user-select: none;
  -webkit-user-select: none;
  user-select: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #dac1c0;
  color: black; }
  .btn:hover, .btn--secondary:hover,
  .rte .btn:hover,
  .rte .btn--secondary:hover {
    background-color: #c7a1a0;
    color: black; }
  .btn:active, .btn--secondary:active, .btn:focus, .btn--secondary:focus,
  .rte .btn:active,
  .rte .btn--secondary:active,
  .rte .btn:focus,
  .rte .btn--secondary:focus {
    background-color: #b48280;
    color: black; }
  .btn[disabled], [disabled].btn--secondary,
  .rte .btn[disabled],
  .rte [disabled].btn--secondary {
    cursor: default;
    color: #757575;
    background-color: #d5d5d5; }
  .btn .icon, .btn--secondary .icon,
  .rte .btn .icon,
  .rte .btn--secondary .icon {
    fill: currentColor;
    path: currentColor; }

.btn--secondary,
.rte .btn--secondary {
  background-color: #b4b6b8; }
  .btn--secondary:hover,
  .rte .btn--secondary:hover {
    background-color: #a7a9ac;
    color: #1c1d1d; }
  .btn--secondary:active, .btn--secondary:focus,
  .rte .btn--secondary:active,
  .rte .btn--secondary:focus {
    background-color: #8d9093;
    color: #1c1d1d; }

/*================ Force an input/button to look like a text link ================*/
.text-link {
  display: inline;
  border: 0 none;
  background: none;
  padding: 0;
  margin: 0; }

/*================ #Tables ================*/
table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0; }

th {
  font-weight: 700; }

th, td {
  text-align: left;
  border: 1px solid #f4f6f8; }

/*============================================================================
  Responsive tables, defined with .responsive-table on table element.
==============================================================================*/
@media only screen and (max-width: 749px), print {
  .responsive-table thead {
    display: none; }
  .responsive-table tr {
    display: block; }
  .responsive-table tr,
  .responsive-table td {
    float: left;
    clear: both;
    width: 100%; }
  .responsive-table th,
  .responsive-table td {
    display: block;
    text-align: right;
    padding: 10px;
    margin: 0; }
  .responsive-table td:before {
    content: attr(data-label);
    float: left;
    text-align: center;
    font-size: 14px;
    padding-right: 10px; } }
.responsive-table__row {
  border-bottom: 1px solid #f4f6f8; }

/*================ #Images and Iframes ================*/
svg:not(:root) {
  overflow: hidden; }

.video-wrapper {
  position: relative;
  overflow: hidden;
  padding-bottom: 56.25%;
  height: auto;
  margin: 0 auto; }
  .video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/*================ Forms ================*/
@media only screen and (max-width: 989px), print {
  input,
  select,
  textarea {
    font-size: 16px; } }
fieldset {
  border: 1px solid #f4f6f8;
  margin: 0 0 20px;
  padding: 10px; }

legend {
  border: 0;
  padding: 0; }

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

input,
textarea,
select {
  border: 1px solid #f4f6f8;
  border-radius: 0;
  max-width: 100%; }
  input:focus,
  textarea:focus,
  select:focus {
    border-color: #d5dde4; }
  input[disabled],
  textarea[disabled],
  select[disabled] {
    cursor: default;
    background-color: #d5d5d5;
    border-color: #757575; }

textarea {
  min-height: 100px; }

/*================ Error styles ================*/
input.input--error,
select.input--error,
textarea.input--error {
  border-color: #ec523e;
  background-color: #ec523e;
  color: #ec523e; }

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-position: right center;
  background-image: url("/cdn/shop/t/45/assets/ico-select.svg?v=1245925112819775442");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-color: transparent;
  padding-right: 28px;
  text-indent: 0.01px;
  text-overflow: '';
  cursor: pointer;
  /*================ Hide the svg arrow in IE9 ================*/ }
  .ie9 select {
    padding-right: 10px;
    background-image: none; }

optgroup {
  font-weight: 700; }

option {
  color: #000;
  background-color: #fff; }

select::-ms-expand {
  display: none; }

/*================ Form labels ================*/
.label--hidden {
  position: absolute;
  height: 0;
  width: 0;
  margin-bottom: 0;
  overflow: hidden;
  clip: rect(1px, 1px, 1px, 1px); }
  .ie9 .label--hidden {
    position: static;
    height: auto;
    width: auto;
    margin-bottom: 2px;
    overflow: visible;
    clip: initial; }

label[for] {
  cursor: pointer; }
/*============================================================================
  #Site Nav and Dropdowns
==============================================================================*/
.nav-bar {
  top: 110%;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #182e49; }
  .nav-bar a, .nav-bar button {
    color: white; }
    .nav-bar a:active, .nav-bar a:focus, .nav-bar button:active, .nav-bar button:focus {
      opacity: 0.9; }

.site-nav {
  display: none;
  margin: 0;
  text-align: left;
  margin-left: -15px;
  font-family: Montserrat, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 14px;
  text-transform: uppercase;
  cursor: default; }
  .site-nav li {
    margin: 0;
    display: block;
    position: relative; }
  .site-nav > li {
    display: inline-block; }
  .site-nav a, .site-nav button {
    display: block;
    text-decoration: none;
    padding: 15px;
    white-space: nowrap; }
  .site-nav button {
    background: none;
    border: 0;
    font-size: 14px;
    text-transform: uppercase; }
  .site-nav .customer-navlink {
    color: white;
    background-color: #2b5283;
    border-bottom: 0;
    border-top: 1px solid #1e3a5c;
    margin-top: -1px; }

/*================ Small screen nav styles ================*/
@media screen and (max-width: 480px) {
  .show-nav .nav-bar {
    bottom: 0;
    top: 50px; }

  .show-nav,
  .show-nav body {
    height: 100%;
    overflow: hidden; } }
/*================ Medium-down screen nav styles ================*/
@media screen and (max-width: 768px) {
  .nav-bar {
    position: fixed;
    z-index: 2000;
    -webkit-transition: all 600ms cubic-bezier(0.47, 0.5, 0, 0.95);
    -moz-transition: all 600ms cubic-bezier(0.47, 0.5, 0, 0.95);
    -ms-transition: all 600ms cubic-bezier(0.47, 0.5, 0, 0.95);
    -o-transition: all 600ms cubic-bezier(0.47, 0.5, 0, 0.95);
    transition: all 600ms cubic-bezier(0.47, 0.5, 0, 0.95); }
    .show-nav .nav-bar {
      max-height: 100%;
      overflow-y: scroll;
      -webkit-overflow-scrolling: touch;
      -webkit-transition: all 450ms cubic-bezier(0.47, 0, 0, 0.95);
      -moz-transition: all 450ms cubic-bezier(0.47, 0, 0, 0.95);
      -ms-transition: all 450ms cubic-bezier(0.47, 0, 0, 0.95);
      -o-transition: all 450ms cubic-bezier(0.47, 0, 0, 0.95);
      transition: all 450ms cubic-bezier(0.47, 0, 0, 0.95); }
    .nav-bar .wrapper {
      padding: 15px 0 0; }
      .show-nav .nav-bar .wrapper {
        min-height: 101%; }
    .nav-bar .search-bar {
      margin: 0 15px 15px;
      width: auto; }
      .nav-bar .search-bar input[type="search"]::-webkit-input-placeholder {
        color: white; }
      .nav-bar .search-bar input::-webkit-input-placeholder {
        color: white; }
      .nav-bar .search-bar .search-bar--submit .icon {
        color: white; } }
/*================ Medium screen size only ================*/
@media screen and (min-width: 481px) and (max-width: 768px) {
  .show-nav .nav-bar {
    top: 50px;
    bottom: 0; } }
/*================ Large screen bar navigation ================*/
@media screen and (min-width: 769px) {
  .nav-bar .search-bar {
    display: none; }

  .site-nav {
    display: block; }

  .mobile-nav {
    display: none; } }
/*================ Dropdowns ================*/
.icon-arrow-down {
  position: relative;
  top: -2px;
  font-size: 12px; }
  .mobile-nav--dropdown .icon-arrow-down {
    -ms-transform: none;
    -webkit-transform: none;
    transform: none; }
  .mobile-nav--has-dropdown .icon-arrow-down {
    top: 0; }
  .site-nav--dropdown .icon-arrow-down {
    display: inline-block;
    line-height: 1;
    top: 0;
    -ms-transform: rotate(-90deg);
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg); }

.site-nav--dropdown,
.site-nav--dropdown-grandchild {
  position: absolute;
  top: 100%;
  left: 0;
  border: 1px solid #ececec;
  background-color: white;
  opacity: 0;
  pointer-events: none;
  z-index: 20;
  margin: 0;
  -webkit-transition: all 150ms;
  -moz-transition: all 150ms;
  -ms-transition: all 150ms;
  -o-transition: all 150ms;
  transition: all 150ms; }
  .site-nav--dropdown--more .site-nav--dropdown, .site-nav--dropdown--more
  .site-nav--dropdown-grandchild {
    top: -1px;
    left: auto;
    right: 100%; }
  .no-touch .site-nav--has-dropdown:hover > .site-nav--dropdown, .site-nav--has-dropdown.nav-hover > .site-nav--dropdown, .nav-focus + .site-nav--dropdown, .nav-hover > .site-nav--dropdown, .no-touch .site-nav--has-dropdown:hover >
  .site-nav--dropdown-grandchild, .site-nav--has-dropdown.nav-hover >
  .site-nav--dropdown-grandchild, .nav-focus +
  .site-nav--dropdown-grandchild, .nav-hover >
  .site-nav--dropdown-grandchild {
    opacity: 1;
    box-shadow: 0 5px 40px rgba(0, 0, 0, 0.05);
    pointer-events: auto;
    -webkit-transition: all 90ms;
    -moz-transition: all 90ms;
    -ms-transition: all 90ms;
    -o-transition: all 90ms;
    transition: all 90ms; }
  .site-nav--dropdown a,
  .site-nav--dropdown-grandchild a {
    color: #528ec1;
    text-transform: none;
    padding: 10px 45px 10px 15px; }
    .site-nav--dropdown a:hover, .site-nav--dropdown a:active, .site-nav--dropdown a:focus,
    .site-nav--dropdown-grandchild a:hover,
    .site-nav--dropdown-grandchild a:active,
    .site-nav--dropdown-grandchild a:focus {
      color: #3b74a5; }
    .site-nav--dropdown a:focus,
    .site-nav--dropdown-grandchild a:focus {
      background-color: #f2f2f2; }

.site-nav--dropdown-grandchild {
  top: -1px;
  left: 100%; }
  .site-nav--dropdown-grandchild.nav-outside {
    left: -100%; }

.mobile-nav {
  text-align: left;
  border-top: 1px solid #25466f;
  margin: 0;
  font-family: Montserrat, sans-serif;
  font-weight: 500;
  font-style: normal;
  font-size: 14px;
  text-transform: uppercase;
  cursor: default; }
  .mobile-nav li {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    -webkit-justify-content: space-between;
    -ms-justify-content: space-between;
    justify-content: space-between;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    border-bottom: 1px solid #315e96;
    -webkit-tap-highlight-color: rgba(255, 255, 255, 0.2);
    margin: 0; }
    .mobile-nav li.mobile-nav--has-dropdown.nav-active {
      background-color: #2b5283; }
    .mobile-nav li.mobile-nav--has-dropdown-grandchild.nav-active {
      background-color: #386aa9; }
  .mobile-nav a {
    -webkit-flex: 1;
    -moz-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: block;
    text-decoration: none;
    padding: 15px; }

.mobile-nav--button {
  border-top: none;
  border-right: 1px solid #315e96;
  border-bottom: none;
  border-left: 1px solid #315e96;
  background: transparent;
  position: relative;
  z-index: 10;
  padding: 17px;
  display: inline-block;
  transition: transform; }
  .mobile-nav--button.nav-active {
    -ms-transform: rotate(180deg);
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg); }
  .mobile-nav--button > a {
    padding: 0; }
  .mobile-nav--button:before {
    color: white; }

.mobile-nav--dropdown,
.mobile-nav--dropdown-grandchild {
  width: 100%;
  display: none;
  margin: 0; }
  .mobile-nav--dropdown > li,
  .mobile-nav--dropdown-grandchild > li {
    float: none;
    width: 100%;
    border: none;
    text-transform: none;
    border-top: 1px solid #1e3a5c; }
  .mobile-nav--dropdown .mobile-nav--button,
  .mobile-nav--dropdown-grandchild .mobile-nav--button {
    border-left: 1px solid #1e3a5c;
    border-right: 1px solid #1e3a5c; }

.mobile-nav--has-grandchildren a {
  padding-left: 30px; }

.mobile-nav--dropdown-grandchild a {
  padding-left: 45px; }

.nav-active > .mobile-nav--dropdown,
.nav-active > .mobile-nav--dropdown-grandchild {
  display: block; }

/*============================================================================
  #Mobile Nav Bar
==============================================================================*/
#mobileNavBar {
  display: none;
  width: 100%;
  background-color: #182e49;
  /*================ Small mobile nav bar ================*/
  /*================ Medium-down mobile nav bar ================*/ }
  #mobileNavBar:after {
    content: "";
    display: table;
    clear: both; }
  #mobileNavBar .display-table-cell {
    padding: 0 15px; }
  #mobileNavBar .cart-toggle {
    text-align: right; }
  @media screen and (max-width: 480px) {
    #mobileNavBar {
      position: fixed;
      top: 0;
      left: 0;
      right: 0; } }
  @media screen and (max-width: 768px) {
    #mobileNavBar {
      display: table;
      height: 50px;
      z-index: 9; }
      .show-nav #mobileNavBar {
        position: fixed;
        left: 0;
        top: 0; } }

.mobileNavBar-link {
  display: block;
  padding: 10px 0;
  color: white;
  cursor: pointer;
  border: 0;
  background: none; }
  .mobileNavBar-link:hover, .mobileNavBar-link:focus {
    color: white; }
  .mobileNavBar-link.menu-toggle .icon {
    font-size: 12px;
    margin-right: 10px; }

@media screen and (max-width: 768px) {
  :target {
    padding-top: 50px; } }
/*================ #Giftcard Template ================*/
.giftcard__qr-code img {
  margin: 0 auto; }

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

.giftcard__wrap {
  margin: 0 auto 20px; }

/*================ Print Giftcard Styles ================*/
@media print {
  @page {
    margin: 0.5cm; }

  p {
    orphans: 3;
    widows: 3; }

  html, body {
    background-color: #fff;
    color: #000; }

  .giftcard__print-link,
  .giftcard__apple-wallet {
    display: none; } }
/*================ GLOBAL ================*/
/*================ Prefix mixins ================*/
/*============================================================================
  Flexbox prefix mixins from Bourbon
    https://github.com/thoughtbot/bourbon/blob/master/app/assets/stylesheets/css3/_flex-box.scss
==============================================================================*/
/*================ Style mixins ================*/
.main-content {
  margin-top: 30px;
  padding-bottom: 40px; }
  @media only screen and (min-width: 750px), print {
    .main-content {
      margin-top: 60px;
      padding-bottom: 80px; } }

.main-content--flush {
  margin-top: 0; }

.full-width {
  padding: 80px 20px;
  background-color: #f4f6f8; }

.full-width--return-link {
  margin-bottom: -40px; }
  @media only screen and (min-width: 750px), print {
    .full-width--return-link {
      margin-bottom: -80px; } }
  .content-block + .full-width--return-link {
    margin-top: -20px; }

hr {
  margin: 20px 0;
  border-color: #485d72;
  border-style: solid;
  border-width: 2px 0 0 0; }

/*================ Empty pages (404, cart) ================*/
.page-empty {
  padding: 120px 0;
  margin-bottom: 20px; }

/*================ Index sections ================*/
.index-section {
  position: relative;
  margin-bottom: 30px; }
  .index-section:last-child {
    margin-bottom: 0; }

.index-section--page-content {
  margin-top: 50px;
  margin-bottom: 0; }
  @media only screen and (min-width: 750px), print {
    .index-section--page-content {
      margin-top: 80px;
      margin-bottom: 80px; } }

/*================ Grid | Half gutters ================*/
.grid--half-gutters {
  margin-left: -10px; }
  .grid--half-gutters > .grid__item {
    padding-left: 10px; }

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

/*================ Grid | Vertically centered items ================*/
.grid--table {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-left: 0; }
  .grid--table > .grid__item {
    float: none;
    display: table-cell;
    vertical-align: middle;
    padding-left: 0; }

.medium-up--grid--table {
  display: table;
  table-layout: fixed;
  width: 100%;
  margin-left: 0; }
  .medium-up--grid--table > .grid__item {
    float: none;
    display: table-cell;
    vertical-align: middle;
    padding-left: 0; }
  @media only screen and (max-width: 749px), print {
    .medium-up--grid--table {
      display: block; }
      .medium-up--grid--table > .grid__item {
        display: block; } }

body,
input,
textarea,
button,
select {
  font-size: 17px;
  font-family: "PT Sans", "HelveticaNeue", "Helvetica Neue", sans-serif;
  line-height: 1.375; }

@media only screen and (max-width: 989px), print {
  input,
  textarea {
    font-size: 16px; } }
/*================ Headings ================*/
h1, .h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  color: #222222;
  margin: 0 0 0.58824em; }
  h1 a, .h1 a,
  h2 a,
  .h2 a,
  h3 a,
  .h3 a,
  h4 a,
  .h4 a,
  h5 a,
  .h5 a,
  h6 a,
  .h6 a {
    color: inherit;
    text-decoration: none;
    font-weight: inherit; }

h2, .h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
  letter-spacing: inherit;
  text-transform: inherit;
  font-family: "PT Sans", "HelveticaNeue", "Helvetica Neue", sans-serif;
  font-weight: 700; }

h1, .h1 {
  font-family: "Lora", serif;
  font-weight: 700;
  text-transform: uppercase;
  font-size: 1.76471em; }
  @media only screen and (min-width: 750px), print {
    h1, .h1 {
      font-size: 2.11765em; } }

h2, .h2 {
  font-size: 1.76471em; }

h3, .h3 {
  font-size: 1.41176em; }

h4, .h4 {
  font-size: 1.05882em;
  text-transform: uppercase; }

h5, .h5 {
  font-size: 1.17647em; }

h6, .h6 {
  font-size: 0.94118em; }

/*================ RTE headings ================*/
.rte {
  *zoom: 1;
  margin-bottom: 20px; }
  .rte:after {
    content: '';
    display: table;
    clear: both; }
  .rte:last-child {
    margin-bottom: 0; }
  .rte h1, .rte .h1,
  .rte h2,
  .rte .h2,
  .rte h3,
  .rte .h3,
  .rte h4,
  .rte .h4,
  .rte h5,
  .rte .h5,
  .rte h6,
  .rte .h6 {
    margin-top: 40px; }
    .rte h1:first-child, .rte .h1:first-child,
    .rte h2:first-child,
    .rte .h2:first-child,
    .rte h3:first-child,
    .rte .h3:first-child,
    .rte h4:first-child,
    .rte .h4:first-child,
    .rte h5:first-child,
    .rte .h5:first-child,
    .rte h6:first-child,
    .rte .h6:first-child {
      margin-top: 0; }
  .rte p {
    margin: 0 0 20px; }
  .rte li {
    margin-bottom: 10px; }
    .rte li:last-child {
      margin-bottom: 0; }

/*================ Paragraph styles ================*/
p {
  margin: 0 0 10px; }
  p:last-child {
    margin-bottom: 0; }

/*================ Blockquote ================*/
blockquote {
  color: #222222;
  font-size: 1.17647em;
  font-weight: 700;
  text-align: center; }
  blockquote cite {
    font-size: 0.85em;
    font-weight: 400; }
  @media only screen and (max-width: 749px), print {
    blockquote {
      margin-left: 0;
      margin-right: 0; } }

/*================ Lists ================*/
.list--no-bullets {
  list-style: none; }

.list--bold {
  font-weight: 700;
  font-size: 0.88235em; }

/*================ Form elements ================*/
label {
  font-size: 0.70588em;
  font-weight: 700;
  color: #000
  text-transform: uppercase;
  margin-bottom: 13px; }

/*================ Blog styles ================*/
.blog__meta {
  font-size: 0.82353em; }

.blog__rss-link .icon-rss {
  fill: currentColor;
  width: 18px;
  height: 18px;
  vertical-align: baseline; }

/*================ Tables ================*/
table {
  background-color: #f4f6f8; }

td,
th {
  padding: 10px;
  border: 1px solid white; }

/*================ Forms and inputs ================*/
::-webkit-input-placeholder {
  color: #666666;
  opacity: 0.6; }

:-moz-placeholder {
  color: #666666;
  opacity: 0.6; }

:-ms-input-placeholder {
  color: #666666;
  opacity: 0.6; }

input,
textarea,
select {
  background-color: #cecece;
  color: #333333;
  border: 0;
  max-width: 100%; }
  input[disabled],
  textarea[disabled],
  select[disabled] {
    color: rgba(0, 0, 0, 0.4); }
  input.input--error,
  textarea.input--error,
  select.input--error {
    color: white; }
    input.input--error::-webkit-input-placeholder,
    textarea.input--error::-webkit-input-placeholder,
    select.input--error::-webkit-input-placeholder {
      color: white;
      opacity: 0.6; }
    input.input--error:-moz-placeholder,
    textarea.input--error:-moz-placeholder,
    select.input--error:-moz-placeholder {
      color: white;
      opacity: 0.6; }
    input.input--error:-ms-input-placeholder,
    textarea.input--error:-ms-input-placeholder,
    select.input--error:-ms-input-placeholder {
      color: white;
      opacity: 0.6; }

.input--content-color {
  background-color: white; }

input,
textarea {
  padding: 13px 15px; }

input[type="search"] {
  padding-right: 0; }

select {
  padding-top: 13px;
  padding-left: 15px;
  padding-bottom: 13px; }

.form-vertical input,
.form-vertical select,
.form-vertical textarea {
  display: block;
  width: 100%;
  margin-bottom: 10px; }
.form-vertical input[type="radio"],
.form-vertical input[type="checkbox"] {
  display: inline-block;
  width: auto;
  margin-right: 5px; }
.form-vertical input[type="submit"],
.form-vertical .btn,
.form-vertical .btn--secondary {
  display: inline-block; }

textarea {
  min-height: 100px; }

/*================ Form feedback messages ================*/
.note,
.form-success,
.errors {
  padding: 13px;
  margin: 0 0 10px; }

.note {
  border: 1px solid #f4f6f8; }

.form-success {
  background-color: #59ac6c;
  color: white; }

.errors {
  background-color: #ec523e;
  color: white; }

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

/*============================================================================
  Input groups
  - Align a text input beside a submit button without
    any space between them. The button will size it's parent
    based on the 1% width below while maintaining its
    padding and styles.
==============================================================================*/
.input-group {
  position: relative;
  display: table;
  width: 100%;
  border-collapse: separate; }
  .form-vertical .input-group {
    margin-bottom: 0; }

.input-group__field,
.input-group__btn {
  display: table-cell;
  vertical-align: middle;
  margin: 0; }

.input-group__field,
.input-group__btn .btn,
.input-group__btn .btn--secondary {
  height: 48px;
  padding-top: 0;
  padding-bottom: 0; }

.input-group__field {
  width: 100%; }
  .form-vertical .input-group__field {
    margin: 0; }

.input-group__btn {
  white-space: nowrap;
  width: 1%; }
  .input-group__btn .icon-arrow-right {
    width: 14px;
    height: 17px; }

/*================ Theme links and buttons ================*/
.btn, .btn--secondary,
.rte .btn--secondary,
.btn--secondary {
  font-size: 0.76471em;
  font-weight: 700;
  letter-spacing: 0.15em;
  text-transform: uppercase;
  padding: 15px 45px;
  transition: color 0.1s ease-in, background-color 0.1s ease-in; }

.btn--narrow {
  padding-left: 15px;
  padding-right: 15px; }

.btn--full {
  display: block;
  width: 100%; }

/*================ Default link styles ================*/
a,
.link-accent-color {
  color: #1b6cff;
  text-decoration: none;
  transition: color 0.1s ease-in, background-color 0.1s ease-in; }
  a:hover, a:focus,
  .link-accent-color:hover,
  .link-accent-color:focus {
    color: #1b6cff; }

.text-link {
  transition: color 0.1s ease-in, background-color 0.1s ease-in; }

.link-body-color {
  color: #4e8dff;
  /* color: $color-body-text; */
  transition: color 0.1s ease-in, background-color 0.1s ease-in; }
  .link-body-color:hover, .link-body-color:focus {
    color: #81aeff; }

/*================ Return link ================*/
.return-link {
  display: block;
  text-align: center;
  margin-bottom: 0;
  font-size: 1.41176em; }
  .return-link .icon {
    fill: currentColor; }

/*================ TEMPLATES ================*/
/*============= Templates | Password page =============*/
.template-password {
  height: 100vh;
  background-color: #b4b6b8;
  color: #1c1d1d; }
  .ie9 .template-password {
    height: auto;
    padding: 80px 0; }

.password-page {
  display: table;
  height: 100%;
  width: 100%; }
  .password-page a {
    color: black; }
  .password-page h1, .password-page .h1,
  .password-page h2,
  .password-page .h2,
  .password-page h3,
  .password-page .h3,
  .password-page h4,
  .password-page .h4,
  .password-page h5,
  .password-page .h5,
  .password-page h6,
  .password-page .h6 {
    color: #1c1d1d; }
  .password-page label {
    color: #1c1d1d; }

.password-page__inner {
  display: table-cell;
  vertical-align: middle; }

.password-page__content,
.password-modal__content {
  max-width: 450px;
  margin: 0 auto; }

.password-page__content {
  padding: 20px 0; }

.password-logo {
  margin-top: 10px;
  margin-bottom: 20px; }

.password-logo__image {
  max-width: 100%; }

.password-page__title {
  font-size: 2.94118em;
  line-height: 1;
  margin-bottom: 20px; }

.password-page__message {
  font-size: 1.05882em;
  margin-bottom: 40px; }

.password-signup-form {
  margin-bottom: 80px; }

.password-social-sharing {
  margin-bottom: 80px; }

/*================ Login link ================*/
.password-login-link {
  display: block;
  padding: 20px;
  text-align: center; }
  @media only screen and (min-width: 750px), print {
    .password-login-link {
      position: absolute;
      top: 0;
      right: 0; } }
  .password-login-link .icon {
    width: 12px;
    height: 1em;
    margin-right: 6.66667px;
    fill: currentColor; }

/*================ Login modal ================*/
.password-login-form {
  margin-bottom: 40px; }

/*================ Password svg icons ================*/
.icon-shopify-logo {
  width: 87.42857px;
  height: 25.5px;
  margin-left: 6.66667px;
  fill: currentColor; }

/*============= Templates | Gift card page =============*/
.template-giftcard {
  background-color: #b4b6b8; }

.giftcard__header {
  margin: 80px auto 40px; }

.giftcard__content {
  background-color: white;
  max-width: 540px;
  margin: 0 auto 40px;
  padding: 20px; }

.giftcard__shop-url {
  display: none; }

/*================ Giftcard image, amount, and code ================*/
.giftcard__wrap {
  position: relative; }
  .giftcard__wrap:before, .giftcard__wrap:after {
    content: '';
    display: block;
    position: absolute;
    background-color: white;
    height: 40px;
    width: 40px;
    border: 1px solid rgba(0, 0, 0, 0.1); }
  .giftcard__wrap:before {
    top: -2px;
    left: -2px;
    border-radius: 12px 0 100% 0;
    box-shadow: 2px 2px 1px rgba(0, 0, 0, 0.05); }
  .giftcard__wrap:after {
    bottom: -2px;
    right: -2px;
    border-radius: 100% 0 12px 0;
    box-shadow: -2px -2px 1px rgba(0, 0, 0, 0.05); }

.giftcard__image {
  display: block;
  border-radius: 12px;
  overflow: hidden; }

.giftcard__amount-wrapper {
  position: absolute;
  top: 6.66667px;
  right: 10px; }

.giftcard__amount,
.giftcard__amount-remaining {
  color: white; }

.giftcard__amount {
  font-size: 1.64706em;
  margin-bottom: 0;
  text-shadow: 2px 2px 1px rgba(0, 0, 0, 0.1); }
  @media only screen and (min-width: 750px), print {
    .giftcard__amount {
      font-size: 2.35294em; } }

.giftcard__code {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 20px; }

.giftcard__code-bubble {
  position: relative;
  display: inline-block;
  background-color: white;
  color: #666666;
  padding: 10px 20px;
  font-size: 0.88235em;
  border-radius: 4px; }
  @media only screen and (min-width: 750px), print {
    .giftcard__code-bubble {
      font-size: 1.17647em; } }
  .giftcard__code-bubble:after {
    content: '';
    display: block;
    position: absolute;
    top: 5px;
    bottom: 5px;
    left: 5px;
    right: 5px;
    border: 1px dashed #666666;
    border-radius: 4px;
    opacity: 0.3; }

/*================ Print styles ================*/
@media print {
  .giftcard__shop-url {
    display: block; }

  .giftcard__wrap:before, .giftcard__wrap:after {
    display: none; }

  .giftcard__amount-wrapper {
    background-color: #fff;
    border-radius: 4px;
    padding: 0 6.66667px; } }
/*================ VENDOR ================*/
/*============================================================================
  Slick Slider 1.5.8

  - If upgrading Slick's styles, use the following variables/functions
    instead of the slick defaults (from slick-theme.scss)
  - This file includes default slick.scss styles (at Slick Slider SCSS)
    and slick-theme.scss (at Slick Slider Theme). Upgrade each area individually
==============================================================================*/
/*================ Slick Slider SCSS ================*/
.slick-slider {
  position: relative;
  display: block;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -ms-touch-action: pan-y;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent; }

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

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

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

.slick-slide {
  float: left;
  height: 100%;
  min-height: 1px;
  display: none; }
  [dir="rtl"] .slick-slide {
    float: right; }
  .slick-slide img {
    display: block; }
  .slick-slide.slick-loading img {
    display: none; }
  .slick-slide.dragging img {
    pointer-events: none; }
  .slick-initialized .slick-slide {
    display: block; }
  .slick-loading .slick-slide {
    visibility: hidden; }
  .slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent; }

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

/*================ Slick Slider Theme ================*/
.slick-loading .slick-list {
  background: white url(/cdn/shop/t/45/assets/ajax-loader.gif?v=4135686330247201572) center center no-repeat; }

/* Icons */
/* Arrows */
.slick-prev,
.slick-next {
  position: absolute;
  display: block;
  height: 20px;
  width: 20px;
  line-height: 0px;
  font-size: 0px;
  cursor: pointer;
  background: transparent;
  color: transparent;
  top: 50%;
  margin-top: -10px\9;
  /*lte IE 8*/
  -webkit-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  transform: translate(0, -50%);
  padding: 0;
  border: none;
  outline: none; }
  .slick-prev:hover, .slick-prev:focus,
  .slick-next:hover,
  .slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent; }
    .slick-prev:hover:before, .slick-prev:focus:before,
    .slick-next:hover:before,
    .slick-next:focus:before {
      opacity: 1; }
  .slick-prev.slick-disabled:before,
  .slick-next.slick-disabled:before {
    opacity: 0.25; }

.slick-prev:before, .slick-next:before {
  font-family: "slick-icons, sans-serif";
  font-size: 20px;
  line-height: 1;
  color: black;
  opacity: 0.75;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

.slick-prev {
  left: -25px; }
  [dir="rtl"] .slick-prev {
    left: auto;
    right: -25px; }
  .slick-prev:before {
    content: "\2190"; }
    [dir="rtl"] .slick-prev:before {
      content: "\2192"; }

.slick-next {
  right: -25px; }
  [dir="rtl"] .slick-next {
    left: -25px;
    right: auto; }
  .slick-next:before {
    content: "\2192"; }
    [dir="rtl"] .slick-next:before {
      content: "\2190"; }

/* Dots */
.slick-slider {
  margin-bottom: 30px; }

.slick-dots {
  position: absolute;
  bottom: -45px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  width: 100%; }
  .slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer; }
    .slick-dots li button {
      border: 0;
      background: transparent;
      display: block;
      height: 20px;
      width: 20px;
      outline: none;
      line-height: 0px;
      font-size: 0px;
      color: transparent;
      padding: 5px;
      cursor: pointer; }
      .slick-dots li button:hover, .slick-dots li button:focus {
        outline: none; }
        .slick-dots li button:hover:before, .slick-dots li button:focus:before {
          opacity: 1; }
      .slick-dots li button:before {
        position: absolute;
        top: 0;
        left: 0;
        content: "\2022";
        width: 20px;
        height: 20px;
        font-family: "slick-icons, sans-serif";
        font-size: 6px;
        line-height: 20px;
        text-align: center;
        color: black;
        opacity: 0.25;
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale; }
    .slick-dots li.slick-active button:before {
      color: white;
      opacity: 0.75; }

/*================ MODULES ================*/
/*================ Site Header ================*/
.site-header {
  /* background-color: $color-header; */
  background: url("/cdn/shop/files/metal8.jpg?11406188484140504826") #b4b6b8 no-repeat center center;
  background-size: 100%; }

.site-header__upper {
  padding-top: 10px;
  padding-bottom: 10px; }
  @media only screen and (min-width: 750px), print {
    .site-header__upper {
      padding-top: 20px;
      padding-bottom: 20px; } }

.site-header__logo {
  display: inline-block;
  margin-bottom: 0;
  vertical-align: middle;
  max-width: 100%;
  -webkit-print-color-adjust: exact; }
  .site-header__logo a {
    display: block;
    color: black; }
    @media only screen and (min-width: 750px), print {
      .site-header__logo a {
        display: block;
        float: left; } }

.site-header__shop-name--small {
  font-size: 20px; }

.template-giftcard .site-header__logo-link {
  display: inline-block;
  float: none; }

/*================ Menu toggle, Cart, and Search icons ================*/
.site-header__link {
  display: inline-block;
  color: #ffffff;
  padding: 10px;
  line-height: 1; }
  .site-header__link .icon {
    width: 40px;
    height: 40px;
    fill: currentColor; }
  .site-header__link .icon-cart {
    position: relative;
    top: -1px; }
  .site-header__link:hover, .site-header__link:focus {
    color: #81aeff; }

.site-header__menu-toggle--close {
  display: none; }

.site-header__link.js-drawer-open .site-header__menu-toggle--open {
  display: none; }
.site-header__link.js-drawer-open .site-header__menu-toggle--close {
  display: block; }

/*================ Cart icon ================*/
.site-header__cart {
  position: relative; }

.site-header__cart-indicator {
  position: absolute;
  /*
  bottom: $gutter-site - 1; // account for site-header__link padding
  right: ($gutter-site / 2) - 2;
  */
  bottom: 30px;
  right: 12px;
  background-color: #81aeff;
  height: 20px;
  width: 20px;
  border-radius: 20px; }
  .supports-no-svg .site-header__cart-indicator {
    bottom: auto;
    top: -6px;
    right: -10px; }

/*================ Header search bar ================*/
.site-header__search {
  position: relative;
  display: inline; }

.site-header__search-inner {
  position: absolute;
  right: 0;
  top: -4px;
  bottom: 0;
  display: block;
  width: 200px; }
  @media only screen and (min-width: 990px), print {
    .site-header__search-inner {
      width: 250px; } }

.site-header__search-input {
  position: absolute;
  opacity: 0;
  top: -4px;
  right: 8px;
  width: 0;
  padding: 10px 0;
  font-size: 0.76471em;
  color: #1c1d1d;
  background-color: #9fa2a4;
  transition: opacity 0.15s ease-in, width 0.15s ease-in;
  z-index: 1; }
  .site-header__search-input:focus, .site-header__search-input.site-header__search-input--visible {
    width: 100%;
    opacity: 1;
    padding-left: 10px;
    padding-right: 30px; }
  .site-header__search-input::-webkit-input-placeholder {
    color: black;
    opacity: 0.6; }
  .site-header__search-input:-moz-placeholder {
    color: black;
    opacity: 0.6; }
  .site-header__search-input:-ms-input-placeholder {
    color: black;
    opacity: 0.6; }

.site-header__search-submit {
  position: relative;
  z-index: 2; }

/*================ Nav Bar ================*/
.nav-bar {
  position: relative;
  border-top: 1px solid black;
  background-color: #25466f;
  z-index: 5; }
  .nav-bar:after {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    pointer-events: none;
    z-index: 6; }

/*================ Sticky bar ================*/
.sticky {
  position: relative;
  overflow: visible;
  z-index: 5; }

.sticky--active {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  -ms-transform: translate3d(0, -100%, 0);
  -webkit-transform: translate3d(0, -100%, 0);
  transform: translate3d(0, -100%, 0); }

.sticky--open {
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  transition: all 0.35s cubic-bezier(0.33, 0.59, 0.14, 1); }

.sticky--active .sticky-hidden {
  display: none; }

.sticky-only {
  position: relative;
  display: none;
  z-index: 7; }
  .sticky--active .sticky-only {
    display: block; }

/*================ Site Nav ================*/
.site-nav {
  margin-left: -20px;
  white-space: nowrap; }

.site-nav__item--no-columns {
  position: relative; }
  .site-nav__item--no-columns .meganav {
    right: auto;
    min-width: 200px; }
  .site-nav__item--no-columns .meganav__list {
    width: 100%; }

.site-nav__link {
  font-size: 0.82353em;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  position: relative;
  color: black;
  color: rgba(0, 0, 0, 0.7);
  padding: 20px;
  z-index: 7; }
  .site-nav__link .icon {
    position: relative;
    top: -1.5px;
    width: 9px;
    height: 9px;
    fill: currentColor; }
  .site-nav__link:hover, .site-nav__link:focus, .site-nav--active .site-nav__link {
    color: black; }
  .site-nav__link:focus {
    background-color: #9fa2a4; }
  .site-nav--active .site-nav__link:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 20px;
    right: 20px;
    height: 3px;
    background-color: #81aeff; }

.site-nav__link--compressed {
  margin-left: -20px; }
  .site-nav__link--compressed .icon {
    width: 22px;
    height: 22px; }

.site-nav__link-menu-label {
  display: none; }
  @media only screen and (min-width: 750px), print {
    .site-nav__link-menu-label {
      display: inline-block; } }

.customer-login-links {
  position: relative;
  display: inline-block;
  margin-right: -10px;
  z-index: 7; }

.customer-login-links a {
  display: inline-block;
  color: black;
  color: rgba(0, 0, 0, 0.6);
  padding: 20px 10px;
  font-size: 0.76471em; }
  .customer-login-links a:hover, .customer-login-links a:focus {
    color: black; }

/*============================================================================
  Meganav

  - The meganav is used in three places:
    1. Site nav as a dropdown
    2. Drawer nav as a dropdown
    3. Homepage in accordion links
==============================================================================*/
.meganav {
  display: block;
  right: 0;
  background-color: white;
  overflow: hidden; }
  .meganav.meganav--active {
    visibility: visible;
    z-index: 6; }

/*================ Site header animation ================*/
.site-header .meganav {
  opacity: 0;
  -ms-transform: translate3d(0, -15%, 0);
  -webkit-transform: translate3d(0, -15%, 0);
  transform: translate3d(0, -15%, 0);
  transition: none; }
  .site-header .meganav.meganav--active {
    opacity: 1;
    -ms-transform: translate3d(0, 0, 0);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    transition: all 0.8s cubic-bezier(0.075, 0.82, 0.165, 1), opacity 0.4s cubic-bezier(0.075, 0.82, 0.165, 1); }
  .site-header .meganav.meganav--no-animation {
    transition: none; }

/*================ Drawer animation ================*/
.drawer__nav .meganav {
  max-height: 0;
  transition: all 0.2s cubic-bezier(0.33, 0.59, 0.14, 1); }
  .drawer__nav .meganav.meganav--active {
    max-height: 100%;
    transition: all 0.45s cubic-bezier(0.33, 0.59, 0.14, 1); }



/*================ Meganav product cards ================*/
.meganav__product .product-card {
  border-bottom-width: 0; }
.meganav__product:last-child .product-card {
  border-right-width: 1px; }

/*================ Site nav specific styles ================*/
.site-nav__dropdown {
  box-shadow: rgba(0, 0, 0, 0.1) 0 0 5px; }

/*================ Drawer meganav styles ================*/
.meganav--drawer {
  background-color: #f4f6f8; }
  .meganav--drawer .product-card {
    margin-top: 1px; }
  .meganav--drawer .meganav__product {
    margin-left: -4px; }

.drawer__nav-toggle--open {
  display: block; }
  .meganav--active .drawer__nav-toggle--open {
    display: none; }

.drawer__nav-toggle--close {
  display: none; }
  .meganav--active .drawer__nav-toggle--close {
    display: block; }

/*================ Fixed width meganav columns (for horizontal scrolling) ================*/
.meganav__scroller {
  white-space: nowrap;
  overflow-y: hidden;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch; }
  .drawer__nav--template-index .meganav__scroller {
    background-color: white;
    border-top: 1px solid #f4f6f8; }
  .meganav__scroller .grid__item {
    float: none;
    width: 180px;
    vertical-align: top;
    white-space: normal; }

.drawer__nav .meganav__scroller--has-list {
  padding-left: 20px; }

/*================ Site footer ================*/
html {
  background-color: #b4b6b8; }

.site-footer {
  background-color: #b4b6b8;
  color: black;
  padding-top: 20px;
  font-size: 80%; }
  @media only screen and (min-width: 750px), print {
    .site-footer {
      padding-top: 40px; } }
  .site-footer a {
    color: black;
    color: rgba(0, 0, 0, 0.6); }
    .site-footer a:hover, .site-footer a:focus {
      color: black; }
  .site-footer p {
    margin-bottom: 10px; }
  @media only screen and (max-width: 749px), print {
    .site-footer .page-width {
      padding: 0 20px; } }

.site-footer__section {
  padding-bottom: 20px; }
  .site-footer__section .icon {
    width: 40px;
    height: 40px; }
  .site-footer__section .logo {
    padding-bottom: 10px; }
  @media only screen and (min-width: 750px), print {
    .site-footer__section {
      padding-bottom: 40px; } }

.site-footer__subsection {
  margin-bottom: 20px; }
  .site-footer__subsection:last-child {
    margin-bottom: 0; }

.site-footer__copyright {
  border-top: 1px solid #a7a9ac;
  padding: 10px 0; }

/*================ Linklists and page content ================*/
.site-footer__section-title {
  color: black;
  font-size: 1.41176em; }

.site-footer__list {
  list-style: none; }

.site-footer__list-item {
  margin-bottom: 10px; }

/*================ Newsletter field ================*/
.site-footer__newsletter-label {
  display: block;
  color: black;
  color: rgba(0, 0, 0, 0.6);
  font-family: "PT Sans", "HelveticaNeue", "Helvetica Neue", sans-serif;
  font-size: inherit;
  font-weight: 400;
  text-transform: inherit; }

.site-footer__newsletter-input {
  color: #1c1d1d;
  background-color: white; }
  .site-footer__newsletter-input::-webkit-input-placeholder {
    color: black;
    opacity: 0.8; }
  .site-footer__newsletter-input:-moz-placeholder {
    color: black;
    opacity: 0.8; }
  .site-footer__newsletter-input:-ms-input-placeholder {
    color: black;
    opacity: 0.8; }

/*================ Icons ================*/
.site-footer .social-icons .icon,
.site-footer .payment-icons .icon {
  fill: currentColor; }
.site-footer .social-icons .icon {
  margin-right: 10px; }

.social-icons .icon-google-plus {
  width: 38px; }

/*================ Content blocks ================*/
.content-block {
  background-color: white;
  padding: 20px;
  margin-bottom: 20px; }
  .content-block:last-child {
    margin-bottom: 0; }

@media only screen and (min-width: 750px), print {
  .content-block--large {
    padding: 40px; } }
.content-block__no-padding {
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: -20px; }

.content-block__no-padding--border-top {
  border-top: 1px solid #f4f6f8; }

.content-block__title {
  text-align: center;
  margin-bottom: 20px; }

.content-block--search-results {
  padding-bottom: 0; }

.content-block__item {
  margin-bottom: 20px; }

.content-block__full-image {
  margin-left: -20px;
  margin-right: -20px;
  margin-bottom: 20px; }
  .content-block__full-image img {
    display: block;
    margin: 0 auto; }
  .content-block__full-image:first-child {
    margin-top: -20px; }

@media only screen and (min-width: 750px), print {
  .content-block__full-image--large {
    margin-left: -40px;
    margin-right: -40px;
    margin-bottom: 40px; }
    .content-block__full-image--large:first-child {
      margin-top: -40px; } }
/*================ Product cards ================*/
.product-card {
  position: relative;
  display: block;
  background-color: white;
  text-align: center;
  padding: 12.5px;
  border-color: #f4f6f8;
  border-style: solid;
  border-width: 0 0 1px 0;
  color: #666666;
  z-index: 1; }
  .grid--no-gutters .product-card {
    border-left-width: 1px; }
  .collection__card--first .product-card {
    border-left-width: 0; }
  .product-card:hover, .product-card:focus {
    color: #666666; }
  .product-card:focus {
    z-index: 2; }
  @media only screen and (min-width: 750px), print {
    .product-card {
      padding: 25px; } }

/*================ Product hover/focus overlay ================*/
.product-card__overlay {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.06);
  transition: all 0.15s ease-in; }
  .product-card:hover .product-card__overlay, .product-card:focus .product-card__overlay {
    visibility: visible;
    opacity: 1; }
  .supports-touchevents .product-card__overlay {
    display: none; }

.product-card__overlay-btn {
  position: relative;
  top: 50%;
  -ms-transform: translateY(-45%);
  -webkit-transform: translateY(-45%);
  transform: translateY(-45%);
  transition: all 0.15s ease-in; }
  .product-card:hover .product-card__overlay-btn {
    -ms-transform: translateY(-85%);
    -webkit-transform: translateY(-85%);
    transform: translateY(-85%); }
  .supports-no-csstransforms .product-card__overlay-btn {
    top: 35%; }

/*================ Product image and wrapper ================*/
.product-card__image-wrapper {
  height: 235px;
  margin-bottom: 60px; }

.product-card__image {
  position: relative;
  top: 50%;
  background-color: #b6c3d0;
  box-shadow: 5px 5px 8px #555;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  max-height: 100%; }
  .supports-no-csstransforms .product-card__image {
    top: 0; }

/*================ Product meta info ================*/
.product-card__info {
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  background-color: white;
  padding: 10px 12.5px; }
  @media only screen and (min-width: 750px), print {
    .product-card__info {
      padding: 10px 12.5px 20px; } }

.product-card__name,
.product-card__availability {
  position: relative;
  z-index: 3; }

.product-card__name {
  font-weight: 700;
  font-size: small;
  color: #222222;
  white-space: normal; }

.product-card__availability {
  font-size: 0.82353em;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  font-size: 0.82353em;
  color: #81aeff; }

.product-card__brand,
.product-card__price {
  font-size: 0.82353em; }

.product-card__regular-price {
  opacity: 0.8; }

.product-single {
  margin-bottom: 40px; }
  @media only screen and (min-width: 750px), print {
    .product-single {
      margin-bottom: 80px; } }

@media only screen and (max-width: 749px), print {
  .product-single__info-wrapper {
    padding: 0 10px; } }
/*================ Product meta ================*/
.product-single__meta-list {
  line-height: 1; }
  .product-single__meta-list li {
    padding-right: 10px;
    vertical-align: middle; }
    .product-single__meta-list li:last-child {
      padding-right: 0; }

.product-single__vendor {
  margin-bottom: 5px; }

.product-single__title {
  margin-bottom: 6.66667px; }

.product-single__price {
  font-size: 1.17647em; }

.product-single__price--compare {
  opacity: 0.4; }

.product-single__stock {
  font-size: 0.76471em;
  text-transform: uppercase; }

/*================ Product form ================*/
.product-form .btn, .product-form .btn--secondary {
  padding-top: 12px;
  padding-bottom: 12px; }
.product-form select {
  width: 100%; }
.product-form .btn, .product-form .btn--secondary,
.product-form select,
.product-form input[type="text"] {
  min-height: 45px; }

.supports-no-js .product-form__variants {
  display: block;
  margin-bottom: 10px; }

/*
2018.02.22 BernardP removed flex formatting
.product-form {
  @include display-flexbox();
  @include flex-wrap(wrap);
  @include align-items(flex-end);
  margin: 0 -($gutter-site / 4);
}
*/
.product-form__item {
  -webkit-flex: 1 0 160px;
  -moz-flex: 1 0 160px;
  -ms-flex: 1 0 160px;
  flex: 1 0 160px;
  margin-bottom: 10px;
  padding: 0 5px; }
  .product-form__item label {
    display: block; }

.product-form__item--quantity {
  -webkit-flex: 0 0 100px;
  -moz-flex: 0 0 100px;
  -ms-flex: 0 0 100px;
  flex: 0 0 100px; }

.product-form__item--submit {
  -ms-flex-preferred-size: 200px;
  -webkit-flex-basis: 200px;
  -moz-flex-basis: 200px;
  flex-basis: 200px; }

.product-form__input {
  display: block;
  width: 100%; }

.btn--sold-out[disabled] {
  background-color: #ec523e;
  color: white; }

.product-form__cart-submit {
  padding-left: 5px;
  padding-right: 5px;
  white-space: normal; }

/*================ Product image and thumbnail layout ================*/
.photos__item--main {
  text-align: center;
  min-width: 0; }

.photos__item--thumbs {
  max-width: 100%; }

@media only screen and (min-width: 750px), print {
  .photos {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    -webkit-align-items: flex-start;
    -moz-align-items: flex-start;
    -ms-align-items: flex-start;
    -o-align-items: flex-start;
    align-items: flex-start;
    flex-direction: row; }

  .photos__item--main {
    -webkit-flex: 1 1 auto;
    -moz-flex: 1 1 auto;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    order: 2; }

  .photos__item--thumbs {
    order: 1;
    -webkit-flex: 0 0 15%;
    -moz-flex: 0 0 15%;
    -ms-flex: 0 0 15%;
    flex: 0 0 15%; } }
.product-single__photo {
  margin-bottom: 20px; }
  @media only screen and (max-width: 749px), print {
    .product-single__photo {
      max-height: 340px; }
      .product-single__photo img {
        max-height: 340px; } }

/*================ Product thumbnail layout ================*/
.product-single__thumbnails.slick-vertical .slick-slide {
  border: 0;
  padding: 2px 0; }

.product-single__thumbnails {
  display: none;
  margin: 0 40px 20px; }
  .product-single__thumbnails.slick-initialized {
    display: block; }
  @media only screen and (min-width: 750px), print {
    .product-single__thumbnails {
      margin: 0; } }

.product-single__thumbnails--static {
  display: block;
  text-align: center; }
  @media only screen and (max-width: 749px), print {
    .product-single__thumbnails--static .product-single__thumbnail-item {
      display: inline-block;
      width: 45%;
      max-width: 150px; } }

.product-single__thumbnail {
  position: relative;
  display: block;
  height: 130px;
  padding: 10px;
  max-width: 200px;
  margin: 0 auto; }
  .product-single__thumbnail img {
    position: relative;
    top: 50%;
    -ms-transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: block;
    max-height: 110px;
    margin: 0 auto;
    box-shadow: 3px 3px 5px #555; }
    .supports-no-csstransforms .product-single__thumbnail img {
      top: 0; }
  .is-active .product-single__thumbnail:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border: 3px solid #81aeff; }

/*================ Slider arrows ================*/
.product-single__thumbnails .slick-prev,
.product-single__thumbnails .slick-next {
  opacity: 0.2;
  transition: opacity 0.15s ease-in;
  width: 30px;
  height: 30px; }
  .product-single__thumbnails .slick-prev:before,
  .product-single__thumbnails .slick-next:before {
    display: none; }
  .product-single__thumbnails .slick-prev:hover, .product-single__thumbnails .slick-prev:focus,
  .product-single__thumbnails .slick-next:hover,
  .product-single__thumbnails .slick-next:focus {
    opacity: 0.7; }
  .product-single__thumbnails .slick-prev .icon,
  .product-single__thumbnails .slick-next .icon {
    fill: #666666;
    width: 30px;
    height: 30px; }
.product-single__thumbnails .slick-disabled {
  opacity: 0;
  visibility: hidden; }

.product-single__thumbnails.slick-vertical .slick-prev,
.product-single__thumbnails.slick-vertical .slick-next {
  left: 0;
  right: 0;
  margin-top: 0;
  width: 100%;
  height: auto; }
.product-single__thumbnails.slick-vertical .slick-prev {
  top: -20px; }
.product-single__thumbnails.slick-vertical .slick-next {
  top: auto;
  bottom: -40px; }

/*================ Product image modal ================*/
.product-modal__image {
  display: block;
  position: relative;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  display: block;
  max-height: 95%;
  max-width: 95%;
  margin: 0 auto; }
  .supports-no-csstransforms .product-modal__image {
    top: 2.5%; }

.js-modal-open-product-modal {
  /* cursor: zoom-in; */
  cursor: pointer; }

.product-tag {
  font-size: 0.82353em;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  display: inline-block;
  font-size: 0.70588em;
  background-color: #dac1c0;
  color: black;
  padding: 4px 10px; }

.product-tag--absolute {
  display: block;
  position: absolute;
  top: 0;
  left: 0; }

/*============================================================================
  Pagination
  - Markup build by liquid tag,
    so nesting and element selectors are necessary
==============================================================================*/
.pagination {
  text-align: center;
  margin: 40px 40px 0; }
  .pagination a {
    color: #666666; }
    .pagination a:hover, .pagination a:focus {
      color: #81aeff; }
  .pagination .current {
    font-weight: 700;
    color: #222222; }
  .pagination a,
  .pagination .current {
    display: inline-block;
    padding: 5px 10px; }

/*================ Article comments ================*/
.comment {
  margin-bottom: 20px; }
  .comment:last-child {
    margin-bottom: 0; }
  .comment + .comment {
    padding-top: 20px;
    border-top: 1px solid #f4f6f8; }

/*================ Indented article/page images ================*/
.rte--indented-images .rte__image-indent {
  position: relative;
  margin-left: -20px;
  margin-right: -20px; }
  @media only screen and (min-width: 750px), print {
    .rte--indented-images .rte__image-indent {
      margin-left: -40px;
      margin-right: -40px; } }

/*================ Section header ================*/
.section-header {
  margin-bottom: 40px; }

.section-header__filters {
  background-color: #b6c3d0; }

@media only screen and (max-width: 749px), print {
  .section-header__item + .section-header__item {
    margin-top: 20px; } }
.section-header__title,
.section-header__subtext {
  margin-bottom: 0; }

/*============================================================================
  Hero slider

  Extends default slick slider styles.
  Extra specificity in selectors is used to override defaults.
==============================================================================*/
.hero-wrapper {
  position: relative; }

.hero {
  background-color: #9a9d9f;
  height: 585px !important;
  width: 100%; }
  @media only screen and (max-width: 749px), print {
    .hero {
      height: 150px !important; } }
  @media only screen and (min-width: 750px) and (max-width: 989px), print {
    .hero {
      height: 375px !important; } }
  @media only screen and (min-width: 990px) and (max-width: 1399px), print {
    .hero {
      height: 400px !important; } }
  @media only screen and (min-width: 1400px), print {
    .hero {
      height: 465px !important; } }
  @media only screen and (min-width: 1900px), print {
    .hero {
      height: 580px !important; } }
  .hero .hero__slide,
  .hero .slick-list,
  .hero .slick-track {
    height: 100%; }

.hero__pause:focus {
  clip: auto;
  width: auto;
  height: auto;
  margin: 0;
  color: black;
  background-color: #d9d3d4;
  padding: 10px;
  z-index: 10000;
  transition: none; }
  .hero__pause:focus .icon {
    fill: currentColor; }

.hero__pause-stop {
  display: block; }
  .is-paused .hero__pause-stop {
    display: none; }

.hero__pause-play {
  display: none; }
  .is-paused .hero__pause-play {
    display: block; }

/*================ Dots and prev/next pagination ================*/
.hero .slick-dots {
  margin: 0;
  bottom: 10px; }
  .hero .slick-dots li {
    margin: 0;
    vertical-align: middle; }
    .hero .slick-dots li button {
      position: relative; }
    .hero .slick-dots li button:before {
      text-indent: -9999px;
      background-color: #fff;
      border-radius: 100%;
      border: 2px solid transparent;
      width: 10px;
      height: 10px;
      margin: 5px 0 0 5px;
      opacity: 1;
      transition: all 0.2s; }
    .hero .slick-dots li.slick-active button:before {
      background-color: transparent;
      border-color: #fff;
      opacity: 1;
      width: 12px;
      height: 12px;
      margin: 4px 0 0 4px; }
    .hero .slick-dots li button:active:before {
      opacity: 0.5; }
.hero .slick-prev,
.hero .slick-next {
  top: 0;
  height: 100%;
  margin-top: 0;
  width: 40px; }
.hero .slick-prev {
  left: 0; }
.hero .slick-next {
  right: 0; }

/*================ General slide styles ================*/
.hero__slide {
  position: relative; }

.hero__image {
  position: relative;
  opacity: 0;
  transition: opacity 0.8s cubic-bezier(0.44, 0.13, 0.48, 0.87);
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-size: 100% 100%;
  background-position: center; }
  .slick-initialized .hero__image, .supports-no-js .hero__image {
    opacity: 1; }
  .hero__image img {
    display: block;
    width: 100%; }
  @media only screen and (max-width: 450px) {
    .hero__image {
      background-size: 100% 100%;
      background-position: 50%; } }

@media only screen and (max-width: 450px) {
  .slick-active .hero__image {
    background-size: 100% 100%;
    background-position: 50%; } }

.ie9 .hero__slide {
  z-index: 1 !important; }
.ie9 .slick-dots {
  z-index: 2; }

/*================ Hero images ================*/
.hero__image {
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-position: top center; }

/*================ Hero text ================*/
.hero__text-wrap {
  position: absolute;
  top: 35%;
  width: 60%;
  left: 0;
  right: 0;
  text-align: center;
  margin: 0 auto; }

.hero__text-content {
  opacity: 0;
  -ms-transform: translateY(40px);
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
  transition: all 0.6s cubic-bezier(0.44, 0.13, 0.48, 0.87);
  transition-delay: 0.3s; }
  .slick-active .hero__text-content, .supports-no-js .hero__text-content {
    opacity: 1;
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); }

.hero__title-wrap {
  margin-bottom: 30px; }

.hero__title {
  display: inline;
  font-size: 2.35294em;
  line-height: 1;
  margin: 0;
  padding: 0 10px;
  color: #FFF;
  text-shadow: 2px 2px #000;
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone; }
  @media only screen and (min-width: 750px), print {
    .hero__title {
      font-size: 3.52941em; } }

.hero__title--has-link {
  transition: background-color 0.15s ease-in; }
  .hero__title--has-link:hover, .hero__title--has-link:focus {
    color: #FFF;
    background-color: #aa9c9f; }

.hero__link {
  color: inherit; }
  .hero__link:hover, .hero__link:focus {
    color: inherit; }

/*================ Subtext and custom arrows share style ================*/
.hero__subtitle,
.hero__arrow {
  display: inline;
  line-height: 0;
  padding: 10px;
  color: #FFF;
  text-shadow: 1px 1px #000;
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone; }
  @media only screen and (min-width: 750px), print {
    .hero__subtitle,
    .hero__arrow {
      font-size: 1.76471em; } }

.hero__subtitle.hero__link,
.hero__arrow {
  transition: background-color 0.15s ease-in; }
  .hero__subtitle.hero__link:hover, .hero__subtitle.hero__link:focus,
  .hero__arrow:hover,
  .hero__arrow:focus {
    color: #FFF;
    background-color: #808386; }

/*================ Custom navigation arrows ================*/
.hero__arrows {
  display: inline;
  background-color: #b4b6b8;
  color: black; }
  .supports-no-js .hero__arrows {
    display: none; }
  @media only screen and (min-width: 750px), print {
    .hero__arrows {
      font-size: 1.76471em; } }

.hero__arrow {
  cursor: pointer;
  padding-right: 15px;
  padding-left: 15px; }
  .hero__arrow .icon {
    position: relative;
    width: 50px;
    height: 50px;
    fill: #a0a0a0;
    z-index: 15; }

.hero__arrow--prev {
  position: absolute;
  left: 0;
  top: 50%; }

.hero__arrow--next {
  position: absolute;
  right: 0;
  top: 50%; }

/*================ Drawer Skeleton Styles ================*/
.is-transitioning {
  display: block !important;
  visibility: visible !important; }

.page-container {
  overflow: hidden; }

.js-drawer-open .page-container:after {
  content: '';
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10; }

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

.drawer {
  display: none;
  position: fixed;
  overflow-y: auto;
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  top: 0;
  bottom: 0;
  max-width: 95%;
  z-index: 1;
  background-color: white;
  transition: all 0.35s cubic-bezier(0.33, 0.59, 0.14, 1); }

.drawer--left {
  width: 75%;
  left: -300px;
  z-index: 100; }
  .js-drawer-open-left .drawer--left {
    display: block;
    -ms-transform: translateX(300px);
    -webkit-transform: translateX(300px);
    transform: translateX(300px); }
    .supports-no-csstransforms .js-drawer-open-left .drawer--left {
      left: 0; }

.drawer--right {
  width: 300px;
  right: -300px; }
  .js-drawer-open-right .drawer--right {
    display: block;
    -ms-transform: translateX(-300px);
    -webkit-transform: translateX(-300px);
    transform: translateX(-300px); }
    .supports-no-csstransforms .js-drawer-open-right .drawer--right {
      right: 0; }

.is-moved-by-drawer {
  transition: all 0.35s cubic-bezier(0.33, 0.59, 0.14, 1); }
  .js-drawer-open-left .is-moved-by-drawer {
    -ms-transform: translateX(300px);
    -webkit-transform: translateX(300px);
    transform: translateX(300px); }
    .supports-no-csstransforms .js-drawer-open-left .is-moved-by-drawer {
      left: 300px; }
  .js-drawer-open-right .is-moved-by-drawer {
    -ms-transform: translateX(-300px);
    -webkit-transform: translateX(-300px);
    transform: translateX(-300px); }
    .supports-no-csstransforms .js-drawer-open-right .is-moved-by-drawer {
      left: -300px; }

/*================ Drawer theme styles ================*/
.page-container {
  position: relative;
  background-color: #f4f6f8;
  z-index: 2; }

.is-moved-by-drawer {
  transition: all 0.35s cubic-bezier(0.33, 0.59, 0.14, 1); }
  .js-drawer-open .is-moved-by-drawer {
    transition: all 0.35s cubic-bezier(0.33, 0.59, 0.14, 1); }
  .js-drawer-open-left .is-moved-by-drawer {
    box-shadow: rgba(0, 0, 0, 0.1) 0 0 5px; }
  .js-drawer-open-right .is-moved-by-drawer {
    box-shadow: rgba(0, 0, 0, 0.1) 0 0 -5px; }

.drawer--left {
  left: -75px; }
  .js-drawer-open-left .drawer--left {
    -ms-transform: translateX(75px);
    -webkit-transform: translateX(75px);
    transform: translateX(75px); }

.drawer {
  overflow: visible;
  color: #262626; }

.drawer__inner {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: auto;
  overflow-x: hidden; }

/*================ Drawer search field ================*/
.drawer__search {
  position: relative;
  background-color: #f4f6f8;
  padding: 10px; }

.drawer__search-input {
  display: block;
  width: 100%;
  padding-left: 15px;
  background-color: #fff; }
  .drawer__search-input[type="search"] {
    padding-right: 60px; }
  .drawer__search-input::-webkit-search-decoration {
    display: none; }

.drawer__search-submit {
  position: absolute;
  right: 0;
  top: 0;
  bottom: 0;
  padding: 0 20px; }
  .drawer__search-submit .icon {
    width: 25px;
    height: 25px;
    fill: #262626; }

/*================ Drawer linklist ================*/
.drawer__nav {
  list-style: none;
  font-size: smaller; }

.drawer__nav--template-index {
  position: relative;
  margin-bottom: -10px;
  background-color: white; }

.drawer__nav--margin {
  margin-bottom: 30px; }

.drawer__nav-item {
  display: block;
  border-bottom: 1px solid #f4f6f8; }

.drawer__nav-link {
  font-family: "Lora", serif;
  font-weight: 700;
  text-transform: uppercase;
  display: block;
  padding: 13.33333px 20px;
  font-size: 1.52941em;
  color: #262626; }
  .drawer__nav-link:hover, .drawer__nav-link:focus {
    color: #262626;
    background-color: #fafafa; }

/*================ Sublist expand/collapse trigger ================*/
.drawer__nav-has-sublist {
  display: table;
  width: 100%; }
  .drawer__nav-has-sublist .drawer__nav-link {
    display: table-cell;
    vertical-align: middle;
    width: 100%; }

.drawer__nav-toggle {
  position: relative;
  display: table-cell;
  vertical-align: middle;
  width: 1%; }

.drawer__nav-toggle-btn {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 0;
  padding: 10px 20px;
  color: #262626;
  line-height: 1; }
  .drawer__nav-toggle-btn .icon {
    width: 18px;
    height: 18px;
    fill: currentColor; }
  .drawer__nav-toggle-btn:hover, .drawer__nav-toggle-btn:focus {
    opacity: 0.6;
    border-left: 1px solid #f4f6f8; }

.drawer__nav-toggle--open {
  display: block; }

.drawer__nav-toggle--close {
  display: none; }

/*================ Collection sorting select menus ================*/
.collection-sort {
  display: inline-block;
  text-align: left;
  /* 2018.02.19 BernardP removed max-width
  max-width: 150px;
  */ }
  .collection-sort + .collection-sort {
    margin-left: 20px; }
  @media only screen and (max-width: 749px), print {
    .collection-sort {
      width: 80%; }
      .collection-sort + .collection-sort {
        margin: 20px 0 0; } }

.collection-sort__label {
  display: block;
  text-align: center; }
  @media only screen and (min-width: 750px), print {
    .collection-sort__label {
      text-align: left;
      padding-left: 6.66667px;
      margin-bottom: 0; } }

.collection-sort__input {
  background-color: transparent;
  font-weight: 700;
  padding-top: 6.66667px;
  padding-bottom: 6.66667px;
  padding-left: 6.66667px; }
  @media only screen and (max-width: 749px), print {
    .collection-sort__input {
      width: 100%;
      border: 1px solid #b6c3d0; } }

/*================ Collection card and grid ================*/
.collection {
  margin-bottom: 30px; }
  .collection:last-child {
    margin-bottom: 0; }

/*================ Collection card ================*/
.collection-card {
  position: relative;
  box-sizing: content-box;
  display: block;
  background-color: white;
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  padding: 12.5px;
  height: 295px;
  z-index: 1; }
  .collection-card:focus {
    z-index: 2; }
  @media only screen and (min-width: 750px), print {
    .collection-card {
      padding: 25px; } }
  .collection-card:after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: black;
    opacity: 0;
    z-index: 1;
    transition: opacity 0.2s ease; }
  .collection-card:hover:after, .collection-card:focus:after {
    opacity: 0.2; }

.collection-card__meta {
  display: block;
  position: absolute;
  bottom: 20px;
  left: 0;
  margin-right: 10px;
  z-index: 2; }
  @media only screen and (min-width: 750px), print {
    .collection-card__meta {
      bottom: 40px; } }

.collection-card__title {
  display: inline;
  background-color: #dac1c0;
  color: black;
  margin-bottom: 10px;
  padding: 2px 10px;
  letter-spacing: 0;
  font-size: 1.52941em;
  line-height: 1.2;
  -webkit-box-decoration-break: clone;
  -o-box-decoration-break: clone;
  box-decoration-break: clone; }
  @media only screen and (min-width: 990px), print {
    .collection-card__title {
      font-size: 1.88235em; } }

.collection-card__subtext {
  font-size: 0.82353em;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  margin: 10px 0 0 10px;
  font-size: 0.88235em;
  color: #ffffff;
  text-shadow: 2px 2px 4px #000; }

/*================ Social sharing icons ================*/
.social-sharing .icon {
  width: 24px;
  height: 24px;
  fill: currentColor; }
.social-sharing .icon-google-plus {
  width: 35px; }

@media only screen and (max-width: 749px), print {
  .social-sharing__title {
    display: inline-block;
    margin-bottom: 10px; } }
.social-sharing__link {
  color: #666666;
  opacity: 0.7; }
  .social-sharing__link:hover, .social-sharing__link:focus {
    opacity: 1;
    color: #81aeff; }
  .social-sharing__link + .social-sharing__link {
    margin-left: 10px; }

/*================ Cart ================*/
.cart-table {
  background-color: white;
  border: none;
  margin-bottom: 20px; }
  .cart-table td,
  .cart-table th {
    border: none; }
    @media only screen and (min-width: 750px), print {
      .cart-table td,
      .cart-table th {
        padding: 20px; } }

/*================ Cart cells ================*/
@media only screen and (min-width: 750px), print {
  .cart__cell--image {
    width: 180px; }

  .cart__cell--quantity {
    width: 130px; }

  .cart__cell--total {
    width: 200px;
    text-align: right; } }
/*================ Cart cell responsive labels ================*/
@media only screen and (max-width: 749px), print {
  .cart-table th,
  .cart-table td {
    text-align: center; }
  .cart-table td:before {
    display: none; } }
/*================ Cart items ================*/
.cart__image {
  display: inline-block;
  max-width: 120px;
  margin: 10px auto; }
  @media only screen and (max-width: 749px), print {
    .cart__image img {
      max-height: 120px; } }

.cart__quantity-label {
  display: block;
  text-align: center; }

.cart__cell--quantity .js-qty {
  max-width: 120px;
  margin: 0 auto; }

.cart__quantity {
  display: none; }
  .supports-no-js .cart__quantity {
    display: block; }

.cart__item-total {
  font-size: 1.2em; }
  @media only screen and (min-width: 750px), print {
    .cart__item-total {
      padding-right: 20px; } }

.cart__subtotal {
  margin: 30px 0 0; }
  @media only screen and (min-width: 750px), print {
    .cart__subtotal {
      margin-top: 20px; } }

.cart__taxes {
  margin-bottom: 40px; }

.cart__note {
  width: 100%;
  background-color: white;
  border: 1px solid #b6c3d0; }
  @media only screen and (max-width: 749px), print {
    .cart__note {
      min-height: 50px; } }

.cart__buttons .btn, .cart__buttons .btn--secondary {
  margin-bottom: 10px; }
  @media only screen and (max-width: 749px), print {
    .cart__buttons .btn, .cart__buttons .btn--secondary {
      display: block;
      width: 100%; } }

.update-cart {
  display: none; }
  .supports-no-js .update-cart {
    display: inline-block; }

/*================ Cart discounts ================*/
.cart-item__original-price,
.cart-item__discount {
  font-size: 80% !important;
  margin-bottom: 0 !important; }

/*================ Quantity selector ================*/
.js-qty {
  position: relative; }

.js-qty--is-loading {
  opacity: 0.6; }

.js-qty__input {
  width: 100%;
  padding-left: 25px;
  padding-right: 25px;
  text-align: center; }

.js-qty__adjust {
  position: absolute;
  top: 0;
  bottom: 0;
  text-align: center;
  width: 25px;
  padding: 0;
  background: none;
  border-style: solid;
  border-color: #e7e7e7;
  border-width: 0;
  transition: background-color 0.03s ease-in; }
  .js-qty__adjust:hover, .js-qty__adjust:focus {
    background-color: #e7e7e7;
    transition-duration: 0.08s; }
  .js-qty__adjust .icon {
    width: 8px;
    height: 8px;
    fill: currentColor; }

.js-qty__adjust--minus {
  left: 0;
  border-right-width: 1px; }

.js-qty__adjust--plus {
  right: 0;
  border-left-width: 1px; }

/*================ Notification bar ================*/
.notification {
  visibility: hidden;
  position: absolute;
  width: 100%;
  top: 0;
  opacity: 0;
  transition: top 0.25s, visibility 0.25s, opacity 0.15s;
  transition-timing-function: cubic-bezier(0.33, 0.59, 0.14, 1);
  z-index: 4; }

.notification--promo {
  position: static;
  display: none; }

.notification--promo a {
  color: #81aeff !important; }

.notification--active {
  display: block;
  visibility: visible;
  top: 100%;
  opacity: 1; }

.notification__link {
  display: block;
  padding: 10px 0; }
  .notification__link:hover u {
    text-decoration: none; }

.notification__inner {
  position: relative;
  overflow: visible;
  padding: 10px 0; }

.notification__inner--has-link {
  padding: 0; }

.notification__message {
  display: block;
  padding: 0 60px;
  text-align: center;
  font-weight: 700; }
  .notification__message span {
    text-decoration: underline;
    white-space: nowrap; }

.notification--success,
.notification--promo {
  background-color: black;
  color: white; }
  .notification--success a,
  .notification--promo a {
    color: #81aeff; }

.notification--error {
  background-color: #ec523e;
  color: white; }
  .notification--error a {
    color: white; }

.notification__close {
  position: absolute;
  top: 0;
  bottom: 0;
  right: 20px;
  padding: 0 10px;
  color: inherit; }
  .notification__close .icon {
    fill: currentColor; }

/*================ Modals ================*/
.modal {
  display: none;
  opacity: 0;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #f4f6f8;
  color: #666666;
  z-index: 15;
  transition: all ease-in-out 0.2s; }
  .modal.modal--is-active {
    display: block;
    opacity: 1; }

body.modal--is-active {
  overflow: hidden; }

.modal__inner {
  height: 100%;
  -ms-transform: translateY(-20px);
  -webkit-transform: translateY(-20px);
  transform: translateY(-20px);
  -moz-transform-style: preserve-3d;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  transition: all ease-in-out 0.2s; }
  .modal--is-active .modal__inner {
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0); }

.modal__centered {
  position: relative;
  top: 50%;
  -ms-transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }
  .modal__centered .supports-no-csstransforms {
    top: 20%; }

.modal__close {
  position: absolute;
  top: 0;
  right: 0;
  padding: 20px; }
  .modal__close .icon {
    font-size: 1.17647em; }

/*================ Featured collection card ================*/
.featured-card {
  display: block;
  position: relative;
  height: 380px;
  text-align: center;
  border-color: #f4f6f8;
  border-style: solid;
  border-width: 0 0 1px 1px;
  background-color: white; }
  .featured-card:before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0, 0, 0, 0.06);
    opacity: 0;
    transition: opacity 0.15s ease-in;
    z-index: 1; }
  .featured-card:hover:before {
    opacity: 1; }

.featured-card--cover {
  background-repeat: no-repeat;
  background-position: top center;
  background-size: cover;
  border-width: 0; }

.featured-card__image-wrapper {
  position: absolute;
  bottom: 30px;
  left: 0;
  right: 0;
  height: 62%; }

.featured-card__image {
  display: block;
  margin: 0 auto;
  max-height: 100%;
  box-shadow: none; }

.featured-card__header {
  position: relative;
  display: inline-block;
  padding: 30px 5% 10px;
  background-color: rgba(0, 0, 0, 0);
  z-index: 1; }

.featured-card__title {
  font-size: 1.64706em;
  margin-bottom: 0;
  color: #222222; }

.featured-card__action {
  font-size: 0.82353em;
  font-weight: 700;
  letter-spacing: 0.6px;
  text-transform: uppercase;
  font-size: 0.76471em;
  color: #81aeff; }
  .featured-card:hover .featured-card__action {
    color: inherit; }

/* interchangable Character Product
================================================== 
	2018.02.20 BernardP addedd section for character grid
*/
.character_selector {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  vertical-align: middle; }
  .character_selector > div {
    flex-basis: 25%;
    display: flex;
    box-sizing: border-box;
    padding-right: 20px; }
  .character_selector > div.spacer {
    flex-basis: 100%; }
    .character_selector > div.spacer label {
      width: 100%; }
  .character_selector label {
    text-align: center;
    vertical-align: middle;
    width: 30%;
    font-size: 1em;
    font-weight: 400;
    padding-top: 10px; }
  .character_selector input {
    max-width: 110px;
    padding: 0; }

@media (max-width: 479px) {
  .character_selector > div {
    flex-basis: 33%;
    padding-right: 20px; }
  .character_selector > div.spacer {
    flex-basis: 100%; } }
/* Bold CSS overrides
================================================== 
	2018.02.26 BernardP addedd section for Bold overrides
*/
.shappify_option_name {
  clear: both; }

/* Shipping Calculator CSS overrides
================================================== 
	2018.03.02 BernardP remove bullets from shipping options
*/
#shipping-rates {
  list-style: none outside; }

/* Grid clear column
================================================== 
	2018.09.14 BernardP addedd section for Grid overrides
*/
.omega {
  clear: both; }

/** 2021.10.04 SimonF added get-a-quote styles **/
.ui-dialog-titlebar {
  background-color: #49832E !important;
  background-image: none !important;
  color: #FFF !important; }

@media only screen and (max-width: 749px), print {
  .ui-dialog {
    position: fixed !important;
    width: 62% !important; } }
@media only screen and (min-width: 750px) and (max-width: 989px), print {
  .ui-dialog {
    position: fixed !important;
    width: 62% !important; } }
@media only screen and (min-width: 990px) and (max-width: 1399px), print {
  .ui-dialog {
    position: fixed !important;
    width: 31% !important; } }
@media only screen and (min-width: 1400px), print {
  .ui-dialog {
    position: fixed !important;
    width: 31% !important; } }
@media only screen and (min-width: 1900px), print {
  .ui-dialog {
    position: fixed !important;
    width: 31% !important; } }
