@charset "UTF-8";
/* FRAMEWORK
//////////////////////////////////////////////////////////////////////////////*/
*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  background: #fff;
  color: #222;
  padding: 0;
  margin: 0;
  font-family: "Helvetica Neue", "Helvetica", Helvetica, Arial, sans-serif;
  font-weight: normal;
  font-style: normal;
  line-height: 1;
  position: relative;
}

img,
object,
embed {
  max-width: 100%;
  height: auto;
}

object,
embed {
  height: 100%;
}

img {
  -ms-interpolation-mode: bicubic;
}

#map_canvas img,
#map_canvas embed,
#map_canvas object,
.map_canvas img,
.map_canvas embed,
.map_canvas object {
  max-width: none !important;
}

.left {
  float: left !important;
}

.right {
  float: right !important;
}

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

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

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

.text-justify {
  text-align: justify !important;
}

.hide {
  display: none;
}

.antialiased {
  -webkit-font-smoothing: antialiased;
}

img {
  display: inline-block;
  vertical-align: middle;
}

textarea {
  height: auto;
  min-height: 50px;
}

select {
  width: 100%;
}

/* Grid HTML Classes */
.row {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 0;
  max-width: 62.5em;
  *zoom: 1;
}

.row:before, .row:after {
  content: ' ';
  display: table;
}

.row:after {
  clear: both;
}

.row.collapse .column,
.row.collapse .columns {
  position: relative;
  padding-left: 0;
  padding-right: 0;
  float: left;
}

.row .row {
  width: auto;
  margin-left: -8px;
  margin-right: -8px;
  margin-top: 0;
  margin-bottom: 0;
  max-width: none;
  *zoom: 1;
}

.row .row:before, .row .row:after {
  content: ' ';
  display: table;
}

.row .row:after {
  clear: both;
}

.row .row.collapse {
  width: auto;
  margin: 0;
  max-width: none;
  *zoom: 1;
}

.row .row.collapse:before, .row .row.collapse:after {
  content: ' ';
  display: table;
}

.row .row.collapse:after {
  clear: both;
}

.column,
.columns {
  position: relative;
  padding-left: 16px;
  padding-right: 16px;
  width: 100%;
  float: left;
}

@media only screen {
  .column,
  .columns {
    position: relative;
    padding-left: 16px;
    padding-right: 16px;
    float: left;
  }
  .small-1 {
    position: relative;
    width: 8.33333%;
  }
  .small-2 {
    position: relative;
    width: 16.66667%;
  }
  .small-3 {
    position: relative;
    width: 25%;
  }
  .small-4 {
    position: relative;
    width: 33.33333%;
  }
  .small-5 {
    position: relative;
    width: 41.66667%;
  }
  .small-6 {
    position: relative;
    width: 50%;
  }
  .small-7 {
    position: relative;
    width: 58.33333%;
  }
  .small-8 {
    position: relative;
    width: 66.66667%;
  }
  .small-9 {
    position: relative;
    width: 75%;
  }
  .small-10 {
    position: relative;
    width: 83.33333%;
  }
  .small-11 {
    position: relative;
    width: 91.66667%;
  }
  .small-12 {
    position: relative;
    width: 100%;
  }
  .small-offset-1 {
    position: relative;
    margin-left: 8.33333%;
  }
  .small-offset-2 {
    position: relative;
    margin-left: 16.66667%;
  }
  .small-offset-3 {
    position: relative;
    margin-left: 25%;
  }
  .small-offset-4 {
    position: relative;
    margin-left: 33.33333%;
  }
  .small-offset-5 {
    position: relative;
    margin-left: 41.66667%;
  }
  .small-offset-6 {
    position: relative;
    margin-left: 50%;
  }
  .small-offset-7 {
    position: relative;
    margin-left: 58.33333%;
  }
  .small-offset-8 {
    position: relative;
    margin-left: 66.66667%;
  }
  .small-offset-9 {
    position: relative;
    margin-left: 75%;
  }
  .small-offset-10 {
    position: relative;
    margin-left: 83.33333%;
  }
  [class*='column'] + [class*='column']:last-child {
    float: right;
  }
  [class*='column'] + [class*='column'].end {
    float: left;
  }
  .column.small-centered,
  .columns.small-centered {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    float: none !important;
  }
}

/* Styles for screens that are atleast 768px; */
@media only screen and (min-width: 768px) {
  .large-1 {
    position: relative;
    width: 8.33333%;
  }
  .large-2 {
    position: relative;
    width: 16.66667%;
  }
  .large-3 {
    position: relative;
    width: 25%;
  }
  .large-4 {
    position: relative;
    width: 33.33333%;
  }
  .large-5 {
    position: relative;
    width: 41.66667%;
  }
  .large-6 {
    position: relative;
    width: 50%;
  }
  .large-7 {
    position: relative;
    width: 58.33333%;
  }
  .large-8 {
    position: relative;
    width: 66.66667%;
  }
  .large-9 {
    position: relative;
    width: 75%;
  }
  .large-10 {
    position: relative;
    width: 83.33333%;
  }
  .large-11 {
    position: relative;
    width: 91.66667%;
  }
  .large-12 {
    position: relative;
    width: 100%;
  }
  .row .large-offset-1 {
    position: relative;
    margin-left: 8.33333%;
  }
  .row .large-offset-2 {
    position: relative;
    margin-left: 16.66667%;
  }
  .row .large-offset-3 {
    position: relative;
    margin-left: 25%;
  }
  .row .large-offset-4 {
    position: relative;
    margin-left: 33.33333%;
  }
  .row .large-offset-5 {
    position: relative;
    margin-left: 41.66667%;
  }
  .row .large-offset-6 {
    position: relative;
    margin-left: 50%;
  }
  .row .large-offset-7 {
    position: relative;
    margin-left: 58.33333%;
  }
  .row .large-offset-8 {
    position: relative;
    margin-left: 66.66667%;
  }
  .row .large-offset-9 {
    position: relative;
    margin-left: 75%;
  }
  .row .large-offset-10 {
    position: relative;
    margin-left: 83.33333%;
  }
  .row .large-offset-11 {
    position: relative;
    margin-left: 91.66667%;
  }
  .push-1 {
    position: relative;
    left: 8.33333%;
    right: auto;
  }
  .pull-1 {
    position: relative;
    right: 8.33333%;
    left: auto;
  }
  .push-2 {
    position: relative;
    left: 16.66667%;
    right: auto;
  }
  .pull-2 {
    position: relative;
    right: 16.66667%;
    left: auto;
  }
  .push-3 {
    position: relative;
    left: 25%;
    right: auto;
  }
  .pull-3 {
    position: relative;
    right: 25%;
    left: auto;
  }
  .push-4 {
    position: relative;
    left: 33.33333%;
    right: auto;
  }
  .pull-4 {
    position: relative;
    right: 33.33333%;
    left: auto;
  }
  .push-5 {
    position: relative;
    left: 41.66667%;
    right: auto;
  }
  .pull-5 {
    position: relative;
    right: 41.66667%;
    left: auto;
  }
  .push-6 {
    position: relative;
    left: 50%;
    right: auto;
  }
  .pull-6 {
    position: relative;
    right: 50%;
    left: auto;
  }
  .push-7 {
    position: relative;
    left: 58.33333%;
    right: auto;
  }
  .pull-7 {
    position: relative;
    right: 58.33333%;
    left: auto;
  }
  .push-8 {
    position: relative;
    left: 66.66667%;
    right: auto;
  }
  .pull-8 {
    position: relative;
    right: 66.66667%;
    left: auto;
  }
  .push-9 {
    position: relative;
    left: 75%;
    right: auto;
  }
  .pull-9 {
    position: relative;
    right: 75%;
    left: auto;
  }
  .push-10 {
    position: relative;
    left: 83.33333%;
    right: auto;
  }
  .pull-10 {
    position: relative;
    right: 83.33333%;
    left: auto;
  }
  .push-11 {
    position: relative;
    left: 91.66667%;
    right: auto;
  }
  .pull-11 {
    position: relative;
    right: 91.66667%;
    left: auto;
  }
  .column.large-centered,
  .columns.large-centered {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    float: none !important;
  }
  .column.large-uncentered,
  .columns.large-uncentered {
    margin-left: 0;
    margin-right: 0;
    float: none;
  }
}

/* Foundation Block Grids for below small breakpoint */
@media only screen {
  [class*='block-grid-'] {
    display: block;
    padding: 0;
    margin: 0 -10px;
    *zoom: 1;
  }
  [class*='block-grid-']:before, [class*='block-grid-']:after {
    content: ' ';
    display: table;
  }
  [class*='block-grid-']:after {
    clear: both;
  }
  [class*='block-grid-'] > li {
    display: inline;
    height: auto;
    float: left;
    padding: 0 10px 10px;
  }
  .small-block-grid-1 > li {
    width: 100%;
    padding: 0 10px 10px;
  }
  .small-block-grid-1 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-1 > li:nth-of-type(1n + 1) {
    clear: both;
  }
  .small-block-grid-2 > li {
    width: 50%;
    padding: 0 10px 10px;
  }
  .small-block-grid-2 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-2 > li:nth-of-type(2n + 1) {
    clear: both;
  }
  .small-block-grid-3 > li {
    width: 33.33333%;
    padding: 0 10px 10px;
  }
  .small-block-grid-3 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-3 > li:nth-of-type(3n + 1) {
    clear: both;
  }
  .small-block-grid-4 > li {
    width: 25%;
    padding: 0 10px 10px;
  }
  .small-block-grid-4 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-4 > li:nth-of-type(4n + 1) {
    clear: both;
  }
  .small-block-grid-5 > li {
    width: 20%;
    padding: 0 10px 10px;
  }
  .small-block-grid-5 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-5 > li:nth-of-type(5n + 1) {
    clear: both;
  }
  .small-block-grid-6 > li {
    width: 16.66667%;
    padding: 0 10px 10px;
  }
  .small-block-grid-6 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-6 > li:nth-of-type(6n + 1) {
    clear: both;
  }
  .small-block-grid-7 > li {
    width: 14.28571%;
    padding: 0 10px 10px;
  }
  .small-block-grid-7 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-7 > li:nth-of-type(7n + 1) {
    clear: both;
  }
  .small-block-grid-8 > li {
    width: 12.5%;
    padding: 0 10px 10px;
  }
  .small-block-grid-8 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-8 > li:nth-of-type(8n + 1) {
    clear: both;
  }
  .small-block-grid-9 > li {
    width: 11.11111%;
    padding: 0 10px 10px;
  }
  .small-block-grid-9 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-9 > li:nth-of-type(9n + 1) {
    clear: both;
  }
  .small-block-grid-10 > li {
    width: 10%;
    padding: 0 10px 10px;
  }
  .small-block-grid-10 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-10 > li:nth-of-type(10n + 1) {
    clear: both;
  }
  .small-block-grid-11 > li {
    width: 9.09091%;
    padding: 0 10px 10px;
  }
  .small-block-grid-11 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-11 > li:nth-of-type(11n + 1) {
    clear: both;
  }
  .small-block-grid-12 > li {
    width: 8.33333%;
    padding: 0 10px 10px;
  }
  .small-block-grid-12 > li:nth-of-type(n) {
    clear: none;
  }
  .small-block-grid-12 > li:nth-of-type(12n + 1) {
    clear: both;
  }
}

/* Foundation Block Grids for above small breakpoint */
@media only screen and (min-width: 768px) {
  /* Remove small grid clearing */
  .small-block-grid-1 > li:nth-of-type(1n + 1) {
    clear: none;
  }
  .small-block-grid-2 > li:nth-of-type(2n + 1) {
    clear: none;
  }
  .small-block-grid-3 > li:nth-of-type(3n + 1) {
    clear: none;
  }
  .small-block-grid-4 > li:nth-of-type(4n + 1) {
    clear: none;
  }
  .small-block-grid-5 > li:nth-of-type(5n + 1) {
    clear: none;
  }
  .small-block-grid-6 > li:nth-of-type(6n + 1) {
    clear: none;
  }
  .small-block-grid-7 > li:nth-of-type(7n + 1) {
    clear: none;
  }
  .small-block-grid-8 > li:nth-of-type(8n + 1) {
    clear: none;
  }
  .small-block-grid-9 > li:nth-of-type(9n + 1) {
    clear: none;
  }
  .small-block-grid-10 > li:nth-of-type(10n + 1) {
    clear: none;
  }
  .small-block-grid-11 > li:nth-of-type(11n + 1) {
    clear: none;
  }
  .small-block-grid-12 > li:nth-of-type(12n + 1) {
    clear: none;
  }
  .large-block-grid-1 > li {
    width: 100%;
    padding: 0 10px 10px;
  }
  .large-block-grid-1 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-1 > li:nth-of-type(1n + 1) {
    clear: both;
  }
  .large-block-grid-2 > li {
    width: 50%;
    padding: 0 10px 10px;
  }
  .large-block-grid-2 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-2 > li:nth-of-type(2n + 1) {
    clear: both;
  }
  .large-block-grid-3 > li {
    width: 33.33333%;
    padding: 0 10px 10px;
  }
  .large-block-grid-3 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-3 > li:nth-of-type(3n + 1) {
    clear: both;
  }
  .large-block-grid-4 > li {
    width: 25%;
    padding: 0 10px 10px;
  }
  .large-block-grid-4 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-4 > li:nth-of-type(4n + 1) {
    clear: both;
  }
  .large-block-grid-5 > li {
    width: 20%;
    padding: 0 10px 10px;
  }
  .large-block-grid-5 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-5 > li:nth-of-type(5n + 1) {
    clear: both;
  }
  .large-block-grid-6 > li {
    width: 16.66667%;
    padding: 0 10px 10px;
  }
  .large-block-grid-6 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-6 > li:nth-of-type(6n + 1) {
    clear: both;
  }
  .large-block-grid-7 > li {
    width: 14.28571%;
    padding: 0 10px 10px;
  }
  .large-block-grid-7 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-7 > li:nth-of-type(7n + 1) {
    clear: both;
  }
  .large-block-grid-8 > li {
    width: 12.5%;
    padding: 0 10px 10px;
  }
  .large-block-grid-8 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-8 > li:nth-of-type(8n + 1) {
    clear: both;
  }
  .large-block-grid-9 > li {
    width: 11.11111%;
    padding: 0 10px 10px;
  }
  .large-block-grid-9 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-9 > li:nth-of-type(9n + 1) {
    clear: both;
  }
  .large-block-grid-10 > li {
    width: 10%;
    padding: 0 10px 10px;
  }
  .large-block-grid-10 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-10 > li:nth-of-type(10n + 1) {
    clear: both;
  }
  .large-block-grid-11 > li {
    width: 9.09091%;
    padding: 0 10px 10px;
  }
  .large-block-grid-11 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-11 > li:nth-of-type(11n + 1) {
    clear: both;
  }
  .large-block-grid-12 > li {
    width: 8.33333%;
    padding: 0 10px 10px;
  }
  .large-block-grid-12 > li:nth-of-type(n) {
    clear: none;
  }
  .large-block-grid-12 > li:nth-of-type(12n + 1) {
    clear: both;
  }
}

/* Flex Video */
.flex-video {
  position: relative;
  padding-top: 1.5625em;
  padding-bottom: 67.5%;
  height: 0;
  margin-bottom: 1em;
  overflow: hidden;
}

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

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

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

/* Pagination */
.pagination {
  display: block;
  height: 1.5em;
  margin-left: -0.3125em;
}

.pagination li {
  display: block;
  float: left;
  margin-left: 0.3125em;
}

.pagination li a {
  display: block;
  padding: 0.0625em 0.4375em 0.0625em;
}

.pagination li.unavailable a {
  cursor: default;
}

.pagination li.current a {
  font-weight: bold;
  cursor: default;
}

.pagination .paginate--number {
  padding-top: 3px;
}

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

.pagination-centered ul > li {
  float: none;
  display: inline-block;
}

.pagination-centered .paginate--number {
  padding-top: 3px;
}

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

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

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

/* Media Queries
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@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;
}

[data-container='section'] {
  display: grid;
  padding: 72px 48px;
  grid-row-gap: 32px;
}

@media only screen and (max-width: 767px) {
  [data-container='section'] {
    padding: 32px 16px;
  }
}

[data-container='panel'] {
  display: grid;
  grid-column-gap: 32px;
  grid-row-gap: 32px;
  grid-template-columns: minmax(auto, 1fr);
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  [data-container='panel'] {
    grid-column-gap: 16px;
    grid-row-gap: 16px;
  }
}

@media only screen and (min-width: 768px) {
  [data-container='panel'][data-block-spacing='false'] {
    grid-column-gap: 0;
    grid-row-gap: 0;
  }
}

[data-container='panel'][data-columns='2'] {
  grid-template-columns: repeat(2, minmax(auto, 1fr));
}

[data-container='panel'][data-columns='3'] {
  grid-template-columns: repeat(3, minmax(auto, 1fr));
}

[data-container='panel'][data-columns='4'] {
  grid-template-columns: repeat(4, minmax(auto, 1fr));
}

[data-container='panel'][data-columns='5'] {
  grid-template-columns: repeat(5, minmax(auto, 1fr));
}

[data-container='panel'][data-columns='6'] {
  grid-template-columns: repeat(6, minmax(auto, 1fr));
}

@media only screen and (max-width: 767px) {
  [data-container='panel'][data-mobile-columns='1'] {
    grid-template-columns: minmax(auto, 1fr);
  }
}

@media only screen and (max-width: 767px) {
  [data-container='panel'][data-mobile-columns='2'] {
    grid-template-columns: repeat(2, minmax(auto, 1fr));
  }
}

[data-container='block'] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 -16px -16px 0;
}

@media only screen and (max-width: 767px) {
  [data-container='block'] {
    margin: 0 -12px -12px 0;
  }
}

[data-container='section'] [data-item] {
  display: block;
  -ms-flex-preferred-size: 100%;
  flex-basis: 100%;
  padding: 0 16px 16px 0;
}

@media only screen and (max-width: 767px) {
  [data-container='section'] [data-item] {
    padding: 0 12px 12px 0;
  }
}

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

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

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

p {
  margin: 0;
}

b,
strong {
  font-weight: bolder;
}

img {
  border-style: none;
}

a,
a:link,
a:visited {
  color: var(--color-text);
  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-text);
}

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

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: -6px;
  }
}

tr:not(:last-child) {
  padding-bottom: 16px;
}

td {
  padding: 8px;
}

@media only screen and (max-width: 767px) {
  td {
    margin: 6px;
  }
}

iframe {
  max-width: 100%;
}

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

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

*::-webkit-input-placeholder,
*:-moz-placeholder,
*::-moz-placeholder,
*:-ms-input-placeholder {
  color: var(--color-text);
}

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

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-page-bg);
  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 var(--color-border);
  color: var(--color-text);
  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-text);
  background-color: var(--color-page-bg);
}

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

input,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-page-bg);
  border-radius: 2px;
  border: 1px solid var(--color-border);
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--color-text);
  margin: 0 0 16px;
  max-width: 100%;
  overflow: auto;
  padding: 9px 16px;
  text-transform: none;
  width: 100%;
}

input:focus,
textarea:focus {
  border: 1px solid var(--color-border);
  color: var(--color-text);
  background-color: var(--color-page-bg);
}

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

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

.button,
[data-item='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'],
[data-item='button'] > *.compact,
[data-item='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,
[data-item='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(--color-button-bg);
}

.button:link,
[data-item='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,
[data-item='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,
[data-item='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(--color-button-bg);
}

.no-touchevents .button, .no-touchevents
[data-item='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;
}

[data-item='featured-heading'],
.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) {
  [data-item='featured-heading'],
  .font--featured-heading {
    font-size: 40px;
    line-height: 1.2em;
  }
}

[data-item='section-heading'],
.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) {
  [data-item='section-heading'],
  .font--section-heading,
  h1,
  h2 {
    font-size: 20px;
  }
}

[data-item='block-heading'],
.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) {
  [data-item='block-heading'],
  .font--block-heading,
  h3,
  h4,
  h5,
  h6 {
    font-size: 16px;
  }
}

[data-item='accent-text'],
.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) {
  [data-item='accent-text'],
  .font--accent,
  label,
  input,
  textarea {
    font-size: 13px;
  }
}

[data-item='featured-heading'],
.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) {
  [data-item='featured-heading'],
  .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;
  }
}

[data-item='light-accent-text'],
.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) {
  [data-item='light-accent-text'],
  .font--light-accent {
    font-size: 13px;
  }
}

[data-item='light-accent-text']:link, [data-item='light-accent-text']:visited, [data-item='light-accent-text']:hover, [data-item='light-accent-text']:focus,
.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) {
  [data-item='light-accent-text'],
  .font--light-accent {
    font-size: 13px;
  }
}

[data-item='paragraph'],
.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) {
  [data-item='paragraph'],
  .font--paragraph,
  body {
    font-size: 15px;
  }
}

body {
  margin: 0;
}

[data-item='block-link'],
.font--block-link {
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}

[data-item='block-link'] > *,
.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) {
  [data-item='block-link'] > *,
  .font--block-link > * {
    font-size: 13px;
  }
}

[data-item='block-link'] > *:after,
.font--block-link > *:after {
  padding-bottom: 0.14286em;
  border-bottom: 0.07143em solid var(--color-text);
  content: '';
  display: block;
  width: 100%;
}

[data-item='inverted-block-link'],
.font--block-link--inverted {
  -ms-flex-preferred-size: auto;
  flex-basis: auto;
}

[data-item='inverted-block-link'] > *,
.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) {
  [data-item='inverted-block-link'] > *,
  .font--block-link--inverted > * {
    font-size: 13px;
  }
}

[data-item='inverted-block-link'] > *:after,
.font--block-link--inverted > *:after {
  padding-bottom: 0.14286em;
  border-bottom: 0.07143em solid var(--color-text);
  content: '';
  display: block;
  width: 100%;
}

[data-item='inverted-block-link'] > *,
.font--block-link--inverted > * {
  color: var(--color--alternative) !important;
}

[data-item='inverted-block-link'] > *:after,
.font--block-link--inverted > *:after {
  border-color: var(--color--alternative);
}

[data-item='small-text'],
.font--small {
  font-size: 12px;
}

[data-item='button'] > *,
.font--button,
a.font--button,
input[type='submit'] {
  background: var(--color-button-bg);
  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) {
  [data-item='button'] > *,
  .font--button,
  a.font--button,
  input[type='submit'] {
    font-size: 13px;
  }
}

[data-item='button'] > *:link, [data-item='button'] > *:visited, [data-item='button'] > *:hover, [data-item='button'] > *:focus,
.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(--color-button-bg);
}

[data-item='inverted-button'],
.font--button--inverted,
a.font--button--inverted,
input[type='submit'].font--button--inverted {
  background: var(--color-button-bg);
  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(--color-button-bg);
}

@media only screen and (max-width: 767px) {
  [data-item='inverted-button'],
  .font--button--inverted,
  a.font--button--inverted,
  input[type='submit'].font--button--inverted {
    font-size: 13px;
  }
}

[data-item='inverted-button']:link, [data-item='inverted-button']:visited, [data-item='inverted-button']:hover, [data-item='inverted-button']:focus,
.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(--color-button-bg);
}

[data-item='inverted-button']:link, [data-item='inverted-button']:visited, [data-item='inverted-button']:hover, [data-item='inverted-button']:focus,
.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(--color-button-bg);
}

[data-item='secondary-button'],
.font--secondary-button,
a.font--secondary-button,
input[type='submit'].font--secondary-button {
  background: var(--color-button-bg);
  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(--color-button-bg);
  color: var(--color-button-bg);
  line-height: 41px;
}

@media only screen and (max-width: 767px) {
  [data-item='secondary-button'],
  .font--secondary-button,
  a.font--secondary-button,
  input[type='submit'].font--secondary-button {
    font-size: 13px;
  }
}

[data-item='secondary-button']:link, [data-item='secondary-button']:visited, [data-item='secondary-button']:hover, [data-item='secondary-button']:focus,
.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(--color-button-bg);
}

[data-item='secondary-button']:link, [data-item='secondary-button']:visited, [data-item='secondary-button']:hover, [data-item='secondary-button']:focus,
.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-bg);
  background: transparent;
}

[data-item='inverted-secondary-button'],
.font--secondary-button--inverted,
a.font--secondary-button--inverted,
input[type='submit'].font--secondary-button--inverted {
  background: var(--color-button-bg);
  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(--color-button-bg);
  color: var(--color-button-bg);
  line-height: 41px;
  background: transparent;
  border: 2px solid var(--color-page-bg);
  color: var(--color-page-bg);
}

@media only screen and (max-width: 767px) {
  [data-item='inverted-secondary-button'],
  .font--secondary-button--inverted,
  a.font--secondary-button--inverted,
  input[type='submit'].font--secondary-button--inverted {
    font-size: 13px;
  }
}

[data-item='inverted-secondary-button']:link, [data-item='inverted-secondary-button']:visited, [data-item='inverted-secondary-button']:hover, [data-item='inverted-secondary-button']:focus,
.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(--color-button-bg);
}

[data-item='inverted-secondary-button']:link, [data-item='inverted-secondary-button']:visited, [data-item='inverted-secondary-button']:hover, [data-item='inverted-secondary-button']:focus,
.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-bg);
  background: transparent;
}

[data-item='inverted-secondary-button']:link, [data-item='inverted-secondary-button']:visited, [data-item='inverted-secondary-button']:hover, [data-item='inverted-secondary-button']:focus,
.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-page-bg);
  background: transparent;
}

[data-item='hidden-text'] {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

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

hr {
  border: 0;
  padding: 0;
  border-bottom: 1px solid var(--color-border);
}

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

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

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

table {
  background: transparent;
  border-top: solid 1px var(--color-border);
  border-bottom: solid 1px var(--color-border);
  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 var(--color-border);
    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);
  }
}

.input--number {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  background: var(--color-page-bg);
  border: 1px solid var(--color-border);
  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: var(--color-page-bg);
  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: var(--color-border);
}

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%;
  position: relative;
}

.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(--color-page-bg);
  -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(--color-page-bg);
  -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 var(--color-border);
}

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

.breadcrumbs--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  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--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;
}

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(--color-page-bg);
  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-text);
}

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

.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(--color-page-bg);
  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(--color-page-bg);
}

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

.x-menu {
  color: var(--color-header);
}

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

.x-menu a,
.x-menu a:link,
.x-menu a:visited,
.x-menu a:hover {
  color: var(--color-header);
}

.x-menu[data-x-menu--overlap='true'] {
  height: 62px;
}

.x-menu--overlap-icon {
  left: 0;
  position: absolute;
  top: 28px;
}

.x-menu--level-1--link > a {
  padding: 16px 16px 32px;
  text-transform: uppercase;
}

.x-menu--level-2--container {
  background: transparent;
}

[data-x-menu--depth='3'] .x-menu--level-2--container {
  margin: 0 -48px;
  width: calc(100% + (48px * 2));
  max-width: calc(100% + (48px * 2));
  padding-left: 25px;
  padding-right: 25px;
}

.x-menu--single-parents ul {
  border-right: 1px solid var(--color-header);
}

.x-menu--bg {
  opacity: 0.95;
  background: var(--color-header-bg);
}

[data-header--menu-transparent='false'] .x-menu--bg {
  opacity: 1 !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 var(--color-border);
}

.y-menu--level-1--link:first-child {
  border-top: 1px solid var(--color-border);
}

.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 var(--color-border);
  border-bottom: 1px solid var(--color-border);
  text-align: center;
}

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

.y-menu--parent-link {
  display: block;
  border-bottom: 1px solid var(--color-border);
}

.y-menu--parent-link:first-child {
  border-top: 1px solid var(--color-border);
}

.y-menu--level-2--link {
  display: block;
  border-bottom: 1px solid var(--color-border);
}

.y-menu--level-2--link:first-child {
  border-top: 1px solid var(--color-border);
}

[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(--color-page-bg);
  z-index: 5;
}

.y-menu--level-3--link {
  display: block;
  border-bottom: 1px solid var(--color-border);
}

.y-menu--level-3--link:first-child {
  border-top: 1px solid var(--color-border);
}

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

.radios--header {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  padding-bottom: 8px;
}

.radios--header > * {
  padding-bottom: 0;
}

.radios--container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.radios--container > *:not(:last-child) {
  padding-right: 16px;
}

.radios--main {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding-bottom: 16px;
}

.radios--option-label {
  display: inline;
}

.radios--option-current {
  padding-left: 8px;
}

.radios--swatch-button {
  position: relative;
  display: inline-block;
  height: 28px;
  width: 28px;
  border: 1px solid var(--color-border);
  border-radius: 50%;
  padding-bottom: 0;
  background-size: cover;
}

@media only screen and (max-width: 767px) {
  .radios--swatch-button {
    height: 40px;
    width: 40px;
  }
}

.radios--swatch-button:hover {
  cursor: pointer;
}

.radios--swatch-button::after {
  display: inline-block;
  height: 32px;
  width: 32px;
  border-radius: 50%;
  border: 1px solid var(--color--body--light);
  position: absolute;
  top: -3px;
  left: -3px;
}

@media only screen and (max-width: 767px) {
  .radios--swatch-button::after {
    height: 44px;
    width: 44px;
  }
}

.radios--value-button {
  border: 2px solid var(--color-border);
  color: var(--color--body--light);
  line-height: 43px;
  background: transparent;
}

.radios--input[type='radio'] {
  opacity: 0;
  width: 1px;
  height: 1px;
  margin: 0;
}

.radios--input[type='radio']:checked + .radios--swatch-button::after,
.radios--input[type='radio']:hover + .radios--swatch-button::after {
  content: '';
}

.radios--input[type='radio']:checked + .radios--value-button,
.radios--input[type='radio']:hover + .radios--value-button {
  border-color: var(--color--body--light);
  color: var(--color-text);
  background: transparent;
}

.radios--input[type='radio']:focus + .radios--swatch-button::after,
.radios--input[type='radio']:focus + .radios--value-button {
  -webkit-box-shadow: 0 0 0 3px Highlight;
  box-shadow: 0 0 0 3px Highlight;
}

/*  1. - FRAMEWORK - old
//////////////////////////////////////////////////////////////////////////////*/
/*  1.1 - Initialize
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*  1.3 - Grid
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
[class*='column'] + [class*='column']:last-child {
  float: left;
}

.row .row {
  padding: 0;
  margin: 0;
}

/*  1.4 - Utilities
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.show-for-medium-only {
  display: none;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  .show-for-medium-only {
    display: inherit !important;
  }
}

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

.clearfix:after, .fw--blocks:after {
  content: '';
  display: table;
  clear: both;
}

.remove_button_styles, .modal.video .close, .popup-modal-close {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: var(--color-button);
  text-transform: inherit;
  background: transparent;
  font-size: 14px;
}

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

.plain-list li {
  margin-bottom: 5px;
}

.hide {
  display: none;
}

.hide-until-js {
  display: none;
}

.no-js .hide-until-js {
  display: inherit;
}

.hide-for-js {
  display: none;
}

.no-js .hide-for-js {
  display: inherit;
}

.divider {
  border-top: 1px solid var(--color-border);
}

.border-decoration {
  position: absolute;
  bottom: 0;
  width: 100%;
  padding-right: 2.5em;
}

.border-decoration:after {
  content: '';
  display: block;
  border-bottom: 1px solid var(--color-border);
}

/*  1.7 - Navigation
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.tabs-wrapper.vertical {
  margin-bottom: 10px;
}

.tabs-wrapper.vertical:after {
  content: '';
  display: table;
  clear: both;
}

.tabs-wrapper.vertical .headings {
  margin: 0;
  padding: 0;
  float: left;
  list-style: none;
  width: 100%;
  float: left;
}

@media only screen and (min-width: 768px) {
  .tabs-wrapper.vertical .headings {
    width: 30%;
  }
}

.tabs-wrapper.vertical .headings > li {
  margin: 0;
}

.tabs-wrapper.vertical .headings > li:hover .trigger .bg, .tabs-wrapper.vertical .headings > li:focus .trigger .bg, .tabs-wrapper.vertical .headings > li.active .trigger .bg {
  opacity: 1;
}

.tabs-wrapper.vertical .headings .trigger {
  margin: 0;
  cursor: pointer;
  padding: 20px 30px;
  position: relative;
  z-index: 0;
  float: left;
  width: 100%;
}

.tabs-wrapper.vertical .headings .trigger a,
.tabs-wrapper.vertical .headings .trigger a:link,
.tabs-wrapper.vertical .headings .trigger a:visited,
.tabs-wrapper.vertical .headings .trigger a:hover {
  color: var(--color-text);
}

.tabs-wrapper.vertical .headings .trigger .bg {
  z-index: -1;
  opacity: 0.5;
  background: var(--color-tabs-accordions);
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

.tabs-wrapper.vertical .tabs.content {
  float: left;
  width: 100%;
  overflow: auto;
  padding: 20px;
  margin: 0;
  list-style: none;
}

@media only screen and (min-width: 768px) {
  .tabs-wrapper.vertical .tabs.content {
    width: 70%;
    padding: 0 20px;
  }
}

.tabs-wrapper.vertical .tabs.content > li {
  display: none;
}

.tabs-wrapper.vertical .tabs.content > li.active {
  display: block;
}

.tabs-wrapper.horizontal {
  overflow: hidden;
}

.tabs-wrapper.horizontal .headings {
  margin: 0;
  padding: 0;
  float: left;
  list-style: none;
  width: 100%;
}

.tabs-wrapper.horizontal .headings > li {
  margin: 0;
  padding: 0;
}

.tabs-wrapper.horizontal .headings > li:hover .trigger .bg, .tabs-wrapper.horizontal .headings > li:focus .trigger .bg, .tabs-wrapper.horizontal .headings > li.active .trigger .bg {
  opacity: 1;
}

.tabs-wrapper.horizontal .headings .trigger {
  margin: 0;
  cursor: pointer;
  padding: 20px 30px;
  position: relative;
  z-index: 0;
  float: left;
}

.tabs-wrapper.horizontal .headings .trigger a,
.tabs-wrapper.horizontal .headings .trigger a:link,
.tabs-wrapper.horizontal .headings .trigger a:visited,
.tabs-wrapper.horizontal .headings .trigger a:hover {
  color: var(--color-text);
}

.tabs-wrapper.horizontal .headings .trigger .bg {
  z-index: -1;
  opacity: 0.5;
  background: var(--color-tabs-accordions);
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

.tabs-wrapper.horizontal .tabs.content {
  clear: both;
  float: left;
  width: 100%;
  overflow: auto;
  padding: 20px 10px;
  margin: 0;
  list-style: none;
}

.tabs-wrapper.horizontal .tabs.content:after {
  content: '';
  display: table;
  clear: both;
}

.tabs-wrapper.horizontal .tabs.content > li {
  display: none;
}

.tabs-wrapper.horizontal .tabs.content > li.active {
  display: block;
}

.accordion-wrapper {
  margin-bottom: 10px;
}

.accordion-wrapper:after {
  content: '';
  display: table;
  clear: both;
}

.accordion-wrapper ul.accordion {
  margin: 0;
  padding: 0;
  float: left;
  list-style: none;
  width: 100%;
  float: left;
}

.accordion-wrapper ul.accordion > li {
  margin: 0;
  padding: 0;
}

.accordion-wrapper ul.accordion .trigger {
  margin: 0;
  cursor: pointer;
  padding: 20px 30px;
  position: relative;
  z-index: 0;
}

.accordion-wrapper ul.accordion .trigger a,
.accordion-wrapper ul.accordion .trigger a:link,
.accordion-wrapper ul.accordion .trigger a:visited,
.accordion-wrapper ul.accordion .trigger a:hover {
  color: var(--color-text);
}

.accordion-wrapper ul.accordion .trigger .bg {
  z-index: -1;
  opacity: 0.5;
  background: var(--color-tabs-accordions);
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  position: absolute;
}

.accordion-wrapper ul.accordion .trigger .bg:hover {
  opacity: 1;
}

.accordion-wrapper ul.accordion li.active .trigger .bg {
  opacity: 1;
}

.accordion-wrapper ul.accordion .content {
  display: none;
  padding: 20px 20px 0;
  margin: 0;
}

/*  1.8 - Slider
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
/*
 * 	Core Owl Carousel CSS File
 *	v1.24
 */
/* clearfix */
.owl-carousel .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;
  transform: translate3d(0px, 0px, 0px);
  -webkit-transform: translate3d(0px, 0px, 0px);
}

.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: var(--image--grabbing-icon) 8 8, move;
}

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

/* CSS3 Transitions */
.owl-origin {
  -webkit-perspective: 1200px;
  -webkit-perspective-origin-x: 50%;
  -webkit-perspective-origin-y: 50%;
  -moz-perspective: 1200px;
  -moz-perspective-origin-x: 50%;
  -moz-perspective-origin-y: 50%;
  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);
  }
  75% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px) translateX(-200%);
  }
  100% {
    opacity: 0.5;
    -webkit-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%);
  }
  75% {
    opacity: 0.5;
    -webkit-transform: translateZ(-500px);
  }
  100% {
    opacity: 1;
    -webkit-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);
  }
}

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

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

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

@-webkit-keyframes scaleUpFrom {
  from {
    opacity: 0;
    -webkit-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);
  }
}

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

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

/* 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 {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  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.active span,
.owl-theme .owl-controls.clickable .owl-page:hover span {
  filter: Alpha(Opacity=100);
  /*IE7 fix*/
  opacity: 1;
}

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

/* preloading images */
.owl-item.loading {
  min-height: 150px;
  background: var(--image--loading-animation) no-repeat center center;
}

.owl-carousel .owl-wrapper-outer {
  z-index: 1;
}

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

.owl-carousel .owl-pagination {
  z-index: 2;
}

/*  1.9 - Forms & Tables
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
html.touchevents form.custom .dropdown {
  display: none;
}

form.custom .custom.dropdown {
  font-size: 12px;
}

form.custom .custom.dropdown ul li {
  font-size: 12px;
}

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

select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: var(--color-page-bg);
  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 var(--color-border);
  color: var(--color-text);
  letter-spacing: 1px;
  margin-bottom: 12px;
  padding: 0 10px;
  text-indent: 0.01px;
  text-overflow: '';
  text-transform: none;
  width: 100%;
}

input {
  padding: 0 15px;
  margin: 0;
}

textarea {
  padding: 12px;
  width: 100%;
}

input,
select {
  width: 100%;
  max-width: 100%;
  line-height: 43px;
  height: 45px;
}

input.small,
select.small {
  height: 28px;
  line-height: 26px;
  padding: 0 12px;
}

input[type='checkbox'] {
  height: auto;
  line-height: 1;
  width: auto;
}

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'],
textarea {
  font-size: 12px;
  border-radius: 2px;
  background: var(--color-page-bg);
  color: var(--color-text);
  border: 1px solid var(--color-border);
  letter-spacing: 0.8px;
  -webkit-box-shadow: none !important;
  box-shadow: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  appearance: none !important;
}

input[type='text']:focus,
input[type='password']:focus,
input[type='date']:focus,
input[type='datetime']:focus,
input[type='datetime-local']:focus,
input[type='month']:focus,
input[type='week']:focus,
input[type='email']:focus,
input[type='number']:focus,
input[type='search']:focus,
input[type='tel']:focus,
input[type='time']:focus,
input[type='url']:focus,
textarea:focus {
  background: var(--color-page-bg);
  color: var(--color-text);
  border: 1px solid var(--color-border);
}

input[type='number'] {
  padding-right: 8px;
}

button {
  border: none;
}

.button,
a.button {
  background: var(--color-button-bg);
  border-color: var(--color-border);
  border-radius: 2px;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--color-button);
  display: inline-block;
  font-size: 12px;
  font-weight: var(--font--paragraph--weight);
  height: 45px;
  letter-spacing: 1px;
  line-height: 45px;
  margin: 0;
  padding: 0 25px;
  text-transform: uppercase;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  width: auto;
}

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

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

.button--secondary {
  background: var(--color-button-bg);
  border-color: var(--color-border);
  border-radius: 2px;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--color-button);
  display: inline-block;
  font-size: 12px;
  font-weight: var(--font--paragraph--weight);
  height: 45px;
  letter-spacing: 1px;
  line-height: 45px;
  margin: 0;
  padding: 0 25px;
  text-transform: uppercase;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  width: auto;
  background: var(--color-page-bg);
  border: 2px solid var(--color-button-bg);
  color: var(--color-button-bg);
  line-height: 41px;
}

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

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

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

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

@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 var(--color-border);
    padding: 15px;
  }
  table.responsive td {
    padding: 0;
    line-height: 1.6;
    border: none;
    border-bottom: 0;
    position: relative;
    padding: 10px 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);
  }
}

/*  2. - THEME
//////////////////////////////////////////////////////////////////////////////*/
/*  2.1 - General
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
html {
  margin: 0;
  padding: 0;
}

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

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

body.modal-on {
  overflow: hidden;
}

body.modal-unfix {
  overflow-x: hidden;
  overflow-y: auto;
}

.shopify-section {
  clear: both;
}

.textarea {
  white-space: pre-line;
  overflow-wrap: break-word;
  word-wrap: break-word;
}

.page-title {
  padding-bottom: 30px;
}

label {
  color: var(--color-text);
}

.main-content {
  padding-top: 30px;
}

.row {
  max-width: none;
}

@media only screen and (min-width: 768px) {
  .row {
    padding: 0 48px;
  }
}

.hidden {
  position: absolute;
  left: -10000px;
  top: auto;
  width: 1px;
  height: 1px;
  overflow: hidden;
}

html,
body {
  background: var(--color-page-bg);
}

.placeholder-icon {
  fill: #cbcbcb;
  color: #cbcbcb;
  background-color: #e9e9e9;
  width: 100%;
  height: 100%;
  max-width: 100%;
  max-height: 100%;
}

.placeholder-noblocks {
  padding: 50px;
  text-align: center;
}

.section--slideshow .placeholder-icon {
  position: absolute;
  top: 0;
  left: 0;
}

/*  2.2 - Header
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.header--root {
  position: relative;
  z-index: 3;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .header--root {
    padding: 32px 48px 0;
  }
}

.header--root .off-canvas--open {
  cursor: pointer;
}

.header--root .cart {
  width: 100%;
  text-align: right;
  padding: 0;
}

.header--root .cart .number-wrapper[data-item-count='0'] {
  display: none;
}

.header--root .cart .button,
.header--root .cart a.button {
  -webkit-box-shadow: none;
  box-shadow: none;
  text-transform: uppercase;
  border: 0;
  border-radius: 2px;
  margin-top: -15px;
}

.header--root .icon--bag {
  bottom: 2px;
  right: 3px;
}

.header--root .icon--cart {
  bottom: 2px;
  right: 3px;
}

.header--bg {
  background: var(--color-header-bg);
  height: 100%;
  left: 0;
  opacity: 1;
  position: absolute;
  top: 0;
  width: 100%;
}

[data-header--menu-transparent='false'] .header--bg {
  opacity: 1 !important;
}

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

.header--top-row {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin: 0 -8px;
}

.header--top-row > * {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
  padding: 8px;
}

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

.header--root[data-center-logo='false'] .header--localization {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1;
}

.header--root[data-center-logo='false'] .header--localization > form {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

.header--localization > form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.header--localization .disclosure--root:not(:last-of-type) {
  padding-right: 16px;
}

.header--localization .disclosure--root[data-id='header-locale'] .disclosure--main {
  text-transform: none;
}

.header--root[data-center-logo='false'] .header--logo {
  -webkit-box-ordinal-group: 1;
  -ms-flex-order: 0;
  order: 0;
}

.header--root[data-center-logo='true'] .header--logo {
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.header--logo a,
.header--logo a:link,
.header--logo a:hover,
.header--logo a:visited {
  color: var(--color-header);
}

.header--search {
  justify-self: flex-end;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.header--search svg {
  color: var(--color-header);
}

.header--account-icon {
  justify-self: flex-end;
  -webkit-box-flex: 0;
  -ms-flex-positive: 0;
  flex-grow: 0;
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
}

.header--account-icon svg {
  color: var(--color-header);
}

.header--account-info {
  display: none;
  top: 6px;
  right: -3px;
  padding: 0;
  width: 100%;
  position: relative;
}

.header--account-info .account-close:after {
  display: none;
}

.header--account-info .icon--cross {
  top: 1px;
}

.header--bottom-row {
  position: relative;
  text-align: center;
  padding-top: 16px;
}

.header--root[data-center-menu='false'] .header--bottom-row {
  text-align: left;
}

.header--bottom-row > * {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 auto;
  flex: 1 1 auto;
}

.header--bottom-row.hover {
  background: var(--color-header);
  background: transparent;
}

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

.header--cart {
  padding: 0;
  position: absolute;
  right: 0;
  top: 16px;
}

.header--menu {
  margin: 0 -16px;
}

.header--mobile {
  background-color: var(--color-header-bg);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  padding: 20px 16px;
}

@media only screen and (min-width: 768px) {
  .header--mobile {
    display: none;
  }
}

.header--mobile .icon--menu {
  color: var(--color-header);
}

.header--mobile--menu {
  width: 50%;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  line-height: 1;
}

.header--mobile--cart {
  width: 50%;
  -ms-flex-negative: 1;
  flex-shrink: 1;
  color: var(--color-cart) !important;
  flex-shrink: 1;
  line-height: 1;
  padding: 0 0 0 12px;
  text-align: right;
  white-space: nowrap;
  width: 50%;
}

.header--mobile--cart svg {
  color: var(--color-cart);
  fill: var(--color-cart);
}

.header--mobile--cart .number-wrapper[data-item-count='0'] {
  display: none;
}

.header--mobile--title {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  max-width: calc(100% - 120px);
  text-align: center;
}

.header--mobile--title a,
.header--mobile--title a:link,
.header--mobile--title a:hover,
.header--mobile--title a:visited {
  color: var(--color-header);
}

.header--y-menu-for-off-canvas,
.header--localization-for-off-canvas {
  display: none;
}

a.header--cart-link {
  line-height: 30px;
  color: var(--color-cart);
  display: inline-block;
  padding: 16px;
  margin-right: -16px;
}

@media only screen and (min-width: 768px) {
  a.header--cart-link {
    margin-top: -8px;
  }
}

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

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

.mobile-nav--localization {
  padding: 16px;
}

@media only screen and (max-width: 767px) {
  .mobile-nav--localization {
    padding: 12px;
  }
}

.mobile-nav--localization > form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.mobile-nav--localization .disclosure--root:not(:last-of-type) {
  padding-right: 16px;
}

@media only screen and (max-width: 767px) {
  .mobile-nav--localization .disclosure--root:not(:last-of-type) {
    padding-right: 12px;
  }
}

.mobile-nav--localization .disclosure--root[data-id='header-locale'] .disclosure--main {
  text-transform: none;
}

/*  2.3 - Footer
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.footer--root {
  background: var(--bg-color--footer);
  color: var(--color--footer);
  padding: 48px;
  z-index: 1;
  position: relative;
}

@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 (max-width: 767px) {
  .footer--block[data-block-type='subscribe'] .footer--block--container {
    width: 280px;
  }
}

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

.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--menu li:not(:last-child) {
    padding-bottom: 8px;
  }
}

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

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

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

@media only screen and (max-width: 767px) {
  .footer--subscribe .footer--form-container input[type='email'] {
    font-size: 16px;
  }
}

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

.footer--subscribe .footer--form-container .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;
  }
}

.footer--sub--block[data-type='localization'] form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.footer--sub--block[data-type='localization'] form .disclosure--root:not(:last-of-type) {
  padding-right: 16px;
}

.footer--sub--block[data-type='localization'] form .disclosure--root[data-id='footer-locale'] .disclosure--main {
  text-transform: none;
}

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

/*  3. - PARTIALS
//////////////////////////////////////////////////////////////////////////////*/
/*  3.2 - Product
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.product--root {
  text-align: center;
  position: relative;
  padding: 16px;
}

@media only screen and (max-width: 767px) {
  .product--root {
    padding: 8px;
  }
}

.product--image-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.product--image {
  width: 100%;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  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) {
  .product--root[data-hover-image='loaded']:hover .product--image {
    opacity: 0;
  }
}

.product--hover-image {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  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;
  overflow: hidden;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

@media only screen and (max-width: 767px) {
  .product--hover-image {
    display: none;
  }
}

.product--root[data-hover-image='loaded']:hover .product--hover-image {
  opacity: 1;
}

.product--sale {
  display: block;
  padding: 12px 16px;
  position: absolute;
  right: 32px;
  top: 32px;
  z-index: 1;
  border-radius: 2px;
  color: var(--color-grid-sale);
  background: var(--color-grid-sale-bg);
}

@media only screen and (max-width: 767px) {
  .product--sale {
    padding: 8px 12px;
    right: 16px;
    top: 16px;
  }
}

.product--sold-out {
  display: block;
  padding: 12px 16px;
  position: absolute;
  right: 32px;
  top: 32px;
  z-index: 1;
  border-radius: 2px;
  color: var(--color-grid-sold-out);
  background: var(--color-grid-sold-out-bg);
}

@media only screen and (max-width: 767px) {
  .product--sold-out {
    padding: 8px 12px;
    right: 16px;
    top: 16px;
  }
}

.product--details {
  text-align: center;
  padding-top: 16px;
}

.product--title {
  padding-bottom: 12px;
}

.product--title a {
  color: var(--color-text);
}

.product--vendor {
  padding-bottom: 12px;
  line-height: 1;
}

.product--price-wrapper {
  line-height: 1;
}

.product--price {
  margin-top: 15px;
}

.product--compare-price {
  text-decoration: line-through;
  padding: 0 8px;
}

@media only screen and (max-width: 767px) {
  .product--compare-price {
    display: block;
    padding-bottom: 12px;
  }
}

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

.product-grid--root {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  width: 100%;
  padding: 16px;
}

.product-grid--root[data-centered='true'] {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

@media only screen and (max-width: 767px) {
  .product-grid--root {
    padding: 8px;
  }
}

.product-grid--root[data-items-per-row='3'] > * {
  width: calc(100% / 3);
}

.product-grid--root[data-items-per-row='3'] > * {
  width: 33.3333%;
}

.product-grid--root[data-items-per-row='4'] > * {
  width: calc(100% / 4);
}

.product-grid--root[data-items-per-row='6'] > * {
  width: calc(100% / 6);
}

@media only screen and (max-width: 767px) {
  .product-grid--root[data-mobile-items-per-row='1'] > * {
    width: calc(100%);
  }
}

@media only screen and (max-width: 767px) {
  .product-grid--root[data-mobile-items-per-row='2'] > * {
    width: calc(100% / 2);
  }
}

.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--media .placeholder--container {
  position: initial;
}

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

.featured-product--info--container > *:last-child {
  padding-bottom: 0;
}

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

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

.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--sold-out--variant:hover,
.featured-product--unavailable-variant:hover {
  color: var(--color-error);
}

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

.featured-product--variants .disclosure--root {
  padding-bottom: 16px;
}

.featured-product--variant-select {
  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-text);
  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(--color-button-bg);
  border-color: var(--color-border);
  border-radius: 2px;
  border: 0;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--color-button);
  display: inline-block;
  font-size: 12px;
  font-weight: var(--font--paragraph--weight);
  height: 45px;
  letter-spacing: 1px;
  line-height: 45px;
  margin: 0;
  padding: 0 25px;
  text-transform: uppercase;
  -webkit-transition: background-color 300ms ease-out;
  transition: background-color 300ms ease-out;
  width: auto;
  width: 100%;
}

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

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

.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--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(--color-page-bg);
  border: 1px solid var(--color-badge-bdr);
  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 var(--color-border);
}

.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 var(--color-border);
  text-align: left;
}

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

.product-model--root button[hidden] {
  display: none;
}

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

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

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

.product-recommendations--root[data-empty='true'] {
  display: none;
}

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

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

.product-recommendations--body {
  margin: -16px;
}

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

.product-recommendations--body--container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 0 auto;
  max-width: 1200px;
}

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

.product-recommendations--item {
  padding: 16px;
  width: 25%;
}

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

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

/*  3.3 - Pagination
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.pagination {
  margin-top: 10px;
}

.pagination li a,
.pagination li.unavailable a,
.pagination li.current a {
  background: none;
}

.pagination li a:hover,
.pagination li.unavailable a:hover,
.pagination li.current a:hover {
  background: none;
}

.pagination li.unavailable.arrow a {
  display: none;
}

.pagination .arrow [class*='icon--arrow'] {
  margin: 0 10px;
  font-size: 80%;
}

.pagination .arrow.left {
  background: none;
}

.pagination .arrow.right a {
  padding-right: 0;
}

.pagination .arrow.right .icon--arrow-right {
  margin-right: 0;
}

/*  3.4 - Modal
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.modal {
  display: none;
  position: fixed;
  top: 50% !important;
  left: 50%;
  margin-left: -480px;
  z-index: 9999;
  background: var(--color-page-bg);
}

.modal img {
  overflow: auto;
  display: block;
  max-width: 100%;
}

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

.modal .slides {
  display: none;
}

.modal .slides .photo {
  display: none;
}

.modal .slides .active {
  display: block;
}

.modal .prev,
.modal .next {
  display: none;
  position: fixed;
  cursor: pointer;
  font-size: 100%;
  color: #fff;
  padding: 10px;
  margin-top: -25px;
  top: 50% !important;
  -webkit-transition: 0.3s, opacity;
  transition: 0.3s, opacity;
  opacity: 0.8;
}

.modal .prev:hover, .modal .prev:focus,
.modal .next:hover,
.modal .next:focus {
  opacity: 1;
}

.modal .prev {
  left: 10px;
}

.modal .next {
  right: 10px;
}

.modal.video {
  background: none;
  width: 600px;
  max-width: 90%;
  margin: -200px 0 0 -450px;
}

.modal.video.wide {
  width: 900px;
}

.modal.video > .bg {
  background: var(--color-slider-caption-bg);
  opacity: 0.8;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.modal.video .icon--cross {
  font-size: 30%;
}

.modal.video .close {
  cursor: pointer;
  opacity: 0.8;
  -webkit-transition: 0.3s, opacity;
  transition: 0.3s, opacity;
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10000;
  background-color: transparent;
  margin: 0;
  padding: 10px;
  font-size: 2em;
}

.modal.video .player {
  padding: 0;
}

.modal.video .player .flex-video {
  margin-bottom: 0;
}

.modal.video .caption {
  padding: 20px;
}

.modal.video .caption .title {
  font-size: 12px;
}

.modal.video .caption .sub-title {
  font-size: 10px;
}

.modal.video .caption a.button {
  font-size: 10px;
  margin-bottom: 0;
}

@media only screen and (min-width: 768px) {
  .modal.video .caption {
    padding: 90px 30px 30px;
  }
  .modal.video .caption .title {
    font-size: 14px;
  }
  .modal.video .caption .sub-title {
    font-size: 12px;
  }
  .modal.video .caption a.button {
    font-size: 10px;
  }
}

@media only screen and (min-width: 1024px) {
  .modal.video .caption .title {
    font-size: 18px;
  }
  .modal.video .caption .sub-title {
    font-size: 14px;
  }
  .modal.video .caption a.button {
    font-size: 12px;
  }
}

.modal-mask,
.popup-modal-mask {
  display: none;
  opacity: 0.8;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 9000;
  background-color: #000;
}

/*  3.4.1 - Modal2 - TODO: Merge with existing modal styles
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
@-webkit-keyframes modal-open {
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
    transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
  }
}
@keyframes modal-open {
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
    transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
  }
}

@-webkit-keyframes modal-close {
  0% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
    transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.9, 0.9, 1) translate3d(-50%, -50%, 0);
    transform: scale3d(0.9, 0.9, 1) translate3d(-50%, -50%, 0);
    z-index: -1;
  }
}

@keyframes modal-close {
  0% {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
    transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
  }
  100% {
    opacity: 0;
    -webkit-transform: scale3d(0.9, 0.9, 1) translate3d(-50%, -50%, 0);
    transform: scale3d(0.9, 0.9, 1) translate3d(-50%, -50%, 0);
    z-index: -1;
  }
}

.popup-modal-close {
  opacity: 0.8;
  -webkit-transition: 0.3s, opacity;
  transition: 0.3s, opacity;
  display: none;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 10000;
  background-color: transparent;
  margin: 0;
  padding: 10px;
  font-size: 15px;
}

@media only screen and (min-width: 768px) {
  .popup-modal-close {
    padding: 15px;
  }
}

.modal-on .popup-modal-close {
  display: block;
}

.popup-modal-close:hover, .popup-modal-close:focus {
  background: transparent;
  opacity: 1;
}

@media only screen and (min-width: 768px) {
  .popup-modal-close {
    font-size: 24px;
  }
}

.popup-modal {
  display: none;
  -webkit-transform-origin: 0 50%;
  transform-origin: 0 50%;
  position: fixed;
  border: none;
  overflow: hidden;
  opacity: 0;
  top: 50% !important;
  left: 50%;
  -webkit-transform: scale3d(1.1, 1.1, 1) translate3d(-50%, -50%, 0);
  transform: scale3d(1.1, 1.1, 1) translate3d(-50%, -50%, 0);
  z-index: 9999;
  margin: 0;
  padding: 0;
  max-width: 100%;
  padding: 40px 30px;
  background: transparent;
  width: 660px;
}

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

.popup-modal .inner,
.popup-modal .popup-image {
  position: relative;
}

@media only screen and (min-width: 768px) {
  .popup-modal .inner,
  .popup-modal .popup-image {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    max-width: 50%;
  }
}

.popup-modal .inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -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;
  padding: 4em 2em;
  text-align: center;
  width: 100%;
  background: var(--color-page-bg);
  color: var(--color-text);
  overflow: auto;
}

@media only screen and (min-width: 768px) {
  .popup-modal .inner {
    overflow: hidden;
  }
}

.popup-modal .inner:only-child {
  max-width: none;
}

.popup-modal .popup-image {
  background: none;
  background-color: var(--color-page-bg);
}

.popup-modal .popup-image a {
  position: absolute;
  height: 100%;
  width: 100%;
  display: block;
}

@media only screen and (min-width: 768px) {
  .popup-modal .popup-image {
    min-height: 480px;
    background-image: var(--image--popup);
    background-size: cover;
    background-position: 50% 0%;
  }
}

.popup-modal .popup-image img {
  display: none;
}

.popup-modal.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image {
  background: none;
  max-width: 100%;
  margin: 0 auto;
}

.popup-modal.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image a {
  position: relative;
}

.popup-modal.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image img {
  display: block;
  margin: 0 auto;
}

.popup-modal.opened, .popup-modal.closed, .popup-modal.completed {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.no-flexbox .popup-modal.opened,
.flexboxtweener .popup-modal.opened, .no-flexbox .popup-modal.closed,
.flexboxtweener .popup-modal.closed, .no-flexbox .popup-modal.completed,
.flexboxtweener .popup-modal.completed {
  display: table;
}

.no-flexbox .popup-modal.opened .inner,
.no-flexbox .popup-modal.opened .popup-image,
.flexboxtweener .popup-modal.opened .inner,
.flexboxtweener .popup-modal.opened .popup-image, .no-flexbox .popup-modal.closed .inner,
.no-flexbox .popup-modal.closed .popup-image,
.flexboxtweener .popup-modal.closed .inner,
.flexboxtweener .popup-modal.closed .popup-image, .no-flexbox .popup-modal.completed .inner,
.no-flexbox .popup-modal.completed .popup-image,
.flexboxtweener .popup-modal.completed .inner,
.flexboxtweener .popup-modal.completed .popup-image {
  display: table-cell;
  vertical-align: middle;
}

@media only screen and (min-width: 768px) {
  .no-flexbox .popup-modal.opened .inner,
  .no-flexbox .popup-modal.opened .popup-image,
  .flexboxtweener .popup-modal.opened .inner,
  .flexboxtweener .popup-modal.opened .popup-image, .no-flexbox .popup-modal.closed .inner,
  .no-flexbox .popup-modal.closed .popup-image,
  .flexboxtweener .popup-modal.closed .inner,
  .flexboxtweener .popup-modal.closed .popup-image, .no-flexbox .popup-modal.completed .inner,
  .no-flexbox .popup-modal.completed .popup-image,
  .flexboxtweener .popup-modal.completed .inner,
  .flexboxtweener .popup-modal.completed .popup-image {
    width: 50%;
  }
}

.no-flexbox .popup-modal.opened.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons,
.flexboxtweener .popup-modal.opened.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons, .no-flexbox .popup-modal.closed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons,
.flexboxtweener .popup-modal.closed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons, .no-flexbox .popup-modal.completed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons,
.flexboxtweener .popup-modal.completed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons {
  display: block;
}

.no-flexbox .popup-modal.opened.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image,
.flexboxtweener .popup-modal.opened.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image, .no-flexbox .popup-modal.closed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image,
.flexboxtweener .popup-modal.closed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image, .no-flexbox .popup-modal.completed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image,
.flexboxtweener .popup-modal.completed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image {
  display: block;
  width: 100%;
}

@media only screen and (min-width: 768px) {
  .no-flexbox .popup-modal.opened.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image,
  .flexboxtweener .popup-modal.opened.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image, .no-flexbox .popup-modal.closed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image,
  .flexboxtweener .popup-modal.closed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image, .no-flexbox .popup-modal.completed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image,
  .flexboxtweener .popup-modal.completed.has-image.has-no-page-content.has-no-newsletter.has-no-social-icons .popup-image {
    width: 100%;
  }
}

.popup-modal.opened {
  -webkit-animation: modal-open 0.3s linear forwards;
  animation: modal-open 0.3s linear forwards;
}

.popup-modal.closed {
  -webkit-animation: modal-close 0.3s linear forwards;
  animation: modal-close 0.3s linear forwards;
}

.popup-modal.completed {
  -webkit-transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
  transform: scale3d(1, 1, 1) translate3d(-50%, -50%, 0);
  opacity: 1;
}

.modal-unfix .popup-modal.completed {
  position: absolute;
  top: 0 !important;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translateX(-50%);
}

.popup-modal .social-follow {
  margin: 0 auto;
  text-align: center;
  padding-top: 12px;
}

.popup-modal .social-follow a {
  display: inline-block;
  margin: 10px 5px;
}

.popup-modal .social-follow .icon--root {
  height: 20px;
}

.popup-modal [type='email'] {
  padding: 0 0.8em;
  height: 3.2em;
  margin-bottom: 12px;
  max-width: 300px;
}

.popup-modal [type='submit'] {
  width: 100%;
  max-width: 300px;
  margin-bottom: 16px;
}

/*  3.5 - Social Share
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.social-share .share-item {
  text-transform: capitalize;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin: 10px;
  border-radius: 3px;
  padding: 6px 6px 6px 16px;
  background: var(--color-page-bg);
  border: 1px solid var(--color-border);
  -webkit-transition: background-color 300ms ease-out, color 300ms ease-out, border-color 300ms ease-out;
  transition: background-color 300ms ease-out, color 300ms ease-out, border-color 300ms ease-out;
}

.social-share .share-item .icon--root {
  margin-right: 12px;
  height: 16px;
  width: 16px;
}

.social-share .share-item span {
  vertical-align: top;
  line-height: 2.4;
  padding-right: 12px;
  margin-left: -6px;
}

.social-share .share-item:hover {
  color: var(--color-page-bg);
}

.social-share .twitter:hover {
  background-color: #09aeec;
  border-color: #09aeec;
}

.social-share .facebook:hover {
  background-color: #49659d;
  border-color: #49659d;
}

.social-share .pinterest:hover {
  background-color: #cb1f2b;
  border-color: #cb1f2b;
}

/*  3.6 - Promo Bar
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.announcement--root {
  padding: 0;
  text-align: center;
  margin: 0 auto;
  width: 100%;
  position: relative;
  z-index: 1;
}

.announcement--root[data-alternative-color='true'] {
  color: var(--color--alternative);
}

.announcement--root[data-alternative-color='true'] a,
.announcement--root[data-alternative-color='true'] a:link,
.announcement--root[data-alternative-color='true'] a:hover,
.announcement--root[data-alternative-color='true'] a:visited {
  color: var(--color--alternative);
}

.announcement--link {
  display: inline-block;
  padding-bottom: 0;
  padding-top: 0;
  width: 100%;
}

.announcement--wrapper {
  padding: 0 8px;
  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 (max-width: 767px) {
  .announcement--wrapper {
    display: block;
    max-width: 100%;
  }
}

.announcement--wrapper > * {
  padding: 8px;
}

.announcement--icon {
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-right: 0;
  line-height: 1;
}

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

/* Featured Grid
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.featured-grid--root {
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-container-width='6'] {
    padding-left: 0;
    padding-right: 0;
  }
}

.featured-grid--root[data-spacing='false'][data-container-width='6'][data-header-text-exists='false'] {
  padding-top: 0;
}

.featured-grid--root[data-spacing='false'][data-container-width='6'][data-footer-text-exists='false'] {
  padding-bottom: 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);
  }
}

@media only screen and (max-width: 767px) {
  .featured-grid--root .placeholder--container {
    padding-top: 100% !important;
  }
}

.featured-grid--header {
  margin: 0 auto;
  max-width: 100%;
  grid-template-columns: minmax(auto, 650px);
}

.featured-grid--body {
  display: grid;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  grid-template-columns: minmax(auto, 1fr);
}

.featured-grid--root[data-container-width='1'] .featured-grid--body {
  grid-template-columns: minmax(auto, 650px);
}

.featured-grid--root[data-container-width='2'] .featured-grid--body {
  grid-template-columns: minmax(auto, 800px);
}

.featured-grid--root[data-container-width='3'] .featured-grid--body {
  grid-template-columns: minmax(auto, 1000px);
}

.featured-grid--root[data-container-width='4'] .featured-grid--body {
  grid-template-columns: minmax(auto, 1200px);
}

.featured-grid--root[data-container-width='5'] .featured-grid--body {
  grid-template-columns: minmax(auto, 1fr);
}

.featured-grid--root[data-container-width='6'] .featured-grid--body {
  grid-template-columns: minmax(auto, 1fr);
}

.featured-grid--item {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

.featured-grid--item a {
  display: block;
  width: 100%;
}

.featured-grid--item .placeholder--container {
  height: 100%;
}

.featured-grid--item--container {
  position: relative;
  width: 100%;
}

.featured-grid--item--overlay-background {
  background-color: #fff;
  height: calc(100% - 16px);
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  -webkit-transition: opacity 0.25s linear;
  transition: opacity 0.25s linear;
  width: calc(100% - 16px);
  z-index: 1;
}

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'] .featured-grid--item:hover .featured-grid--item--overlay-background {
    opacity: 0.8;
    z-index: 1;
  }
}

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

@media only screen and (max-width: 767px) {
  .featured-grid--item--text-container {
    left: auto !important;
    margin: 0 !important;
    max-width: 100% !important;
    opacity: 1 !important;
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
    padding: 0 !important;
    position: relative !important;
    top: auto !important;
    -webkit-transform: none !important;
    transform: none !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 {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  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;
  left: 0;
  opacity: 0;
  padding-top: 0;
  position: absolute;
  text-align: center;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: opacity 0.25s linear;
  transition: opacity 0.25s linear;
  width: 100%;
  z-index: 1;
}

@media only screen and (min-width: 768px) {
  .featured-grid--root[data-text-position='center'] .featured-grid--item:hover .featured-grid--item--text-container {
    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-text);
  }
}

.featured-grid--item--image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.featured-grid--item--title {
  width: 100%;
}

.featured-grid--item--image {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.featured-grid--item--title {
  width: 100%;
}

.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='bottom'][data-spacing='false'] .featured-grid--item--link-container {
    padding-bottom: 16px;
  }
}

@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-text);
  }
  .featured-grid--root[data-text-position='center'][data-alternative-color='true'] .featured-grid--item--link-container:after {
    border-color: var(--color-text);
  }
}

/* Feedback bar
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.feedback-bar--root {
  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--root {
    padding: 16px;
  }
}

.feedback-bar--root[data-feedback-bar--open='true'] {
  visibility: visible;
  opacity: 1;
  -webkit-transition: opacity 0.5s linear;
  transition: opacity 0.5s linear;
}

.feedback-bar--root[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--root {
    padding: 16px;
  }
}

.feedback-bar--message {
  display: inline-block;
  padding: 20px 32px;
  background-color: var(--color-text);
  color: var(--color-page-bg);
  border: 1px solid var(--color-border);
}

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

/* Popup
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.popup--root {
  display: none;
}

.popup-modal .popup--root {
  display: block;
}

.popup--heading {
  padding-bottom: 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: 4px;
}

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

/*  4. - TEMPLATES
//////////////////////////////////////////////////////////////////////////////*/
/*  4.1 - Index
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.template-index .main-content {
  padding: 0;
}

@media only screen and (min-width: 768px) {
  .template-index [data-header--menu-transparent='true'].header--root {
    position: absolute;
  }
  .template-index [data-header--menu-transparent='true'] .header--bg {
    opacity: 0;
  }
}

.template-index [data-header--menu-transparent='true'] .header-divider {
  display: none;
}

.section--slideshow {
  color: var(--color-slider-caption);
}

.section--slideshow .placeholder-noblocks {
  height: 600px;
  display: inline-block;
  vertical-align: middle;
  line-height: 600px;
  width: 100%;
}

.section--slideshow .slider {
  border-bottom: 1px solid var(--color-border);
}

@media only screen and (min-width: 768px) {
  .section--slideshow .slider {
    border-bottom: none;
  }
}

.section--slideshow .slider .slides > .slide:not(:first-child) {
  display: 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;
  background-color: var(--color-slider-caption-bg);
}

@media only screen and (max-width: 767px) {
  .section--slideshow .slider .slide .caption {
    text-align: left !important;
  }
}

.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%;
  background-color: var(--color-slider-caption-bg);
  opacity: 0.8;
}

@media only screen and (min-width: 768px) {
  .section--slideshow .slider .slide .caption .bg {
    display: block;
  }
}

.section--slideshow .slider .slide .caption .font--section-heading {
  position: relative;
  padding-bottom: 16px;
}

@media only screen and (max-width: 767px) {
  .section--slideshow .slider .slide .caption .font--section-heading {
    padding-bottom: 12px;
  }
}

.section--slideshow .slider .slide .caption .sub-title {
  position: relative;
  padding-bottom: 16px;
}

.section--slideshow .slider .slide .caption a.font--button {
  color: var(--color-slider-button);
  background-color: var(--color-slider-button-bg);
  position: relative;
  margin-bottom: 0;
}

@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.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;
  background-color: var(--color-slider-nav);
  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;
}

.product-slider {
  background: var(--color-product-slider-bg);
  position: relative;
  padding-top: 72px;
  padding-bottom: 72px;
}

@media only screen and (max-width: 767px) {
  .product-slider {
    padding: 32px 0;
  }
}

@media only screen and (min-width: 768px) {
  .product-slider.disabled .owl-wrapper {
    width: 100% !important;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .product-slider.disabled .owl-item,
  .product-slider.disabled .product-item {
    display: inline-block !important;
    float: none;
    width: 100%;
    vertical-align: top;
  }
  .product-slider.disabled .row.content {
    text-align: center;
  }
}

.product-slider .content.row {
  padding: 0 50px;
}

@media only screen and (max-width: 767px) {
  .product-slider .content.row {
    padding: 0 32px;
  }
}

.product-slider .content.row .product-grid--root {
  padding: 0;
  margin: -16px 0;
}

.product-slider .owl-prev,
.product-slider .owl-next {
  color: var(--color-text);
  position: absolute;
  top: 50%;
  background: none;
  opacity: 0.8;
}

.product-slider .owl-prev:before,
.product-slider .owl-next:before {
  content: '';
  width: 12px;
  height: 20px;
  position: absolute;
  background-repeat: no-repeat;
  background-position: center center;
}

.product-slider .owl-prev {
  left: 0;
  margin: -32px 0 0 -25px;
}

@media only screen and (max-width: 767px) {
  .product-slider .owl-prev {
    margin-left: -20px;
  }
}

.product-slider .owl-prev:before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTcuMDkgMzIiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDE3LjA5IDMyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNMTYuOTk4LDMwLjIzN2MwLjA2MSwwLjE1OCwwLjA5MywwLjMyMSwwLjA5MywwLjQ5MXMtMC4wMzIsMC4zMzQtMC4wOTMsMC40OTFjLTAuMDYxLDAuMTU4LTAuMTUsMC4yOTgtMC4yNzEsMC40MThjLTAuMTIxLDAuMTIyLTAuMjYsMC4yMTItMC40MTcsMC4yNzNDMTYuMTUsMzEuOTcsMTUuOTkyLDMyLDE1LjgzNSwzMmMtMC4xNTcsMC0wLjMxNC0wLjAzLTAuNDcxLTAuMDkxYy0wLjE1OS0wLjA2MS0wLjI5OC0wLjE1MS0wLjQxOS0wLjI3M0wwLjM2MiwxNi45MDhjLTAuMTIxLTAuMTItMC4yMTItMC4yNi0wLjI3My0wLjQxN0MwLjAyOSwxNi4zMzMsMCwxNi4xNywwLDE2YzAtMC4xNjksMC4wMjktMC4zMzMsMC4wODktMC40OTFzMC4xNTItMC4yOTcsMC4yNzMtMC40MThMMTQuOTQ0LDAuMzYzYzAuMTIxLTAuMTIsMC4yNi0wLjIxMSwwLjQxOS0wLjI3M0MxNS41MjEsMC4wMywxNS42NzgsMCwxNS44MzUsMGMwLjE1NywwLDAuMzE2LDAuMDMsMC40NzUsMC4wOWMwLjE1NywwLjA2MiwwLjI5NiwwLjE1MywwLjQxNywwLjI3M2MwLjEyMSwwLjEyMiwwLjIxMSwwLjI2MSwwLjI3MSwwLjQxOGMwLjA2MSwwLjE1OCwwLjA5MywwLjMyMiwwLjA5MywwLjQ5MWMwLDAuMTctMC4wMzIsMC4zMzQtMC4wOTMsMC40OTFzLTAuMTUsMC4yOTctMC4yNzEsMC40MThMMy40MTgsMTZsMTMuMzA4LDEzLjgxOUMxNi44NDgsMjkuOTQsMTYuOTM3LDMwLjA3OSwxNi45OTgsMzAuMjM3eiIvPjwvc3ZnPg==);
}

.product-slider .owl-next {
  right: 0;
  margin: -32px -25px 0 0;
}

@media only screen and (max-width: 767px) {
  .product-slider .owl-next {
    margin-right: -20px;
  }
}

.product-slider .owl-next:before {
  background-image: url(data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz48c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTcuMDkgMzIiIGVuYWJsZS1iYWNrZ3JvdW5kPSJuZXcgMCAwIDE3LjA5IDMyIiB4bWw6c3BhY2U9InByZXNlcnZlIj48cGF0aCBkPSJNMC4wOTMsMS43NjNDMC4wMzIsMS42MDYsMCwxLjQ0MiwwLDEuMjczYzAtMC4xNjksMC4wMzItMC4zMzQsMC4wOTMtMC40OTFjMC4wNjEtMC4xNTgsMC4xNS0wLjI5OCwwLjI3MS0wLjQxOGMwLjEyMS0wLjEyMiwwLjI2LTAuMjEyLDAuNDE3LTAuMjczQzAuOTQsMC4wMywxLjA5OSwwLDEuMjU2LDBDMS40MTMsMCwxLjU3LDAuMDMsMS43MjcsMC4wOTFjMC4xNTksMC4wNjEsMC4yOTgsMC4xNTEsMC40MTksMC4yNzNsMTQuNTgyLDE0LjcyOGMwLjEyMSwwLjEyLDAuMjEyLDAuMjYsMC4yNzMsMC40MTdDMTcuMDYyLDE1LjY2NywxNy4wOSwxNS44MywxNy4wOSwxNmMwLDAuMTY5LTAuMDI5LDAuMzMzLTAuMDg5LDAuNDkxYy0wLjA2MSwwLjE1OC0wLjE1MiwwLjI5Ny0wLjI3MywwLjQxOEwyLjE0NiwzMS42MzdjLTAuMTIxLDAuMTItMC4yNiwwLjIxMS0wLjQxOSwwLjI3M0MxLjU3LDMxLjk3LDEuNDEzLDMyLDEuMjU2LDMycy0wLjMxNi0wLjAzLTAuNDc1LTAuMDljLTAuMTU3LTAuMDYyLTAuMjk2LTAuMTUzLTAuNDE3LTAuMjczYy0wLjEyMS0wLjEyMi0wLjIxMS0wLjI2MS0wLjI3MS0wLjQxOEMwLjAzMiwzMS4wNjEsMCwzMC44OTcsMCwzMC43MjhjMC0wLjE3LDAuMDMyLTAuMzM0LDAuMDkzLTAuNDkxczAuMTUtMC4yOTcsMC4yNzEtMC40MThMMTMuNjcyLDE2TDAuMzY0LDIuMTgyQzAuMjQzLDIuMDYsMC4xNTMsMS45MjEsMC4wOTMsMS43NjN6Ii8+PC9zdmc+);
  right: 0;
}

.product-slider .owl-theme .owl-controls {
  margin: 0;
}

.product-slider .font--section-heading {
  text-align: center;
  padding-bottom: 32px;
}

.product-slider ul {
  list-style: none;
  margin-top: 50px;
}

.product-slider ul li .columns {
  float: left !important;
}

.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(--color-page-bg);
  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 !important;
    -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-collections--root {
  text-align: center;
}

.featured-collections--header {
  grid-template-columns: minmax(auto, 800px);
}

.featured-collections--body {
  margin: 0 auto;
  max-width: 1200px;
  width: 100%;
}

.featured-collections--item a {
  display: block;
  width: 100%;
}

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

@media only screen and (max-width: 767px) {
  input.newsletter--email {
    font-size: 16px;
  }
}

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

.featured-text--blocks {
  grid-template-columns: minmax(auto, 650px);
  text-align: center;
}

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

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

.service-list {
  margin: 0 auto;
  max-width: 1000px;
  padding: 72px 48px;
}

.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-text);
  padding-bottom: 6px;
  width: 100%;
}

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

.custom-content--root {
  max-width: 1200px;
  margin: 0 auto;
  padding: 72px 32px;
}

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

/*  4.2 -  Collections List
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.template-list-collections .font--section-heading {
  padding-bottom: 20px;
}

.template-list-collections .collections-grid {
  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;
}

.template-list-collections .collection-item {
  max-width: 100%;
  margin: 1.25em 0;
  text-align: center;
}

.template-list-collections .collection-item:hover .caption {
  opacity: 1;
}

.template-list-collections .collection-item .image-wrapper {
  max-width: 100%;
  width: 100%;
}

.template-list-collections .collection-item .image-wrapper.placeholder {
  width: 100%;
}

.template-list-collections .collection-item .image-wrapper img {
  max-width: 100%;
}

.template-list-collections .pagination {
  float: right;
}

.template-list-collections .image-wrapper {
  display: inline-block;
}

.template-list-collections .caption {
  padding: 0;
}

@media only screen and (min-width: 768px) {
  .template-list-collections .caption {
    -webkit-transition: 0.4s opacity ease-in-out;
    transition: 0.4s opacity ease-in-out;
    opacity: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
  }
}

.template-list-collections .caption .bg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  background: var(--color-page-bg);
  opacity: 0.9;
  z-index: 0;
}

@media only screen and (max-width: 767px) {
  .template-list-collections .caption .bg {
    display: none;
  }
}

@media only screen and (min-width: 768px) {
  .template-list-collections .caption .inner {
    position: absolute;
    z-index: 1;
    top: 50%;
    margin-top: -20px;
    width: 100%;
    text-align: center;
  }
}

.template-list-collections .caption .font--block-heading {
  position: relative;
  z-index: 1;
  padding: 0 0 10px 0;
}

/*  4.3 - Collection
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.collection--root .breadcrumbs--root {
  padding-bottom: 35px;
}

.collection--root .divider.bottom-margin {
  margin-bottom: 20px;
}

@media only screen and (min-width: 768px) {
  .collection--root .divider.bottom-margin {
    margin-left: -16px;
    margin-right: -16px;
  }
}

.collection--root .disclosure--form {
  right: 0;
}

@media only screen and (min-width: 768px) {
  .collection--root .product-grid--root {
    margin: 0 -16px;
    padding: 16px 0;
    width: calc(100% + 32px);
  }
}

.collection--header {
  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: 32px 32px 16px;
  text-align: center;
}

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

@media only screen and (min-width: 768px) {
  .collection--top-row {
    padding: 0 32px;
  }
}

.collection--tag-filter {
  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;
  padding: 8px 0 16px 0;
}

.collection--filter-text {
  padding-right: 5px;
  text-transform: capitalize;
}

.collection--description {
  max-width: 650px;
}

@media only screen and (min-width: 768px) {
  .collection-page--top-divider .divider {
    margin: 0 -16px;
  }
}

.collection--no-products {
  text-align: center;
  padding: 72px 48px;
}

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

.collection--no-products a {
  text-decoration: underline;
}

@media only screen and (min-width: 768px) {
  .collection--bottom-row {
    width: calc(100% + 32px);
    margin: 0 -16px;
  }
}

.collection--pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  margin-right: -8px;
  padding: 12px 0 34px;
}

/*  4.4 - Product
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.size-chart {
  display: none;
}

.product-page--low-stock {
  display: none;
  font-weight: var(--font--bolder-paragraph--weight);
  padding-bottom: 16px;
}

.template-product .popup-modal.size-chart-container {
  color: var(--color-text);
  width: 760px;
}

.template-product .popup-modal.size-chart-container .size-chart {
  display: block;
  width: 100%;
  overflow: auto;
  background: var(--color-page-bg);
  padding: 4em 2em;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .template-product .popup-modal.size-chart-container .size-chart {
    overflow: initial;
  }
}

@media only screen and (min-width: 768px) {
  .template-product .main-content .row {
    margin: 0 -16px;
    width: calc(100% + 32px);
  }
}

html.no-cssgrid .template-product .border-decoration {
  display: none !important;
}

.template-product .price--container {
  margin: 0;
  padding-bottom: 32px;
  font-size: 20px;
}

@media only screen and (max-width: 767px) {
  .template-product .price--container {
    font-size: 16px;
    padding-bottom: 16px;
  }
}

.template-product header .previous-next [class*='icon--arrow'] {
  font-size: 80%;
}

.template-product header .previous-next .icon--arrow-right {
  margin-left: 5px;
}

.template-product header .previous-next .icon--arrow-left {
  margin-right: 5px;
}

.template-product header .previous-next .columns {
  padding-top: 30px;
  padding-bottom: 30px;
}

@media only screen and (max-width: 767px) {
  .template-product header .previous-next .columns {
    padding-top: 0;
    padding-bottom: 0;
    min-height: 1px;
  }
}

.template-product article {
  padding-top: 30px;
  padding-bottom: 100px;
}

@media only screen and (min-width: 768px) {
  .template-product article .left-column {
    width: 50%;
    display: block;
  }
}

@media only screen and (min-width: 1024px) {
  .template-product article .left-column {
    width: 25%;
    display: block;
  }
}

.template-product article .right-column {
  display: none;
}

@media only screen and (min-width: 1024px) {
  .template-product article .right-column {
    display: block;
  }
}

.template-product article .price--container .actual-price {
  font-size: 20px;
}

@media only screen and (max-width: 767px) {
  .template-product article .price--container .actual-price {
    font-size: 16px;
  }
}

.template-product article .price--container .compare-price {
  text-decoration: line-through;
}

.template-product article .quantity-cart-row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  padding-bottom: 12px;
}

.template-product article .quantity-cart-row[data-smart-payment-button='true'] {
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.template-product article .quantity-cart-row[data-smart-payment-button='true'] .quantity {
  padding-bottom: 15px;
}

.template-product article .quantity-cart-row .add-to-cart {
  -webkit-box-flex: 1;
  -ms-flex: 1 1 100%;
  flex: 1 1 100%;
}

.template-product article .quantity-cart-row .add-to-cart button.add {
  width: 100%;
  position: relative;
}

.template-product article .quantity-cart-row .add-to-cart button.add[data-loading='true'] .fw--loading_animation {
  display: inherit;
  position: absolute;
  top: 50%;
  left: 50%;
}

.template-product article .quantity-cart-row .add-to-cart button.add[data-loading='true'] .text {
  visibility: hidden;
}

.template-product article .quantity-cart-row .quantity {
  margin-right: 22px;
  max-width: 60px;
}

.template-product article .quantity-cart-row .quantity input {
  margin: 0;
}

@media only screen and (max-width: 767px) {
  .template-product article .quantity-cart-row .quantity input {
    font-size: 16px;
  }
}

.template-product article .add-to-cart .sold-out {
  display: none;
  padding: 24px 0 0 0;
  float: left;
  color: var(--color-error);
  max-width: 180px;
}

.template-product article .add-to-cart .sold-out.long {
  padding-top: 21px;
}

.template-product article .add-to-cart.disabled .purchase {
  display: none;
}

.template-product article .add-to-cart.disabled .sold-out {
  display: block;
}

.template-product article .description.show-for-medium-down {
  padding-top: 30px;
}

.template-product .social-share {
  text-align: center;
  background: var(--color-panel-bg);
  padding: 50px 0;
}

.template-product .social-share .title {
  margin-bottom: 30px;
}

.template-product .similar-products {
  text-align: center;
  margin: 0;
  padding-top: 100px;
  padding-bottom: 100px;
}

.template-product .similar-products h2.title {
  margin-bottom: 30px;
}

.template-product .similar-products .product-item {
  margin-bottom: 0;
}

.product-page--main-content {
  display: grid;
  grid-template-columns: minmax(100%, 100%);
  grid-template-rows: auto auto 1fr;
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  .product-page--main-content {
    grid-template-columns: minmax(40%, 40%) minmax(60%, 60%);
  }
}

@media only screen and (min-width: 1280px) {
  .product-page--main-content {
    grid-template-columns: minmax(25%, 25%) minmax(50%, 50%) minmax(25%, 25%);
  }
}

html.no-cssgrid .product-page--main-content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  max-width: 1200px;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  margin: 0 auto;
}

.product-page--previous {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.product-page--next {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.product-page--title-n-vendor {
  padding: 0 16px;
}

.product-page--title-n-vendor > * {
  padding-bottom: 16px;
}

.product-page--cart-form-block {
  grid-row: 2;
  padding: 0 16px 16px;
}

@media only screen and (max-width: 767px) {
  .product-page--cart-form-block {
    grid-row: 3;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
  }
}

@media only screen and (min-width: 1280px) {
  .product-page--root[data-cart-form-position='right'] .product-page--cart-form-block {
    grid-row: 1 / span 3;
    grid-column: 3;
  }
}

@media only screen and (min-width: 768px) {
  .product-page--cart-form form {
    max-width: 300px;
  }
}

.product-page--variants .disclosure--root {
  padding-bottom: 16px;
}

.product-page--chart-container {
  padding-left: 16px;
}

.product-page--variant-select {
  display: none;
}

.product-page--notify {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.product-page--unavailable {
  max-width: 300px;
  display: none;
}

@media only screen and (max-width: 767px) {
  .product-page--unavailable {
    max-width: 100%;
  }
  .product-page--unavailable input[type='email'] {
    font-size: 16px;
  }
}

.product-page--unavailable > *:not(:last-child) {
  padding-bottom: 16px;
}

.product-page--unavailable form > *:not(:last-child) {
  padding-bottom: 16px;
}

.product-page--unavailable input[type='submit'] {
  min-width: -webkit-fit-content;
  min-width: -moz-fit-content;
  min-width: fit-content;
  margin-left: 8px;
}

.font--button.product-page--smart-payment-buttons {
  padding-bottom: 12px;
  width: 100%;
  background-color: rgba(255, 255, 255, 0);
  padding: 0;
  height: inherit;
}

.font--button.product-page--smart-payment-buttons .shopify-payment-button__more-options {
  text-decoration: underline;
}

.font--button.product-page--smart-payment-buttons:hover {
  background-color: rgba(255, 255, 255, 0);
}

.font--button.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded {
  background: var(--color-button-bg);
  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;
  width: 100%;
}

@media only screen and (max-width: 767px) {
  .font--button.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded {
    font-size: 13px;
  }
}

.font--button.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:link, .font--button.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:visited, .font--button.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:hover, .font--button.product-page--smart-payment-buttons .shopify-payment-button__button--unbranded:focus {
  color: var(--color-button);
  background: var(--color-button-bg);
}

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

.font--button.product-page--smart-payment-buttons .shopify-payment-button__button--hidden {
  display: none;
}

.product-page--thumbs {
  grid-row: 3;
}

@media only screen and (max-width: 767px) {
  .product-page--thumbs {
    grid-row: 3;
  }
}

@media only screen and (min-width: 1280px) {
  .product-page--thumbs {
    grid-row: 3;
    grid-column: 1;
  }
}

@media only screen and (max-width: 767px) {
  .product-page--thumbs[data-position='cart-form-column'] {
    display: none;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  .product-page--thumbs[data-position='cart-form-column'] {
    display: none;
  }
}

html.no-cssgrid .product-page--thumbs[data-position='cart-form-column'] {
  display: none;
}

@media only screen and (min-width: 1280px) {
  .product-page--thumbs[data-position='image-column'] {
    display: none;
  }
}

html.no-cssgrid .product-page--thumbs[data-position='image-column'] {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.product-page--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;
  padding: 16px 0;
  width: 100%;
}

@media only screen and (min-width: 1280px) {
  .product-page--thumbs-container {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
  }
}

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

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

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

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

.product-page--thumb[data-active='true'] img {
  border: 1px solid var(--color-border);
}

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

.product-page--media-root {
  padding: 0 16px;
  text-align: center;
  max-width: 100%;
}

@media only screen and (max-width: 767px) {
  .product-page--media-root {
    grid-row: 2;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  .product-page--media-root {
    grid-row: 1 / span 4;
  }
}

@media only screen and (min-width: 1280px) {
  .product-page--media-root {
    grid-column: 2;
    grid-row: 1 / span 3;
  }
}

.product-page--media-root .modal--link {
  cursor: -webkit-zoom-in;
  cursor: zoom-in;
}

@media only screen and (max-width: 767px) {
  .product-page--media-root .modal--link {
    cursor: default;
  }
}

.product-page--media-container {
  position: relative;
  overflow: hidden;
  display: inline-block;
  width: 100%;
}

.product-page--media-container[data-media-type='image'] {
  max-width: 100%;
  width: unset;
}

.product-page--root[data-zoom-enabled='true'] .product-page--media-container[data-media-type='image']:hover {
  border: 1px solid var(--color-border);
}

@media only screen and (max-width: 767px) {
  .product-page--root[data-zoom-enabled='true'] .product-page--media-container[data-media-type='image']:hover {
    border: none;
  }
}

.product-page--media {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.product-page--media[data-active='false'] {
  display: none;
}

.product-page--media:not([data-media-type='image']) {
  cursor: default;
}

.product-page--media img {
  -ms-flex-item-align: center;
  align-self: center;
}

.product-page--media video {
  width: 100%;
  max-width: 800px;
}

.product-page--zoom-image {
  position: absolute;
  background: var(--color-page-bg);
}

.product-page--media[data-active='false'] + .product-page--zoom-image {
  display: none;
}

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

.product-page--description {
  padding: 0 16px;
}

@media only screen and (max-width: 767px) {
  .product-page--description {
    padding-top: 32px;
  }
}

@media only screen and (min-width: 768px) and (max-width: 1279px) {
  .product-page--description {
    grid-column: 1;
  }
}

@media only screen and (min-width: 1280px) {
  .product-page--description {
    grid-row: span 3;
    grid-column: 3;
  }
}

@media only screen and (min-width: 1280px) {
  .product-page--root[data-cart-form-position='right'] .product-page--description {
    grid-row: 2;
    grid-column: 1;
  }
}

.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 (min-width: 768px) {
  .product-page--no-grid--left-column {
    width: 40%;
  }
}

@media only screen and (min-width: 768px) {
  .product-page--no-grid--right-column {
    width: 60%;
  }
}

.disclosure--root {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: baseline;
  -ms-flex-align: baseline;
  align-items: baseline;
  text-align: left;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.disclosure--label {
  -webkit-box-flex: 0;
  -ms-flex: 0 1 100%;
  flex: 0 1 100%;
}

.disclosure--main {
  width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1 0 50%;
  flex: 1 0 50%;
  position: relative;
  outline: none;
}

.disclosure--toggle {
  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;
  border-radius: 2px;
  border: 1px solid var(--color-border);
  color: var(--color-text);
  background-color: var(--color-page-bg);
  cursor: pointer;
  padding: 8px 24px 8px 16px;
  width: 100%;
  position: relative;
}

.disclosure--toggle .icon--root {
  left: 12px;
  color: var(--color-text);
}

.disclosure--toggle .icon--chevron-up {
  display: none;
}

.disclosure--toggle[aria-expanded='true'] .icon--chevron-down {
  display: none;
}

.disclosure--toggle[aria-expanded='true'] .icon--chevron-up {
  display: inline;
}

.disclosure--form {
  background-color: var(--color-page-bg);
  border: 1px solid var(--color-border);
  border-radius: 2px;
  min-width: 100%;
  position: absolute;
  display: none;
  overflow-y: auto;
  z-index: 2;
}

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

.disclosure--option-link {
  color: var(--color-text) !important;
  display: inline-block;
  padding: 9px 15px;
  white-space: nowrap;
  width: 100%;
  cursor: pointer;
}

.disclosure--option-link:focus, .disclosure--option-link:hover {
  outline: 0;
  background-color: #f7f7f7;
}

/*  4.5 - Page
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.template-page .main-content {
  padding: 72px 48px;
}

@media only screen and (max-width: 767px) {
  .template-page .main-content {
    padding: 32px 16px;
  }
}

.template-page .main-content .row {
  max-width: 1000px;
  margin: 0;
}

.template-page .main-content .row.full-width {
  max-width: none;
}

.template-page .main-content .row.single-column {
  max-width: 700px;
}

.template-page .main-content .row.center {
  margin: 0 auto;
}

.template-page .main-content .left-side-column,
.template-page .main-content .right-side-column {
  position: relative;
  float: left;
}

@media only screen and (min-width: 768px) {
  .template-page .main-content .left-side-column,
  .template-page .main-content .right-side-column {
    width: 30%;
  }
}

@media only screen and (min-width: 768px) {
  .template-page .main-content .left-side-column.with-2-sidebars,
  .template-page .main-content .right-side-column.with-2-sidebars {
    width: 25%;
  }
}

.template-page .main-content .left-side-column {
  padding-right: 30px;
}

.template-page .main-content .right-side-column {
  padding-left: 30px;
}

.template-page .main-content .main-column {
  position: relative;
  float: left;
}

@media only screen and (min-width: 768px) {
  .template-page .main-content .main-column {
    width: 70%;
  }
}

@media only screen and (min-width: 768px) {
  .template-page .main-content .main-column.with-2-sidebars {
    width: 50%;
  }
}

.template-page .main-content .contact-form input[type='text'],
.template-page .main-content .contact-form input[type='email'],
.template-page .main-content .contact-form input[type='tel'] {
  max-width: 300px;
  margin-bottom: 16px;
}

.template-page .main-content .contact-form textarea {
  max-width: 300px;
  height: 100px;
  margin-bottom: 16px;
}

.contact-page--submit-button input {
  width: 100%;
  max-width: 300px;
}

/*  4.6 - 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-tag-filter='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 12px;
}

@media only screen and (min-width: 768px) {
  .blog--featured-title--mobile {
    display: none;
  }
}

.blog--featured-timesince {
  padding: 0 16px 12px;
}

@media only screen and (min-width: 768px) {
  .blog--featured-timesince {
    display: none;
  }
}

.blog--featured-excerpt {
  padding: 0 16px 12px;
}

@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-container {
  text-align: center;
  padding-bottom: 32px;
}

.blog--filter--root {
  width: 100%;
}

.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--body .disclosure--root {
  width: 100%;
  max-width: calc(100% - 2 * 32px);
}

@media only screen and (min-width: 768px) {
  .blog--filter--body .disclosure--root {
    display: none;
  }
}

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

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

@media only screen and (min-width: 768px) {
  .blog--footer-rss a {
    padding: 16px 16px 16px 0;
  }
}

.blog--footer-pagination:only-child {
  width: 100%;
}

.blog--no-articles {
  padding: 72px 48px;
  margin: 0;
  max-width: 700px;
}

.blog--no-articles p {
  text-align: center;
}

.template--blog .footer {
  margin: 0;
}

.template-blog .main-content {
  padding-top: 0;
}

.blog--filter--body .blog--filter--select {
  padding: 0 32px 0 16px;
}

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

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

@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: 6px;
}

@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: 12px 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: 650px;
  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 12px;
  max-width: 650px;
}

@media only screen and (min-width: 768px) {
  .comments--disqus {
    padding: 0;
  }
}

.template--article .footer {
  margin: 0;
}

.template-article .main-content {
  padding-top: 0;
}

/*  4.8 - Comments
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.comments--root {
  max-width: 650px;
  padding: 0 12px;
}

@media only screen and (min-width: 768px) {
  .comments--root {
    padding: 0;
  }
}

.comments--root > * {
  padding-bottom: 12px;
}

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

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

@media only screen and (max-width: 767px) {
  .comments--form textarea,
  .comments--form input[type='email'],
  .comments--form input[type='text'] {
    font-size: 16px;
  }
}

.comments--form > * {
  padding-bottom: 12px;
}

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

@media only screen and (min-width: 768px) {
  .comments--form-heading {
    padding-bottom: 16px;
  }
}

.comments--pagination .pagination--root {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
}

/*  4.9 - 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 var(--color-border);
}

.cart--headings {
  display: table-row;
  width: 100%;
  border-bottom: 1px solid var(--color-border);
  text-align: center;
}

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

.cart--headings > * {
  display: table-cell;
  padding: 16px;
  border-bottom: 1px solid var(--color-border);
}

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

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

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

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

@media only screen and (max-width: 767px) {
  .cart--notes--textarea {
    font-size: 16px;
  }
}

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

.template-cart .main-content {
  padding: 0;
}

/*  4.10 - 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 input[type='email'], .customer--root input[type='text'], .customer--root input[type='password'] {
    font-size: 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: 12px 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: 12px 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;
}

/*  4.11 - 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: 12px;
}

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

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

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

@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: 12px;
  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-error);
}

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

.template-password .main-content {
  padding: 0;
}

.template-password .font--button--inverted {
  width: auto;
}

.template-password .font--block-link a:after {
  border-bottom-color: white;
}

/* 404
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.four-o-four--root {
  margin: 0 auto;
  padding: 72px 48px;
  max-width: 800px;
}

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

.four-o-four--root > * {
  padding-bottom: 16px;
}

@media only screen and (max-width: 767px) {
  .four-o-four--root > * {
    padding: 12px;
  }
}

/* Shopify Captcha
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~*/
.shopify-challenge__container {
  padding: 72px 0;
}

@media only screen and (max-width: 767px) {
  .shopify-challenge__container {
    padding: 32px 0;
  }
}