@charset "UTF-8";
/*  FRAMEWORK
//////////////////////////////////////////////////////////////////////////////*/
/* Initialize
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
*,
*: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;
}

@media only screen and (min-width: 768px) {
  [data-mq='small'] {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  [data-mq='medium'] {
    display: none;
  }
}

@media only screen and (min-width: 1024px) {
  [data-mq='medium'] {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  [data-mq='medium-large'] {
    display: none;
  }
}

@media only screen and (max-width: 767px) {
  [data-mq='large'] {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  [data-mq='large'] {
    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;
}

.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: var(--color--body);
}

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: var(--color--body);
  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: var(--color--body);
  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: var(--color--body);
  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: var(--color--body);
  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,
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: var(--font--heading--weight);
  font-style: var(--font--heading--style);
  text-transform: var(--font--heading--uppercase);
  font-size: var(--font--section-heading--size);
  line-height: 1.25em;
  margin: -0.25em 0;
  letter-spacing: 0.025em;
}

@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%;
}

.icon--root {
  position: relative;
  display: inline-block;
  vertical-align: middle;
}

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

.icon--3d-badge,
.icon--play-badge {
  border-radius: 2px;
}

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

.icon--3d-badge {
  height: 26px;
  width: 26px;
}

.icon--account {
  height: 20px;
  width: 20px;
}

.icon--accounts {
  height: 24px;
  width: 24px;
}

.icon--arrow-left {
  height: 12px;
  width: 16px;
}

.icon--arrow-right {
  height: 12px;
  width: 16px;
}

.icon--bag-alt {
  height: 20px;
  width: 16px;
}

.icon--bag {
  height: 21px;
  width: 18px;
}

.icon--behance {
  height: 14px;
  width: 20px;
}

.icon--cart {
  height: 20px;
  width: 21px;
}

.icon--chevron-down {
  height: 6px;
  width: 10px;
}

.icon--chevron-left--small {
  height: 14px;
  width: 8px;
}

.icon--chevron-left {
  height: 20px;
  width: 12px;
}

.icon--chevron-right--small {
  height: 14px;
  width: 8px;
}

.icon--chevron-right {
  height: 20px;
  width: 12px;
}

.icon--chevron-up {
  height: 6px;
  width: 10px;
}

.icon--comments {
  height: 18px;
  width: 20px;
}

.icon--cross-circle {
  height: 24px;
  width: 24px;
}

.icon--cross {
  height: 20px;
  width: 20px;
}

.icon--facebook {
  height: 20px;
  width: 20px;
}

.icon--instagram {
  height: 20px;
  width: 20px;
}

.icon--kickstarter {
  height: 20px;
  width: 18px;
}

.icon--link {
  height: 18px;
  width: 24px;
}

.icon--lock {
  height: 18px;
  width: 14px;
}

.icon--mail {
  height: 16px;
  width: 26px;
}

.icon--menu-alt {
  height: 10px;
  width: 18px;
}

.icon--menu {
  height: 16px;
  width: 22px;
}

.icon--minus-circle {
  height: 20px;
  width: 20px;
}

.icon--minus {
  height: 2px;
  width: 10px;
}

.icon--pinterest {
  height: 20px;
  width: 20px;
}

.icon--play-badge {
  height: 26px;
  width: 26px;
}

.icon--play-circle-fill {
  height: 60px;
  width: 60px;
}

.icon--play-circle {
  height: 60px;
  width: 60px;
}

.icon--plus {
  height: 10px;
  width: 10px;
}

.icon--rss {
  height: 20px;
  width: 20px;
}

.icon--search {
  height: 20px;
  width: 20px;
}

.icon--shopify {
  height: 20px;
  width: 70px;
}

.icon--snapchat {
  height: 20px;
  width: 22px;
}

.icon--trip-advisor {
  height: 21px;
  width: 35px;
}

.icon--twitter {
  height: 20px;
  width: 22px;
}

.icon--vimeo {
  height: 21px;
  width: 25px;
}

.icon--yelp {
  height: 20px;
  width: 18px;
}

.icon--youtube {
  height: 20px;
  width: 29px;
}

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

.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;
  height: 32px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.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.updating input {
  color: #eaeaea;
}

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

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

.image--root img {
  display: block;
  height: 100%;
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  visibility: hidden;
  width: 100%;
}

.image--root img.lazyloaded {
  visibility: visible;
  opacity: 1;
}

.image--root noscript img {
  visibility: visible;
  opacity: 1;
}

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

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

/* 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--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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.breadcrumbs--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 12px 0;
}

.breadcrumbs--root * {
  text-transform: capitalize !important;
}

.breadcrumbs--root li {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.breadcrumbs--root li:not(:last-of-type):after {
  margin: 0 12px;
  content: '/';
}

/* Pagination
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.pagination--root {
  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;
}

.pagination--left-arrow a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px;
}

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

.pagination--numbers {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.pagination--number a {
  padding: 8px;
}

.pagination--number[data-active='true'] {
  padding: 0 8px;
  font-weight: bold;
}

.pagination--right-arrow a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 8px;
}

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

.modal--link {
  cursor: pointer;
}

.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 .icon--cross {
  vertical-align: top;
}

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

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

.cart--additional-buttons {
  max-width: 300px;
  margin-left: auto;
}

.cart--root[data-view='mobile'] .cart--additional-buttons {
  max-width: unset;
}

/* 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: 20px;
  margin: -10px 0 0 -30px;
}

.fw--slider .owl-next {
  right: 0;
  height: 20px;
  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: rgba(0, 0, 0, 0);
}

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

.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 {
  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: -12px;
  }
}

.fw--slider .owl-controls .owl-prev {
  left: -12px;
}

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

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

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

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

@media only screen and (max-width: 767px) {
  .header--right-side .header--cart .cart-link {
    -ms-flex-negative: 0;
    flex-shrink: 0;
  }
}

@media only screen and (min-width: 768px) {
  .header--right-side .header--cart .cart-link {
    padding: 0 12px;
  }
}

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

@media only screen and (max-width: 767px) {
  .header--right-side .header--cart .cart-link[data-cart--has-items='true'] a {
    color: var(--color--header--buttons);
  }
}

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

@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 {
    display: inline-block;
    position: relative;
  }
  .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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.localization--container form {
  width: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (max-width: 767px) {
  .localization--container form {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.localization--root:not(:last-of-type) {
  padding-right: 16px;
  text-transform: none;
}

.localization--main {
  position: relative;
}

.localization--toggle {
  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: var(--color--body);
  cursor: pointer;
  font-size: 14px;
  padding: 8px 28px 8px 15px;
  width: 100%;
  z-index: 2;
  position: relative;
}

.localization--items {
  background-color: #fff;
  border: 1px solid #eaeaea;
  border-radius: 2px;
  max-height: 300px;
  max-width: 300px;
  min-width: 100%;
  position: absolute;
  display: none;
  overflow-y: auto;
  z-index: 1;
}

.localization--toggle[aria-expanded='true'] + .localization--items {
  display: block;
}

.localization--root[data-position='header'] [aria-expanded='true'] + .localization--items {
  margin-top: 8px;
}

.localization--root[data-position='footer'] .localization--items {
  bottom: 100%;
  margin-bottom: 8px;
}

.localization--item--link {
  width: 100%;
  white-space: nowrap;
  padding: 9px 15px;
  display: inline-block;
}

.localization--item--link:focus, .localization--item--link:hover {
  outline: 0;
  background-color: var(--bg-color--panel);
}

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

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

[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 .icon--chevron-up {
  display: none;
}

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

[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 .icon--chevron-right--small {
  position: absolute;
  right: 12px;
  top: 22px;
}

.y-menu--level-1--link .icon--chevron-left--small {
  position: absolute;
  left: 12px;
  top: 22px;
}

.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 .mobile-nav--contact-modal-trigger .contact-modal--button {
  text-align: center;
  color: var(--color--header--buttons);
  border-color: var(--color--header--buttons);
}

@media only screen and (max-width: 767px) {
  .mobile-nav--contact-button .mobile-nav--contact-modal-trigger .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--media {
  width: 50%;
  position: relative;
  display: none;
}

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

@media only screen and (max-width: 767px) {
  .featured-product--media {
    width: 100%;
  }
}

.featured-product--media > * {
  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--media > * {
    -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;
}

.featured-product--thumbs-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;
  width: 100%;
}

.featured-product--thumb-container {
  position: relative;
  max-width: 32%;
  width: 100px;
}

.featured-product--thumb-container svg {
  position: absolute;
  top: 0;
  right: 0;
  background-color: var(--bg-color--body);
  border: 1px solid var(--bdr-color--badge);
  margin: 12px;
}

.featured-product--thumb-container svg path {
  fill: var(--color--body--light);
  opacity: 0.6;
}

.featured-product--thumb {
  padding: 8px;
  cursor: pointer;
  text-align: left;
  width: 100%;
}

.featured-product--thumb[data-active='true'] img {
  border: 1px solid #eaeaea;
}

.product-video--root {
  width: 100%;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .product-video--root {
    max-width: 600px;
  }
}

.product-video--root:focus {
  outline: none;
}

.product-video--container {
  position: relative;
  width: 100%;
}

.product-video--container > :first-child {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.product-video--container .plyr--video:focus {
  outline: none;
}

.product-model--root {
  max-width: 100%;
  position: relative;
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.product-model--root .shopify-model-viewer-ui {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.product-model--root model-viewer {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  border: 1px solid #eaeaea;
}

.product-model--root model-viewer:focus {
  outline: none;
}

.product-model--root button[hidden] {
  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
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.icon--comment {
  vertical-align: baseline;
}

/* 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;
  background-color: transparent;
}

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

/* Payment Icons
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@media only screen and (min-width: 768px) {
  .payment-icons--root {
    margin: -8px;
  }
}

.payment-icons--list {
  list-style-type: none;
  margin: 0;
  padding: 0;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.payment-icons--item {
  display: inline-block;
  line-height: 1;
  margin: 0;
  padding: 8px;
}

.payment-icons--item svg {
  width: 38px;
  height: 24px;
}

/* LAYOUT
//////////////////////////////////////////////////////////////////////////////*/
/* Header
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.header {
  position: relative;
  border-bottom: 1px solid #eaeaea;
}

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

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

.header--contact-modal .modal .contact-modal--button {
  color: var(--color--header--buttons);
  border-color: var(--color--header--buttons);
}

.header--cart {
  background: transparent;
}

.header--cart:hover {
  background: transparent;
}

@media only screen and (min-width: 768px) {
  .header--cart .modal--link {
    display: inline-block;
  }
}

/* Footer
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.footer--root {
  background: var(--bg-color--footer);
  color: var(--color--footer);
  padding: 48px;
}

@media only screen and (max-width: 767px) {
  .footer--root {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 32px 16px;
  }
}

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

.footer--root a,
.footer--root a:link {
  color: var(--color--footer);
}

.footer--root p {
  margin-top: 0;
}

@media only screen and (max-width: 767px) {
  .footer--root .payment-icons--list {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

.footer--root form {
  margin: 0;
}

.footer--blocks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin: -16px;
}

@media only screen and (max-width: 767px) {
  .footer--blocks {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
}

@media only screen and (max-width: 767px) {
  .footer--blocks > *:not(:last-child) {
    padding-bottom: 32px;
  }
}

.footer--block {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 16px;
}

@media only screen and (max-width: 767px) {
  .footer--block {
    -ms-flex-preferred-size: 100% !important;
    flex-basis: 100% !important;
    text-align: center;
  }
}

.footer--block[data-block-type='about'] {
  -ms-flex-preferred-size: 35%;
  flex-basis: 35%;
}

.footer--block[data-block-type='menu'] {
  -ms-flex-preferred-size: 30%;
  flex-basis: 30%;
}

.footer--block[data-block-type='subscribe'] {
  -ms-flex-preferred-size: 35%;
  flex-basis: 35%;
}

@media only screen and (max-width: 767px) {
  .footer--block:nth-of-type(1) .footer--block--container {
    margin: 0 auto;
  }
}

.footer--block:nth-of-type(2) .footer--block--container {
  margin: 0 auto;
}

.footer--block:nth-of-type(3) .footer--block--container {
  margin: 0 0 0 auto;
}

@media only screen and (max-width: 767px) {
  .footer--block:nth-of-type(3) .footer--block--container {
    margin: 0 auto;
  }
}

.footer--block[data-block-type='subscribe'] .footer--block--container {
  width: 300px;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .footer--block[data-block-type='subscribe'] .footer--block--container {
    width: 200px;
  }
}

.footer--block--heading {
  padding-bottom: 16px;
}

.footer--block--body > *:not(:last-child) {
  padding-bottom: 16px;
}

@media only screen and (max-width: 767px) {
  .footer--block--body > *:not(:last-child) {
    padding-bottom: 8px;
  }
}

.footer--about-text {
  max-width: 400px;
}

.footer--social-icons {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: -8px;
}

@media only screen and (max-width: 767px) {
  .footer--social-icons {
    padding-top: 16px;
  }
}

.footer--social-icons a {
  padding: 8px;
}

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

@media only screen and (max-width: 767px) {
  .footer--localization {
    padding-top: 16px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

@media only screen and (max-width: 767px) {
  .footer--menu li:not(:last-child) {
    padding-bottom: 8px;
  }
}

.footer--subscribe .contact-form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 300px;
}

@media only screen and (max-width: 767px) {
  .footer--subscribe .contact-form {
    margin: 0 auto;
  }
}

.footer--subscribe .contact-form input[type='email'] {
  padding-top: 22px;
  padding-bottom: 22px;
  margin-bottom: 8px;
}

.footer--subscribe .contact-form input[type='submit'] {
  width: auto;
  margin: 1px 0 0 10px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

.footer--subscribe .contact-form .success {
  font-style: italic;
}

.footer--subscribe--info {
  padding-bottom: 16px;
}

.footer--sub {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: -16px;
}

.footer--sub > * {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 40%;
  flex: 1 1 40%;
  padding: 16px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .footer--sub > * {
    -ms-flex-preferred-size: 36%;
    flex-basis: 36%;
  }
}

@media only screen and (max-width: 767px) {
  .footer--sub > * {
    -ms-flex-preferred-size: 100%;
    flex-basis: 100%;
    text-align: center;
  }
}

.footer--sub--block[data-type='powered-by'] {
  -ms-flex-preferred-size: 20%;
  flex-basis: 20%;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .footer--sub--block[data-type='powered-by'] {
    -ms-flex-preferred-size: 28%;
    flex-basis: 28%;
  }
}

@media only screen and (max-width: 767px) {
  .footer--sub--block[data-type='powered-by'] {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
}

@media only screen and (max-width: 767px) {
  .footer--sub--container {
    margin: 0 auto;
  }
}

.footer--sub--block:nth-of-type(2) .footer--sub--container {
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .footer--sub--block:last-of-type .footer--sub--container {
    margin: 0 0 0 auto;
  }
}

@media only screen and (min-width: 768px) {
  .payment-icons--list {
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    -ms-flex-line-pack: end;
    align-content: flex-end;
  }
}

/* TEMPLATES
//////////////////////////////////////////////////////////////////////////////*/
/* Index
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.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%;
}

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

@media only screen and (max-width: 767px) {
  .featured-collection--item .placeholder--root {
    min-width: 300px;
    min-height: 300px;
  }
}

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

.featured-text--body p:last-child {
  margin-bottom: 0;
}

.feature-video--root {
  padding: 0;
}

@media only screen and (min-width: 768px) {
  .feature-video--root[data-full-width='false'] {
    padding: 72px 48px;
  }
}

.feature-video--body {
  position: relative;
  padding-top: 56%;
  height: 0;
  overflow-y: hidden;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.feature-video--root[data-section-height='small'] .feature-video--body {
  padding-top: 42%;
}

.feature-video--root[data-section-height='large'] .feature-video--body {
  padding-top: 75%;
}

.feature-video--container {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  overflow: hidden;
}

.feature-video--root[data-darken-video='true'] .feature-video--container:after {
  z-index: 2;
  content: '';
  background: rgba(0, 0, 0, 0.3);
  height: 100%;
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  pointer-events: none;
}

.feature-video--root[data-alt-text='true'] .feature-video--container {
  color: var(--color--alternative);
}

@media only screen and (min-width: 768px) {
  .feature-video--root[data-thumbnail='false'] .feature-video--container {
    pointer-events: none;
  }
}

.feature-video--container [data-vimeo-initialized='true'] {
  height: 100%;
}

.feature-video--container iframe {
  height: 100%;
  width: 100%;
}

.feature-video--root[data-thumbnail='false'] .feature-video--container iframe {
  position: absolute;
  top: -250px;
  left: 0;
  height: calc(100% + 500px);
}

.feature-video--container svg {
  cursor: pointer;
}

.feature-video--root[data-alt-text='true'] .feature-video--container svg {
  fill: var(--color--alternative);
}

.feature-video--thumbnail {
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.feature-video--thumbnail .image--root {
  height: 100%;
}

.feature-video--thumbnail .image--container {
  height: 100%;
  background: white;
}

.feature-video--thumbnail img {
  -o-object-fit: cover;
  object-fit: cover;
  font-family: 'object-fit: cover';
}

.feature-video--header {
  z-index: 3;
  padding: 32px;
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
  height: 100%;
  width: 100%;
  max-width: 800px;
  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;
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .feature-video--header {
    display: none;
  }
}

.feature-video--header > *:not(.feature-video--button) {
  width: 100%;
}

.feature-video--header > *:not(:last-child) {
  padding-bottom: 32px;
}

.feature-video--play-mobile {
  display: none;
}

@media only screen and (max-width: 767px) {
  .feature-video--play-mobile {
    z-index: 3;
    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;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
  }
}

.feature-video--header-mobile {
  display: none;
}

@media only screen and (max-width: 767px) {
  .feature-video--header-mobile {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 16px 16px 32px;
    width: 100%;
    -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;
    text-align: center;
  }
  .feature-video--header-mobile > *:not(.feature-video--button) {
    width: 100%;
  }
  .feature-video--header-mobile > *:not(:last-child) {
    padding-bottom: 16px;
  }
}

.feature-video--button {
  pointer-events: all;
}

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

/* 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%;
  max-width: 1200px;
}

.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--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--button-container {
  padding: 0 16px;
}

.product-page--button-container button {
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .product-page--button-container button {
    display: none;
  }
}

@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 (min-width: 768px) {
  .product-page--social-media {
    padding-left: 0;
  }
}

@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 .icon--root {
  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--modal {
  display: none;
}

@media only screen and (min-width: 768px) {
  .product-page--modal {
    -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--modal {
    padding: 48px 0 0 48px;
  }
}

[data-show-thumbs-bottom='true'] .product-page--modal {
  padding: 48px 0 0;
}

.product-page--media {
  position: relative;
  display: none;
  width: 100%;
}

[data-modal-enable='true'] .product-page--media[data-media-type='image'] {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

.product-page--media[data-active='true'] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.product-page--media[data-media-type="model"] {
  padding-left: 48px;
}

.product-page--thumbs {
  display: none;
}

[data-show-thumbs-bottom='true'] .product-page--thumbs {
  display: none;
}

.product-page--thumbs > * {
  margin-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: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
}

@media only screen and (max-width: 767px) {
  .product-page--thumbs--mq-medium {
    display: none !important;
  }
}

.product-page--thumb {
  max-width: 90px;
  position: relative;
}

[data-show-thumbs-bottom='true'] .product-page--thumb {
  display: inline-block;
}

[data-show-thumbs-bottom='true'] .product-page--thumb svg {
  top: 12px;
  right: 12px;
}

.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--thumb svg {
  position: absolute;
  top: 4px;
  right: 4px;
  background-color: var(--bg-color--body);
  border: 1px solid var(--bdr-color--badge);
}

.product-page--thumb svg path {
  fill: var(--color--body--light);
  opacity: 0.6;
}

.product-page--slider {
  display: none;
}

@media only screen and (max-width: 767px) {
  .product-page--slider {
    display: block;
  }
}

.product-page--slider-media {
  width: 100%;
  max-width: 100%;
  position: relative;
}

.product-page--slider-media button {
  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-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -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 32px;
  }
  .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--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-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-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='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) and (max-width: 1023px) {
  .article--root[data-title-position='left'] .article--info[data-position='grouped-with-title'] {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@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 (max-width: 767px) {
  .article--info[data-position='by-self'] {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

@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='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;
}

@media only screen and (max-width: 767px) {
  .article--timesince {
    -ms-flex-item-align: center;
    align-self: center;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .article--root[data-title-position='left'] .article--timesince {
    -ms-flex-item-align: start;
    align-self: flex-start;
  }
}

.article--dot {
  padding: 0 8px;
}

@media only screen and (max-width: 767px) {
  .article--dot {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .article--root[data-title-position='left'] .article--dot {
    display: none;
  }
}

.article--author {
  -ms-flex-item-align: center;
  align-self: center;
}

@media only screen and (max-width: 767px) {
  .article--author {
    -ms-flex-item-align: center;
    align-self: center;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
  .article--root[data-title-position='left'] .article--author {
    -ms-flex-item-align: start;
    align-self: flex-start;
  }
}

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

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

.comments--pagination .prev {
  padding-right: 10px;
}

.comments--pagination .prev a {
  height: 19px;
}

.comments--pagination .prev a > svg {
  display: inline-block;
  vertical-align: middle;
}

.comments--pagination .next {
  padding-left: 10px;
}

.comments--pagination .next a {
  height: 19px;
}

.comments--pagination .next a > svg {
  display: inline-block;
  vertical-align: middle;
}

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

.comments--pagination .page a {
  width: 25px;
  text-align: center;
}

/* 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.header--root,
.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.header--root,
.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;
  }
}

.password--login-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

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

.icon--lock {
  width: 24px;
}

.icon--shopify {
  width: 82.28571px;
  height: 24px;
  display: inline-block;
  line-height: 0;
  vertical-align: top;
}

.icon--shopify,
.icon--lock {
  color: var(--color--alternative);
}

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

.customer--root {
  max-width: 800px;
  margin: 0 auto;
  padding: 72px 48px;
  overflow-y: auto;
}

@media only screen and (max-width: 767px) {
  .customer--root {
    padding: 16px;
    padding: 32px 16px;
  }
}

.customer--root h1 {
  text-align: center;
  padding-bottom: 32px;
}

.customer--root h2 {
  padding-bottom: 16px;
}

.customer--root h4 {
  padding-bottom: 16px;
}

.customer--root thead th,
.customer--root tbody td {
  padding: 16px;
}

.customer--root .errors a {
  text-decoration: underline;
}

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

.activate-account--create-password {
  padding-bottom: 16px;
}

.activate-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) {
  .activate-account--button-container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
}

.activate-account--button-container input {
  margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
  .activate-account--button-container input {
    width: 100%;
  }
}

.activate-account--button-container a {
  margin-left: 16px;
}

@media only screen and (max-width: 767px) {
  .activate-account--button-container a {
    padding: 16px;
    margin: 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 .breadcrumbs--root {
  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;
  }
}

/* A11Y Labels
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.hidden {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}