/** Shopify CDN: Minification failed

Line 3372:3 Unexpected "display"
Line 3390:3 Unexpected "display"

**/
@charset "UTF-8";
.instagram--grid .error {
  display: none; }

/* Initialize
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*! normalize.css v2.1.2 | MIT License | git.io/normalize */
/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */
/**
 * Correct `block` display not defined in IE 8/9.
 */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
  display: block; }

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */
audio,
canvas,
video {
  display: inline-block; }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */
[hidden],
template {
  display: none; }

script {
  display: none !important; }

/* ==========================================================================
   Base
   ========================================================================== */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */
html {
  font-family: sans-serif;
  /* 1 */
  -ms-text-size-adjust: 100%;
  /* 2 */
  -webkit-text-size-adjust: 100%;
  /* 2 */ }

/**
 * Remove default margin.
 */
body {
  margin: 0; }

/* ==========================================================================
   Links
   ========================================================================== */
/**
 * Remove the gray background color from active links in IE 10.
 */
a {
  background: transparent; }

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */
a:focus {
  outline: thin dotted; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
a:active,
a:hover {
  outline: 0; }

/* ==========================================================================
   Typography
   ========================================================================== */
/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */
h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */
abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */
b,
strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari 5 and Chrome.
 */
dfn {
  font-style: italic; }

/**
 * Address differences between Firefox and other browsers.
 */
hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0; }

/**
 * Address styling not present in IE 8/9.
 */
mark {
  background: #ff0;
  color: #000; }

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */
code,
kbd,
pre,
samp {
  font-family: monospace, serif;
  font-size: 1em; }

/**
 * Improve readability of pre-formatted text in all browsers.
 */
pre {
  white-space: pre-wrap; }

/**
 * Set consistent quote types.
 */
q {
  quotes: "\201C" "\201D" "\2018" "\2019"; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sup {
  top: -0.5em; }

sub {
  bottom: -0.25em; }

/* ==========================================================================
   Embedded content
   ========================================================================== */
/**
 * Remove border when inside `a` element in IE 8/9.
 */
img {
  border: 0; }

/**
 * Correct overflow displayed oddly in IE 9.
 */
svg:not(:root) {
  overflow: hidden; }

/* ==========================================================================
   Figures
   ========================================================================== */
/**
 * Address margin not present in IE 8/9 and Safari 5.
 */
figure {
  margin: 0; }

/* ==========================================================================
   Forms
   ========================================================================== */
/**
 * Define consistent border, margin, and padding.
 */
fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
legend {
  border: 0;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */
button,
input,
select,
textarea {
  font-family: inherit;
  /* 1 */
  font-size: 100%;
  /* 2 */
  margin: 0;
  /* 3 */ }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
button,
input {
  line-height: normal; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */
button,
select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */
button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  -webkit-appearance: button;
  /* 2 */
  cursor: pointer;
  /* 3 */ }

/**
 * Re-set default cursor for disabled elements.
 */
button[disabled],
html input[disabled] {
  cursor: default; }

/**
 * 1. Address box sizing set to `content-box` in IE 8/9.
 * 2. Remove excess padding in IE 8/9.
 */
input[type="checkbox"],
input[type="radio"] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  /* 1 */
  padding: 0;
  /* 2 */ }

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */
input[type="search"] {
  -webkit-appearance: textfield;
  /* 1 */
  -webkit-box-sizing: content-box;
  /* 2 */
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */
textarea {
  overflow: auto;
  /* 1 */
  vertical-align: top;
  /* 2 */ }

/* ==========================================================================
   Tables
   ========================================================================== */
/**
 * Remove most spacing between table cells.
 */
table {
  border-collapse: collapse;
  border-spacing: 0; }

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

.clearfix:after, .fw--blocks:after {
  content: '\0020';
  display: block;
  height: 0;
  clear: both;
  overflow: hidden;
  visibility: hidden; }

.show-after-js {
  visibility: hidden; }

html.after-js-loaded .show-after-js {
  visibility: visible; }

.image-scale-hack {
  -webkit-transform: rotate(0.0001deg);
  transform: rotate(0.0001deg); }

iframe[src="//localhost:3000/preview_bar"] {
  display: none; }

.show--small,
.show--medium,
.show--large,
.show--small-medium,
.show--medium-large {
  display: none !important; }

@media only screen and (max-width: 767px) {
  .show--small {
    display: inherit !important; } }
@media only screen and (max-width: 1023px) {
  .show--small-medium {
    display: inherit !important; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .show--medium {
    display: inherit !important; } }
@media only screen and (min-width: 768px) {
  .show--medium-large {
    display: inherit !important; } }
@media only screen and (min-width: 1024px) {
  .show--large {
    display: inherit !important; } }
.hide-for-all {
  display: none !important; }

.spacing--1 {
  padding: 8px; }

.spacing--2 {
  padding: 12px; }

.spacing--3 {
  padding: 16px; }

.spacing--4 {
  padding: 32px; }

.spacing--5 {
  padding: 48px; }

.spacing--6 {
  padding: 72px; }

.spacing--7 {
  padding: 96px; }

.spacing--1x {
  padding-left: 8px;
  padding-right: 8px; }

.spacing--2x {
  padding-left: 12px;
  padding-right: 12px; }

.spacing--3x {
  padding-left: 16px;
  padding-right: 16px; }

.spacing--4x {
  padding-left: 32px;
  padding-right: 32px; }
  @media (max-width: 767px) {
    .spacing--4x {
      padding-left: 16px;
      padding-right: 16px; } }

.spacing--5x {
  padding-left: 48px;
  padding-right: 48px; }

.spacing--6x {
  padding-left: 72px;
  padding-right: 72px; }

.spacing--7x {
  padding-left: 96px;
  padding-right: 96px; }

.spacing--1y {
  padding-top: 8px;
  padding-bottom: 8px; }

.spacing--2y {
  padding-top: 12px;
  padding-bottom: 12px; }

.spacing--3y {
  padding-top: 16px;
  padding-bottom: 16px; }

.spacing--4y {
  padding-top: 32px;
  padding-bottom: 32px; }

.spacing--5y {
  padding-top: 48px;
  padding-bottom: 48px; }

.spacing--6y {
  padding-top: 72px;
  padding-bottom: 72px; }

.spacing--7y {
  padding-top: 96px;
  padding-bottom: 96px; }

@media only screen and (max-width: 767px) {
  .spacing--small-1 {
    padding: 8px; }

  .spacing--small-2 {
    padding: 12px; }

  .spacing--small-3 {
    padding: 16px; }

  .spacing--small-4 {
    padding: 32px; }

  .spacing--small-5 {
    padding: 48px; }

  .spacing--small-6 {
    padding: 72px; }

  .spacing--small-7 {
    padding: 96px; }

  .spacing--small-1x {
    padding-left: 8px;
    padding-right: 8px; }

  .spacing--small-2x {
    padding-left: 12px;
    padding-right: 12px; }

  .spacing--small-3x {
    padding-left: 16px;
    padding-right: 16px; }

  .spacing--small-4x {
    padding-left: 32px;
    padding-right: 32px; }

  .spacing--small-5x {
    padding-left: 48px;
    padding-right: 48px; }

  .spacing--small-6x {
    padding-left: 72px;
    padding-right: 72px; }

  .spacing--small-7x {
    padding-left: 96px;
    padding-right: 96px; }

  .spacing--small-1y {
    padding-top: 8px;
    padding-bottom: 8px; }

  .spacing--small-2y {
    padding-top: 12px;
    padding-bottom: 12px; }

  .spacing--small-3y {
    padding-top: 16px;
    padding-bottom: 16px; }

  .spacing--small-4y {
    padding-top: 32px;
    padding-bottom: 32px; }

  .spacing--small-5y {
    padding-top: 48px;
    padding-bottom: 48px; }

  .spacing--small-6y {
    padding-top: 72px;
    padding-bottom: 72px; }

  .spacing--small-7y {
    padding-top: 96px;
    padding-bottom: 96px; } }
.spacer {
  padding-bottom: 0; }

.bg-color--panel {
  background-color: var(--bg-color--panel); }

.color--important {
  color: var(--color--important); }

html {
  -webkit-text-size-adjust: 100%; }

body {
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
  margin: 0;
  text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004); }

.rte-content > *:not(:last-child) {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .rte-content > *:not(:last-child) {
    padding-bottom: 8px; } }
p {
  margin: 0; }

b,
strong {
  font-weight: bolder; }

img {
  border-style: none; }

a,
a:link,
a:visited {
  color: var(--color--body);
  text-decoration: none;
  background-color: transparent; }

.no-touchevents a, .no-touchevents
a:link, .no-touchevents
a:visited {
  -webkit-transition: color 0.2s ease;
  transition: color 0.2s ease; }

.rte-content a, .rte-content
a:link, .rte-content
a:visited {
  text-decoration: underline; }

a:hover {
  color: var(--color--body); }

.rte-content a:hover {
  color: var(--color--body--light); }

.hover-links a:hover, .hover-links:hover {
  color: var(--color--body--light); }

blockquote {
  font-style: italic;
  padding-left: 16px;
  margin-left: 0;
  border-left: 2px solid #eaeaea; }

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

.rte-content ul {
  list-style-type: disc;
  list-style-position: inside;
  padding-left: 32px;
  line-height: 1.7em; }

@media only screen and (max-width: 767px) {
  .rte-content ul {
    padding-left: 16px; } }
.rte-content ul ul {
  list-style-type: circle; }

ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
  line-height: 1.7em; }

.rte-content ol {
  padding-left: 32px;
  list-style-position: inside;
  counter-reset: item; }

@media only screen and (max-width: 767px) {
  .rte-content ol {
    padding-left: 16px; } }
.rte-content ol li:before {
  content: counters(item,".") ". ";
  counter-increment: item; }

.rte-content ol ol li:before {
  content: counters(item,".") " ";
  counter-increment: item; }

li {
  display: block; }

.rte-content li {
  display: list-item; }

hr {
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
  height: 0;
  overflow: visible; }

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

.rte-content table {
  border: 0;
  margin: -8px; }

@media only screen and (max-width: 767px) {
  .rte-content table {
    width: auto !important;
    margin: -4px; } }
tr:not(:last-child) {
  padding-bottom: 16px; }

td {
  padding: 8px; }

@media only screen and (max-width: 767px) {
  td {
    margin: 4px; } }
iframe {
  max-width: 100%; }

.error {
  color: var(--color--important); }

.errors {
  color: var(--color--important);
  padding-bottom: 16px; }

*::-webkit-input-placeholder,
*:-moz-placeholder,
*::-moz-placeholder,
*:-ms-input-placeholder {
  color: #000; }

label {
  padding-bottom: 8px;
  display: block; }

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  background-image: url("data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4NCjwhLS0gR2VuZXJhdG9yOiBBZG9iZSBJbGx1c3RyYXRvciAxNy4xLjAsIFNWRyBFeHBvcnQgUGx1Zy1JbiAuIFNWRyBWZXJzaW9uOiA2LjAwIEJ1aWxkIDApICAtLT4NCjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCI+DQo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4Ig0KCSB3aWR0aD0iNy43cHgiIGhlaWdodD0iNC4zcHgiIHZpZXdCb3g9IjAgMCA3LjcgNC4zIiBlbmFibGUtYmFja2dyb3VuZD0ibmV3IDAgMCA3LjcgNC4zIiB4bWw6c3BhY2U9InByZXNlcnZlIj4NCjxwYXRoIGZpbGw9IiM5OTk5OTkiIGQ9Ik03LjEsMC4xQzYuNywwLjUsMy45LDMuMiwzLjksMy4yUzEsMC41LDAuNiwwLjFTMCwwLjcsMCwwLjdsMy45LDMuNmwzLjgtMy42QzcuNywwLjcsNy41LTAuMyw3LjEsMC4xeiIvPg0KPC9zdmc+DQo=");
  background-position: right 10px center;
  background-repeat: no-repeat;
  border-radius: 2px;
  border: 1px solid #eaeaea;
  color: #000;
  cursor: pointer;
  font-size: 14px;
  margin: 0 0 16px;
  max-width: 100%;
  padding: 9px 28px 9px 15px;
  text-indent: 0.01px;
  text-overflow: '';
  width: 100%; }

select.compact {
  padding: 5px 28px 5px 15px; }

select:focus {
  color: #000;
  background-color: #fff; }

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

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: #fff;
  border-radius: 2px;
  border: 1px solid #eaeaea;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: #000;
  margin: 0 0 16px;
  max-width: 100%;
  overflow: auto;
  padding: 9px 16px;
  text-transform: none;
  width: 100%; }

input:focus,
textarea:focus {
  border: 1px solid #eaeaea;
  color: #000;
  background-color: #fff; }

input {
  height: 45px;
  line-height: 45px; }

input.compact {
  padding: 6px;
  margin: 0 0 8px;
  height: 29px;
  line-height: 29px; }

.button,
a.font--button,
.font--button,
.font--button--inverted,
.font--secondary-button,
.font--secondary-button--inverted,
.btn.button.bold-ro__custombutton-1505131659300,
button input[type='button'],
input[type='reset'],
input[type='submit'] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 2px;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  cursor: pointer;
  display: inline-block;
  height: 45px;
  line-height: 45px;
  padding: 0 16px;
  vertical-align: bottom;
  width: auto;
  zoom: 1; }

.button.compact, .button[data-height='compact'],
a.font--button.compact,
a.font--button[data-height='compact'],
.font--button.compact,
.font--button[data-height='compact'],
.font--button--inverted.compact,
.font--button--inverted[data-height='compact'],
.font--secondary-button.compact,
.font--secondary-button[data-height='compact'],
.font--secondary-button--inverted.compact,
.font--secondary-button--inverted[data-height='compact'],
button input[type='button'].compact,
button input[type='button'][data-height='compact'],
input[type='reset'].compact,
input[type='reset'][data-height='compact'],
input[type='submit'].compact,
input[type='submit'][data-height='compact'] {
  height: 29px;
  line-height: 29px; }

.button:focus,
a.font--button:focus,
.font--button:focus,
.font--button--inverted:focus,
.font--secondary-button:focus,
.font--secondary-button--inverted:focus,
button input[type='button']:focus,
input[type='reset']:focus,
input[type='submit']:focus {
  background: var(--bg-color--button); }

.button:link,
a.font--button:link,
.font--button:link,
.font--button--inverted:link,
.font--secondary-button:link,
.font--secondary-button--inverted:link,
button input[type='button']:link,
input[type='reset']:link,
input[type='submit']:link {
  color: var(--color--button); }

.button:visited,
a.font--button:visited,
.font--button:visited,
.font--button--inverted:visited,
.font--secondary-button:visited,
.font--secondary-button--inverted:visited,
button input[type='button']:visited,
input[type='reset']:visited,
input[type='submit']:visited {
  color: var(--color--button); }

.button:hover,
a.font--button:hover,
.font--button:hover,
.font--button--inverted:hover,
.font--secondary-button:hover,
.font--secondary-button--inverted:hover,
button input[type='button']:hover,
input[type='reset']:hover,
input[type='submit']:hover {
  color: var(--color--button);
  background: var(--bg-color--button); }

.no-touchevents .button, .no-touchevents
a.font--button, .no-touchevents
.font--button, .no-touchevents
.font--button--inverted, .no-touchevents
.font--secondary-button, .no-touchevents
.font--secondary-button--inverted, .no-touchevents
button input[type='button'], .no-touchevents
input[type='reset'], .no-touchevents
input[type='submit'] {
  -webkit-transition-property: color, border-color, background-color;
  transition-property: color, border-color, background-color;
  -webkit-transition-duration: 0.2s;
  transition-duration: 0.2s;
  -webkit-transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
  transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94); }

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

input[type='radio'] {
  -webkit-appearance: radio;
  -moz-appearance: radio;
  appearance: radio;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: auto;
  height: auto;
  margin: 0 8px 0 0;
  padding: 0;
  width: auto; }

input[type='checkbox'] {
  -webkit-appearance: checkbox;
  -moz-appearance: checkbox;
  appearance: checkbox;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  height: auto;
  margin: 0 8px 0 0;
  padding: 0;
  width: auto; }

form.custom .custom.dropdown {
  background: none; }

form.custom .custom.dropdown ul li.disabled {
  text-decoration: line-through; }

.font--featured-heading {
  font-family: var(--font--heading--family);
  font-weight: var(--font--heading--weight);
  font-style: var(--font--heading--style);
  text-transform: var(--font--heading--uppercase);
  font-size: 64px;
  line-height: 1.125em;
  margin: -0.1875em 0;
  letter-spacing: 0.025em; }

@media only screen and (max-width: 767px) {
  .font--featured-heading {
    font-size: 40px;
    line-height: 1.2em; } }
.font--section-heading,
h1,
h2 {
  font-family: var(--font--heading--family);
  font-weight: bold;
  font-style: var(--font--heading--style);
  text-transform: var(--font--heading--uppercase);
  font-size: 360%;
  line-height: 1.25em;
  margin: -0.25em 0;
  letter-spacing: -0.015em;
  text-transform: uppercase; }

.philosophy-content-container h3 {
  text-transform: uppercase; }

@media only screen and (max-width: 767px) {
  .font--section-heading,
  h1,
  h2 {
    font-size: 20px; } }
.font--block-heading,
h3,
h4,
h5,
h6 {
  font-family: var(--font--heading--family);
  font-weight: var(--font--heading--weight);
  font-style: var(--font--heading--style);
  text-transform: var(--font--heading--uppercase);
  font-weight: var(--font--heading--normal-weight);
  font-size: var(--font--block-heading--size);
  line-height: 1.33333em;
  margin: -0.25em 0;
  letter-spacing: 0.025em; }

@media only screen and (max-width: 767px) {
  .font--block-heading,
  h3,
  h4,
  h5,
  h6 {
    font-size: 16px; } }
.font--accent,
label,
input,
textarea {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px; }

@media only screen and (max-width: 767px) {
  .font--accent,
  label,
  input,
  textarea {
    font-size: 13px; } }
.font--lowercase-accent,
input[type='text'],
input[type='text'],
input[type='password'],
input[type='date'],
input[type='datetime'],
input[type='datetime-local'],
input[type='month'],
input[type='week'],
input[type='email'],
input[type='number'],
input[type='search'],
input[type='tel'],
input[type='time'],
input[type='url'],
select,
textarea {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  text-transform: none; }

@media only screen and (max-width: 767px) {
  .font--lowercase-accent,
  input[type='text'],
  input[type='text'],
  input[type='password'],
  input[type='date'],
  input[type='datetime'],
  input[type='datetime-local'],
  input[type='month'],
  input[type='week'],
  input[type='email'],
  input[type='number'],
  input[type='search'],
  input[type='tel'],
  input[type='time'],
  input[type='url'],
  select,
  textarea {
    font-size: 13px; } }
.font--light-accent {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  color: var(--color--body--light); }

@media only screen and (max-width: 767px) {
  .font--light-accent {
    font-size: 13px; } }
.font--light-accent:link, .font--light-accent:visited, .font--light-accent:hover, .font--light-accent:focus {
  color: var(--color--body--light); }

@media only screen and (max-width: 767px) {
  .font--light-accent {
    font-size: 13px; } }
.font--paragraph,
body {
  font-family: var(--font--paragraph--family);
  font-weight: var(--font--paragraph--weight);
  font-style: var(--font--paragraph--style);
  font-size: var(--font--paragraph--size);
  line-height: 1.5em;
  margin: -0.25em 0; }

@media only screen and (max-width: 767px) {
  .font--paragraph,
  body {
    font-size: 15px; } }
body {
  margin: 0; }

.font--block-link > * {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  line-height: 1; }

@media only screen and (max-width: 767px) {
  .font--block-link > * {
    font-size: 13px; } }
.font--block-link > *:after {
  padding-bottom: 0.14286em;
  border-bottom: 0.07143em solid var(--color--body);
  content: '';
  display: block;
  width: 100%; }

.font--block-link--inverted > * {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  display: inline-block;
  line-height: 1; }

@media only screen and (max-width: 767px) {
  .font--block-link--inverted > * {
    font-size: 13px; } }
.font--block-link--inverted > *:after {
  padding-bottom: 0.14286em;
  border-bottom: 0.07143em solid var(--color--body);
  content: '';
  display: block;
  width: 100%; }

.font--block-link--inverted > * {
  color: var(--color--alternative) !important; }

.font--block-link--inverted > *:after {
  border-color: var(--color--alternative); }

.font--small {
  font-size: 12px; }

.font--button,
a.font--button,
input[type='submit'] {
  background: var(--bg-color--button);
  color: var(--color--button);
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px; }

@media only screen and (max-width: 767px) {
  .font--button,
  a.font--button,
  input[type='submit'] {
    font-size: 13px; } }
.font--button:link, .font--button:visited, .font--button:hover, .font--button:focus,
a.font--button:link,
a.font--button:visited,
a.font--button:hover,
a.font--button:focus,
input[type='submit']:link,
input[type='submit']:visited,
input[type='submit']:hover,
input[type='submit']:focus {
  color: var(--color--button);
  background: var(--bg-color--button); }

.font--button--inverted,
a.font--button--inverted,
input[type='submit'].font--button--inverted {
  background: var(--bg-color--button);
  color: var(--color--button);
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  background: var(--color--button);
  color: var(--bg-color--button); }

@media only screen and (max-width: 767px) {
  .font--button--inverted,
  a.font--button--inverted,
  input[type='submit'].font--button--inverted {
    font-size: 13px; } }
.font--button--inverted:link, .font--button--inverted:visited, .font--button--inverted:hover, .font--button--inverted:focus,
a.font--button--inverted:link,
a.font--button--inverted:visited,
a.font--button--inverted:hover,
a.font--button--inverted:focus,
input[type='submit'].font--button--inverted:link,
input[type='submit'].font--button--inverted:visited,
input[type='submit'].font--button--inverted:hover,
input[type='submit'].font--button--inverted:focus {
  color: var(--color--button);
  background: var(--bg-color--button); }

.font--button--inverted:link, .font--button--inverted:visited, .font--button--inverted:hover, .font--button--inverted:focus,
a.font--button--inverted:link,
a.font--button--inverted:visited,
a.font--button--inverted:hover,
a.font--button--inverted:focus,
input[type='submit'].font--button--inverted:link,
input[type='submit'].font--button--inverted:visited,
input[type='submit'].font--button--inverted:hover,
input[type='submit'].font--button--inverted:focus {
  background: var(--color--button);
  color: var(--bg-color--button); }

.font--secondary-button,
a.font--secondary-button,
input[type='submit'].font--secondary-button {
  background: var(--bg-color--button);
  color: var(--color--button);
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  background: transparent;
  border: 2px solid var(--bg-color--button);
  color: var(--bg-color--button);
  line-height: 41px; }

@media only screen and (max-width: 767px) {
  .font--secondary-button,
  a.font--secondary-button,
  input[type='submit'].font--secondary-button {
    font-size: 13px; } }
.font--secondary-button:link, .font--secondary-button:visited, .font--secondary-button:hover, .font--secondary-button:focus,
a.font--secondary-button:link,
a.font--secondary-button:visited,
a.font--secondary-button:hover,
a.font--secondary-button:focus,
input[type='submit'].font--secondary-button:link,
input[type='submit'].font--secondary-button:visited,
input[type='submit'].font--secondary-button:hover,
input[type='submit'].font--secondary-button:focus {
  color: var(--color--button);
  background: var(--bg-color--button); }

.font--secondary-button:link, .font--secondary-button:visited, .font--secondary-button:hover, .font--secondary-button:focus,
a.font--secondary-button:link,
a.font--secondary-button:visited,
a.font--secondary-button:hover,
a.font--secondary-button:focus,
input[type='submit'].font--secondary-button:link,
input[type='submit'].font--secondary-button:visited,
input[type='submit'].font--secondary-button:hover,
input[type='submit'].font--secondary-button:focus {
  color: var(--bg-color--button);
  background: transparent; }

.font--secondary-button--inverted,
a.font--secondary-button--inverted,
input[type='submit'].font--secondary-button--inverted {
  background: var(--bg-color--button);
  color: var(--color--button);
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  background: transparent;
  border: 2px solid var(--bg-color--button);
  color: var(--bg-color--button);
  line-height: 41px;
  background: transparent;
  border: 2px solid var(--bg-color--body);
  color: var(--bg-color--body); }

@media only screen and (max-width: 767px) {
  .font--secondary-button--inverted,
  a.font--secondary-button--inverted,
  input[type='submit'].font--secondary-button--inverted {
    font-size: 13px; } }
.font--secondary-button--inverted:link, .font--secondary-button--inverted:visited, .font--secondary-button--inverted:hover, .font--secondary-button--inverted:focus,
a.font--secondary-button--inverted:link,
a.font--secondary-button--inverted:visited,
a.font--secondary-button--inverted:hover,
a.font--secondary-button--inverted:focus,
input[type='submit'].font--secondary-button--inverted:link,
input[type='submit'].font--secondary-button--inverted:visited,
input[type='submit'].font--secondary-button--inverted:hover,
input[type='submit'].font--secondary-button--inverted:focus {
  color: var(--color--button);
  background: var(--bg-color--button); }

.font--secondary-button--inverted:link, .font--secondary-button--inverted:visited, .font--secondary-button--inverted:hover, .font--secondary-button--inverted:focus,
a.font--secondary-button--inverted:link,
a.font--secondary-button--inverted:visited,
a.font--secondary-button--inverted:hover,
a.font--secondary-button--inverted:focus,
input[type='submit'].font--secondary-button--inverted:link,
input[type='submit'].font--secondary-button--inverted:visited,
input[type='submit'].font--secondary-button--inverted:hover,
input[type='submit'].font--secondary-button--inverted:focus {
  color: var(--bg-color--button);
  background: transparent; }

.font--secondary-button--inverted:link, .font--secondary-button--inverted:visited, .font--secondary-button--inverted:hover, .font--secondary-button--inverted:focus,
a.font--secondary-button--inverted:link,
a.font--secondary-button--inverted:visited,
a.font--secondary-button--inverted:hover,
a.font--secondary-button--inverted:focus,
input[type='submit'].font--secondary-button--inverted:link,
input[type='submit'].font--secondary-button--inverted:visited,
input[type='submit'].font--secondary-button--inverted:hover,
input[type='submit'].font--secondary-button--inverted:focus {
  color: var(--bg-color--body);
  background: transparent; }

/* Loading Animation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.fw--loading_animation {
  display: none; }

/* Media Queries
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.fw--align--center-y {
  position: relative;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%); }

.fw--align--center-x {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%); }

.fw--align--center {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.fw--align--center-x.fw--align--center-y {
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.fw--align--left {
  position: absolute;
  left: 0; }

.fw--align--right {
  position: absolute;
  right: 0; }

.fw--align--top {
  position: absolute;
  top: 0; }

.fw--align--bottom {
  position: absolute;
  bottom: 0; }

.fw--align--fill-y--dynamic,
.fw--align--fill-y--fixed {
  display: block; }

/* Blocks
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.fw--blocks {
  display: block;
  margin: 0 auto;
  position: relative;
  padding: 0; }

.fw--blocks.show-after-js {
  visibility: hidden; }

.fw--blocks > *,
.fw--blocks .block {
  position: relative;
  float: left;
  display: block;
  width: 100%;
  min-height: 1px; }

.fw--blocks > *.show-after-js,
.fw--blocks .block.show-after-js {
  visibility: hidden; }

.fw--blocks.list > *,
.fw--blocks.list .item {
  display: inline-block;
  width: auto;
  float: none; }

.fw--blocks.vertical > *,
.fw--blocks.vertical .item {
  float: none;
  display: block; }

.fw--blocks .width--1 {
  width: 8.33333%; }

.fw--blocks .width--2 {
  width: 16.66667%; }

.fw--blocks .width--3 {
  width: 25%; }

.fw--blocks .width--4 {
  width: 33.33333%; }

.fw--blocks .width--5 {
  width: 41.66667%; }

.fw--blocks .width--6 {
  width: 50%; }

.fw--blocks .width--7 {
  width: 58.33333%; }

.fw--blocks .width--8 {
  width: 66.66667%; }

.fw--blocks .width--9 {
  width: 75%; }

.fw--blocks .width--10 {
  width: 83.33333%; }

.fw--blocks .width--11 {
  width: 91.66667%; }

.fw--blocks .width--12 {
  width: 100%; }

@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-1 {
    width: 8.33333%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-2 {
    width: 16.66667%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-3 {
    width: 25%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-4 {
    width: 33.33333%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-5 {
    width: 41.66667%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-6 {
    width: 50%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-7 {
    width: 58.33333%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-8 {
    width: 66.66667%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-9 {
    width: 75%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-10 {
    width: 83.33333%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-11 {
    width: 91.66667%; } }
@media only screen and (min-width: 768px) {
  .fw--blocks .width--medium-12 {
    width: 100%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-1 {
    width: 8.33333%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-2 {
    width: 16.66667%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-3 {
    width: 25%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-4 {
    width: 33.33333%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-5 {
    width: 41.66667%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-6 {
    width: 50%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-7 {
    width: 58.33333%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-8 {
    width: 66.66667%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-9 {
    width: 75%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-10 {
    width: 83.33333%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-11 {
    width: 91.66667%; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks .width--large-12 {
    width: 100%; } }
.fw--blocks.clear-after--1 > *:nth-child(1n + 1),
.fw--blocks.clear-after--1 .block:nth-child(1n + 1) {
  clear: left; }

.fw--blocks.clear-after--2 > *:nth-child(2n + 1),
.fw--blocks.clear-after--2 .block:nth-child(2n + 1) {
  clear: left; }

.fw--blocks.clear-after--3 > *:nth-child(3n + 1),
.fw--blocks.clear-after--3 .block:nth-child(3n + 1) {
  clear: left; }

.fw--blocks.clear-after--4 > *:nth-child(4n + 1),
.fw--blocks.clear-after--4 .block:nth-child(4n + 1) {
  clear: left; }

.fw--blocks.clear-after--5 > *:nth-child(5n + 1),
.fw--blocks.clear-after--5 .block:nth-child(5n + 1) {
  clear: left; }

.fw--blocks.clear-after--6 > *:nth-child(6n + 1),
.fw--blocks.clear-after--6 .block:nth-child(6n + 1) {
  clear: left; }

.fw--blocks.clear-after--7 > *:nth-child(7n + 1),
.fw--blocks.clear-after--7 .block:nth-child(7n + 1) {
  clear: left; }

.fw--blocks.clear-after--8 > *:nth-child(8n + 1),
.fw--blocks.clear-after--8 .block:nth-child(8n + 1) {
  clear: left; }

.fw--blocks.clear-after--9 > *:nth-child(9n + 1),
.fw--blocks.clear-after--9 .block:nth-child(9n + 1) {
  clear: left; }

.fw--blocks.clear-after--10 > *:nth-child(10n + 1),
.fw--blocks.clear-after--10 .block:nth-child(10n + 1) {
  clear: left; }

.fw--blocks.clear-after--11 > *:nth-child(11n + 1),
.fw--blocks.clear-after--11 .block:nth-child(11n + 1) {
  clear: left; }

.fw--blocks.clear-after--12 > *:nth-child(12n + 1),
.fw--blocks.clear-after--12 .block:nth-child(12n + 1) {
  clear: left; }

@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-1 > *:nth-child(1n + 1),
  .fw--blocks.clear-after--small-1 .block:nth-child(1n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-2 > *:nth-child(2n + 1),
  .fw--blocks.clear-after--small-2 .block:nth-child(2n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-3 > *:nth-child(3n + 1),
  .fw--blocks.clear-after--small-3 .block:nth-child(3n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-4 > *:nth-child(4n + 1),
  .fw--blocks.clear-after--small-4 .block:nth-child(4n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-5 > *:nth-child(5n + 1),
  .fw--blocks.clear-after--small-5 .block:nth-child(5n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-6 > *:nth-child(6n + 1),
  .fw--blocks.clear-after--small-6 .block:nth-child(6n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-7 > *:nth-child(7n + 1),
  .fw--blocks.clear-after--small-7 .block:nth-child(7n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-8 > *:nth-child(8n + 1),
  .fw--blocks.clear-after--small-8 .block:nth-child(8n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-9 > *:nth-child(9n + 1),
  .fw--blocks.clear-after--small-9 .block:nth-child(9n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-10 > *:nth-child(10n + 1),
  .fw--blocks.clear-after--small-10 .block:nth-child(10n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-11 > *:nth-child(11n + 1),
  .fw--blocks.clear-after--small-11 .block:nth-child(11n + 1) {
    clear: left; } }
@media only screen and (max-width: 767px) {
  .fw--blocks.clear-after--small-12 > *:nth-child(12n + 1),
  .fw--blocks.clear-after--small-12 .block:nth-child(12n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-1 > *:nth-child(1n + 1),
  .fw--blocks.clear-after--medium-1 .block:nth-child(1n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-2 > *:nth-child(2n + 1),
  .fw--blocks.clear-after--medium-2 .block:nth-child(2n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-3 > *:nth-child(3n + 1),
  .fw--blocks.clear-after--medium-3 .block:nth-child(3n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-4 > *:nth-child(4n + 1),
  .fw--blocks.clear-after--medium-4 .block:nth-child(4n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-5 > *:nth-child(5n + 1),
  .fw--blocks.clear-after--medium-5 .block:nth-child(5n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-6 > *:nth-child(6n + 1),
  .fw--blocks.clear-after--medium-6 .block:nth-child(6n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-7 > *:nth-child(7n + 1),
  .fw--blocks.clear-after--medium-7 .block:nth-child(7n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-8 > *:nth-child(8n + 1),
  .fw--blocks.clear-after--medium-8 .block:nth-child(8n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-9 > *:nth-child(9n + 1),
  .fw--blocks.clear-after--medium-9 .block:nth-child(9n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-10 > *:nth-child(10n + 1),
  .fw--blocks.clear-after--medium-10 .block:nth-child(10n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-11 > *:nth-child(11n + 1),
  .fw--blocks.clear-after--medium-11 .block:nth-child(11n + 1) {
    clear: left; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .fw--blocks.clear-after--medium-12 > *:nth-child(12n + 1),
  .fw--blocks.clear-after--medium-12 .block:nth-child(12n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-1 > *:nth-child(1n + 1),
  .fw--blocks.clear-after--large-1 .block:nth-child(1n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-2 > *:nth-child(2n + 1),
  .fw--blocks.clear-after--large-2 .block:nth-child(2n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-3 > *:nth-child(3n + 1),
  .fw--blocks.clear-after--large-3 .block:nth-child(3n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-4 > *:nth-child(4n + 1),
  .fw--blocks.clear-after--large-4 .block:nth-child(4n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-5 > *:nth-child(5n + 1),
  .fw--blocks.clear-after--large-5 .block:nth-child(5n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-6 > *:nth-child(6n + 1),
  .fw--blocks.clear-after--large-6 .block:nth-child(6n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-7 > *:nth-child(7n + 1),
  .fw--blocks.clear-after--large-7 .block:nth-child(7n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-8 > *:nth-child(8n + 1),
  .fw--blocks.clear-after--large-8 .block:nth-child(8n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-9 > *:nth-child(9n + 1),
  .fw--blocks.clear-after--large-9 .block:nth-child(9n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-10 > *:nth-child(10n + 1),
  .fw--blocks.clear-after--large-10 .block:nth-child(10n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-11 > *:nth-child(11n + 1),
  .fw--blocks.clear-after--large-11 .block:nth-child(11n + 1) {
    clear: left; } }
@media only screen and (min-width: 1024px) {
  .fw--blocks.clear-after--large-12 > *:nth-child(12n + 1),
  .fw--blocks.clear-after--large-12 .block:nth-child(12n + 1) {
    clear: left; } }
.fw--blocks.spacing--1 {
  padding: 4px; }

.fw--blocks.spacing--1 > * {
  padding: 4px; }

.fw--blocks.spacing--2 {
  padding: 6px; }

.fw--blocks.spacing--2 > * {
  padding: 6px; }

.fw--blocks.spacing--3 {
  padding: 8px; }

.fw--blocks.spacing--3 > * {
  padding: 8px; }

.fw--blocks.spacing--4 {
  padding: 16px; }

.fw--blocks.spacing--4 > * {
  padding: 16px; }

.fw--blocks.spacing--5 {
  padding: 24px; }

.fw--blocks.spacing--5 > * {
  padding: 24px; }

.fw--blocks.spacing--6 {
  padding: 36px; }

.fw--blocks.spacing--6 > * {
  padding: 36px; }

.fw--blocks.spacing--1x {
  padding-left: 4px;
  padding-right: 4px; }

.fw--blocks.spacing--1x > * {
  padding-left: 4px;
  padding-right: 4px; }

.fw--blocks.spacing--2x {
  padding-left: 6px;
  padding-right: 6px; }

.fw--blocks.spacing--2x > * {
  padding-left: 6px;
  padding-right: 6px; }

.fw--blocks.spacing--3x {
  padding-left: 8px;
  padding-right: 8px; }

.fw--blocks.spacing--3x > * {
  padding-left: 8px;
  padding-right: 8px; }

.fw--blocks.spacing--4x {
  padding-left: 16px;
  padding-right: 16px; }

.fw--blocks.spacing--4x > * {
  padding-left: 16px;
  padding-right: 16px; }

.fw--blocks.spacing--5x {
  padding-left: 24px;
  padding-right: 24px; }

.fw--blocks.spacing--5x > * {
  padding-left: 24px;
  padding-right: 24px; }

.fw--blocks.spacing--6x {
  padding-left: 36px;
  padding-right: 36px; }

.fw--blocks.spacing--6x > * {
  padding-left: 36px;
  padding-right: 36px; }

.fw--blocks.spacing--1y {
  padding-top: 4px;
  padding-bottom: 4px; }

.fw--blocks.spacing--1y > * {
  padding-top: 4px;
  padding-bottom: 4px; }

.fw--blocks.spacing--2y {
  padding-top: 6px;
  padding-bottom: 6px; }

.fw--blocks.spacing--2y > * {
  padding-top: 6px;
  padding-bottom: 6px; }

.fw--blocks.spacing--3y {
  padding-top: 8px;
  padding-bottom: 8px; }

.fw--blocks.spacing--3y > * {
  padding-top: 8px;
  padding-bottom: 8px; }

.fw--blocks.spacing--4y {
  padding-top: 16px;
  padding-bottom: 16px; }

.fw--blocks.spacing--4y > * {
  padding-top: 16px;
  padding-bottom: 16px; }

.fw--blocks.spacing--5y {
  padding-top: 24px;
  padding-bottom: 24px; }

.fw--blocks.spacing--5y > * {
  padding-top: 24px;
  padding-bottom: 24px; }

.fw--blocks.spacing--6y {
  padding-top: 36px;
  padding-bottom: 36px; }

.fw--blocks.spacing--6y > * {
  padding-top: 36px;
  padding-bottom: 36px; }

@media only screen and (max-width: 767px) {
  .fw--blocks.spacing--small-0 {
    padding: 0; }

  .fw--blocks.spacing--small-0 > * {
    padding: 0; }

  .fw--blocks.spacing--small-1 {
    padding: 4px; }

  .fw--blocks.spacing--small-1 > * {
    padding: 4px; }

  .fw--blocks.spacing--small-2 {
    padding: 6px; }

  .fw--blocks.spacing--small-2 > * {
    padding: 6px; }

  .fw--blocks.spacing--small-3 {
    padding: 8px; }

  .fw--blocks.spacing--small-3 > * {
    padding: 8px; }

  .fw--blocks.spacing--small-4 {
    padding: 16px; }

  .fw--blocks.spacing--small-4 > * {
    padding: 16px; }

  .fw--blocks.spacing--small-5 {
    padding: 24px; }

  .fw--blocks.spacing--small-5 > * {
    padding: 24px; }

  .fw--blocks.spacing--small-6 {
    padding: 36px; }

  .fw--blocks.spacing--small-6 > * {
    padding: 36px; }

  .fw--blocks.spacing--small-0x {
    padding-left: 0;
    padding-right: 0; }

  .fw--blocks.spacing--small-0x > * {
    padding-left: 0;
    padding-right: 0; }

  .fw--blocks.spacing--small-1x {
    padding-left: 4px;
    padding-right: 4px; }

  .fw--blocks.spacing--small-1x > * {
    padding-left: 4px;
    padding-right: 4px; }

  .fw--blocks.spacing--small-2x {
    padding-left: 6px;
    padding-right: 6px; }

  .fw--blocks.spacing--small-2x > * {
    padding-left: 6px;
    padding-right: 6px; }

  .fw--blocks.spacing--small-3x {
    padding-left: 8px;
    padding-right: 8px; }

  .fw--blocks.spacing--small-3x > * {
    padding-left: 8px;
    padding-right: 8px; }

  .fw--blocks.spacing--small-4x {
    padding-left: 16px;
    padding-right: 16px; }

  .fw--blocks.spacing--small-4x > * {
    padding-left: 16px;
    padding-right: 16px; }

  .fw--blocks.spacing--small-5x {
    padding-left: 24px;
    padding-right: 24px; }

  .fw--blocks.spacing--small-5x > * {
    padding-left: 24px;
    padding-right: 24px; }

  .fw--blocks.spacing--small-6x {
    padding-left: 36px;
    padding-right: 36px; }

  .fw--blocks.spacing--small-6x > * {
    padding-left: 36px;
    padding-right: 36px; }

  .fw--blocks.spacing--small-0y {
    padding-top: 0;
    padding-bottom: 0; }

  .fw--blocks.spacing--small-0y > * {
    padding-top: 0;
    padding-bottom: 0; }

  .fw--blocks.spacing--small-1y {
    padding-top: 4px;
    padding-bottom: 4px; }

  .fw--blocks.spacing--small-1y > * {
    padding-top: 4px;
    padding-bottom: 4px; }

  .fw--blocks.spacing--small-2y {
    padding-top: 6px;
    padding-bottom: 6px; }

  .fw--blocks.spacing--small-2y > * {
    padding-top: 6px;
    padding-bottom: 6px; }

  .fw--blocks.spacing--small-3y {
    padding-top: 8px;
    padding-bottom: 8px; }

  .fw--blocks.spacing--small-3y > * {
    padding-top: 8px;
    padding-bottom: 8px; }

  .fw--blocks.spacing--small-4y {
    padding-top: 16px;
    padding-bottom: 16px; }

  .fw--blocks.spacing--small-4y > * {
    padding-top: 16px;
    padding-bottom: 16px; }

  .fw--blocks.spacing--small-5y {
    padding-top: 24px;
    padding-bottom: 24px; }

  .fw--blocks.spacing--small-5y > * {
    padding-top: 24px;
    padding-bottom: 24px; }

  .fw--blocks.spacing--small-6y {
    padding-top: 36px;
    padding-bottom: 36px; }

  .fw--blocks.spacing--small-6y > * {
    padding-top: 36px;
    padding-bottom: 36px; } }
.fw--blocks.compact--1x {
  margin-left: -8px;
  margin-right: -8px; }

.fw--blocks.compact--2x {
  margin-left: -12px;
  margin-right: -12px; }

.fw--blocks.compact--3x {
  margin-left: -16px;
  margin-right: -16px; }

.fw--blocks.compact--4x {
  margin-left: -32px;
  margin-right: -32px; }

.fw--blocks.compact--5x {
  margin-left: -48px;
  margin-right: -48px; }

.fw--blocks.compact--6x {
  margin-left: -72px;
  margin-right: -72px; }

.fw--blocks.compact--1y {
  margin-top: -8px;
  margin-bottom: -8px; }

.fw--blocks.compact--2y {
  margin-top: -12px;
  margin-bottom: -12px; }

.fw--blocks.compact--3y {
  margin-top: -16px;
  margin-bottom: -16px; }

.fw--blocks.compact--4y {
  margin-top: -32px;
  margin-bottom: -32px; }

.fw--blocks.compact--5y {
  margin-top: -48px;
  margin-bottom: -48px; }

.fw--blocks.compact--6y {
  margin-top: -72px;
  margin-bottom: -72px; }

/* Icons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.placeholder--root {
  position: relative;
  width: 100%; }

.placeholder--root svg {
  fill: #cbcbcb;
  color: #cbcbcb;
  background-color: #e9e9e9;
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%; }

.placeholder--container {
  max-width: 100%; }

.fw--icon path {
  fill: currentColor; }

.fw--icon path,
a:hover svg,
a:focus svg,
a:link svg,
a:visited svg,
.payment-options svg,
svg use svg,
.x-menu--overlap-icon svg {
  fill: currentColor !important; }

/* Layouts
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
hr {
  border: 0;
  padding: 0;
  border-bottom: 1px solid #eaeaea; }

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

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

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

@media only screen and (min-width: 768px) {
  .text-align--medium-left {
    text-align: left; }

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

  .text-align--medium-right {
    text-align: right; } }
@media only screen and (min-width: 1024px) {
  .text-align--large-left {
    text-align: left; }

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

  .text-align--large-right {
    text-align: right; } }
.divider {
  display: block;
  border-top: 1px solid #eaeaea; }

.panel {
  background: var(--bg-color--panel);
  border: 1px solid #eaeaea;
  border-radius: 3px; }

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

table {
  background: transparent;
  border-top: solid 1px #eaeaea;
  border-bottom: solid 1px #eaeaea;
  border-radius: 5px;
  border-collapse: separate; }

table.no-border {
  border: 0px; }

table tr:first-child td:first-child,
table tr:first-child th:first-child {
  border-top-left-radius: 5px; }

table thead ~ tbody tr:first-child td:first-child,
table thead ~ tbody tr:first-child th:first-child {
  border-radius: 0; }

table tr:first-child td:last-child {
  border-top-right-radius: 5px; }

table thead ~ tbody tr:first-child td:last-child {
  border-radius: 0; }

table tr:last-child td:first-child,
table tr:last-child th:first-child {
  border-bottom-left-radius: 5px; }

table tr:last-child td:last-child {
  border-bottom-right-radius: 5px; }

table thead th:first-child {
  border-top-left-radius: 5px; }

table thead th:last-child {
  border-top-right-radius: 5px; }

@media only screen and (max-width: 768px) {
  table.responsive {
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    clear: left;
    border: 0;
    /* Hide table headers (but not display: none;, for accessibility) */ }

  table.responsive thead,
  table.responsive tbody,
  table.responsive th,
  table.responsive td,
  table.responsive tr {
    display: block;
    width: 100%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    clear: left; }

  table.responsive thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px; }

  table.responsive tr {
    border: 1px solid #eaeaea;
    padding: 12px; }

  table.responsive td {
    padding: 0;
    line-height: 1.6;
    border: none;
    border-bottom: 0;
    position: relative;
    padding: 8px 0; }

  table.responsive td:empty {
    padding: 0; }

  table.responsive td:before {
    display: block;
    word-wrap: break-word;
    max-width: 100%; }

  table.responsive td:before {
    content: attr(data-label); } }
html,
body {
  margin: 0;
  padding: 0;
  background: var(--bg-color--body);
  padding-top: 0; }

body {
  color: var(--color--body); }

[data-section-id] {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  [data-section-id] {
    padding: 32px 16px; } }
.fw--logo img {
  max-width: 450px; }

.layout--main-content {
  position: relative; }

.layout--main-content .page-wrapper {
  max-width: 600px;
  margin: 0 auto; }

@media only screen and (max-width: 767px) {
  .layout--main-content .page-wrapper {
    padding: 16px;
    max-width: 100% !important; } }
.page--about-us .layout--main-content .page-wrapper {
  max-width: 800px; }

.layout--main-content .page-wrapper.page--service-list {
  max-width: 800px;
  padding-bottom: 0; }

.layout--main-content .page-wrapper.wide {
  max-width: 1000px; }

.layout--main-content .content-wrapper {
  max-width: 600px;
  margin: 0 auto; }

.layout--main-content .content-wrapper.small {
  max-width: 400px; }

.layout--main-content .content-wrapper.wide {
  max-width: 1000px; }

body.show-border .off-canvas--main-content {
  border: 12px solid var(--bdr-color--page); }

@media only screen and (max-width: 767px) {
  body.show-border .off-canvas--main-content {
    border-width: 8px; } }
[data-banner--enabled='true'] .fullscreen-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  min-height: 100vh;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.show-border[data-banner--enabled='true'] .fullscreen-container {
  min-height: calc(100vh - 10px); }

.show-border[data-banner--enabled='true'][data-no-content-sections='true'] .fullscreen-container {
  min-height: calc(100vh - 20px); }

.fullscreen-container > :first-child {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.button,
a.button,
input[type='submit'],
input[type='button'],
input[type='reset'] {
  background: var(--bg-color--button);
  color: var(--color--button);
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 2px;
  display: inline-block;
  zoom: 1;
  letter-spacing: 1px;
  padding: 0 15px;
  vertical-align: bottom;
  height: 45px;
  line-height: 45px;
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px; }

@media only screen and (max-width: 767px) {
  .button,
  a.button,
  input[type='submit'],
  input[type='button'],
  input[type='reset'] {
    font-size: 13px; } }
.button.compact,
a.button.compact,
input[type='submit'].compact,
input[type='button'].compact,
input[type='reset'].compact {
  height: 29px;
  line-height: 29px; }

.button:focus,
a.button:focus,
input[type='submit']:focus,
input[type='button']:focus,
input[type='reset']:focus {
  background: var(--bg-color--button); }

.button:link,
a.button:link,
input[type='submit']:link,
input[type='button']:link,
input[type='reset']:link {
  color: var(--color--button); }

.button:visited,
a.button:visited,
input[type='submit']:visited,
input[type='button']:visited,
input[type='reset']:visited {
  color: var(--color--button); }

.button:hover,
a.button:hover,
input[type='submit']:hover,
input[type='button']:hover,
input[type='reset']:hover {
  color: var(--color--button);
  background: var(--bg-color--button); }

.button--secondary {
  background: var(--bg-color--button);
  color: var(--color--button);
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 2px;
  display: inline-block;
  zoom: 1;
  letter-spacing: 1px;
  padding: 0 15px;
  vertical-align: bottom;
  height: 45px;
  line-height: 45px;
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  background: var(--bg-color--body);
  border: 2px solid var(--bg-color--button);
  color: var(--bg-color--button);
  line-height: 41px; }

@media only screen and (max-width: 767px) {
  .button--secondary {
    font-size: 13px; } }
.button--secondary.compact {
  height: 29px;
  line-height: 29px; }

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

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

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

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

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

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

/* Forms
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.input--number {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: #fff;
  border: 1px solid #eaeaea;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin-bottom: 15px;
  position: relative;
  text-align: left; }

.input--number .minus,
.input--number .plus {
  padding: 0 8px;
  cursor: pointer;
  background: #fff; }

.input--number input {
  height: 32px;
  line-height: 32px;
  z-index: 1;
  border-top: 0 !important;
  border-bottom: 0 !important;
  width: 38px;
  margin: 0;
  border-radius: 0; }

.input--number input:focus {
  border-top: 0;
  border-bottom: 0; }

.input--number svg {
  height: 32px !important; }

.input--number.updating input {
  color: #eaeaea; }

/* Media
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
img {
  vertical-align: middle;
  max-width: 100%; }

.img--cover {
  top: 0;
  position: relative;
  display: block;
  height: 100%;
  width: 100%;
  background-repeat: no-repeat;
  background-position: center;
  background-size: cover; }

.responsive-video {
  width: 100%;
  display: block;
  position: relative;
  padding-top: 2.08333em;
  padding-bottom: 67.5%;
  height: 0;
  margin-bottom: 1.33333em;
  overflow: hidden; }

.responsive-video.widescreen {
  padding-bottom: 57.25%; }

.responsive-video.vimeo {
  padding-top: 0; }

.responsive-video.kickstarter {
  padding-bottom: 52%; }

@media only screen and (max-width: 767px) {
  .responsive-video.kickstarter {
    padding-bottom: 50%; } }
@media only screen and (min-width: 1024px) {
  .responsive-video.kickstarter {
    padding-bottom: 54%; } }
.responsive-video iframe,
.responsive-video object,
.responsive-video embed,
.responsive-video video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.image--root {
  position: relative;
  max-width: 100%; }

.image--root .lazyload {
  visibility: hidden; }

.image--root img {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%; }

.image--container {
  max-width: 100%; }

/* Off Canvas
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.off-canvas--viewport {
  width: 100%;
  overflow: hidden;
  position: relative; }

.off-canvas--left-sidebar {
  position: absolute;
  top: 0;
  overflow: visible;
  display: block;
  z-index: 100;
  min-height: 100vh;
  width: 80%;
  max-width: 400px;
  background-color: var(--bg-color--body);
  -webkit-transform: translateX(-100%);
  transform: translateX(-100%); }

[data-off-canvas--state='left-open'] .off-canvas--left-sidebar {
  -webkit-box-shadow: 2px 0 10px -2px #888;
  box-shadow: 2px 0 10px -2px #888; }

.off-canvas--right-sidebar {
  position: absolute;
  top: 0;
  overflow: visible;
  display: block;
  z-index: 100;
  min-height: 100vh;
  width: 80%;
  max-width: 400px;
  background-color: var(--bg-color--body);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  left: 100%; }

[data-off-canvas--state='right-open'] .off-canvas--right-sidebar {
  -webkit-box-shadow: -2px 0 10px -2px #888;
  box-shadow: -2px 0 10px -2px #888; }

.off-canvas--main-content {
  min-height: 100%;
  width: 100%;
  top: 0; }

.off-canvas--overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 100;
  opacity: 0;
  background: #000;
  cursor: pointer; }

.off-canvas--open {
  display: inline-block;
  cursor: pointer; }

.off-canvas--close {
  position: fixed;
  top: 12px;
  color: #fff;
  z-index: 101;
  cursor: pointer;
  display: inline-block; }

[data-off-canvas--state='closed'] .off-canvas--close {
  display: none; }

[data-off-canvas--state='left-open'] .off-canvas--close {
  left: calc(400px + 15px); }

@media only screen and (max-width: 500px) {
  [data-off-canvas--state='left-open'] .off-canvas--close {
    left: calc(80% + 15px); } }
[data-off-canvas--state='right-open'] .off-canvas--close {
  right: calc(400px + 15px); }

@media only screen and (max-width: 500px) {
  [data-off-canvas--state='right-open'] .off-canvas--close {
    right: calc(80% + 15px); } }
.off-canvas--close svg {
  width: 16px;
  height: 13px; }

.off-canvas--left-sidebar .social-follow {
  padding: 30px;
  text-align: center; }

/* Search
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.search--header {
  padding: 32px;
  text-align: center; }

.search--bar {
  position: relative; }

@media only screen and (max-width: 767px) {
  .search--bar {
    padding-top: 8px; } }
@media only screen and (min-width: 768px) {
  .search--bar {
    padding: 16px 0; } }
input[type='text'].search--textbox,
input[type='text'].search--textbox:focus {
  padding: 0 55px 0 35px;
  border: 0;
  outline: 0;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  background: transparent;
  height: 50px;
  font-size: 22px; }

input[type='text']::-ms-clear {
  display: none; }

.search--loading {
  display: none;
  position: absolute;
  top: 36px;
  left: 18px; }

@media only screen and (min-width: 768px) {
  .search--loading {
    top: 45px; } }
.search--root[data-view='template'] .search--body {
  padding: 0 16px; }

.search--results {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media only screen and (max-width: 767px) {
  .search--results {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 0 16px; } }
.search--results > * {
  padding: 16px; }

@media only screen and (max-width: 767px) {
  .search--products {
    width: 100%; } }
@media only screen and (min-width: 768px) {
  .search--products {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 0px;
    flex: 1 1 0;
    width: calc(100% - 300px); } }
.search--root[data-view='template'] .search--products {
  width: 100%; }

@media only screen and (min-width: 768px) {
  .search--root[data-show-articles='false'][data-show-pages='false'] .search--products {
    width: 100%; } }
.search--info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px;
  border-bottom: 1px solid #eaeaea; }

.search--count {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1; }

.search--items {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 16px 0; }

.search--products-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 16px 0; }

.search--product {
  width: 100%;
  padding: 16px; }

@media only screen and (min-width: 768px) {
  .search--product {
    width: calc(100% / 3); } }
@media only screen and (min-width: 1024px) {
  .search--root[data-show-articles='false'][data-show-pages='false'] .search--product {
    width: calc(100% / 4); } }
@media only screen and (min-width: 1024px) {
  .search--root[data-view='template'] .search--product {
    width: calc(100% / 4); } }
@media only screen and (max-width: 767px) {
  .search--articles {
    width: 100%; } }
@media only screen and (min-width: 768px) {
  .search--articles {
    -webkit-box-flex: 1;
    -ms-flex: 1 0 300px;
    flex: 1 0 300px;
    width: 300px;
    max-width: 300px; } }
.search--root[data-view='template'] .search--articles {
  max-width: 800px;
  -ms-flex-preferred-size: 800px;
  flex-basis: 800px;
  text-align: center;
  margin: 0 auto; }

.search--articles-container {
  padding: 16px 0; }

.search--article {
  padding: 8px 16px; }

.search--no-results {
  padding: 0 16px; }

.search--footer {
  padding: 0 16px; }

@media only screen and (min-width: 768px) {
  .search--footer {
    padding: 0 32px; } }
.search--again-button {
  padding: 32px;
  text-align: center; }

[data-search--view='sidebar'] .search--icon {
  top: 15px; }

/* Breadcrumbs
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.fw--breadcrumbs {
  width: 100%; }

.fw--breadcrumbs li {
  margin: 0; }

.fw--breadcrumbs li:not(:last-of-type):after {
  content: ' /'; }

/* Pagination
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.pagination--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.pagination--left-arrow {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%;
  text-align: left; }

.pagination--current-page {
  -webkit-box-flex: 0;
  -ms-flex: 0 0 auto;
  flex: 0 0 auto; }

.pagination--right-arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 50%;
  flex: 1 1 50%; }

/* Modal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
html.modal-open {
  overflow: auto !important; }

.modal--link {
  cursor: pointer; }

.modal--root .fw--icon--search {
  width: 19px;
  height: 18px; }

.modal--window {
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  display: none;
  min-height: 100%;
  width: 100%;
  max-width: 100%;
  overflow: hidden;
  padding: 96px; }

@media only screen and (max-width: 767px) {
  .modal--window {
    padding: 48px 12px 12px; } }
.modal--window .fw--icon--cross {
  width: 19px;
  height: 18px;
  vertical-align: top; }

.modal--window .fw--icon--chevron-left {
  width: 29px;
  height: 28px; }

.modal--window .fw--icon--chevron-right {
  width: 29px;
  height: 28px; }

.modal--window .fw--loading_animation {
  display: block; }

.modal--window[data-modal--fullscreen='true'] {
  padding: 0; }

@media only screen and (max-width: 767px) {
  .modal--window[data-modal--fullscreen='true'] {
    padding: 0; } }
.modal--mask {
  display: none;
  opacity: 0.8;
  position: fixed;
  top: 0 !important;
  /* Admin bar bug workaround */
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 9000;
  background-color: #000; }

.modal--container {
  position: relative;
  width: 100%;
  min-height: 100%;
  z-index: 9002; }

.modal--content {
  position: relative;
  background: var(--bg-color--body);
  display: none;
  left: 50%;
  max-width: 100%;
  min-width: 200px;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%); }

@media only screen and (min-width: 768px) {
  .modal--content {
    min-width: 300px; } }
[data-modal--fullscreen='true'] .modal--content {
  width: 100%;
  min-height: 100vh;
  top: 0;
  left: 0;
  -webkit-transform: translateX(0);
  transform: translateX(0); }

.modal--content .responsive-video {
  margin-bottom: -1px; }

.modal--content .responsive-video.vimeo {
  margin-bottom: 0px; }

.modal--content.with-padding {
  padding: 16px; }

.modal--content.full-width {
  width: 100%; }

.modal--content.active {
  display: inline-block;
  overflow: hidden; }

[data-modal--fullscreen='true'] .modal--content.active {
  overflow: visible; }

.modal--window.fixed {
  position: fixed;
  height: 100%; }

.modal--window.fixed .modal--container {
  height: 100%; }

.modal--window.fixed .modal--container .modal--content {
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.modal--loading {
  position: fixed;
  top: 50%;
  left: 50%;
  margin: -12.5px 0 0 -12.5px;
  height: 25px;
  width: 25px; }

.modal--close,
.modal--prev,
.modal--next {
  background-color: transparent;
  z-index: 9002;
  position: fixed;
  cursor: pointer;
  font-size: 30px;
  color: #fff;
  padding: 10px;
  opacity: 0.8;
  border: none; }

.modal--close:hover,
.modal--prev:hover,
.modal--next:hover {
  opacity: 1;
  background-color: transparent; }

.modal--close {
  top: 0 !important;
  /* Admin bar bug workaround */
  right: 0;
  padding: 32px;
  font-size: 18px; }

[data-modal--fullscreen='true'] .modal--close {
  color: var(--color--body); }

[data-modal--custom-close='true'] .modal--close {
  display: none; }

@media only screen and (max-width: 767px) {
  .modal--close {
    padding: 20px; }

  body.show-border .modal--close {
    padding: 30px; } }
.modal--prev {
  margin-top: -25px;
  left: 12px;
  top: 50% !important;
  /* Admin bar bug workaround */
  display: none; }

.modal--next {
  margin-top: -25px;
  right: 12px;
  top: 50% !important;
  /* Admin bar bug workaround */
  display: none; }

body.show-border [data-modal--fullscreen='true'] .modal--container {
  border: 12px solid var(--bdr-color--page); }

@media only screen and (max-width: 767px) {
  body.show-border [data-modal--fullscreen='true'] .modal--container {
    border-width: 8px; } }
.modal--window .fw--icon--cross {
  width: 19px;
  height: 18px;
  vertical-align: top; }

/* Cart
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.cart--root {
  padding: 96px 48px;
  max-width: 1000px;
  margin: 0 auto; }

@media only screen and (max-width: 767px) {
  .cart--root[data-view='desktop'] {
    display: none; } }
.cart--root[data-view='mobile'] {
  padding: 32px 16px; }

@media only screen and (min-width: 768px) {
  .cart--root[data-view='mobile'] {
    display: none; } }
.off-canvas--right-sidebar .cart--root {
  display: block !important; }

.cart--header {
  padding-bottom: 32px;
  text-align: center; }

.cart--root[data-has-items='false'] .cart--form {
  display: none; }

.cart--body {
  display: table;
  width: 100%;
  table-layout: auto; }

.cart--root[data-view='mobile'] .cart--body {
  border-top: 1px solid #eaeaea; }

.cart--headings {
  display: table-row;
  width: 100%;
  border-bottom: 1px solid #eaeaea;
  text-align: center; }

.cart--root[data-view='mobile'] .cart--headings {
  display: none; }

.cart--headings > * {
  display: table-cell;
  padding: 16px;
  border-bottom: 1px solid #eaeaea; }

.cart--heading--total {
  text-align: right; }

.cart--item {
  width: 100%;
  display: table-row; }

.cart--root[data-view='mobile'] .cart--item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-bottom: 1px solid #eaeaea;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 16px 0; }

.cart--item > * {
  display: table-cell;
  vertical-align: middle;
  padding: 16px;
  border-bottom: 1px solid #eaeaea; }

.cart--root[data-view='mobile'] .cart--item > * {
  padding: 0;
  display: block;
  border: 0; }

.cart--item--image {
  max-width: 150px; }

.cart--root[data-view='mobile'] .cart--item--image {
  width: 35%;
  -ms-flex-item-align: center;
  align-self: center;
  padding-left: 0; }

.cart--root[data-view='mobile'] .cart--item--info {
  padding-left: 16px;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  text-align: right;
  max-width: 65%; }

.cart--root[data-view='mobile'] .cart--item--info > *:not(:last-child) {
  padding-bottom: 8px;
  text-align: left; }

.cart--item--title > *:not(:last-child) {
  padding-bottom: 16px; }

.cart--root[data-view='mobile'] .cart--item--title {
  width: 100%;
  text-align: center;
  padding-bottom: 16px; }

.cart--root[data-view='mobile'] .cart--item--title > *:not(:last-child) {
  padding-bottom: 8px; }

.cart--item--price {
  text-align: center; }

.cart--root[data-view='mobile'] .cart--item--price {
  text-align: left; }

.cart--item--quantity {
  text-align: center; }

.cart--root[data-view='mobile'] .cart--item--quantity {
  text-align: left; }

.cart--quantity--input {
  padding: 0 9px;
  margin: 0;
  text-align: center; }

.cart--quantity--input[data-loading='true'], .cart--quantity--input[data-loading='true']:focus {
  color: #eaeaea; }

.cart--quantity--container {
  margin: 0; }

.cart--item--remove {
  padding-top: 8px; }

.cart--item--remove > * {
  font-size: 12px; }

.cart--item--total {
  text-align: right; }

.cart--root[data-view='mobile'] .cart--item--total {
  text-align: left; }

.cart--footer {
  padding: 72px 0;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.cart--root[data-view='mobile'] .cart--footer {
  padding: 32px 0;
  display: block; }

.cart--notes {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  max-width: 400px;
  -ms-flex-item-align: end;
  align-self: flex-end; }

.cart--root[data-view='mobile'] .cart--notes {
  text-align: center;
  max-width: 100%;
  padding-bottom: 32px; }

.cart--notes--textarea {
  height: 120px;
  margin: 0; }

.cart--root[data-view='mobile'] .cart--notes--textarea {
  height: 80px; }

.cart--totals {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  text-align: right; }

.cart--root[data-view='mobile'] .cart--totals {
  text-align: center; }

.cart--totals > *:not(:last-child) {
  padding-bottom: 16px; }

.cart--sub-total > *:not(:last-child) {
  padding-bottom: 8px; }

.cart--discounts > *:not(:last-child) {
  padding-bottom: 8px; }

.cart--total > *:not(:last-child) {
  padding-bottom: 8px; }

.cart--total--price {
  font-size: 20px; }

@media only screen and (max-width: 767px) {
  .cart--total--price {
    font-size: 16px; } }
.cart--nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.cart--root[data-view='mobile'] .cart--nav {
  text-align: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

.cart--root[data-view='mobile'] .cart--checkout-button {
  width: 100%;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1; }

.cart--continue-shopping {
  margin-right: 16px; }

.cart--root[data-view='mobile'] .cart--continue-shopping {
  margin-right: 0;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  padding-top: 16px;
  width: 100%; }

.cart--no-items {
  text-align: center; }

.cart--root[data-has-items='true'] .cart--no-items {
  display: none; }

/* Slider
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* customizations
 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
html.no-js .fw--slider {
  overflow: hidden; }

.fw--slider .owl-controls {
  margin-top: 0; }

.fw--slider .owl-controls .owl-pagination {
  width: 100%;
  position: absolute;
  bottom: 10px; }

.fw--slider .owl-controls .owl-page span {
  background: #fff;
  border: 2px solid #fff;
  opacity: 0.8;
  -webkit-box-shadow: 0px 0px 2px #666;
  box-shadow: 0px 0px 2px #666; }

.fw--slider .owl-controls .owl-page span:hover {
  opacity: 1; }

.fw--slider .owl-controls .owl-page.active span {
  background: transparent;
  -webkit-box-shadow: inset 0 0px 2px #666, 0px 0px 2px #666;
  box-shadow: inset 0 0px 2px #666, 0px 0px 2px #666; }

.fw--slider .owl-controls .owl-page .owl-numbers {
  display: none; }

.fw--slider .owl-controls .owl-page.active .owl-numbers {
  display: block;
  background: none;
  border: 0;
  opacity: 1;
  -webkit-box-shadow: none;
  box-shadow: none; }

.fw--slider .owl-item.loading {
  min-height: 150px;
  background: var(--image--loading-animation) no-repeat center center; }

.fw--slider .grabbing {
  cursor: var(--image--grabbing-icon) 8 8, move; }

.fw--slider .owl-controls .owl-buttons .owl-prev,
.fw--slider .owl-controls .owl-buttons .owl-next {
  margin-top: -16px;
  position: absolute;
  background: none;
  top: 50%;
  color: #fff;
  text-shadow: 0px 0px 2px #666; }

.fw--slider .owl-prev {
  left: 0;
  height: 21px;
  margin: -10px 0 0 -30px; }

.fw--slider .owl-next {
  right: 0;
  height: 21px;
  margin: -10px -30px 0 0; }

.slider .slides > .slide:not(:first-child) {
  display: none; }

/* Owl Carousel
  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ */
/*
   *  Core Owl Carousel CSS File
   *  v1.3.2
   */
/* clearfix */
.owl-wrapper:after {
  content: '.';
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0; }

/* display none until init */
.owl-carousel {
  display: none;
  position: relative;
  width: 100%;
  touch-action: pan-y;
  -ms-touch-action: pan-y; }

.owl-carousel .owl-wrapper {
  display: none;
  position: relative;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

.owl-carousel .owl-wrapper-outer {
  overflow: hidden;
  position: relative;
  width: 100%; }

.owl-carousel .owl-wrapper-outer.autoHeight {
  -webkit-transition: height 500ms ease-in-out;
  transition: height 500ms ease-in-out; }

.owl-carousel .owl-item {
  float: left; }

.owl-controls .owl-page,
.owl-controls .owl-buttons div {
  cursor: pointer; }

.owl-controls {
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-tap-highlight-color: transparent; }

/* mouse grab icon */
.grabbing {
  cursor: url(grabbing.png) 8 8, move; }

/* fix */
.owl-carousel .owl-wrapper,
.owl-carousel .owl-item {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0); }

/*
*   Owl Carousel Owl Demo Theme
* v1.3.2
*
*/
.owl-theme .owl-controls {
  margin-top: 10px;
  text-align: center; }

/* Styling Next and Prev buttons */
.owl-theme .owl-controls .owl-buttons div {
  color: #fff;
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */
  margin: 5px;
  padding: 3px 10px;
  font-size: 12px;
  border-radius: 30px;
  background: #869791; }

/* Clickable class fix problem with hover on touch devices */
/* Use it for non-touch hover action */
.owl-theme .owl-controls.clickable .owl-buttons div:hover {
  opacity: 1;
  text-decoration: none; }

/* Styling Pagination*/
.owl-theme .owl-controls .owl-page {
  display: inline-block;
  zoom: 1;
  *display: inline;
  /*IE7 life-saver */ }

.owl-theme .owl-controls .owl-page span {
  display: block;
  width: 12px;
  height: 12px;
  margin: 5px 7px;
  opacity: 0.5;
  border-radius: 20px;
  background: #869791; }

.owl-theme .owl-controls .owl-page.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
  opacity: 1; }

/* If PaginationNumbers is true */
.owl-theme .owl-controls .owl-page span.owl-numbers {
  height: auto;
  width: auto;
  color: var(--color--body);
  padding: 2px 10px;
  font-size: 12px;
  border-radius: 30px; }

/* preloading images */
.owl-item.loading {
  min-height: 150px;
  background: url(AjaxLoader.gif) no-repeat center center; }

/*
 *  Owl Carousel CSS3 Transitions
 *  v1.3.2
 */
.owl-origin {
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
  -moz-perspective-origin-x: 50%;
  -moz-perspective-origin-y: 50%;
  -webkit-perspective: 1200px;
  perspective: 1200px; }

/* fade */
.owl-fade-out {
  z-index: 10;
  -webkit-animation: fadeOut 0.7s both ease;
  animation: fadeOut 0.7s both ease; }

.owl-fade-in {
  -webkit-animation: fadeIn 0.7s both ease;
  animation: fadeIn 0.7s both ease; }

/* backSlide */
.owl-backSlide-out {
  -webkit-animation: backSlideOut 1s both ease;
  animation: backSlideOut 1s both ease; }

.owl-backSlide-in {
  -webkit-animation: backSlideIn 1s both ease;
  animation: backSlideIn 1s both ease; }

/* goDown */
.owl-goDown-out {
  -webkit-animation: scaleToFade 0.7s ease both;
  animation: scaleToFade 0.7s ease both; }

.owl-goDown-in {
  -webkit-animation: goDown 0.6s ease both;
  animation: goDown 0.6s ease both; }

/* scaleUp */
.owl-fadeUp-in {
  -webkit-animation: scaleUpFrom 0.5s ease both;
  animation: scaleUpFrom 0.5s ease both; }

.owl-fadeUp-out {
  -webkit-animation: scaleUpTo 0.5s ease both;
  animation: scaleUpTo 0.5s ease both; }

/* Keyframes */
/*empty*/
@-webkit-keyframes empty {
  0% {
    opacity: 1; } }

@keyframes empty {
  0% {
    opacity: 1; } }

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

  100% {
    opacity: 1; } }

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

  100% {
    opacity: 1; } }

@-webkit-keyframes fadeOut {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@keyframes fadeOut {
  0% {
    opacity: 1; }

  100% {
    opacity: 0; } }

@-webkit-keyframes backSlideOut {
  25% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px);
    transform: translateZ(-500px); }

  75% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
    transform: translateZ(-500px) translateX(-200%); }

  100% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
    transform: translateZ(-500px) translateX(-200%); } }

@keyframes backSlideOut {
  25% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px);
    transform: translateZ(-500px); }

  75% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
    transform: translateZ(-500px) translateX(-200%); }

  100% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
    transform: translateZ(-500px) translateX(-200%); } }

@-webkit-keyframes backSlideIn {
  0%,
  25% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(200%);
    transform: translateZ(-500px) translateX(200%); }

  75% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px);
    transform: translateZ(-500px); }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0);
    transform: translateZ(0) translateX(0); } }

@keyframes backSlideIn {
  0%,
  25% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(200%);
    transform: translateZ(-500px) translateX(200%); }

  75% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px);
    transform: translateZ(-500px); }

  100% {
    opacity: 1;
    -webkit-transform: translateZ(0) translateX(0);
    transform: translateZ(0) translateX(0); } }

@-webkit-keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8);
    transform: scale(0.8); } }

@keyframes scaleToFade {
  to {
    opacity: 0;
    -webkit-transform: scale(0.8);
    transform: scale(0.8); } }

@-webkit-keyframes goDown {
  from {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); } }

@keyframes goDown {
  from {
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%); } }

@-webkit-keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); } }

@keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); } }

@-webkit-keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); } }

@keyframes scaleUpTo {
  to {
    opacity: 0;
    -webkit-transform: scale(1.5);
    transform: scale(1.5); } }

.fw--slider.owl-carousel .owl-wrapper {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  text-align: center; }

.fw--slider.owl-carousel .owl-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 24px; }

.fw--slider .owl-controls .owl-buttons {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 100%; }

.fw--slider .owl-controls .owl-buttons .owl-next,
.fw--slider .owl-controls .owl-buttons .owl-prev {
  text-shadow: none;
  color: var(--color--body);
  padding: 0;
  margin-top: -32px; }

@media only screen and (max-width: 767px) {
  .fw--slider .owl-controls .owl-buttons .owl-next,
  .fw--slider .owl-controls .owl-buttons .owl-prev {
    margin-top: -30px;
    font-size: 24px; } }
.fw--slider .owl-controls .owl-buttons .owl-prev {
  left: -12px; }

.fw--slider .owl-controls .owl-buttons .owl-next {
  right: -12px; }

.fw--slider .owl-controls .owl-numbers {
  border-radius: 0;
  padding: 0; }

.fw--slider .owl-controls .owl-pagination {
  width: 100%;
  position: absolute;
  top: -30px;
  height: 30px; }

.header--right-side .header--cart {
  padding: 0; }

@media only screen and (max-width: 767px) {
  .header--right-side .header--cart {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }
.header--right-side .header--cart .total,
.header--right-side .header--cart .count {
  display: none; }

.header--right-side .header--cart .cart-link {
  background-color: var(--color--button);
  color: var(--bg-color--button); }

@media only screen and (max-width: 767px) {
  .header--right-side .header--cart .cart-link {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    background-color: var(--bg-color--button);
    color: var(--color--button); } }
@media only screen and (min-width: 768px) {
  .header--right-side .header--cart .cart-link {
    padding: 0 12px; } }
.header--right-side .header--cart .cart-link .fw--icon--cart {
  color: var(--bg-color--button); }

.header--right-side .header--cart .cart-link[data-cart--has-items='true'] {
  padding: 0 8px; }

@media only screen and (min-width: 768px) {
  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] {
    background-color: var(--bg-color--button);
    color: var(--color--button); }

  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] .fw--icon--cart {
    color: var(--color--button); } }
@media only screen and (max-width: 767px) {
  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] a.toggle .count {
    position: relative;
    top: 2px;
    display: inline; } }
@media only screen and (min-width: 768px) {
  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] a.toggle {
    color: var(--color--button);
    display: inline-block;
    position: relative; }

  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] a.toggle .fw--icon--cart {
    position: relative;
    bottom: 2px; }

  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] a.toggle .total {
    padding-left: 8px;
    display: inline; } }
.service-list {
  max-width: 1000px;
  margin: 0 auto; }

.service-list li {
  margin: 0; }

@media only screen and (min-width: 768px) {
  .template--page .service-list {
    padding-top: 24px; } }
@media only screen and (max-width: 767px) {
  .service-list {
    padding: 32px !important; } }
.service-list--title {
  text-align: center;
  margin-bottom: 0; }

.service-list--container {
  padding-top: 32px; }

[data-service-list--has-headers='true'] .service-list--container {
  padding: 0; }

.service-list--container > .service-list--block-header--text {
  padding: 0 32px 16px; }

@media only screen and (max-width: 767px) {
  .service-list--container > .service-list--block-header--text {
    text-align: center; } }
@media only screen and (min-width: 768px) {
  .service-list--single-column {
    width: 50%; } }
.service-list--left-column,
.service-list--right-column {
  width: 50%;
  float: left; }

@media only screen and (max-width: 767px) {
  .service-list--left-column,
  .service-list--right-column {
    width: 100%; } }
.service-list--blocks {
  margin: 0; }

[data-service-list--has-headers='true'] .service-list--blocks {
  padding: 32px; }

@media only screen and (max-width: 767px) {
  [data-service-list--has-headers='true'] .service-list--blocks {
    padding: 12px 0; } }
.service-list--blocks li {
  list-style: none;
  width: 100%; }

.service-list--block {
  padding: 8px 32px; }

@media only screen and (max-width: 767px) {
  .service-list--block {
    padding: 8px 0; } }
[data-service-list--has-headers='true'] .service-list--block {
  padding: 8px 0; }

@media only screen and (max-width: 767px) {
  [data-service-list--show-descriptions='true'] .service-list--block {
    padding: 0; } }
.service-list--block-header {
  padding: 8px 0;
  text-align: center; }

.service-list--price {
  padding-left: 48px;
  padding-bottom: 2px; }

[data-service-list--show-descriptions='false'] .service-list--price {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  padding-left: 12px;
  padding-bottom: 0; }

.service-list--description {
  padding-top: 12px; }

[data-service-list--show-descriptions='false'] .service-list--block-title-text {
  display: inline; }

.service-list--block-title {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1; }

[data-service-list--show-descriptions='false'] .service-list--block-title {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  width: 100%;
  position: relative;
  overflow: hidden; }

[data-service-list--show-descriptions='false'] .service-list--block-title:after {
  content: '⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅⋅';
  font-family: Arial, sans-serif;
  margin-left: 12px;
  line-height: 2;
  position: absolute; }

.service-list--info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px solid var(--color--body);
  padding-bottom: 6px;
  width: 100%; }

[data-service-list--show-descriptions='false'] .service-list--info {
  border-bottom: none;
  padding: 0; }

/* Contact Modal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
[data-modal--view='contact-modal'] .modal--close {
  color: var(--color--contact-modal); }

[data-modal--view='contact-modal'] .modal--container {
  border: 0 !important; }

.contact-modal--content {
  width: 100%;
  min-height: 100%;
  color: var(--color--contact-modal);
  background-color: var(--bg-color--contact-modal);
  min-height: 100vh; }

.contact-modal--content a,
.contact-modal--content a:link,
.contact-modal--content a:visited,
.contact-modal--content a:hover {
  color: var(--color--contact-modal); }

.contact-modal--content > * {
  padding: 24px; }

.contact-modal--wrapper {
  max-width: 1100px;
  margin: 0 auto;
  padding: 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.contact-modal--header {
  text-align: center;
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  padding: 48px 0; }

.contact-modal--left-column {
  max-width: 400px; }

@media only screen and (min-width: 768px) {
  .contact-modal--left-column {
    padding-right: 72px; } }
.contact-modal--left-column > * {
  padding: 32px 0; }

.contact-modal--address > * {
  padding: 12px 0; }

.contact-modal--address-title {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px; }

@media only screen and (max-width: 767px) {
  .contact-modal--address-title {
    font-size: 13px; } }
.contact-modal--hours > * {
  padding: 12px 0; }

.contact-modal--right-column {
  padding: 16px; }

.contact-modal--right-column > * {
  padding: 24px; }

.contact-modal--form textarea {
  height: 100px;
  -webkit-transition: 0.3s height;
  transition: 0.3s height;
  outline: 0; }

.contact-modal--form input[type='submit'] {
  width: 100%; }

.contact-modal--form-title {
  padding-bottom: 16px; }

.contact-modal--social .partial--social-media {
  margin-left: -16px; }

.contact-modal--social-title {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px; }

@media only screen and (max-width: 767px) {
  .contact-modal--social-title {
    font-size: 13px; } }
/* Currency Selector
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.partial--currency-selector {
  padding: 0 16px; }

.partial--currency-selector.left-aligned {
  margin-top: 7px;
  float: left;
  z-index: 1; }

.partial--currency-selector.right-aligned {
  width: auto;
  position: relative;
  display: inline-block; }

.partial--currency-selector.mobile {
  position: relative;
  display: block;
  z-index: 1;
  border-top: 1px solid #eaeaea;
  float: none;
  min-width: 290px;
  padding-top: 16px; }

.partial--currency-selector.mobile .container {
  padding: 0 15px; }

.partial--currency-selector.mobile form {
  margin: 0; }

.partial--currency-selector .custom.dropdown {
  margin-top: -5px;
  width: 65px;
  float: left; }

.partial--currency-selector span {
  float: left;
  padding-right: 5px; }

.partial--currency-selector select {
  display: inline-block;
  width: auto;
  padding-right: 25px;
  margin: 0; }

/* Main Menu
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.x-menu {
  display: inline-block;
  line-height: 1; }

.x-menu ul,
.x-menu li {
  list-style: none;
  margin: 0;
  padding: 0; }

.x-menu a:focus {
  outline: thin dotted; }

[data-x-menu--overlap='false'] .x-menu--overlap-icon {
  display: none; }

@media only screen and (max-width: 767px) {
  [data-x-menu--overlap='false'] .x-menu--overlap-icon {
    display: block; } }
[data-x-menu--overlap='true'] .x-menu--level-1--container {
  display: none; }

@media only screen and (max-width: 767px) {
  .x-menu--level-1--container {
    display: none; } }
.x-menu--level-1--link {
  display: inline-block; }

.x-menu--level-1--link[data-x-menu--depth='2'] {
  position: relative; }

.x-menu--level-1--link a {
  display: inline-block;
  padding: 16px;
  position: relative; }

.x-menu--level-1--link .fw--icon--expand-more {
  font-size: 7px; }

.x-menu--level-1--link .fw--icon--expand-less {
  display: none;
  font-size: 7px; }

.x-menu--level-1--link .fw--icon--chevron-right {
  height: 18px;
  position: absolute;
  right: 12px;
  top: 20px; }

.x-menu--level-1--link .fw--icon--chevron-left {
  height: 16px;
  position: absolute;
  left: 12px;
  top: 20px; }

.x-menu--level-2--container {
  display: none;
  position: absolute;
  white-space: nowrap;
  z-index: 4;
  min-width: 150px;
  left: 0;
  padding: 0;
  background: var(--bg-color--body);
  overflow: hidden; }

[data-x-menu--depth='2'] .x-menu--level-2--container {
  left: -16px; }

[data-x-menu--depth='3'] .x-menu--level-2--container {
  max-width: 100%;
  padding-top: 0;
  padding-bottom: 20px;
  width: 100%; }

[data-x-menu--depth='3'] .x-menu--level-2--container ul {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  vertical-align: top; }

[data-x-menu--align='center'] .x-menu--level-2--container {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: left; }

.x-menu--bg {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background: var(--bg-color--body); }

.x-menu--single-parents {
  display: inline-block;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 12px 32px 12px 0; }

.x-menu--single-parents ul {
  position: relative;
  border-right: 1px solid var(--color--body--light);
  padding-right: 32px;
  min-height: calc(100% - 30px); }

.x-menu--single-parents li {
  padding-bottom: 0 !important;
  display: block !important; }

.x-menu--single-parents a {
  padding: 8px 32px !important;
  line-height: 1; }

.x-menu--level-2--link {
  text-transform: uppercase; }

[data-x-menu--depth='3'] .x-menu--level-2--link {
  display: inline-block;
  vertical-align: text-top; }

.x-menu--level-2--link:first-child > a {
  padding-top: 32px; }

[data-x-menu--depth='3'] .x-menu--level-2--link:first-child > a {
  padding: 16px 32px; }

.x-menu--level-2--link:last-child > a {
  padding-bottom: 32px; }

[data-x-menu--depth='3'] .x-menu--level-2--link:last-child > a {
  padding: 16px 32px; }

.x-menu--level-2--link a {
  display: inline-block;
  padding: 16px 32px; }

ul.x-menu--level-3--container {
  padding: 0 0 20px;
  text-transform: none; }

.x-menu--level-3--link a {
  padding: 8px 32px;
  line-height: 1; }

[data-x-menu--parent-link='level-2'] .x-menu--level-3--link {
  padding-left: 20px; }

@media only screen and (max-width: 767px) {
  .x-menu--overlap-icon {
    display: inline-block; } }
.x-menu--level-1--link > a {
  padding: 32px 16px; }

.x-menu--level-1--link > a:hover span {
  display: inline;
  border-bottom: 2px solid var(--color--link-underline);
  padding-bottom: 6px; }

[data-x-menu--sub-above='true'] .x-menu--level-2--container {
  bottom: 70px; }

[data-x-menu--depth='2'] .x-menu--level-2--container {
  border: 1px solid #eaeaea; }

[data-x-menu--depth='3'] .x-menu--level-2--container {
  padding: 0 35px 16px;
  border-bottom: 1px solid #eaeaea; }

[data-x-menu--sub-above='true'] [data-x-menu--depth='3'] .x-menu--level-2--container {
  padding: 16px 35px 0;
  border-top: 1px solid #eaeaea;
  border-bottom: 0;
  bottom: 100px;
  left: 0;
  width: 100%; }

.x-menu--level-3--link a {
  padding: 12px 32px; }

.x-menu--single-parents a {
  padding: 12px 32px !important; }

.y-menu {
  display: inline-block;
  position: relative;
  width: 100%;
  max-width: 400px;
  overflow: hidden; }

.y-menu ul,
.y-menu li {
  list-style: none;
  margin: 0;
  padding: 0; }

.y-menu a:focus {
  outline: thin dotted; }

[data-y-menu--overlap='false'] .y-menu--overlap-icon {
  display: none; }

@media only screen and (max-width: 767px) {
  .y-menu--overlap-icon {
    display: none; } }
.y-menu--level-1--link {
  display: inline-block;
  display: block;
  border-bottom: 1px solid #eaeaea; }

.y-menu--level-1--link:first-child {
  border-top: 1px solid #eaeaea; }

.y-menu--level-1--link a {
  padding: 16px;
  position: relative;
  display: block;
  z-index: 0;
  line-height: 1.3;
  padding: 20px 35px 20px 15px; }

.y-menu--level-1--link .fw--icon--chevron-right {
  height: 14px;
  position: absolute;
  right: 12px;
  top: 21px; }

.y-menu--level-1--link .fw--icon--chevron-left {
  height: 16px;
  position: absolute;
  left: 12px;
  top: 20px; }

.y-menu--back-link {
  border-top: 1px solid #eaeaea;
  border-bottom: 1px solid #eaeaea;
  text-align: center; }

.y-menu--level-2--container {
  display: none;
  position: absolute;
  z-index: 4;
  min-width: 150px;
  padding: 0;
  background: var(--bg-color--body);
  overflow: hidden;
  left: 100%;
  width: 100%;
  top: 0;
  bottom: 0; }

.y-menu--parent-link {
  display: block;
  border-bottom: 1px solid #eaeaea; }

.y-menu--parent-link:first-child {
  border-top: 1px solid #eaeaea; }

.y-menu--level-2--link {
  display: block;
  border-bottom: 1px solid #eaeaea; }

.y-menu--level-2--link:first-child {
  border-top: 1px solid #eaeaea; }

[data-y-menu--parent-link='level-2'] .y-menu--level-2--link > a {
  padding-left: 35px; }

.y-menu--level-3--container {
  padding: 0;
  position: absolute;
  display: none;
  left: 100%;
  width: 100%;
  top: 0;
  bottom: 0;
  background: var(--bg-color--body);
  z-index: 5; }

.y-menu--level-3--link {
  display: block;
  border-bottom: 1px solid #eaeaea; }

.y-menu--level-3--link:first-child {
  border-top: 1px solid #eaeaea; }

[data-y-menu--parent-link='level-3'] .y-menu--level-3--link > a {
  padding-left: 35px; }

/* Minimized Menu
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.mobile-nav--header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }

.mobile-nav--search a {
  display: block;
  padding: 32px 16px; }

.mobile-nav--login a {
  display: block;
  padding: 32px 16px; }

.mobile-nav--contact-button {
  padding: 32px 16px; }

@media only screen and (min-width: 768px) {
  .mobile-nav--contact-button {
    display: none; } }
.mobile-nav--contact-button .contact-modal--button {
  text-align: center; }

@media only screen and (max-width: 767px) {
  .mobile-nav--contact-button .contact-modal--button {
    display: block; } }
/* Product
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.product--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 0 16px;
  position: relative;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -ms-flex-preferred-size: auto;
  flex-basis: auto; }

[data-product--view='grid'] {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap; }

@media only screen and (max-width: 767px) {
  [data-product--view='grid'] {
    padding-left: 0;
    padding-right: 0; } }
[data-product--view='grid'] .product--sold-out {
  color: var(--color--important);
  padding-bottom: 8px; }

[data-product--view='grid'] .product--details {
  text-align: left;
  width: 100%; }

[data-product--view='grid'] .product--details > *:not(:last-child) {
  padding-bottom: 8px; }

@media only screen and (max-width: 767px) {
  [data-product--view='grid'] .product--details > *:not(:last-child) {
    padding-bottom: 8px; } }
@media only screen and (max-width: 767px) {
  [data-product--view='grid'] .product--details {
    max-width: 600px;
    margin: 0 auto; } }
@media only screen and (max-width: 767px) {
  [data-product--view='grid'] .product--price-wrapper {
    padding-bottom: 12px; } }
[data-product--view='grid'] .product--image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

[data-product--view='grid'] .product--image > * {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -ms-flex-preferred-size: auto;
  flex-basis: auto; }

[data-product--view='grid'] .product--image a {
  display: inline-block; }

[data-product--view='grid'] .product--image img {
  width: 100%; }

[data-product--view='list'] {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media only screen and (max-width: 767px) {
  [data-product--view='list'] {
    padding-bottom: 48px;
    padding-left: 0;
    padding-right: 0; } }
[data-product--view='list'] .product--details {
  width: 50%; }

@media only screen and (min-width: 768px) {
  [data-product--view='list'] .product--details {
    min-width: 200px;
    width: 60%; } }
[data-product--view='list'] .product--image {
  width: 50%;
  padding-right: 16px;
  padding-bottom: 0; }

@media only screen and (min-width: 768px) {
  [data-product--view='list'] .product--image {
    width: 40%;
    text-align: center; } }
[data-product--view='list'] .product--sold-out {
  color: var(--color--important);
  padding-bottom: 8px; }

@media only screen and (max-width: 767px) {
  [data-product--view='list'] .product--title-price-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse; } }
[data-product--view='list'] .product--title {
  padding-bottom: 12px; }

[data-product--view='list'] .product--vendor {
  padding-bottom: 12px;
  clear: left; }

@media only screen and (max-width: 767px) {
  [data-product--view='list'] .product--price-wrapper {
    padding-bottom: 12px; } }
@media only screen and (min-width: 768px) {
  [data-product--view='list'] .product--price-wrapper {
    padding-left: 12px;
    float: right;
    position: relative;
    top: 2px; } }
[data-product--view='list'] .product--excerpt {
  padding-bottom: 12px; }

@media only screen and (max-width: 767px) {
  [data-product--view='list'] .product--excerpt {
    display: none !important; } }
[data-product--view='list'] .product--cart-button {
  background-color: var(--bg-color--panel);
  padding: 8px 12px;
  display: inline-block; }

.product--image-wrapper {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 100%;
  padding-bottom: 12px;
  width: 100%; }

.product--image {
  width: 100%; }

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

.product--compare-price {
  text-decoration: line-through;
  color: var(--color--body--light); }

.product--vendor a {
  color: var(--color--body--light); }

.product--from {
  text-transform: none; }

.featured-product--root {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .featured-product--root {
    padding: 32px 16px; } }
.featured-product--container {
  max-width: 1200px;
  margin: 0 auto; }

.featured-product--container > * {
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .featured-product--container > * {
    padding-bottom: 16px; } }
.featured-product--container > *:last-child {
  padding-bottom: 0; }

.featured-product--header {
  text-align: center; }

.featured-product--body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media only screen and (min-width: 768px) {
  .featured-product--body {
    margin: 0 -16px; } }
@media only screen and (min-width: 768px) {
  .featured-product--body > * {
    padding: 0 16px; } }
@media only screen and (max-width: 767px) {
  .featured-product--body > * {
    padding-bottom: 16px; }

  .featured-product--body > *:last-child {
    padding-bottom: 0; } }
.featured-product--image {
  width: 50%;
  display: none; }

.featured-product--image[data-active='true'] {
  display: block; }

@media only screen and (max-width: 767px) {
  .featured-product--image {
    width: 100%; } }
.featured-product--image > * {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end; }

@media only screen and (max-width: 767px) {
  .featured-product--image > * {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }
.featured-product--info {
  width: 100%; }

@media only screen and (min-width: 768px) {
  .featured-product--info {
    width: 50%; } }
.featured-product--info--container {
  max-width: 400px;
  width: 100%; }

@media only screen and (max-width: 767px) {
  .featured-product--info--container {
    margin: 0 auto;
    text-align: center;
    width: 100%; } }
.featured-product--info--container > * {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-product--info--container > * {
    padding-bottom: 8px; } }
.featured-product--info--container > *:last-child {
  padding-bottom: 0; }

.featured-product--sold-out--product {
  color: var(--color--important); }

.featured-product--sold-out--variant,
.featured-product--unavailable-variant {
  display: none;
  padding-bottom: 16px;
  color: var(--color--important); }

.featured-product--root[data-onboarding='true'] .featured-product--sold-out--variant, .featured-product--root[data-onboarding='true']
.featured-product--unavailable-variant {
  display: none; }

.featured-product--actual-price {
  font-size: 20px; }

@media only screen and (max-width: 767px) {
  .featured-product--actual-price {
    font-size: 16px; } }
.featured-product--compare-price {
  text-decoration: line-through; }

.featured-product--variants {
  padding-bottom: 12px; }

[data-show-variants='false'] .featured-product--variants {
  display: none; }

.featured-product--add-to-cart {
  position: relative;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.featured-product--add-to-cart .font--button {
  width: 100%;
  text-align: center; }

.featured-product--add-to-cart[data-loading='true'] .text {
  display: none; }

.featured-product--add-to-cart[data-loading='true'] .fw--loading_animation {
  display: block; }

.featured-product--smart-payment-buttons {
  padding: 12px 0;
  text-align: center; }

.featured-product--smart-payment-buttons .shopify-payment-button__more-options {
  color: var(--color--body);
  font-weight: var(--font--paragraph--weight);
  margin: 0 auto;
  padding-top: 16px;
  text-decoration: underline;
  text-transform: none;
  width: auto; }

.featured-product--smart-payment-buttons .shopify-payment-button__more-options:hover {
  color: var(--color--body--light);
  background: transparent; }

.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded {
  background: var(--bg-color--button);
  color: var(--color--button);
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 2px;
  display: inline-block;
  zoom: 1;
  letter-spacing: 1px;
  padding: 0 15px;
  vertical-align: bottom;
  height: 45px;
  line-height: 45px;
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  width: 100%; }

@media only screen and (max-width: 767px) {
  .featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded {
    font-size: 13px; } }
.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded.compact {
  height: 29px;
  line-height: 29px; }

.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded:focus {
  background: var(--bg-color--button); }

.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded:link {
  color: var(--color--button); }

.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded:visited {
  color: var(--color--button); }

.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded:hover {
  color: var(--color--button);
  background: var(--bg-color--button); }

.featured-product--smart-payment-buttons .shopify-payment-button__button--unbranded[disabled='disabled'] {
  display: none; }

.featured-product--smart-payment-buttons .shopify-payment-button__button--hidden {
  display: none; }

.featured-product--error {
  padding: 16px 0 0; }

.featured-product--json {
  display: none; }

.product-recommendations--root {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .product-recommendations--root {
    padding: 32px 16px; } }
.product-recommendations--root[data-empty='true'] {
  display: none; }

.product-recommendations--title {
  text-align: center;
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .product-recommendations--title {
    padding-bottom: 16px; } }
.product-recommendations--body {
  margin: -16px; }

@media only screen and (max-width: 767px) {
  .product-recommendations--body {
    margin: -8px; } }
.product-recommendations--body--container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 1200px; }

@media only screen and (max-width: 767px) {
  .product-recommendations--body--container {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start; } }
.product-recommendations--item {
  padding: 16px;
  width: 25%; }

.product-recommendations--item > * {
  padding: 0; }

@media only screen and (max-width: 767px) {
  .product-recommendations--item {
    width: 50%;
    padding: 8px; } }
.product-recommendations--root {
  padding-bottom: 0;
  padding-top: 0; }

/* SVG Icons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.svg-icon-lib {
  border: 0 !important;
  clip: rect(0 0 0 0) !important;
  height: 1px !important;
  margin: -1px !important;
  overflow: hidden !important;
  padding: 0 !important;
  position: absolute !important;
  width: 1px !important; }

.fw--icon {
  position: relative;
  display: inline-block;
  vertical-align: middle;
  width: 19px;
  height: 18px; }

.svg-icon-lib path {
  fill: currentColor; }

html .fw--icon--plus {
  width: 6px;
  height: 100%; }

html .fw--icon--minus {
  width: 6px;
  height: 100%; }

html .fw--icon--cart {
  width: 24px;
  height: 24px; }

html .fw--icon--expand-more {
  width: 12px;
  height: 12px; }

html .fw--icon--expand-less {
  width: 12px;
  height: 12px; }

html .fw--icon--cross-circle {
  width: 19px;
  height: 18px; }

html .fw--icon--chevron-left {
  width: 29px;
  height: 28px; }

html .fw--icon--chevron-right {
  width: 29px;
  height: 28px; }

html .fw--icon--comment {
  width: 24px;
  height: 21px;
  vertical-align: baseline; }

.popup--social-icons .fw--icon {
  width: 18px;
  height: 18px; }

.contact-modal--social .fw--icon {
  width: 18px;
  height: 18px; }

.footer--social-icons .fw--icon {
  height: 16px; }

/* Feedback bar
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.feedback-bar {
  z-index: 100;
  position: fixed;
  bottom: 0;
  left: 0;
  padding: 16px 32px;
  text-align: center;
  width: 100%; }

@media only screen and (max-width: 767px) {
  .feedback-bar {
    padding: 16px; } }
.feedback-bar[data-feedback-bar--open='true'] {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.5s linear;
  transition: opacity 0.5s linear; }

.feedback-bar[data-feedback-bar--open='false'] {
  visibility: hidden;
  opacity: 0;
  -webkit-transition: visibility 0s 0.5s, opacity 0.5s linear;
  transition: visibility 0s 0.5s, opacity 0.5s linear; }

@media only screen and (max-width: 767px) {
  .feedback-bar {
    padding: 16px; } }
.feedback-bar--message {
  display: inline-block;
  padding: 32px;
  background-color: var(--color--body);
  color: var(--bg-color--body);
  border: 1px solid #eaeaea; }

.feedback-bar--message span {
  display: none; }

/* Product modal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.quick-add--details {
  display: none; }

.quick-add--add-button,
.quick-add--confirm-button {
  position: relative;
  cursor: pointer;
  display: inline-block;
  height: 30px;
  line-height: 28px;
  padding: 0 12px;
  border: 1px solid #eaeaea; }

.quick-add--add-button:hover, .quick-add--add-button:focus,
.quick-add--confirm-button:hover,
.quick-add--confirm-button:focus {
  background-color: var(--bg-color--body); }

.quick-add--add-button .fw--loading_animation,
.quick-add--confirm-button .fw--loading_animation {
  margin: 0 16px; }

.quick-add--add-button[data-loading='true'] .text,
.quick-add--confirm-button[data-loading='true'] .text {
  display: none; }

.quick-add--add-button[data-loading='true'] .fw--loading_animation,
.quick-add--confirm-button[data-loading='true'] .fw--loading_animation {
  display: block; }

.quick-add--price-wrapper {
  display: none; }

.quick-add--compare-price {
  text-decoration: line-through;
  color: var(--color--body--light);
  display: inline-block; }

.quick-add--price {
  display: inline-block; }

.quick-add--sold-out {
  color: var(--color--important); }

.quick-add--sold-out--variant,
.quick-add--unavailable-variant {
  padding: 12px 0; }

@media only screen and (min-width: 768px) {
  .quick-add--variants .selector-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }

  .quick-add--variants label {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding-right: 12px;
    text-transform: capitalize;
    font-weight: var(--font--paragraph--weight);
    min-width: 80px; } }
.quick-add--sold-out--variant {
  padding: 12px 0; }

.quick-add--button-row {
  line-height: 28px; }

@media only screen and (min-width: 768px) {
  .quick-add--button-row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }
.quick-add--button-wrapper {
  display: inline-block;
  white-space: nowrap;
  -ms-flex-negative: 1;
  flex-shrink: 1; }

.quick-add--cancel-button {
  display: inline-block;
  padding-right: 12px; }

/* Mailing list
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.partial--mailing-list input[type='email'] {
  max-width: 240px;
  background-color: transparent;
  color: var(--color--body);
  border: none;
  border: 1px solid var(--color--body);
  text-transform: none;
  padding-left: 5px;
  margin: 0; }

.partial--mailing-list input[type='email']::-webkit-input-placeholder {
  text-transform: none;
  color: var(--color--body); }

.partial--mailing-list input[type='email']:-moz-placeholder {
  text-transform: none;
  color: var(--color--body); }

.partial--mailing-list input[type='email']::-moz-placeholder {
  text-transform: none;
  color: var(--color--body); }

.partial--mailing-list input[type='email']:-ms-input-placeholder {
  text-transform: none;
  color: var(--color--body); }

.partial--mailing-list .button {
  background: transparent;
  border-color: var(--color--body);
  color: var(--color--body);
  position: relative;
  margin: 0; }

.partial--mailing-list .button:hover {
  background: transparent;
  color: var(--color--body); }

/* Popup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
body.popup--opened {
  -webkit-transition-property: padding;
  transition-property: padding;
  -webkit-transition-duration: 0.3s;
  transition-duration: 0.3s; }

.popup--root {
  display: block; }

.popup--open {
  vertical-align: baseline;
  cursor: pointer; }

.popup--container {
  background-color: var(--bg-color--body);
  bottom: 0;
  left: 0;
  position: fixed;
  text-align: center;
  top: auto !important;
  /* Admin bar bug workaround */
  width: 100%;
  z-index: 5; }

.popup--root[data-alternative-color='true'] .popup--container {
  color: var(--color--alternative); }

.popup--root[data-alternative-color='true'] .popup--container a,
.popup--root[data-alternative-color='true'] .popup--container a:link,
.popup--root[data-alternative-color='true'] .popup--container a:visited,
.popup--root[data-alternative-color='true'] .popup--container a:hover,
.popup--root[data-alternative-color='true'] .popup--container svg {
  color: var(--color--alternative); }

.popup--root[data-alternative-color='false'] .popup--container {
  border-top: 1px solid #eaeaea; }

.popup--container.popup--closed {
  overflow: hidden;
  max-height: 0;
  padding: 0; }

.popup--wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
  min-height: 200px;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 0 32px;
  max-width: 800px; }

[data-popup--image='true'] .popup--wrapper {
  max-width: 1100px; }

@media only screen and (max-width: 767px) {
  .popup--wrapper {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }
.popup--left-column {
  padding: 0 16px; }

@media only screen and (max-width: 767px) {
  .popup--left-column {
    display: none; } }
.popup--center-column {
  max-width: 450px;
  padding: 8px; }

.popup--center-column > * {
  padding: 8px; }

.popup--right-column {
  padding: 16px;
  min-width: 200px; }

.popup--image {
  max-height: 200px;
  max-width: 200px; }

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .popup--image {
    max-width: 150px; } }
.popup--image.placeholder.full-height img {
  width: 200px; }

.popup--newsletter-title {
  text-align: left; }

@media only screen and (max-width: 767px) {
  .popup--newsletter-title {
    text-align: center; } }
.popup--newsletter-title p {
  margin-bottom: 0; }

.popup--newsletter-form form {
  width: 100%;
  max-width: 350px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.popup--newsletter-form input[type='email'] {
  -webkit-box-flex: 3;
  -ms-flex-positive: 3;
  flex-grow: 3;
  height: 45px;
  line-height: 45px;
  margin-right: 10px;
  margin-bottom: 0; }

.popup--newsletter-form .mailing-list--seperator {
  width: 32px; }

.popup--newsletter-form input[type='submit'] {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  margin-bottom: 0; }

.popup--close {
  font-size: 14px;
  height: 14px;
  line-height: 1;
  padding: 0;
  position: absolute;
  right: 16px;
  top: 16px; }

.popup--close svg {
  height: 14px;
  width: 14px; }

/* Payment Icons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.payment-icons--list {
  list-style-type: none;
  margin: 0;
  padding: 0; }

.payment-icons--item {
  display: inline-block;
  margin: 0;
  padding: 8px; }

.payment-icons--item svg {
  width: 38px;
  height: 24px; }

/* Header
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.header {
  position: relative; }

@media only screen and (min-width: 768px) {
  .header {
    padding: 32px 48px; } }
.header--y-menu-for-off-canvas {
  display: none; }

.header--container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.header--container[data-no-script='true'] {
  margin-top: -130px; }

@media only screen and (max-width: 767px) {
  .header--container {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; } }
[data-header--position='fixed'] .header--container {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 10;
  background-color: var(--bg-color--body);
  border-bottom: 1px solid #eaeaea;
  padding: 32px 48px; }

@media only screen and (max-width: 767px) {
  [data-header--position='fixed'] .header--container {
    padding: 32px; } }
body.show-border [data-header--position='fixed'] .header--container {
  margin: 0 12px;
  width: calc(100% - 24px); }

@media only screen and (max-width: 767px) {
  body.show-border [data-header--position='fixed'] .header--container {
    margin: 0 8px;
    width: calc(100% - 16px); } }
@media only screen and (min-width: 768px) {
  .header--left-side {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    white-space: nowrap;
    width: 50%; } }
.header--center {
  padding: 0 20px;
  z-index: 5;
  position: relative;
  text-align: center; }

@media only screen and (min-width: 768px) {
  .header--center {
    -ms-flex-negative: 0;
    flex-shrink: 0; } }
.header--center .fw--logo.type--image h1 {
  font-size: 1px; }

.header--center .fw--logo img {
  max-width: 100%; }

@media only screen and (min-width: 768px) {
  .header--right-side {
    margin-right: -12px;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 50%;
    white-space: nowrap; } }
@media only screen and (min-width: 768px) {
  .header--right-side > * {
    padding: 0 12px; } }
.header--right-side .fw--icon--cart {
  color: var(--color--button); }

.header--mobile-nav {
  display: none; }

[data-header--overlap='true'] .header--mobile-nav {
  display: inline-block; }

.header--main-menu {
  display: inline-block;
  line-height: 1;
  top: 5px; }

[data-header--overlap='true'] .header--main-menu {
  display: none; }

@media only screen and (max-width: 767px) {
  .fw--logo img {
    max-width: 130px; } }
@media only screen and (max-width: 767px) {
  .header--logo .font--section-heading {
    font-size: 18px; } }
@media only screen and (max-width: 767px) {
  .header--search {
    display: none; } }
[data-header--overlap='true'] .header--search {
  display: none; }

.header--search .fw--icon--search {
  width: 19px;
  height: 18px; }

@media only screen and (max-width: 767px) {
  .header--account {
    display: none; } }
[data-header--overlap='true'] .header--account {
  display: none; }

@media only screen and (max-width: 767px) {
  .header--contact-modal {
    display: none; } }
@media only screen and (min-width: 768px) {
  .header--cart .modal--link {
    display: inline-block; } }
/* Footer
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.footer {
  margin-top: 48px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: center;
  z-index: 2;
  clear: both;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -ms-flex-wrap: no-wrap;
  flex-wrap: no-wrap;
  padding: 24px;
  line-height: 1.4;
  border-top: 1px solid #eaeaea; }

@media only screen and (max-width: 767px) {
  .footer {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; } }
.footer > * {
  padding: 0 12px; }

.footer--left-column {
  text-align: left;
  margin: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  width: 50%; }

@media only screen and (max-width: 767px) {
  .footer--left-column {
    padding-bottom: 16px;
    text-align: center;
    width: 100%; } }
.footer--menu {
  display: inline-block;
  margin: 0; }

.footer--middle-column {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  white-space: nowrap;
  padding: 12px;
  line-height: 1; }

@media only screen and (max-width: 767px) {
  .footer--middle-column {
    width: 100%;
    padding-bottom: 32px; } }
.footer--right-column {
  text-align: right;
  width: 50%;
  -ms-flex-negative: 1;
  flex-shrink: 1; }

.footer--right-column > * {
  padding: 12px 8px;
  display: inline-block;
  line-height: 1; }

@media only screen and (max-width: 767px) {
  .footer--right-column {
    text-align: center;
    width: 100%; } }
.footer--list-item {
  display: inline-block;
  list-style: none;
  margin: 0;
  padding: 12px 8px; }

@media only screen and (max-width: 767px) {
  .footer--list-item {
    display: block;
    padding: 8px; } }
.footer--payment-icons {
  padding-top: 0;
  padding-bottom: 0;
  text-align: left; }

@media only screen and (max-width: 767px) {
  .footer--payment-icons {
    display: block;
    text-align: center;
    padding-top: 16px; } }
.footer--payment-icons ul {
  list-style: none;
  margin: 0; }

.footer--payment-icons li {
  display: inline-block;
  margin: 0;
  padding: 0 8px; }

.footer--payment-icons .fw--icon {
  vertical-align: middle; }

.footer--payment-icons span {
  padding: 12px 8px; }

.footer--payment-icons .fw--icon--payment-shopify_pay {
  width: 40px; }

.footer--social-icons {
  display: block;
  padding: 0; }

.footer--social-icons a {
  padding: 12px 8px; }

/* Index
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media (max-width: 1399px) {
  body.template--index[data-banner--enabled="true"] .fullscreen-container {
    min-height: calc(57vw + 150px ); } }
@media (max-width: 1399px) {
  body.template--index .layout--main-content {
    margin-top: 0; } }
@media (max-width: 767px) {
  body.template--index .featured-text--body {
    margin-bottom: 0px; } }

@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  body.template--index img.lazysizes-display-clone {
    background-position-y: top !important;
    background-size: contain !important; } }
.template--index .footer {
  margin: 0; }

.banner--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding: 0; }

@media only screen and (min-width: 768px) {
  [data-banner--enabled='true'] .banner--root {
    min-height: 400px; } }
.template--index .layout--main-content > *,
.template--index .header,
.template--index .footer {
  position: relative;
  background-color: var(--bg-color--body); }

.banner--container {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  overflow: hidden;
  position: relative;
  width: 100%; }

[data-banner--has-placeholder='true'] .banner--container {
  background-color: #e9e9e9; }

[data-banner--has-placeholder='true'] .banner--container .placeholder-wrapper {
  left: 0;
  position: absolute;
  width: 100%; }

[data-banner--has-placeholder='true'] .banner--container .placeholder--root svg {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover'; }

.banner--background-image {
  height: 100%;
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 0; }

body.show-border .banner--background-image {
  border-top: 12px solid var(--bdr-color--page);
  height: calc(100% - 12px);
  left: 12px;
  top: 0;
  width: calc(100% - 24px); }

@media only screen and (max-width: 767px) {
  body.show-border .banner--background-image {
    left: 8px;
    border-top: 8px solid var(--bdr-color--page);
    height: calc(100% - 8px);
    width: calc(100% - 16px); } }
.banner--background-image .image--root,
.banner--background-image .placeholder--root {
  height: 100%; }

.banner--background-image .image--container,
.banner--background-image .placeholder--container {
  height: 100%;
  margin-top: 143px; }
  @media (min-width: 1600px) {
    .banner--background-image .image--container,
    .banner--background-image .placeholder--container {
      margin-top: 0px; } }

.banner--background-image img {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover'; }

.banner--foreground-text {
  position: relative;
  max-width: 800px;
  display: inline-block; }

.banner--root[data-alternative-color='true'] .banner--foreground-text {
  color: var(--color--alternative); }

@media only screen and (max-width: 767px) {
  .banner--foreground-text {
    max-width: 100%; } }
.banner--foreground-container {
  width: 100%;
  max-width: 100%;
  text-align: center;
  padding: 32px;
  z-index: 1; }

.banner--foreground-image {
  margin: 0 auto;
  max-width: 800px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .banner--foreground-image {
    max-width: 600px; } }
@media only screen and (max-width: 767px) {
  .banner--foreground-image {
    max-width: 100%; } }
.featured-collection {
  max-width: 1200px;
  margin: 0 auto; }

@media only screen and (max-width: 767px) {
  .featured-collection {
    padding: 32px 16px; } }
@media only screen and (max-width: 767px) {
  .featured-collection--products,
  .featured-collection--header--description,
  .featured-collection--image {
    display: none !important; } }
.featured-collection--header {
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 1000px;
  margin: 0 auto; }

@media only screen and (max-width: 767px) {
  .featured-collection--header {
    padding-bottom: 0; } }
.featured-collection--header > div {
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
  text-align: left; }

.featured-collection--header > div:only-of-type {
  text-align: center; }

.featured-collection--header-text {
  max-width: 700px;
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .featured-collection--header-text {
    padding-bottom: 16px; } }
.featured-collection--header-text > *:not(:last-child) {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-collection--header-text > *:not(:last-child) {
    padding-bottom: 8px; } }
.featured-collection--description {
  max-width: 700px; }

@media only screen and (max-width: 767px) {
  .featured-collection--description {
    display: none; } }
@media only screen and (min-width: 768px) {
  .featured-collection--image {
    max-width: 50%;
    width: 100%;
    padding-left: 48px;
    padding-bottom: 32px; } }
.featured-collection--title {
  min-width: 250px;
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .featured-collection--title {
    text-align: center;
    padding-bottom: 16px; } }
.featured-collection--slider {
  padding: 32px 0 16px; }

@media only screen and (min-width: 768px) {
  .featured-collection--slider {
    display: none; } }
.featured-collection--slider .product--root {
  width: 100%;
  padding: 0 12px; }

.featured-collection--show-more {
  text-align: center; }

@media only screen and (min-width: 768px) {
  .featured-collection--products {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    text-align: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    padding-bottom: 16px; }

  .featured-collection--products > * {
    max-width: 25%;
    width: 25%;
    padding: 16px; } }
.featured-blog--root {
  padding: 32px 16px; }

@media only screen and (min-width: 768px) {
  .featured-blog--root {
    padding: 72px 48px; } }
.featured-blog--heading {
  text-align: center;
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .featured-blog--heading {
    padding-bottom: 32px; } }
.featured-blog--body {
  margin: -16px; }

@media only screen and (max-width: 767px) {
  .featured-blog--body {
    margin: -8px; } }
.featured-blog--grid {
  width: 100%;
  max-width: 1200px;
  padding-bottom: 16px;
  margin: 0 auto; }

@media only screen and (min-width: 768px) {
  .featured-blog--grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 32px;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }
.featured-blog--grid:last-child {
  padding-bottom: 0; }

.featured-blog--item {
  padding: 8px; }

@media only screen and (min-width: 768px) {
  .featured-blog--item {
    width: calc(100% / 3);
    padding: 16px; } }
.featured-blog--item > *:not(:last-child) {
  padding-bottom: 8px; }

.featured-blog--item .featured-blog--item--image {
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .featured-blog--item .featured-blog--item--image {
    padding-bottom: 16px; } }
.featured-blog--footer {
  text-align: center; }

.featured-collections--root {
  text-align: center;
  padding: 72px 0; }

@media only screen and (max-width: 767px) {
  .featured-collections--root {
    padding: 32px 0 16px; } }
.featured-collections--header {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  padding: 0 16px; }

.featured-collections--header > * {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-collections--header > * {
    padding-bottom: 12px; } }
.featured-collections--header > *:last-child {
  padding-bottom: 0; }

@media only screen and (max-width: 767px) {
  .featured-collections--header > *:last-child {
    padding-bottom: 8px; } }
.featured-collections--body {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 1200px;
  padding: 16px; }

@media only screen and (max-width: 767px) {
  .featured-collections--body {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding: 8px; } }
.featured-collections--item {
  text-align: center;
  padding: 16px; }

@media only screen and (max-width: 767px) {
  .featured-collections--item {
    width: 100% !important;
    padding: 8px; }

  .featured-collections--root[data-mobile-width='2'] .featured-collections--item {
    width: 50% !important; } }
.featured-collections--image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-collections--image {
    padding-bottom: 12px; } }
.featured-content--root {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .featured-content--root {
    padding: 32px 16px; } }
@media only screen and (min-width: 768px) {
  .featured-content--root[data-full-width="true"] {
    padding: 0; } }
.featured-content--container {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto; }

.featured-content--root[data-full-width="true"] .featured-content--container {
  max-width: none; }

.featured-content--root[data-text-position="top"] .featured-content--container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.featured-content--root[data-text-position="bottom"] .featured-content--container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.featured-content--container .featured-content--root[data-alternative-color="true"] {
  color: var(--color--alternative); }

.featured-content--container .featured-content--root[data-alternative-color="true"] a,
.featured-content--container .featured-content--root[data-alternative-color="true"] a:link,
.featured-content--container .featured-content--root[data-alternative-color="true"] a:visited,
.featured-content--container .featured-content--root[data-alternative-color="true"] a:hover {
  color: var(--color--alternative); }

.featured-content--container .featured-content--root[data-alternative-color="true"] a:after {
  border-color: var(--color--alternative); }

@media only screen and (max-width: 767px) {
  .featured-content--container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 0 !important; } }
.featured-content--image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%; }

.featured-content--image img {
  width: 100%; }

.featured-content--text {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
  padding: 32px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  max-width: 50%;
  min-width: 330px;
  position: relative;
  background-color: var(--bg-color--body);
  z-index: 1; }

.featured-content--root[data-text-position="top"] .featured-content--text {
  text-align: center;
  margin-bottom: -3.75rem;
  width: 90%; }

.featured-content--root[data-text-position="bottom"] .featured-content--text {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  text-align: center;
  margin-top: -3.75rem;
  width: 90%; }

.featured-content--root[data-text-position="left"] .featured-content--text {
  max-width: 50%;
  margin-right: -10%; }

.featured-content--root[data-text-position="left"][data-overlap="false"] .featured-content--text {
  padding: 32px 48px; }

.featured-content--root[data-text-position="center"] .featured-content--text {
  position: absolute;
  text-align: center;
  width: 90%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

.featured-content--root[data-text-position="right"] .featured-content--text {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  max-width: 50%;
  margin-left: -10%; }

.featured-content--root[data-overlap="false"]:not([data-text-position="center"]) .featured-content--text {
  background: transparent;
  margin: 0; }

.featured-content--root[data-text-width="small"] .featured-content--text {
  max-width: 30%; }

.featured-content--root[data-text-width="large"] .featured-content--text {
  min-width: 50%; }

.featured-content--root[data-transparent-overlap="true"] .featured-content--text {
  background-color: transparent; }

@media only screen and (min-width: 768px) {
  .featured-content--root[data-alternative-color="true"] .featured-content--text {
    color: var(--color--alternative); }

  .featured-content--root[data-alternative-color="true"] .featured-content--text a,
  .featured-content--root[data-alternative-color="true"] .featured-content--text a:link,
  .featured-content--root[data-alternative-color="true"] .featured-content--text a:visited,
  .featured-content--root[data-alternative-color="true"] .featured-content--text a:hover {
    color: var(--color--alternative); }

  .featured-content--root[data-alternative-color="true"] .featured-content--text a:after {
    border-color: var(--color--alternative); } }
@media only screen and (max-width: 767px) {
  .featured-content--text {
    padding: 16px 12px 0;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    text-align: center;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    -webkit-transform: none !important;
    transform: none !important;
    margin: 0 !important;
    background: transparent; }

  .featured-content--root[data-overlap="true"] .featured-content--text {
    margin-top: -10%; }

  .featured-content--root[data-alternative-color="true"]:not([data-text-position="center"]) .featured-content--text {
    color: var(--color--alternative); }

  .featured-content--root[data-alternative-color="true"]:not([data-text-position="center"]) .featured-content--text a,
  .featured-content--root[data-alternative-color="true"]:not([data-text-position="center"]) .featured-content--text a:link,
  .featured-content--root[data-alternative-color="true"]:not([data-text-position="center"]) .featured-content--text a:visited,
  .featured-content--root[data-alternative-color="true"]:not([data-text-position="center"]) .featured-content--text a:hover {
    color: var(--color--alternative); }

  .featured-content--root[data-alternative-color="true"]:not([data-text-position="center"]) .featured-content--text a:after {
    border-color: var(--color--alternative); }

  .featured-content--root[data-dark-background="true"] .featured-content--text {
    color: var(--color--alternative); }

  .featured-content--root[data-dark-background="true"] .featured-content--text a,
  .featured-content--root[data-dark-background="true"] .featured-content--text a:link,
  .featured-content--root[data-dark-background="true"] .featured-content--text a:visited,
  .featured-content--root[data-dark-background="true"] .featured-content--text a:hover {
    color: var(--color--alternative); }

  .featured-content--root[data-dark-background="true"] .featured-content--text a:after {
    border-color: var(--color--alternative); } }
.featured-content--text-container {
  max-width: 600px;
  margin: 0 auto; }

.featured-content--text-container > *:last-child {
  padding-bottom: 0; }

.featured-content--root[data-text-position="left"][data-overlap="false"] .featured-content--text-container {
  max-width: 400px; }

.featured-content--root[data-text-position="right"][data-overlap="false"] .featured-content--text-container {
  max-width: 400px; }

.featured-content--title {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-content--title {
    padding: 8px 0 12px; } }
.featured-content--description {
  padding-bottom: 16px; }

.featured-grid--root {
  text-align: center;
  padding: 72px 0; }

@media only screen and (max-width: 767px) {
  .featured-grid--root {
    padding: 32px 0; } }
@media only screen and (min-width: 768px) {
  .featured-grid--root[data-header-text-exists='false'][data-full-width='true'][data-spacing='false'] {
    padding-top: 0; } }
@media only screen and (min-width: 768px) {
  .featured-grid--root[data-footer-text-exists='false'][data-full-width='true'][data-spacing='false'] {
    padding-bottom: 0; } }
.featured-grid--root[data-full-width='true'] {
  padding-left: 0;
  padding-right: 0; }

.featured-grid--root[data-alternative-color='true'] {
  color: var(--color--alternative); }

.featured-grid--root[data-alternative-color='true'] a,
.featured-grid--root[data-alternative-color='true'] a:link,
.featured-grid--root[data-alternative-color='true'] a:visited,
.featured-grid--root[data-alternative-color='true'] a:hover {
  color: var(--color--alternative); }

@media only screen and (max-width: 767px) {
  .featured-grid--root[data-dark-background='true'] {
    color: var(--color--alternative); }

  .featured-grid--root[data-dark-background='true'] a,
  .featured-grid--root[data-dark-background='true'] a:link,
  .featured-grid--root[data-dark-background='true'] a:visited,
  .featured-grid--root[data-dark-background='true'] a:hover {
    color: var(--color--alternative); } }
.featured-grid--header {
  max-width: 800px;
  margin: 0 auto;
  text-align: center;
  padding: 0 16px; }

.featured-grid--header > * {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-grid--header > * {
    padding-bottom: 12px; } }
.featured-grid--header > *:last-child {
  padding-bottom: 0; }

@media only screen and (max-width: 767px) {
  .featured-grid--header > *:last-child {
    padding-bottom: 8px; } }
.featured-grid--title {
  padding-bottom: 16px; }

.featured-grid--subtitle {
  margin: 0;
  padding-bottom: 16px; }

.featured-grid--body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  max-width: 1200px;
  margin: 0 auto;
  padding: 16px; }

@media only screen and (max-width: 767px) {
  .featured-grid--body {
    padding: 8px !important; } }
@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'] .featured-grid--body {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; } }
.featured-grid--root[data-full-width='true'] .featured-grid--body {
  max-width: none; }

.featured-grid--root[data-spacing='false'] .featured-grid--body {
  padding-left: 0;
  padding-right: 0; }

.featured-grid--root[data-spacing='false'][data-full-width='true'][data-header-text-exists='false'] .featured-grid--body {
  padding-top: 0; }

.featured-grid--root[data-spacing='false'][data-full-width='true'][data-footer-text-exists='false'] .featured-grid--body {
  padding-bottom: 0; }

@media only screen and (max-width: 767px) {
  .featured-grid--item {
    width: 100% !important;
    padding: 8px !important; } }
.featured-grid--root[data-spacing='true'] .featured-grid--item {
  padding: 16px; }

@media only screen and (max-width: 767px) {
  .featured-grid--root[data-mobile-width='2'] .featured-grid--item {
    width: 50% !important; } }
.featured-grid--item--image {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.featured-grid--item--image img {
  width: 100%; }

.featured-grid--item--container {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media only screen and (max-width: 767px) {
  .featured-grid--item--container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; } }
.featured-grid--root[data-text-position='bottom'] .featured-grid--item--container {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

.featured-grid--item--overlay-background {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
  opacity: 0;
  -webkit-transition: opacity 0.25s linear;
  transition: opacity 0.25s linear; }

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'] .featured-grid--item:hover .featured-grid--item--overlay-background {
    z-index: 1;
    opacity: 0.8; } }
.featured-grid--item--text-container {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  padding: 16px 16px 0; }

@media only screen and (max-width: 767px) {
  .featured-grid--item--text-container {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding: 16px 0 0 !important;
    max-width: 100% !important;
    position: relative !important;
    top: auto !important;
    left: auto !important;
    -webkit-transform: none !important;
    transform: none !important;
    margin: 0 !important;
    opacity: 1 !important;
    -webkit-transition: none !important;
    transition: none !important; } }
.featured-grid--root[data-text-position='bottom'] .featured-grid--item--text-container {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  text-align: center;
  padding-left: 0;
  padding-right: 0; }

.featured-grid--root[data-text-position='center'] .featured-grid--item--text-container {
  position: absolute;
  text-align: center;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  opacity: 0;
  -webkit-transition: opacity 0.25s linear;
  transition: opacity 0.25s linear;
  padding-top: 0; }

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'] .featured-grid--item:hover .featured-grid--item--text-container {
    z-index: 1;
    opacity: 1; } }
@media only screen and (min-width: 768px) {
  .featured-grid--root[data-alternative-color='true'][data-text-position='center'] .featured-grid--item--text-container {
    color: var(--color--body); } }
.featured-grid--item--title {
  max-width: 900px;
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-grid--item--title {
    padding-bottom: 12px; } }
.featured-grid--item--link {
  max-width: 900px;
  margin: 0 auto; }

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'] .featured-grid--item--link {
    padding-bottom: 16px; } }
.featured-grid--root[data-alternative-color='true'] .featured-grid--item--link-container {
  color: var(--color--alternative); }

.featured-grid--root[data-alternative-color='true'] .featured-grid--item--link-container:after {
  border-color: var(--color--alternative); }

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'][data-alternative-color='true'] .featured-grid--item--link-container {
    color: var(--color--body); }

  .featured-grid--root[data-text-position='center'][data-alternative-color='true'] .featured-grid--item--link-container:after {
    border-color: var(--color--body); } }
.featured-grid--footer {
  padding-top: 16px;
  text-align: center; }

@media only screen and (max-width: 767px) {
  .featured-grid--footer {
    padding-top: 8px; } }
.featured-text--root {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .featured-text--root {
    padding: 32px 16px; } }
.featured-text--container {
  max-width: 650px;
  margin: 0 auto;
  text-align: center; }

.featured-text--heading {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .featured-text--heading {
    padding-bottom: 16px; } }
@media (max-width: 767px) {
  .featured-text--body {
    padding: 16px; } }

.featured-text--body p:last-child {
  margin-bottom: 0; }

.featured-video--root {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .featured-video--root {
    padding: 32px 16px; } }
.featured-video--container {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center; }

.featured-video--heading {
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .featured-video--heading {
    padding-bottom: 16px; } }
.map--root {
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .map--root {
    padding: 32px 16px; } }
.map--container {
  max-width: 1200px;
  margin: 0 auto; }

.map--body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto; }

@media only screen and (max-width: 767px) {
  .map--body {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }
.map--info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  max-width: 400px; }

@media only screen and (max-width: 767px) {
  .map--info {
    width: 100%;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    text-align: center;
    max-width: none;
    padding-bottom: 32px; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .map--info {
    max-width: 300px;
    padding-right: 16px; } }
@media only screen and (min-width: 1024px) {
  .map--info {
    padding-right: 32px; } }
.map--heading {
  width: 100%;
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .map--heading {
    text-align: center;
    padding-bottom: 16px; } }
.map--address {
  padding-right: 32px;
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .map--address {
    padding: 0 16px 32px; } }
.map--address-content {
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .map--hours {
    padding: 0 16px; } }
.map--open-maps-link {
  display: block;
  width: 100%; }

.map--media {
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
  padding-left: 30px; }

@media only screen and (max-width: 767px) {
  .map--media {
    padding: 0;
    width: 100%; } }
.map--google-maps {
  min-height: 400px; }

@media only screen and (max-width: 767px) {
  .map--google-maps {
    width: 100%; } }
.newsletter--root {
  padding: 72px 0; }

@media only screen and (max-width: 767px) {
  .newsletter--root {
    padding: 32px 0; } }
.newsletter--container {
  max-width: 1200px;
  margin: 0 auto;
  text-align: center; }

.newsletter--header {
  padding: 0 16px 16px; }

.newsletter--header > * {
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .newsletter--header > * {
    padding-bottom: 12px; } }
.newsletter--header > *:last-child {
  padding-bottom: 0; }

@media only screen and (max-width: 767px) {
  .newsletter--header > *:last-child {
    padding-bottom: 8px; } }
.newsletter--subheading p:last-child {
  margin-bottom: 0; }

.newsletter--body {
  max-width: 400px;
  margin: 0 auto;
  padding: 0 32px; }

@media only screen and (max-width: 767px) {
  .newsletter--body {
    padding: 0 16px; } }
.newsletter--body form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

input.newsletter--email {
  margin: 0 12px 0 0; }

.section--slideshow .placeholder-noblocks {
  height: 600px;
  display: inline-block;
  vertical-align: middle;
  line-height: 600px;
  width: 100%; }

.section--slideshow .slider {
  padding: 0; }

@media only screen and (min-width: 768px) {
  .section--slideshow .slider {
    border-bottom: none; } }
.section--slideshow .slider .owl-wrapper {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start; }

.section--slideshow .slider .flex-video {
  padding-bottom: 45%; }

.section--slideshow .slider .video .caption,
.section--slideshow .slider .video .video-src {
  display: none; }

.section--slideshow .slider .video .play-button {
  display: block;
  visibility: hidden;
  cursor: pointer;
  opacity: 0.5;
  position: absolute;
  top: 50%;
  left: 50%;
  background-position: center center;
  background-repeat: no-repeat;
  height: 80px;
  width: 80px;
  margin-left: -40px;
  margin-top: -40px;
  cursor: pointer;
  border: 4px solid #fff;
  background: #000;
  border-radius: 50%; }

.section--slideshow .slider .video .play-button:hover {
  opacity: 0.6; }

.section--slideshow .slider .video .play-button .triangle {
  -webkit-transform: scale(0.9999);
  transform: scale(0.9999);
  -moz-transform: scale(0.9999);
  position: relative;
  top: 21px;
  left: 30px;
  width: 0;
  height: 0;
  border-top: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 20px solid #fff; }

.section--slideshow .slider .owl-controlls {
  margin-top: 0; }

.section--slideshow .slider .row {
  position: relative;
  padding: 0; }

.section--slideshow .slider .slide {
  position: relative; }

.section--slideshow .slider .slide img {
  display: inline-block;
  width: 100%; }

.section--slideshow .slider .slide .caption {
  visibility: hidden;
  position: static;
  padding: 16px; }

.section--slideshow .slider .slide .caption.right {
  float: left !important; }

.section--slideshow .slider .slide .caption > *:last-child {
  padding-bottom: 0 !important; }

.section--slideshow .slider .slide .caption .bg {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  opacity: 0.8;
  background-color: var(--bg-color--body); }

@media only screen and (min-width: 768px) {
  .section--slideshow .slider .slide .caption .bg {
    display: block; } }
.section--slideshow .slider .slide .caption .title {
  position: relative;
  padding-bottom: 16px; }

.section--slideshow .slider .slide .caption .sub-title {
  position: relative;
  margin: 0;
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .section--slideshow .slider .slide .caption .sub-title {
    margin: 0 48px 0 0; } }
.section--slideshow .slider .slide .caption .slideshow--button a {
  position: relative; }

@media only screen and (min-width: 768px) {
  .section--slideshow .slider .slide .caption {
    position: absolute;
    max-width: 350px;
    margin: 20px 55px 30px;
    padding: 32px;
    background-color: transparent; }

  .section--slideshow .slider .slide .caption.text-center {
    text-align: center; }

  .section--slideshow .slider .slide .caption.top {
    top: 125px;
    margin-top: 0; }

  .section--slideshow .slider .slide .caption.middle {
    top: 50%;
    margin-top: 0; }

  .section--slideshow .slider .slide .caption.bottom {
    bottom: 0; }

  .section--slideshow .slider .slide .caption.left {
    left: 0; }

  .section--slideshow .slider .slide .caption.center {
    left: 50%;
    margin-left: 0; }

  .section--slideshow .slider .slide .caption.right {
    right: 0; }

  .section--slideshow .slider .slide .caption.bottom.right {
    bottom: 45px; } }
@media only screen and (min-width: 1024px) {
  .section--slideshow .slider .slide .caption {
    max-width: 400px; } }
.section--slideshow .slider .owl-controls {
  margin-top: 0; }

.section--slideshow .slider .owl-pagination {
  position: absolute;
  right: 20px;
  bottom: 18px;
  top: auto;
  margin: 0;
  padding: 5px; }

@media only screen and (min-width: 768px) {
  .section--slideshow .slider .owl-pagination {
    right: 50px;
    bottom: 20px; } }
.section--slideshow .slider .owl-pagination .owl-page {
  border-radius: 50%;
  border: 0;
  margin: 0 7px 0 0;
  cursor: pointer;
  display: inline-block;
  height: 15px;
  width: 15px;
  opacity: 0.6; }

.section--slideshow .slider .owl-pagination .owl-page:last-child {
  margin-right: 0; }

.section--slideshow .slider .owl-pagination .owl-page.active {
  opacity: 0.8; }

.section--slideshow .slider .owl-pagination .owl-page span {
  background: #fff;
  border: 2px solid #fff;
  opacity: 0.8;
  -webkit-box-shadow: 0px 0px 2px #666;
  box-shadow: 0px 0px 2px #666; }

.section--slideshow .slider .owl-pagination .owl-page span:hover {
  opacity: 1; }

.section--slideshow .slider .owl-pagination .owl-page.active span {
  background: transparent;
  -webkit-box-shadow: inset 0 0px 2px #666, 0px 0px 2px #666;
  box-shadow: inset 0 0px 2px #666, 0px 0px 2px #666; }

.section--slideshow .slider .owl-pagination .owl-page .owl-numbers {
  display: none; }

.section--slideshow .slider .owl-pagination .owl-page.active .owl-numbers {
  display: block;
  background: none;
  border: 0;
  opacity: 1;
  -webkit-box-shadow: none;
  box-shadow: none; }

.announcement--root {
  color: var(--color--announcement);
  background-color: var(--bg-color--announcement);
  padding: 0;
  text-align: center;
  margin: 0 auto;
  width: 100%;
  position: relative;
  z-index: 1; }

.announcement--root a,
.announcement--root a:link,
.announcement--root a:hover,
.announcement--root a:visited {
  color: var(--color--announcement); }

.announcement--link--full-width {
  display: inline-block;
  padding-bottom: 0;
  padding-top: 0;
  width: 100%; }

.announcement--wrapper {
  padding: 16px;
  max-width: 800px;
  margin: 0 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

@media only screen and (min-width: 768px) {
  .announcement--wrapper > * {
    padding-left: 16px;
    padding-right: 16px; } }
@media only screen and (max-width: 767px) {
  .announcement--wrapper {
    display: block;
    max-width: 100%;
    padding: 12px 16px; } }
.announcement--adjust-padding .announcement--wrapper {
  padding-top: 8px; }

[data-banner--enabled='true'].announcement--adjust-padding .announcement--wrapper {
  padding-top: 16px; }

.announcement--icon {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding: 0; }

.announcement--icon img {
  max-height: 25px; }

@media only screen and (max-width: 767px) {
  .announcement--icon {
    display: none; } }
.announcement--text {
  text-transform: none; }

.announcement--text p {
  margin: 0; }

.announcement--link {
  white-space: nowrap;
  position: relative;
  bottom: 2px;
  padding-bottom: 3px; }

@media only screen and (max-width: 767px) {
  .announcement--link {
    padding-top: 12px;
    padding-bottom: 11px; } }
.announcement--link a {
  border-bottom-color: var(--color--announcement); }

.instagram--root {
  text-align: center;
  padding: 72px 48px; }

@media only screen and (max-width: 767px) {
  .instagram--root {
    padding: 32px 16px; } }
.instagram--root[data-full-width='true'] {
  padding-left: 0;
  padding-right: 0; }

@media only screen and (min-width: 768px) {
  .instagram--root[data-header-text-exists='false'][data-full-width='true'][data-spacing='false'] {
    padding-top: 0; } }
@media only screen and (min-width: 768px) {
  .instagram--root[data-footer-text-exists='false'][data-full-width='true'][data-spacing='false'] {
    padding-bottom: 0; } }
.instagram--root > *:not(:last-child) {
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .instagram--root > *:not(:last-child) {
    padding-bottom: 16px; } }
.instagram--root[data-spacing='true'] .instagram--body {
  margin: -8px; }

@media only screen and (max-width: 767px) {
  .instagram--root[data-spacing='true'] .instagram--body {
    margin: -4px; } }
.instagram--root[data-spacing='true'][data-full-width='true'] .instagram--body {
  padding-left: 16px;
  padding-right: 16px; }

@media only screen and (max-width: 767px) {
  .instagram--root[data-spacing='true'][data-full-width='true'] .instagram--body {
    padding-left: 8px;
    padding-right: 8px; } }
.instagram--grid {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
  max-width: 1260px; }

.instagram--root[data-full-width='true'] .instagram--grid {
  max-width: none;
  padding-left: 0;
  padding-right: 0; }

.instagram--root[data-spacing='false'][data-full-width='true'][data-header-text-exists='false'] .instagram--grid {
  padding-top: 0; }

.instagram--root[data-spacing='false'][data-full-width='true'][data-footer-text-exists='false'] .instagram--grid {
  padding-bottom: 0; }

@media only screen and (max-width: 767px) {
  .instagram--item:nth-child(n + 5) {
    display: none; } }
.instagram--root[data-spacing='true'] .instagram--item {
  padding: 8px; }

@media only screen and (max-width: 767px) {
  .instagram--root[data-spacing='true'] .instagram--item {
    padding: 4px; } }
.instagram--item-container {
  width: 100%;
  padding-bottom: 100%;
  position: relative; }

.instagram--image {
  background-position: center center;
  background-size: cover;
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%; }

@media only screen and (max-width: 1399px) {
  .instagram--item {
    height: 23vw !important; } }
@media only screen and (max-width: 767px) {
  .instagram--item {
    height: 42vw !important; }

  .instagram--item:nth-child(n+5) {
    display: block; } }
/* Collections
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.collection-listing--collection {
  padding: 80px 48px; }

.collection-listing--collection:after {
  content: '\0020';
  display: block;
  height: 0;
  clear: both;
  overflow: hidden;
  visibility: hidden; }

@media only screen and (max-width: 767px) {
  .collection-listing--collection {
    padding-left: 12px;
    padding-right: 12px; } }
@media only screen and (min-width: 768px) {
  .collection-listing--left-column {
    float: left;
    width: 16.66667%; } }
@media only screen and (min-width: 768px) {
  .collection-listing--right-column {
    float: left;
    width: 83.33333%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; } }
@media only screen and (max-width: 767px) {
  .collection-listing--right-column {
    width: 100%; } }
.collection-listing--product {
  max-width: 600px; }

@media only screen and (min-width: 768px) {
  .collection-listing--product {
    float: left;
    padding-bottom: 24px;
    padding-top: 24px; }

  .collection-listing--product:first-child {
    padding-top: 0; } }
@media only screen and (min-width: 1250px) {
  .collection-listing--product {
    width: 50%;
    padding-bottom: 0;
    padding-top: 0; }

  .collection-listing--product:nth-child(n + 3) {
    padding-top: 48px;
    padding-bottom: 0; }

  .collection-listing--product:nth-child(2n + 3) {
    clear: left; } }
.collection-listing--collection-title {
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .collection-listing--collection-title {
    font-weight: var(--font--bolder-paragraph--weight);
    text-align: center;
    padding-bottom: 48px; } }
.collection-listing--number-of-items {
  display: none; }

@media only screen and (max-width: 767px) {
  .collection-listing--number-of-items {
    display: block;
    text-transform: uppercase;
    padding-top: 12px; } }
.collection-listing--view-more {
  display: inline-block; }

@media only screen and (max-width: 767px) {
  .collection-listing--view-more {
    padding-bottom: 16px; } }
.collection-listing--view-more--mq-small {
  text-align: center; }

@media only screen and (min-width: 768px) {
  .collection-listing--view-more--mq-small {
    display: none; } }
.collection-listing--view-more--mq-small a {
  display: inline-block; }

.collection-listing--pagination {
  width: 100%;
  padding: 48px;
  max-width: 1000px;
  margin: 0 auto; }

.collection-listing--pagination:after {
  content: '\0020';
  display: block;
  height: 0;
  clear: both;
  overflow: hidden;
  visibility: hidden; }

@media only screen and (max-width: 767px) {
  .collection-listing--pagination {
    padding-left: 12px;
    padding-right: 12px; } }
.collection--header {
  position: relative;
  margin: 0 auto;
  text-align: center; }

.collection--header > * {
  position: relative; }

@media only screen and (min-width: 768px) {
  .collection--header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .collection--header {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }
.collection--title {
  padding-bottom: 48px; }

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .collection--title {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 500px;
    margin-top: -3.75rem; } }
@media only screen and (min-width: 768px) {
  .collection--title {
    padding: 32px;
    background-color: var(--bg-color--panel);
    z-index: 1;
    min-width: 250px; }

  .collection--title:only-child {
    left: 0;
    background-color: transparent;
    padding: 0;
    max-width: 600px;
    margin-top: 0; } }
@media only screen and (min-width: 1024px) {
  .collection--title {
    left: 30px;
    max-width: 500px; }

  .collection--title:only-child {
    max-width: 600px; } }
.collection--title p {
  padding: 16px 0; }

.collection--image {
  display: none;
  max-width: 600px; }

@media only screen and (min-width: 768px) {
  .collection--image {
    display: block; } }
@media only screen and (min-width: 1024px) {
  .collection--image {
    left: -30px; } }
.collection--column-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 96px; }

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .collection--column-wrapper {
    padding-left: 0;
    padding-right: 0; } }
@media only screen and (max-width: 767px) {
  .collection--column-wrapper {
    padding-top: 0;
    padding-left: 12px;
    padding-right: 12px; } }
@media only screen and (min-width: 768px) {
  .collection--left-column {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    -ms-flex-preferred-size: 180px;
    flex-basis: 180px;
    padding-right: 48px; } }
@media only screen and (max-width: 767px) {
  .collection--left-column {
    display: none; } }
@media only screen and (max-width: 767px) {
  .collection--right-column {
    width: 100%; } }
@media only screen and (min-width: 768px) {
  .collection--right-column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1; }

  [data-collection--tags-exist='false'] .collection--right-column,
  [data-collection--is-vendor-page='true'] .collection--right-column {
    width: 100%; } }
@media only screen and (min-width: 768px) {
  .collection--products {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-negative: 1;
    flex-shrink: 1;
    max-width: 1200px;
    width: 100%; }

  [data-collection--tags-exist='false'] .collection--products,
  [data-collection--is-vendor-page='true'] .collection--products {
    margin: 0 auto; } }
@media only screen and (min-width: 768px) {
  .collection--product {
    max-width: 600px;
    padding-bottom: 48px; } }
@media only screen and (min-width: 950px) {
  [data-collection--tags-exist='false'] .collection--product,
  [data-collection--is-vendor-page='true'] .collection--product {
    width: 50%; }

  [data-collection--tags-exist='false'] .collection--product:only-child,
  [data-collection--is-vendor-page='true'] .collection--product:only-child {
    width: 100%; } }
@media only screen and (min-width: 1150px) {
  .collection--product {
    width: 50%; } }
@media only screen and (max-width: 767px) {
  .collection--number-of-items {
    display: block;
    font-weight: var(--font--paragraph--weight);
    text-transform: uppercase;
    padding-top: 12px; } }
.collection--view-more {
  border-bottom: 2px solid var(--color--link-underline);
  display: inline-block;
  padding-bottom: 6px; }

@media only screen and (max-width: 767px) {
  .collection--view-more {
    display: none; } }
.collection--filter-tag {
  list-style: none; }

.collection--filter-tag--anchor {
  display: inline-block; }

.collection--filter-tag--selected {
  font-weight: var(--font--bolder-paragraph--weight); }

.collection--filter--select {
  display: none; }

@media only screen and (max-width: 767px) {
  .collection--filter--select {
    display: block;
    max-width: calc(100vw - 80px);
    margin: 8px auto 32px; } }
.collection--pagination {
  width: 100%; }

.collection--no-products {
  max-width: 700px;
  text-align: center;
  margin: 0 auto;
  padding: 48px 0; }

/* Product
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media only screen and (min-width: 768px) {
  .template--product .layout--main-content {
    background-color: var(--bg-color--panel); } }
.product-page--root {
  padding: 0; }

@media only screen and (max-width: 767px) {
  .product-page--root {
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 32px; } }
.product-page--root .social--share-title {
  padding-bottom: 8px; }

.product-page--root .social--share-item {
  width: auto;
  padding-top: 8px; }

.product-page--root .social--share-item:first-of-type {
  padding-left: 4px; }

.product-page--root .social--share-link .fw--icon {
  width: 1.3em;
  height: 1.3em; }

.product-page--root .social--share-link .fw--icon.fw--icon--google-plus {
  width: 1.6em; }

.product-page--main {
  padding: 48px;
  background-color: var(--bg-color--panel); }

@media only screen and (max-width: 767px) {
  .product-page--main {
    padding: 16px 0; } }
@media only screen and (min-width: 768px) {
  .product-page--main-container {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }
.product-page--info-box {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative; }

@media only screen and (min-width: 768px) {
  .product-page--info-box {
    padding-top: 48px;
    width: 300px; } }
@media only screen and (min-width: 1024px) {
  .product-page--info-box {
    width: 400px; } }
@media only screen and (min-width: 768px) {
  .product-page--info-box--container {
    position: relative;
    z-index: 2;
    background-color: var(--bg-color--body);
    width: 300px;
    padding: 16px; } }
@media only screen and (min-width: 1024px) {
  .product-page--info-box--container {
    width: 400px; } }
@media only screen and (max-width: 767px) {
  .product-page--info-box--container {
    width: auto !important; } }
.product-page--info-box--container > * {
  padding: 12px 16px; }

.product-page--info-box--container .product-page--description-toggle {
  padding-bottom: 16px; }

.product-page--info-box--container[data-show-description='true'] {
  width: 700px; }

.product-page--info-box--container[data-show-description='true'] > * {
  display: none; }

.product-page--info-box--container[data-show-description='true'] .product-page--title,
.product-page--info-box--container[data-show-description='true'] .product-page--description,
.product-page--info-box--container[data-show-description='true'] .product-page--description-toggle {
  display: block; }

.product-page--social-media {
  padding-left: 0; }

@media only screen and (max-width: 767px) {
  .product-page--social-media {
    text-align: center; }

  .product-page--social-media .share-buttons-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }

  .product-page--social-media .social--share-title {
    width: 100%; } }
@media only screen and (max-width: 767px) {
  .product-page--title {
    display: block;
    text-align: center;
    padding-bottom: 16px; } }
[data-show-description='true'] .product-page--title {
  display: block; }

.product-page--vendor a {
  color: var(--color--body--light); }

@media only screen and (max-width: 767px) {
  .product-page--vendor {
    text-align: center; } }
.product-page--excerpt {
  display: none; }

@media only screen and (min-width: 768px) {
  .product-page--excerpt {
    display: block; } }
@media only screen and (min-width: 768px) {
  .product-page--description {
    display: none;
    opacity: 0; } }
[data-show-description='true'] .product-page--description {
  display: block; }

.product-page--close-description {
  display: none;
  position: absolute;
  top: 5px;
  right: 5px;
  cursor: pointer; }

[data-show-description='true'] .product-page--close-description {
  display: block; }

.product-page--close-description:focus {
  background-color: transparent; }

.product-page--close-description .fw--icon {
  height: 1em;
  width: 1em;
  color: var(--color--body); }

.product-page--description-toggle {
  position: relative;
  cursor: pointer;
  display: inline-block; }

@media only screen and (max-width: 767px) {
  .product-page--description-toggle {
    display: none;
    position: relative !important; } }
.product-page--less-details {
  display: none; }

.product-page--cart-form select {
  margin-bottom: 8px; }

.product-page--smart-payment-buttons {
  padding: 12px 0;
  text-align: center; }

.product-page--smart-payment-buttons .shopify-payment-button__more-options {
  color: var(--color--body);
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  border-bottom: 1px solid var(--color--link-underline);
  display: inline-block;
  padding-bottom: 3px;
  text-transform: none;
  font-weight: var(--font--paragraph--weight);
  width: auto; }

@media only screen and (max-width: 767px) {
  .product-page--smart-payment-buttons .shopify-payment-button__more-options {
    font-size: 13px; } }
.product-page--smart-payment-buttons .shopify-payment-button__more-options:hover {
  color: var(--color--body);
  background: transparent;
  text-decoration: none; }

.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded {
  background: var(--bg-color--button);
  color: var(--color--button);
  -webkit-box-shadow: none;
  box-shadow: none;
  border-radius: 2px;
  display: inline-block;
  zoom: 1;
  letter-spacing: 1px;
  padding: 0 15px;
  vertical-align: bottom;
  height: 45px;
  line-height: 45px;
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  width: 100%; }

@media only screen and (max-width: 767px) {
  .product-page--smart-payment-buttons .shopify-payment-button__button--unbranded {
    font-size: 13px; } }
.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded.compact {
  height: 29px;
  line-height: 29px; }

.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:focus {
  background: var(--bg-color--button); }

.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:link {
  color: var(--color--button); }

.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:visited {
  color: var(--color--button); }

.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:hover {
  color: var(--color--button);
  background: var(--bg-color--button); }

.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded[disabled='disabled'] {
  display: none; }

.product-page--smart-payment-buttons .shopify-payment-button__button--hidden {
  display: none; }

[data-product-page--show-variants='false'] .product-page--variants {
  display: none; }

.product-page--price-n-button-wrapper > * {
  padding: 8px 0; }

@media only screen and (max-width: 767px) {
  .product-page--price-n-button-wrapper {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding-top: 8px; } }
@media only screen and (max-width: 767px) {
  .product-page--price-wrapper {
    -ms-flex-negative: 0;
    flex-shrink: 0;
    padding-right: 8px; } }
.product-page--price {
  display: inline-block;
  font-size: 20px; }

@media only screen and (max-width: 767px) {
  .product-page--price {
    font-size: 16px;
    padding-bottom: 16px; } }
.product-page--compare-price {
  text-decoration: line-through;
  color: var(--color--body--light);
  display: inline-block; }

button.product-page--add-to-cart {
  width: 100%;
  position: relative;
  padding: 0;
  margin-top: 8px; }

@media only screen and (max-width: 767px) {
  button.product-page--add-to-cart {
    margin-top: 0; } }
button.product-page--add-to-cart[data-loading='true'] .text {
  display: none; }

button.product-page--add-to-cart[data-loading='true'] .fw--loading_animation {
  display: block; }

.product-page--sold-out {
  width: 100%;
  color: var(--color--important);
  padding: 0; }

@media only screen and (max-width: 767px) {
  .product-page--sold-out {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2; } }
.product-page--sold-out--product {
  padding: 8px 0; }

.product-page--sold-out--variant {
  display: none;
  padding: 8px 0; }

.product-page--unavailable-variant {
  display: none;
  padding: 8px 0; }

.product-page--error {
  padding: 16px 0; }

.product-page--images {
  display: none; }

@media only screen and (min-width: 768px) {
  .product-page--images {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -ms-flex-item-align: start;
    align-self: flex-start;
    display: block;
    position: relative;
    padding: 48px;
    width: calc(100% - 490px); } }
@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .product-page--images {
    padding: 48px 0 0 48px; } }
[data-show-thumbs-bottom='true'] .product-page--images {
  padding: 48px 0 0 48px; }

.product-page--image {
  display: none;
  max-width: 100%;
  margin: 0 auto; }

[data-modal-enabled='true'] .product-page--image {
  cursor: -webkit-zoom-in;
  cursor: zoom-in; }

.product-page--image[data-active='true'] {
  display: block; }

.product-page--image .image--root {
  margin: 0 auto; }

.product-page--thumbs {
  display: none; }

[data-show-thumbs-bottom='true'] .product-page--thumbs {
  display: none; }

.product-page--thumbs > * {
  padding-bottom: 16px; }

@media only screen and (min-width: 1024px) {
  .product-page--thumbs {
    display: block;
    min-width: 90px;
    margin: 0 auto;
    text-align: center;
    -ms-flex-item-align: start;
    align-self: flex-start;
    padding-top: 48px; }

  .product-page--thumbs .image--root {
    max-width: 90px; } }
.product-page--thumbs--mq-medium {
  text-align: center;
  background-color: var(--bg-color--panel);
  padding: 24px 48px;
  width: 100%; }

.product-page--thumbs--mq-medium > * {
  padding: 8px; }

@media only screen and (min-width: 1024px) {
  .product-page--thumbs--mq-medium {
    display: none; } }
[data-show-thumbs-bottom='true'] .product-page--thumbs--mq-medium {
  display: block; }

@media only screen and (max-width: 767px) {
  .product-page--thumbs--mq-medium {
    display: none !important; } }
.product-page--thumb {
  max-width: 90px; }

[data-show-thumbs-bottom='true'] .product-page--thumb {
  display: inline-block; }

.product-page--thumb:hover {
  cursor: pointer; }

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .product-page--thumb {
    display: inline-block; } }
.product-page--slider {
  display: none; }

@media only screen and (max-width: 767px) {
  .product-page--slider {
    display: block; } }
.product-page--slider-image {
  max-width: 100%; }

.product-page--similar-products {
  overflow: hidden;
  background: var(--bg-color--body); }

/* Blog
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.blog--root {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto; }

.blog--root[data-section-id='framework--blog'] {
  padding: 32px 0 0; }

.blog--root[data-show-title='false'][data-show-tags='false'] {
  padding-top: 0; }

@media only screen and (min-width: 768px) {
  .blog--root[data-show-featured='true'][data-section-id='framework--blog'] {
    padding-top: 0; }

  .blog--root[data-show-featured='false'][data-section-id='framework--blog'] {
    padding-top: 72px; }

  .blog--root[data-articles='0'][data-section-id='framework--blog'] {
    padding-top: 32px; } }
.blog--root > * {
  padding: 0 0 16px;
  width: 100%; }

@media only screen and (min-width: 768px) {
  .blog--root > * {
    padding: 0 0 32px; } }
.blog--featured {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  width: 100%; }

@media only screen and (max-width: 767px) {
  .blog--featured {
    padding-bottom: 32px !important; } }
@media only screen and (min-width: 768px) {
  .blog--featured {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
    padding-bottom: 72px; } }
@media only screen and (min-width: 768px) {
  .blog--featured-container {
    position: relative; }

  .blog--root[data-image-height='small'] .blog--featured-container {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 400px; }

  .blog--root[data-image-height='small'] .blog--featured-container .blog--featured-image {
    height: 100%; }

  .blog--root[data-image-height='small'] .blog--featured-container .image--root,
  .blog--root[data-image-height='small'] .blog--featured-container .placeholder--root {
    height: 100%; }

  .blog--root[data-image-height='small'] .blog--featured-container .image--container,
  .blog--root[data-image-height='small'] .blog--featured-container .placeholder--container {
    height: 100%;
    padding-top: 0 !important; }

  .blog--root[data-image-height='small'] .blog--featured-container img {
    height: 400px;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover'; }

  .blog--root[data-image-height='medium'] .blog--featured-container {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 640px; }

  .blog--root[data-image-height='medium'] .blog--featured-container .blog--featured-image {
    height: 100%; }

  .blog--root[data-image-height='medium'] .blog--featured-container .image--root,
  .blog--root[data-image-height='medium'] .blog--featured-container .placeholder--root {
    height: 100%; }

  .blog--root[data-image-height='medium'] .blog--featured-container .image--container,
  .blog--root[data-image-height='medium'] .blog--featured-container .placeholder--container {
    height: 100%;
    padding-top: 0 !important; }

  .blog--root[data-image-height='medium'] .blog--featured-container img {
    height: 640px;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover'; } }
.blog--root[data-apply-overlay='true'] .blog--featured-image .image--container,
.blog--root[data-apply-overlay='true'] .blog--featured-image .placeholder--container {
  position: relative; }

.blog--root[data-apply-overlay='true'] .blog--featured-image .image--container:after,
.blog--root[data-apply-overlay='true'] .blog--featured-image .placeholder--container:after {
  position: absolute;
  content: '';
  top: 0;
  width: 100%;
  height: 100%; }

@media only screen and (min-width: 768px) {
  .blog--root[data-apply-overlay='true'] .blog--featured-image .image--container:after,
  .blog--root[data-apply-overlay='true'] .blog--featured-image .placeholder--container:after {
    background-color: rgba(0, 0, 0, 0.3); } }
@media only screen and (min-width: 768px) {
  .blog--root[data-apply-overlay='true'][data-image-height='small'] .blog--featured-image .image--container:after {
    height: 400px; }

  .blog--root[data-apply-overlay='true'][data-image-height='medium'] .blog--featured-image .image--container:after {
    height: 640px; } }
.blog--featured-header {
  display: none; }

@media only screen and (min-width: 768px) {
  .blog--featured-header {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 100%;
    z-index: 1; }

  .blog--featured-header h2 a {
    display: inline-block;
    max-width: 1000px;
    text-align: center;
    margin: 0;
    padding: 0 48px; }

  .blog--root[data-alt-color='true'] .blog--featured-header h2 a {
    color: var(--color--alternative); } }
.blog--featured-image {
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .blog--featured-image {
    padding: 0; } }
.blog--featured-title--mobile {
  padding: 0 16px 8px; }

@media only screen and (min-width: 768px) {
  .blog--featured-title--mobile {
    display: none; } }
.blog--featured-timesince {
  padding: 0 16px 8px; }

@media only screen and (min-width: 768px) {
  .blog--featured-timesince {
    display: none; } }
.blog--featured-excerpt {
  padding: 0 16px 8px; }

@media only screen and (min-width: 768px) {
  .blog--featured-excerpt {
    display: none; } }
.blog--featured-excerpt:last-child {
  padding-bottom: 0; }

.blog--featured-readmore {
  padding: 0 16px;
  text-decoration: underline; }

@media only screen and (min-width: 768px) {
  .blog--featured-readmore {
    display: none; } }
.blog--header--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 0; }

@media only screen and (min-width: 768px) {
  .blog--header--root {
    padding: 0 48px 72px; } }
.blog--header {
  width: 100%;
  padding: 0 16px 32px; }

@media only screen and (min-width: 768px) {
  .blog--header {
    padding: 0 32px;
    margin: 0 -32px;
    max-width: 864px; }

  .blog--root[data-columns='2'] .blog--header {
    max-width: 1264px; }

  .blog--root[data-columns='3'] .blog--header {
    max-width: 1264px; } }
.blog--header > *:only-child {
  padding-bottom: 0; }

.blog--title {
  width: 100%;
  text-align: center;
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .blog--title {
    padding-bottom: 32px; } }
.blog--filter--root {
  margin: -8px 0;
  width: 100%; }

.blog--filter--header {
  padding: 0 0 8px;
  margin: 0; }

@media only screen and (min-width: 768px) {
  .blog--filter--header {
    display: none; } }
.blog--filter--header h3 {
  text-align: center;
  text-transform: uppercase;
  padding: 0;
  margin: 0; }

.blog--filter--body {
  padding-bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.blog--filter--menu {
  display: none; }

@media only screen and (min-width: 768px) {
  .blog--filter--menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin: 0;
    padding: 0; } }
.blog--filter--menu-item {
  display: none;
  margin: 0;
  line-height: 1em; }

@media only screen and (min-width: 768px) {
  .blog--filter--menu-item {
    display: block; }

  .blog--filter--menu-item a {
    display: inline-block;
    padding: 8px; } }
.blog--filter--select {
  max-width: 180px;
  padding: 16px 32px 16px 16px;
  margin: 0; }

@media only screen and (min-width: 768px) {
  .blog--filter--select {
    display: none; } }
.blog--filter--select:focus {
  outline: 0; }

.blog--body {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .blog--body {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
    padding: 0 48px 72px; } }
.blog--list {
  width: 100%;
  padding-bottom: 0; }

@media only screen and (max-width: 767px) {
  .blog--list {
    padding: 0 16px; } }
@media only screen and (min-width: 768px) {
  .blog--list {
    margin: -32px;
    max-width: 864px; }

  .blog--root[data-columns='2'] .blog--list {
    max-width: 1264px; }

  .blog--root[data-columns='3'] .blog--list {
    max-width: 1264px; } }
.blog--list > *:not(:last-child) {
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .blog--list > *:not(:last-child) {
    padding-bottom: 32px; } }
.blog--list--item {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column; }

@media only screen and (min-width: 768px) {
  .blog--list--item {
    padding: 32px; }

  .blog--root[data-columns='2'] .blog--list--item {
    width: 50%; }

  .blog--root[data-columns='3'] .blog--list--item {
    width: 33.33333%; } }
.blog--list--item > *:not(:last-child) {
  padding-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .blog--list--item > *:not(:last-child) {
    padding-bottom: 16px; } }
.blog--list--image-link {
  padding-bottom: 16px !important; }

@media only screen and (min-width: 768px) {
  .blog--list--image-link {
    padding-bottom: 32px !important; } }
@media only screen and (max-width: 767px) {
  .blog--list--item-image {
    margin: 0 -16px; } }
.blog--footer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 100%;
  padding: 32px 16px 0; }

@media only screen and (min-width: 768px) {
  .blog--footer {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 72px 32px 0;
    margin: 0 -32px;
    max-width: 864px; }

  .blog--root[data-columns='2'] .blog--footer {
    max-width: 1264px; }

  .blog--root[data-columns='3'] .blog--footer {
    max-width: 1264px; } }
.blog--footer > *:not(:first-child) {
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .blog--footer > *:not(:first-child) {
    padding: 0; } }
.blog--footer-rss {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1; }

@media only screen and (min-width: 768px) {
  .blog--footer-rss {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0; }

  .blog--footer-rss:only-child {
    width: 100%;
    text-align: center; }

  .blog--footer-rss:only-child a {
    padding-left: 16px; } }
.blog--footer-rss a {
  text-decoration: underline;
  padding: 8px; }

@media only screen and (min-width: 768px) {
  .blog--footer-rss a {
    padding: 16px 16px 16px 0; } }
@media only screen and (min-width: 768px) {
  .blog--footer-pagination:only-child {
    width: 100%;
    text-align: center; } }
.blog--footer-pagination .prev {
  padding-right: 10px; }

.blog--footer-pagination .prev a {
  height: 19px; }

.blog--footer-pagination .prev a > svg {
  display: inline-block;
  vertical-align: middle; }

.blog--footer-pagination .next {
  padding-left: 10px; }

.blog--footer-pagination .next a {
  height: 19px; }

.blog--footer-pagination .next a > svg {
  display: inline-block;
  vertical-align: middle; }

.blog--footer-pagination .page {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 25px; }

.blog--footer-pagination .page a {
  width: 25px;
  text-align: center; }

.blog--no-articles {
  padding: 72px 48px;
  margin: 0;
  max-width: 700px; }

.blog--no-articles p {
  text-align: center; }

.template--blog .footer {
  margin: 0; }

/* Article
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.article--root {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 0 auto;
  padding: 32px 0; }

@media only screen and (min-width: 768px) {
  .article--root {
    padding: 72px 48px; } }
.article--root > * {
  width: 100%;
  padding: 0 16px 16px; }

@media only screen and (min-width: 768px) {
  .article--root > * {
    padding: 0 0 32px; } }
.article--root > *:first-child {
  padding: 0 0 16px; }

@media only screen and (min-width: 768px) {
  .article--root > *:first-child {
    padding: 0 0 72px; } }
.article--root > *:last-child {
  padding: 0 16px; }

@media only screen and (min-width: 768px) {
  .article--root > *:last-child {
    padding: 0; } }
.article--heading {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  max-width: 1200px; }

@media only screen and (min-width: 768px) {
  .article--heading {
    padding-bottom: 32px !important; }

  .article--root[data-full-width='true'][data-show-featured='true'] .article--heading {
    margin: 0 -48px;
    width: calc(100% + (2 * $spacing--section--x));
    max-width: calc(100% + (2 * $spacing--section--x)); }

  .article--root[data-title-position='center'][data-show-featured='true'] .article--heading {
    position: relative; }

  .article--root[data-title-position='left'][data-show-featured='true'] .article--heading {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row; }

  .article--root[data-title-position='left'][data-show-featured='true'] .article--heading > *:not(.article--info) {
    width: 50%; } }
.article--heading > * {
  width: 100%; }

.article--root[data-apply-overlay='true'] .article--image .image--container,
.article--root[data-apply-overlay='true'] .article--image .placeholder--container {
  position: relative; }

.article--root[data-apply-overlay='true'] .article--image .image--container:after,
.article--root[data-apply-overlay='true'] .article--image .placeholder--container:after {
  position: absolute;
  content: '';
  top: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3); }

.article--header--info {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  margin: 0 auto;
  padding: 0 16px 16px; }

.article--root[data-show-featured='false'] .article--header--info {
  padding: 32px 16px 8px; }

.article--root[data-show-featured='false'] .article--header--info:only-child {
  padding-bottom: 0; }

@media only screen and (min-width: 768px) {
  .article--header--info {
    padding: 32px; }

  .article--header--info > *:not(:last-child) {
    padding-bottom: 16px; }

  .article--root[data-show-featured='true'][data-full-width='true'] .article--header--info {
    padding-left: 48px;
    padding-right: 48px; }

  .article--root[data-title-position='center'][data-show-featured='true'] .article--header--info {
    position: absolute;
    top: 40%;
    left: 0;
    z-index: 1;
    padding-top: 0; }

  .article--root[data-title-position='left'][data-show-featured='true'] .article--header--info {
    padding: 32px 32px 0 48px; }

  .article--root[data-title-position='left'][data-show-featured='true'][data-full-width='false'] .article--header--info {
    padding-left: 0; }

  .article--root[data-title-position='below'] .article--header--info {
    padding-bottom: 0; }

  .article--root[data-show-featured='false'] .article--header--info:first-child {
    padding: 72px 48px 0; } }
.article--image {
  padding-bottom: 16px;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

@media only screen and (min-width: 768px) {
  .article--image {
    padding-bottom: 0; }

  .article--root[data-title-position='left'] .article--image .image--container,
  .article--root[data-title-position='left'] .article--image .placeholder--container {
    min-height: 400px; }

  .article--root[data-title-position='left'] .article--image img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: 'object-fit: cover'; }

  .article--root[data-title-position='center'] .article--image {
    padding-bottom: 32px; }

  .article--root[data-title-position='below'] .article--image {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0; } }
.article--root[data-show-author='false'][data-show-date='false'] .article--image {
  padding-bottom: 0; }

.article--title {
  text-align: center; }

@media only screen and (min-width: 768px) {
  .article--root[data-title-position='center'][data-show-featured='true'] .article--title {
    padding: 0; }

  .article--root[data-title-position='center'][data-alt-color='true'][data-show-featured='true'] .article--title {
    color: var(--color--alternative); }

  .article--root[data-title-position='left'] .article--title {
    text-align: left; }

  .article--root[data-title-position='left'][data-show-featured='false'] .article--title {
    text-align: center; }

  .article--root[data-show-author='false'][data-show-date='false'] .article--title {
    padding-bottom: 0; } }
.article--info {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.article--info[data-position='grouped-with-title'] {
  display: none; }

@media only screen and (min-width: 768px) {
  .article--info[data-position='grouped-with-title'] {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; }

  .article--root[data-title-position='above'] .article--info[data-position='grouped-with-title'] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }

  .article--root[data-title-position='left'] .article--info[data-position='grouped-with-title'] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start; }

  .article--root[data-title-position='left'][data-show-featured='false'] .article--info[data-position='grouped-with-title'] {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }

  .article--root[data-title-position='below'] .article--info[data-position='grouped-with-title'] {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; } }
.article--info[data-position='by-self'] {
  padding: 0 16px;
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1; }

@media only screen and (min-width: 768px) {
  .article--root[data-title-position='above'] .article--info[data-position='by-self'] {
    display: none; }

  .article--root[data-title-position='center'] .article--info[data-position='by-self'] {
    padding: 0;
    max-width: 800px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start; }

  .article--root[data-title-position='center'][data-show-featured='false'] .article--info[data-position='by-self'] {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }

  .article--root[data-title-position='center'][data-full-width='true'][data-show-featured='true'] .article--info[data-position='by-self'] {
    padding: 0 48px;
    max-width: calc($max-width--small + (2 * $spacing--section--x)); }

  .article--root[data-title-position='left'] .article--info[data-position='by-self'] {
    display: none; }

  .article--root[data-title-position='below'] .article--info[data-position='by-self'] {
    display: none; } }
.article--timesince {
  text-align: right;
  text-transform: uppercase; }

.article--dot {
  padding: 0 8px; }

.article--author {
  -ms-flex-item-align: center;
  align-self: center; }

.article--content {
  max-width: 800px;
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .article--content {
    padding-bottom: 72px; } }
.article--content > * {
  padding: 0 0 8px;
  margin: 0; }

@media only screen and (min-width: 768px) {
  .article--content > * {
    padding-bottom: 16px; } }
.article--content > *:last-child {
  padding-bottom: 0; }

.article--navigation {
  max-width: 800px;
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .article--navigation {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 72px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center; } }
.article--navigation > *:not(:last-child) {
  padding-bottom: 16px; }

.article--navigation .article--tag-info {
  text-align: center;
  width: 100%;
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .article--navigation .article--tag-info {
    text-align: left;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }

  .article--navigation .article--tag-info ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; } }
.article--tagged-in {
  padding: 0 0 8px; }

@media only screen and (min-width: 768px) {
  .article--tagged-in {
    display: inline-block;
    padding-bottom: 0;
    padding-right: 16px;
    position: relative;
    width: 100%;
    padding-bottom: 16px; } }
.article--tags {
  display: inline;
  list-style-type: none;
  padding: 0; }

@media only screen and (min-width: 768px) {
  .article--tags {
    margin: -8px; } }
.article--tag {
  margin: 0 !important;
  line-height: 1 !important;
  display: inline-block !important;
  padding: 0 !important; }

.article--tag a {
  display: inline-block;
  padding: 4px; }

@media only screen and (min-width: 768px) {
  .article--tag a {
    padding: 8px; } }
.article--share {
  margin-left: auto; }

.article--share--container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  list-style-type: none;
  padding-left: 0;
  margin: 0; }

.article--share-icon {
  margin: 0; }

.article--share-icon a {
  padding: 8px;
  display: inline-block;
  outline: 0; }

.article--share-icon svg {
  max-height: 16px; }

.article--share-icon .facebook:hover {
  color: #3c5a99;
  -webkit-transition: 0.25s color ease-in;
  transition: 0.25s color ease-in; }

.article--share-icon .twitter:hover {
  color: #1da1f2;
  -webkit-transition: 0.25s color ease-in;
  transition: 0.25s color ease-in; }

.article--share-icon .twitter svg {
  width: 20px; }

.article--share-icon .pinterest:hover {
  color: #bd081c;
  -webkit-transition: 0.25s color ease-in;
  transition: 0.25s color ease-in; }

.article--share--comments {
  display: -webkit-box !important;
  display: -ms-flexbox !important;
  display: flex !important;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.article--comment-count {
  padding-left: 8px; }

.article--back-to-blog {
  text-align: center; }

.article--back-to-blog a {
  padding: 16px 16px;
  outline: 0; }

@media only screen and (min-width: 768px) {
  .article--back-to-blog a {
    padding: 16px 0; } }
.article--back-to-blog a > svg {
  vertical-align: middle;
  margin-right: 8px; }

.article--read-more {
  text-align: center;
  max-width: 800px; }

@media only screen and (min-width: 768px) {
  .article--read-more {
    padding: 0 0 32px; } }
.article--recent-articles {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  max-width: 1000px;
  padding-bottom: 32px; }

.article--recent-articles h3 {
  padding: 8px 0 0;
  text-align: center; }

@media only screen and (min-width: 768px) {
  .article--recent-articles {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    padding-bottom: 72px; }

  .article--recent-articles h3 {
    padding: 16px 0 0; }

  .article--root[data-two-recents='true'] .article--recent-articles {
    max-width: max-width; } }
.article--recent-articles > * {
  padding-bottom: 16px;
  max-width: 800px;
  width: 100%; }

@media only screen and (min-width: 768px) {
  .article--recent-articles > * {
    padding: 0 16px;
    width: 33.33333%; }

  .article--root[data-two-recents='true'] .article--recent-articles > *:first-of-type {
    padding-left: 0; }

  .article--root[data-two-recents='true'] .article--recent-articles > *:last-of-type {
    padding-right: 0; } }
.article--recent-articles > *:last-child {
  padding-bottom: 0; }

.article--recent {
  display: none; }

@media only screen and (min-width: 768px) {
  .article--recent {
    display: block; }

  .article--root[data-two-recents='true'] .article--recent {
    width: 50%; } }
@media only screen and (min-width: 768px) {
  .article--root[data-two-recents='true'] .article--next {
    width: 50%; } }
.article--root[data-two-recents='true'] .article--previous {
  padding-bottom: 0; }

@media only screen and (min-width: 768px) {
  .article--root[data-two-recents='true'] .article--previous {
    width: 50%; } }
.comments--heading {
  max-width: 600px;
  padding: 0 16px 16px;
  text-align: center; }

@media only screen and (min-width: 768px) {
  .comments--heading {
    padding: 0 0 32px;
    text-align: left; } }
.article--root[data-enable-disqus='true'] .comments--heading {
  padding-bottom: 16px; }

.comments--disqus {
  padding: 0 8px;
  max-width: 600px; }

@media only screen and (min-width: 768px) {
  .comments--disqus {
    padding: 0; } }
.template--article .footer {
  margin: 0; }

/* Comments
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.comments--root {
  max-width: 600px;
  padding: 0 8px; }

@media only screen and (min-width: 768px) {
  .comments--root {
    padding: 0; } }
.comments--root > * {
  padding-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .comments--root > * {
    padding-bottom: 16px; } }
.comments--list {
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .comments--list {
    max-width: 525px;
    padding-bottom: 32px; } }
.comment--item {
  padding: 16px 0 0; }

@media only screen and (min-width: 768px) {
  .comment--item {
    padding-top: 16px; } }
.comment--item:before {
  content: '';
  display: block;
  margin-bottom: 16px;
  width: 100%;
  height: 1px;
  background-color: #dddddd; }

@media only screen and (min-width: 768px) {
  .comment--item:before {
    margin-bottom: 16px; } }
.comment--item:first-of-type {
  padding-top: 0; }

.comment--item:first-of-type:before {
  display: none; }

.comment--item p {
  margin: 0; }

.comment--content {
  padding: 0; }

@media only screen and (min-width: 768px) {
  .comment--content {
    padding: 0 0 0 32px; } }
.comment--meta {
  padding: 0 0 8px; }

@media only screen and (min-width: 768px) {
  .comment--meta {
    padding-bottom: 16px; } }
.comments--none {
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .comments--none {
    padding-bottom: 32px; } }
@media only screen and (min-width: 768px) {
  .comments--form:before {
    content: '';
    display: block;
    margin-bottom: 32px;
    width: 100%;
    height: 1px;
    background-color: #dddddd; } }
.comments--form > * {
  padding-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .comments--form > * {
    padding-bottom: 16px; } }
.comments--form:last-child {
  padding-bottom: 0; }

.comments--form input {
  margin: 0;
  outline: 0; }

.comments--form label {
  position: absolute;
  margin: 0;
  top: 9px;
  padding-left: 16px;
  opacity: 0; }

.comments--form textarea {
  margin: 0;
  outline: 0; }

.comments--form ::-webkit-input-placeholder {
  opacity: 0.7; }

.comments--form :-ms-input-placeholder {
  opacity: 0.7; }

.comments--form ::-ms-input-placeholder {
  opacity: 0.7; }

.comments--form ::placeholder {
  opacity: 0.7; }

.comments--form .font--button {
  width: 100%; }

@media only screen and (min-width: 768px) {
  .comments--form .font--button {
    width: 50%; } }
.comments--form .success {
  text-align: center;
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .comments--form .success {
    padding-bottom: 32px; } }
@media only screen and (min-width: 768px) {
  .comments--form-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding-bottom: 0; } }
.comments--form-name {
  padding: 0 0 8px;
  position: relative; }

@media only screen and (min-width: 768px) {
  .comments--form-name {
    width: 50%;
    padding: 0 8px 16px 0; } }
.comments--form-email {
  position: relative; }

@media only screen and (min-width: 768px) {
  .comments--form-email {
    width: 50%;
    padding: 0 0 16px 8px; } }
.comments--form-input {
  position: relative; }

.comments--form-input textarea,
.comments--form-input textarea::-webkit-input-placeholder {
  text-transform: none; }

.comments--form-input textarea,
.comments--form-input textarea:-ms-input-placeholder {
  text-transform: none; }

.comments--form-input textarea,
.comments--form-input textarea::-ms-input-placeholder {
  text-transform: none; }

.comments--form-input textarea,
.comments--form-input textarea::placeholder {
  text-transform: none; }

.comments--form-moderated {
  text-align: center; }

@media only screen and (min-width: 768px) {
  .comments--form-moderated {
    text-align: left; } }
.comments--form-error {
  text-align: center;
  color: red; }

@media only screen and (min-width: 768px) {
  .comments--form-error {
    text-align: left; } }
.comments--form-heading {
  padding-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .comments--form-heading {
    padding-bottom: 16px; } }
/* Cart
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/* Password
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.template--password,
.template-password {
  height: 100%;
  min-height: 100%;
  width: 100%;
  padding: 0;
  margin: 0;
  color: var(--color--alternative) !important; }

.template--password .layout--main-content,
.template-password .layout--main-content {
  padding: 0; }

.template--password .layout--main-content + .shopify-section,
.template-password .layout--main-content + .shopify-section {
  display: none; }

.template--password.show-border .off-canvas--main-content,
.template-password.show-border .off-canvas--main-content {
  border: none; }

.template--password a,
.template--password label,
.template-password a,
.template-password label {
  color: var(--color--alternative); }

.template--password .layout--header,
.template--password .layout--footer,
.template--password .feedback-bar,
.template--password header.main-header,
.template--password .shopify-section.section--header,
.template--password .shopify-section.section--footer,
.template-password .layout--header,
.template-password .layout--footer,
.template-password .feedback-bar,
.template-password header.main-header,
.template-password .shopify-section.section--header,
.template-password .shopify-section.section--footer {
  display: none; }

.password--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  padding: 0 16px; }

@media only screen and (min-width: 768px) {
  .password--root {
    padding: 0 48px; } }
.password--background-image {
  z-index: 1;
  width: 100%;
  position: fixed;
  top: 0; }

.password--background-image .image--root,
.password--background-image .image--container {
  height: 100vh; }

.password--background-image img {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover'; }

.password--root[data-password--logo-height='30'] .password--logo .image--root {
  height: 30px; }

.password--root[data-password--logo-height='50'] .password--logo .image--root {
  height: 50px; }

.password--root[data-password--logo-height='70'] .password--logo .image--root {
  height: 70px; }

.password--root[data-password--logo-height='90'] .password--logo .image--root {
  height: 90px; }

.password--root[data-password--logo-height='110'] .password--logo .image--root {
  height: 110px; }

.password--root[data-password--logo-height='130'] .password--logo .image--root {
  height: 130px; }

.password--root[data-password--logo-height='150'] .password--logo .image--root {
  height: 150px; }

.password--root[data-password--logo-height='170'] .password--logo .image--root {
  height: 170px; }

.password--root[data-password--logo-height='190'] .password--logo .image--root {
  height: 190px; }

.password--root[data-password--logo-height='210'] .password--logo .image--root {
  height: 210px; }

.password--root[data-password--logo-height='230'] .password--logo .image--root {
  height: 230px; }

.password--root[data-password--logo-height='250'] .password--logo .image--root {
  height: 250px; }

.password--logo {
  padding: 32px 0; }

@media only screen and (min-width: 768px) {
  .password--logo {
    padding: 72px 0; } }
.password--login {
  z-index: 3;
  position: absolute;
  top: 16px;
  right: 16px; }

@media only screen and (min-width: 768px) {
  .password--login {
    top: 32px;
    right: 32px; } }
.password--login-form {
  visibility: hidden;
  position: fixed;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  left: 50%;
  top: 50%;
  width: 100%;
  max-width: 350px;
  padding: 0 16px; }

.password--login-form input[type='password'] {
  background-color: transparent;
  color: var(--color--alternative);
  margin-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .password--login-form input[type='password'] {
    margin-bottom: 16px; } }
.errors ul {
  margin-bottom: 0; }

.errors li {
  margin: 0;
  padding-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .errors li {
    padding-bottom: 16px; } }
.password--button-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.password--button-container .font--button--inverted {
  margin: 0;
  margin-right: 8px; }

@media only screen and (min-width: 768px) {
  .password--button-container .font--button--inverted {
    margin-right: 16px; } }
.password--main {
  z-index: 2;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 100vh; }

.password--main a .font--section-heading {
  padding: 32px 0; }

@media only screen and (min-width: 768px) {
  .password--main a .font--section-heading {
    padding: 72px 0; } }
.password--main a + .font--section-heading {
  padding-bottom: 8px; }

@media only screen and (min-width: 768px) {
  .password--main a + .font--section-heading {
    padding-bottom: 16px; } }
.password--main .font--section-heading + .font--paragraph {
  padding-bottom: 32px;
  text-align: center; }

@media only screen and (min-width: 768px) {
  .password--main .font--section-heading + .font--paragraph {
    padding-bottom: 72px; } }
.password--main .font--block-heading {
  padding-bottom: 16px; }

@media only screen and (min-width: 768px) {
  .password--main .font--block-heading {
    padding-bottom: 32px; } }
.password--main .font--block-heading p {
  margin: 0; }

.password--mailing-list {
  padding-bottom: 96px;
  max-width: 300px;
  width: 100%; }

@media only screen and (min-width: 768px) {
  .password--mailing-list {
    max-width: 380px; } }
.password--mailing-list form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

@media only screen and (min-width: 768px) {
  .password--mailing-list form {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row; } }
.password--mailing-list .mailing-list--seperator + .font--button--inverted {
  max-width: 300px;
  width: 100%;
  margin: 0; }

@media only screen and (min-width: 768px) {
  .password--mailing-list .mailing-list--seperator + .font--button--inverted {
    width: auto;
    margin-left: 16px; } }
.password--mailing-list input[type='email'] {
  background-color: transparent;
  color: var(--color--alternative);
  border: none;
  border-bottom: 1px solid var(--color--alternative);
  margin-bottom: 8px;
  text-align: center; }

@media only screen and (min-width: 768px) {
  .password--mailing-list input[type='email'] {
    padding-left: 0;
    margin: 0;
    width: 260px;
    text-align: left; } }
.password--mailing-list input[type='email']::-webkit-input-placeholder {
  text-transform: none;
  color: var(--color--alternative); }

.password--mailing-list input[type='email']:-moz-placeholder {
  text-transform: none;
  color: var(--color--alternative); }

.password--mailing-list input[type='email']::-moz-placeholder {
  text-transform: none;
  color: var(--color--alternative); }

.password--mailing-list input[type='email']:-ms-input-placeholder {
  text-transform: none;
  color: var(--color--alternative); }

.password--mailing-list .success,
.password--mailing-list .error {
  font-style: italic;
  margin: 0;
  padding-top: 16px; }

@media only screen and (min-width: 768px) {
  .password--mailing-list .success,
  .password--mailing-list .error {
    padding-top: 0; } }
.password--mailing-list .error {
  color: var(--color--important); }

.password--powered-by {
  text-align: center;
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .password--powered-by {
    padding-bottom: 72px; } }
.password--errors ul,
.password--errors li {
  margin: 0;
  list-style: none;
  padding: 0; }

.password--errors li {
  padding-bottom: 16px; }

.lock-svg {
  width: 12.8px;
  height: 12.8px;
  display: inline-block;
  vertical-align: baseline; }

.shopify-logo-svg {
  width: 82.28571px;
  height: 24px;
  display: inline-block;
  line-height: 0;
  vertical-align: top; }

.shopify-logo-svg,
.lock-svg {
  color: var(--color--alternative); }

.shopify-logo-svg path,
.lock-svg path {
  fill: currentColor; }

.shopify-name {
  display: none; }

/* Contact page
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.contact-page--content {
  width: 100%;
  min-height: 100%; }

.contact-page--content > * {
  padding: 24px; }

.contact-page--wrapper {
  max-width: 1100px;
  margin: 0 auto;
  padding: 48px 24px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }

.contact-page--header {
  text-align: center;
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  padding-bottom: 32px; }

@media only screen and (min-width: 768px) {
  .contact-page--left-column {
    padding: 32px 72px 32px 16px;
    width: 50%; } }
@media only screen and (max-width: 767px) {
  .contact-page--right-column {
    padding: 32px 0 0; } }
@media only screen and (min-width: 768px) {
  .contact-page--right-column {
    padding: 32px 16px;
    width: 50%; } }
.contact-page--form textarea {
  height: 100px;
  -webkit-transition: 0.3s height;
  transition: 0.3s height;
  outline: 0; }

.contact-page--form textarea:focus,
.contact-page--form textarea:valid {
  height: 100px; }

.contact-page--form input[type='submit'] {
  width: 100%; }

.contact-page--form-title {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px;
  padding-bottom: 16px; }

@media only screen and (max-width: 767px) {
  .contact-page--form-title {
    font-size: 13px; } }
.contact-page--social .partial--social-media {
  margin-left: -16px; }

.contact-page--social .fw--icon {
  width: 18px;
  height: 18px; }

.contact-page--social-title {
  font-family: var(--font--accent--family);
  font-weight: var(--font--accent--weight);
  font-style: var(--font--accent--style);
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 1px; }

@media only screen and (max-width: 767px) {
  .contact-page--social-title {
    font-size: 13px; } }
/* Customer pages
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.page--account .layout--main-content,
.page--create-account .layout--main-content,
.page-create-account .main-content,
.page--reset-account .layout--main-content,
.page-reset-account .main-content {
  padding: 0; }

.page-account .customer--root,
.page--account .customer--root,
.page-addresses .customer--root,
.page--addresses .customer--root,
.page-create-account .customer--root,
.page--create-account .customer--root,
.page-reset-account .customer--root,
.page--reset-account .customer--root,
.template-customersorder .customer--root,
.template--customers--order .customer--root {
  max-width: 700px;
  margin: 0 auto;
  padding: 72px 48px;
  overflow-y: auto; }

@media only screen and (max-width: 767px) {
  .page-account .customer--root,
  .page--account .customer--root,
  .page-addresses .customer--root,
  .page--addresses .customer--root,
  .page-create-account .customer--root,
  .page--create-account .customer--root,
  .page-reset-account .customer--root,
  .page--reset-account .customer--root,
  .template-customersorder .customer--root,
  .template--customers--order .customer--root {
    padding: 16px;
    padding: 32px 16px; } }
.page-account .customer--root h1,
.page--account .customer--root h1,
.page-addresses .customer--root h1,
.page--addresses .customer--root h1,
.page-create-account .customer--root h1,
.page--create-account .customer--root h1,
.page-reset-account .customer--root h1,
.page--reset-account .customer--root h1,
.template-customersorder .customer--root h1,
.template--customers--order .customer--root h1 {
  text-align: center;
  padding-bottom: 32px; }

.page-account .customer--root h2,
.page--account .customer--root h2,
.page-addresses .customer--root h2,
.page--addresses .customer--root h2,
.page-create-account .customer--root h2,
.page--create-account .customer--root h2,
.page-reset-account .customer--root h2,
.page--reset-account .customer--root h2,
.template-customersorder .customer--root h2,
.template--customers--order .customer--root h2 {
  padding-bottom: 16px; }

.page-account .customer--root h4,
.page--account .customer--root h4,
.page-addresses .customer--root h4,
.page--addresses .customer--root h4,
.page-create-account .customer--root h4,
.page--create-account .customer--root h4,
.page-reset-account .customer--root h4,
.page--reset-account .customer--root h4,
.template-customersorder .customer--root h4,
.template--customers--order .customer--root h4 {
  padding-bottom: 16px; }

.page-account .customer--root thead th,
.page-account .customer--root tbody td,
.page--account .customer--root thead th,
.page--account .customer--root tbody td,
.page-addresses .customer--root thead th,
.page-addresses .customer--root tbody td,
.page--addresses .customer--root thead th,
.page--addresses .customer--root tbody td,
.page-create-account .customer--root thead th,
.page-create-account .customer--root tbody td,
.page--create-account .customer--root thead th,
.page--create-account .customer--root tbody td,
.page-reset-account .customer--root thead th,
.page-reset-account .customer--root tbody td,
.page--reset-account .customer--root thead th,
.page--reset-account .customer--root tbody td,
.template-customersorder .customer--root thead th,
.template-customersorder .customer--root tbody td,
.template--customers--order .customer--root thead th,
.template--customers--order .customer--root tbody td {
  padding: 16px; }

.page-account .customer--root .errors a,
.page--account .customer--root .errors a,
.page-addresses .customer--root .errors a,
.page--addresses .customer--root .errors a,
.page-create-account .customer--root .errors a,
.page--create-account .customer--root .errors a,
.page-reset-account .customer--root .errors a,
.page--reset-account .customer--root .errors a,
.template-customersorder .customer--root .errors a,
.template--customers--order .customer--root .errors a {
  text-decoration: underline; }

.template--customers--order .customer--root,
.template-customersorder .customer--root {
  max-width: 1000px; }

.address--email {
  padding-bottom: 16px; }

.address--full {
  padding-bottom: 32px; }

.address--view {
  padding-bottom: 32px; }

.address--view p {
  margin: 0; }

.address--view p:last-of-type {
  padding-bottom: 16px; }

.address--actions-edit {
  padding-right: 8px; }

.order--table,
.account--orders-table {
  margin: 0 auto;
  width: 100%; }

.order--table thead th,
.account--orders-table thead th {
  border-bottom: solid 1px #eaeaea;
  font-weight: normal; }

.order--table td a,
.account--orders-table td a {
  text-decoration: underline; }

@media only screen and (max-width: 767px) {
  .order--table tbody tr,
  .account--orders-table tbody tr {
    padding: 0; }

  .order--table td:empty,
  .account--orders-table td:empty {
    display: none; } }
.order--heading--total {
  min-width: 150px; }

@media only screen and (min-width: 768px) {
  .order--heading--total {
    text-align: right; } }
@media only screen and (min-width: 768px) {
  .order--item--quantity {
    text-align: center; } }
@media only screen and (min-width: 768px) {
  .order--discount {
    text-align: right; } }
@media only screen and (min-width: 768px) {
  .order--item--price {
    text-align: center; } }
@media only screen and (min-width: 768px) {
  .order--item--total {
    text-align: right; } }
@media only screen and (min-width: 768px) {
  .order--discount {
    text-align: right; } }
.address--actions {
  padding-bottom: 16px;
  margin: 0; }

.address--edit {
  padding-bottom: 32px; }

.address--customer-table {
  border: 0;
  margin: 16px auto; }

.address--customer-table label,
.address--customer-table input,
.address--customer-table select {
  margin-bottom: 0; }

@media only screen and (max-width: 767px) {
  .address--customer-table input,
  .address--customer-table select {
    font-size: 16px; }

  .address--customer-table tr td:first-child {
    padding: 16px 0; }

  .address--customer-table tr td:last-child {
    padding-right: 0; } }
.address--button-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

.address--button-container .font--button {
  margin: 0; }

.address--button-container span {
  margin-left: 12px; }

.customer--root tbody td.address--checkbox-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-top: 0; }

.customer--root tbody td.address--checkbox-container input[type='checkbox'] {
  margin: 0 8px 0 0; }

.account--create-password {
  padding-bottom: 16px; }

.account--reset {
  display: none;
  text-align: center;
  margin-bottom: 32px;
  padding: 8px;
  background-color: #e6f9ee;
  color: #01c753;
  border: 1px solid #01c753;
  border-radius: 2px; }

.account--button-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center; }

@media only screen and (max-width: 767px) {
  .account--button-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; } }
.account--button-container input {
  margin-bottom: 0; }

@media only screen and (max-width: 767px) {
  .account--orders-table tbody {
    padding-bottom: 32px; } }
@media only screen and (min-width: 768px) {
  .account--orders-table tbody {
    text-align: center; } }
.account--breadcrumb-container {
  text-align: center; }

.account--breadcrumb-container .fw--breadcrumbs {
  padding: 0 0 32px; }

.account--reset-instructions,
.account--forgot-password {
  padding-bottom: 32px; }

.account--cancel {
  padding-left: 16px; }

.account--submit {
  margin-bottom: 0;
  width: auto; }

.account--password-buttons {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline; }

.account--password-buttons input {
  margin: 0; }

input[type='submit'].account--sign-in {
  width: 100%;
  text-align: center;
  margin: 0; }

@media only screen and (min-width: 768px) {
  input[type='submit'].account--sign-in {
    width: auto; } }
a.account--register {
  margin: 8px 0 0;
  width: 100%;
  text-align: center;
  height: auto; }

@media only screen and (min-width: 768px) {
  a.account--register {
    margin: 0 0 0 16px;
    width: auto; } }
input[type='submit'].account--create {
  width: 100%;
  text-align: center;
  margin: 0;
  height: auto; }

@media only screen and (min-width: 768px) {
  input[type='submit'].account--create {
    width: auto; } }
a.account--login {
  margin: 8px 0 0;
  width: 100%;
  text-align: center;
  height: auto; }

@media only screen and (min-width: 768px) {
  a.account--login {
    margin: 0 0 0 16px;
    width: auto; } }
body.template--customers--register input[type='password'] {
  margin-bottom: 32px; }

.account--orders {
  padding-bottom: 32px; }

.account--orders h4 {
  padding-bottom: 32px; }

@media only screen and (max-width: 767px) {
  .account--orders {
    padding-bottom: 16px; }

  .account--orders h4 {
    padding-bottom: 16px; } }
.customer--login input:not(.font--button),
.customer--register input:not(.font--button),
.page-create-account input:not(.font--button),
.account--recover-password input:not(.font--button),
.account--reset-password input:not(.font--button) {
  margin-bottom: 16px; }

/* 404
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.template--404 .layout--main-content {
  padding: 96px 0; }

/* Shopify Captcha
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.shopify-challenge__container {
  padding-top: 72px; }

@media only screen and (max-width: 767px) {
  .shopify-challenge__container {
    padding-top: 32px; } }
#shopify-section-header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 9999;
  box-shadow: 0px 0px 22px #000000;
  background: url(/cdn/shop/t/4/assets/bg_speck.jpg?v=9367977379168689861653571937);
  background-repeat: repeat; }

[data-x-menu--sub-above='true'] .x-menu--level-2--container {
  bottom: auto; }
