/** Shopify CDN: Minification failed

Line 7414:1 Unexpected "<"
Line 7415:4 Expected identifier but found "%"
Line 7416:5 Unexpected "<"
Line 7416:24 Unexpected "{"
Line 7416:29 Expected ":"
Line 7416:32 Unexpected "<"
Line 7417:4 Expected identifier but found "%"
Line 7418:0 Unexpected "<"
Line 8024:4 Expected identifier but found ":"

**/
@charset "UTF-8";

/*============================================================================
  Modular | Built with Skate
    - You cannot use native CSS/Sass @imports in this file without a build script
==============================================================================*/


/*================ VARIABLES ================*/


/*================ TOOLS ================*/


/*================ GLOBAL ================*/


/*! normalize.css v2.1.2 | MIT License | git.io/normalize */

@font-face {
    font-family: "MyRoboto";
    src: url('{{ "myRoboto.woff2" | asset_url }}') format("woff2"),
    url('{{ "myRoboto.woff" | asset_url }}') format("woff");
}

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

audio,
canvas,
video {
    display: inline-block;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden],
template {
    display: none;
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

body {
    margin: 0;
}

body.no-outline *:focus {
    outline: none;
}

a {
    background: transparent;
}

a[href="#!"] {
    cursor: default;
}

h1 {
    margin: 0.67em 0;
}

abbr[title] {
    border-bottom: 1px dotted;
}

b,
strong {
    font-weight: var(--body-font-weight-bold);
}

dfn {
    font-style: italic;
}

hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
}

mark {
    background: #ff0;
    color: #000;
}

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em;
}

pre {
    white-space: pre-wrap;
}

q {
    quotes: "“" "”" "‘" "’";
}

small {
    font-size: 80%;
}

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

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

img {
    border: 0;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}


/**
* Forms
*/

fieldset {
    border: 1px solid var(--color-border);
    margin: 0 2px;
    padding: 0.35em 0.625em 0.75em;
}

legend {
    border: 0;
    padding: 0;
}

button,
.btn,
.shopify-payment-button__button--unbranded,
input,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
    margin: 0;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

input[type=number] {
    -moz-appearance: textfield;
}

button,
.btn,
.shopify-payment-button__button--unbranded,
input {
    line-height: normal;
}

button,
.btn,
.shopify-payment-button__button--unbranded,
select {
    text-transform: none;
}

button,
.btn,
.shopify-payment-button__button--unbranded,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer;
}

button[disabled],
[disabled].btn,
[disabled].shopify-payment-button__button--unbranded,
html input[disabled] {
    cursor: default;
}

input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0;
}

input[type=search] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner,
.btn::-moz-focus-inner,
.shopify-payment-button__button--unbranded::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

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

html,
html a {
    -webkit-font-smoothing: antialiased;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.004);
}

h1,
h2,
h3,
h4,
h5,
h6,
p {
    margin: auto;
}

.icon {
    fill: currentColor;
    display: inline-block;
    vertical-align: middle;
}

*,
.border-box {
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
}

ul,
ol,
li,
nav {
    list-style-type: none;
    margin: 0;
    padding: 0;
    -webkit-margin-before: 0em;
    -webkit-margin-after: 0em;
}

body:not(.no-outline) .skip-link:focus {
    clip: auto;
    width: auto;
    height: auto;
    margin: 0;
    color: var(--color-text);
    background-color: var(--color-background);
    padding: 10px;
    opacity: 1;
    z-index: 10000;
    transition: none;
}

body:not(.no-outline) .js-slide--image.focus-visible::after,
body:not(.no-outline) model-viewer.focus-visible::after,
body:not(.no-outline) .plyr.focus-visible::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    box-shadow: inset 0 0 0 2px var(--color-border);
    box-sizing: border-box;
    pointer-events: none;
}

body:not(.no-outline) .swatch__input:focus+.swatch__label .swatch__color,
body:not(.no-outline) .variant-input:focus+.variant__button-label {
    outline: 2px solid var(--color-button-primary-bg);
}

body:not(.no-outline) .productImgScroller-nav .product-single__media-thumb a.focus-visible {
    opacity: 1;
}

button,
.btn,
.shopify-payment-button__button--unbranded,
.button {
    display: inline-block;
    position: relative;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    transition: opacity 0.2s ease-in-out;
    cursor: pointer;
    padding: 10px 30px;
    margin: auto;
    font-size: 1.1rem;
    line-height: 22px;
    text-transform: capitalize;
    text-align: center;
    text-decoration: none !important;
    letter-spacing: var(--body-letter-spacing);
    background-color: var(--color-button-primary-bg);
    color: var(--color-button-primary-text);
    border: 1px solid var(--color-button-primary-border);
    border-radius: 0;
    /* Never show border on image overlay buttons */
}

button+.button,
.btn+.button,
.shopify-payment-button__button--unbranded+.button,
.button+.button {
    margin-left: 10px;
}

button.button--large,
.button--large.btn,
.button--large.shopify-payment-button__button--unbranded,
.button.button--large {
    padding: 16px 40px;
}

button:hover,
.btn:hover,
.shopify-payment-button__button--unbranded:hover,
.button:hover {
    opacity: 0.8;
}

button:disabled,
.btn:disabled,
.shopify-payment-button__button--unbranded:disabled,
button[disabled],
[disabled].btn,
[disabled].shopify-payment-button__button--unbranded,
button.disabled,
.disabled.btn,
.disabled.shopify-payment-button__button--unbranded,
.button:disabled,
.button[disabled],
.button.disabled {
    opacity: 0.5;
}

.hero button,
.hero .btn,
.hero .shopify-payment-button__button--unbranded,
.split-hero button,
.split-hero .btn,
.split-hero .shopify-payment-button__button--unbranded,
.featured__content button,
.featured__content .btn,
.featured__content .shopify-payment-button__button--unbranded,
.collection--has-image button,
.collection--has-image .btn,
.collection--has-image .shopify-payment-button__button--unbranded,
.collectionBlock-image-inner button,
.collectionBlock-image-inner .btn,
.collectionBlock-image-inner .shopify-payment-button__button--unbranded,
.hero .button,
.split-hero .button,
.featured__content .button,
.collection--has-image .button,
.collectionBlock-image-inner .button {
    border-color: transparent !important;
}

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

.button--light,
.button--secondary {
    color: var(--color-button-secondary-text);
    border-color: var(--color-button-secondary-border);
    background-color: var(--color-button-secondary-bg);
}

[data-payment-button=false] {
    display: none;
}

.shopify-payment-button {
    margin-top: 20px;
}

@media screen and (min-width: 768px) {
    .product-layout-4--info .shopify-payment-button {
        margin-left: 0 !important;
    }
}

@media screen and (max-width: 767px) {
    .shopify-payment-button {
        margin-right: auto;
        margin-left: auto;
    }
}

.shopify-payment-button__button--unbranded {
    line-height: 20px !important;
    font-weight: normal;
    padding: 12px 30px !important;
    margin: 0;
    color: var(--color-button-primary-text) !important;
    border: 1px solid var(--color-button-primary-border) !important;
    background-color: var(--color-button-primary-bg) !important;
    transition: opacity 0.2s ease-in-out !important;
}

.productForm-buttons--alt .shopify-payment-button__button--unbranded {
    color: var(--color-button-alt-text) !important;
    border: 1px solid var(--color-button-alt-border) !important;
    background-color: var(--color-button-alt-bg) !important;
}

.button--alt {
    color: var(--color-button-alt-text);
    border: 1px solid var(--color-button-alt-border);
    background-color: transparent;
    width: 100%;
}

.productForm-buttons--alt .button--alt {
    color: var(--color-button-primary-bg);
    border: 1px solid var(--color-button-primary-border);
    background-color: var(--color-button-primary-text);
}

div.shopify-payment-button__button--unbranded span:nth-child(2) {
    margin-right: 10px;
}

.shopify-payment-button__more-options {
    width: auto !important;
    color: black !important;
    background-color: transparent !important;
    padding: 5px 0;
    margin: auto;
}

.shopify-payment-button__more-options[aria-hidden=true] {
    display: none;
}

@media screen and (max-width: 767px) {
    .shopify-payment-button__more-options,
    .shopify-payment-button__button--branded,
    .shopify-payment-button__button--unbranded {
        margin: auto;
    }
}

.shopify-payment-button__button {
    width: 100% !important;
    height: 44px;
    border-radius: 0 !important;
}

.shopify-payment-button__button[disabled] {
    display: none;
}

.additional-checkout-buttons button[type=submit],
.additional-checkout-buttons [type=submit].btn,
.additional-checkout-buttons [type=submit].shopify-payment-button__button--unbranded {
    border-radius: 0 !important;
}


/**
 * Animations
 */

@keyframes moPopUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

@-webkit-keyframes moPopUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }
}

@keyframes moZoomOut {
    0% {
        -webkit-transform: scale(1.15);
        transform: scale(1.15);
    }
    to {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@-webkit-keyframes moZoomOut {
    0% {
        -webkit-transform: scale(1.15);
        transform: scale(1.15);
    }
    to {
        -webkit-transform: scale(1);
        transform: scale(1);
    }
}

@keyframes moFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@-webkit-keyframes moFadeIn {
    from {
        opacity: 0;
    }
    to {
        opacity: 1;
    }
}

@keyframes moFadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 20px, 0) scale(0.9);
        transform: translate3d(0, 20px, 0) scale(0.9);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) scale(1);
        transform: translate3d(0, 0, 0) scale(1);
    }
}

@-webkit-keyframes moFadeInUp {
    0% {
        opacity: 0;
        -webkit-transform: translate3d(0, 20px, 0) scale(0.9);
        transform: translate3d(0, 20px, 0) scale(0.9);
    }
    to {
        opacity: 1;
        -webkit-transform: translate3d(0, 0, 0) scale(1);
        transform: translate3d(0, 0, 0) scale(1);
    }
}

.animated {
    display: block;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}

[data-animation-delay="0"] {
    -webkit-animation-delay: 0ms;
    animation-delay: 0ms;
}

[data-animation-delay="250"] {
    -webkit-animation-delay: 250ms;
    animation-delay: 250ms;
}

[data-animation-delay="500"] {
    -webkit-animation-delay: 500ms;
    animation-delay: 500ms;
}

[data-animation-delay="750"] {
    -webkit-animation-delay: 750ms;
    animation-delay: 750ms;
}

[data-animation-delay="1000"] {
    -webkit-animation-delay: 1000ms;
    animation-delay: 1000ms;
}

[data-animation-delay="1250"] {
    -webkit-animation-delay: 1250ms;
    animation-delay: 1250ms;
}

[data-animation=moPopUp] {
    will-change: transform, opacity;
}

[data-animation=moZoomOut] {
    will-change: transform;
    -webkit-animation-duration: 2.5s;
    animation-duration: 2.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
}

body.allow-text-animations:not(.is-page-loading) [data-animation=moPopUp].will-animate {
    opacity: 0;
}

body.allow-text-animations:not(.is-page-loading) [data-animation=moPopUp].animated {
    -webkit-animation-name: moPopUp;
    animation-name: moPopUp;
}

body.allow-text-animations:not(.is-page-loading) .slick-current [data-animation=moPopUp] {
    -webkit-animation-name: moPopUp;
    animation-name: moPopUp;
    -webkit-animation-duration: 1s;
    animation-duration: 1s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

body.allow-text-animations:not(.is-page-loading) .slick-cloned [data-animation=moPopUp],
body.allow-text-animations:not(.is-page-loading) .slick-slide:not(.slick-current) [data-animation=moPopUp] {
    opacity: 0;
    -webkit-animation-name: none;
    animation-name: none;
}

body.allow-grid-animations:not(.is-page-loading) [data-animation=moFadeInUp].will-animate {
    opacity: 0;
}

body.allow-grid-animations:not(.is-page-loading) [data-animation=moFadeInUp].animated {
    will-change: opacity, transform;
    -webkit-animation-name: moFadeInUp;
    animation-name: moFadeInUp;
}

body.allow-image-animations .lazyload.slide-background::after,
body.allow-image-animations .lazyloading.slide-background::after {
    background-color: #aba9a9;
}

body.allow-image-animations .lazyload.logo__image::after,
body.allow-image-animations .lazyloading.logo__image::after {
    background-color: transparent;
}

body.allow-image-animations .lazyload::after,
body.allow-image-animations .lazyloading::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--color-background);
    background-image: var(--icon-loader);
    background-size: 64px auto;
    background-repeat: no-repeat;
    background-position: center center;
    opacity: 0.65;
}

body.allow-image-animations .lazyloaded {
    animation: moFadeIn 0.65s ease;
}

body.allow-image-animations .lazyloaded::after {
    content: none;
}

body.allow-image-animations img.lazyload,
body.allow-image-animations img.lazyloading {
    min-height: 64px;
    background-image: var(--icon-loader);
    background-size: 64px auto;
    background-repeat: no-repeat;
    background-position: center center;
}

body.allow-image-animations img.lazyloaded {
    background: none;
}

body.allow-image-animations .slide-background {
    opacity: 0.35;
}

body.allow-image-animations .slide-background--placeholder,
body.allow-image-animations .slide-background.lazyloaded {
    animation: none;
    transition: opacity 0.65s ease;
    opacity: 1;
}

p,
.p,
input,
select,
textarea,
label,
.swatch .header,
.product-tab-title,
.menu,
.breadcrumbs,
.spr-badge,
.spr-container,
.footer__menu {
    letter-spacing: var(--body-letter-spacing);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    color: var(--color-heading);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    letter-spacing: var(--heading-letter-spacing);
}

html,
body {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    color: var(--color-text);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
    -moz-font-feature-settings: “liga” on;
    height: 100%;
}

h1,
.h1 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h1);
    line-height: 1.1;
    margin-bottom: 0.2em;
}

@media screen and (max-width: 767px) {
    h1,
    .h1 {
        font-size: var(--font-size-h1-mobile);
    }
}

h1.logo {
    font-size: 1.71rem;
}

h2,
.h2 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h2);
    line-height: 1.4;
    margin-bottom: 0.2em;
}

@media screen and (max-width: 767px) {
    h2,
    .h2 {
        font-size: var(--font-size-h2-mobile);
    }
}

h3,
.h3 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h3);
    line-height: 1.3;
    margin-bottom: 0.2em;
}

h4,
.h4 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h4);
    line-height: 1.5;
}

h5,
.h5 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h5);
    line-height: 1.6;
}

h6,
.h6 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h6);
    line-height: 1.6;
}

p,
.p {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    line-height: 1.5;
    margin-bottom: 0.618em;
}

p a {
    text-decoration: underline;
}

i {
    font-style: italic;
}

.subheading-text {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    font-weight: var(--body-font-weight-medium);
    line-height: normal;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 10px;
}

.size--heading-1 {
    font-size: var(--font-size-h1);
}

.size--heading-2 {
    font-size: var(--font-size-h2);
}

.size--heading-3 {
    font-size: var(--font-size-h3);
}

.size--heading-4 {
    font-size: var(--font-size-h4);
}

.size--heading-5 {
    font-size: var(--font-size-h5);
}

.size--heading-6 {
    font-size: var(--font-size-h6);
}

@media screen and (max-width: 549px) {
    .size--heading-1 {
        font-size: var(--font-size-h1-mobile);
    }
    .size--heading-2 {
        font-size: var(--font-size-h2-mobile);
    }
}


/** * Inline-block grid sizing * * [s = "size"] [applied columns] [total number of columns] * Where ".s12" means "size, 1 column of 2". * */

.row.inline .s1 {
    width: 100%;
}

.row.inline .s12 {
    width: calc( 50% - 10px/2);
}

.row.inline .s13 {
    width: calc( 33.333333% - 10px/1.666666);
}

.row.inline .s23 {
    width: calc( 66.666666% - 10px/2.333333);
}

.row.inline .s14 {
    width: calc( 25% - 10px/1.333333);
}

.row.inline .s34 {
    width: calc( 75% - 10px/2.666666);
}

.row.inline .s15 {
    width: calc( 20% - 10px/1.333333);
}

.row.inline .s25 {
    width: calc( 40% - 10px/2);
}

.row.inline .s35 {
    width: calc( 60% - 10px/2.333333);
}

.row.inline .s45 {
    width: calc( 80% - 10px/2.666666);
}

.row.inline .s16 {
    width: calc( 16.666666% - 10px/1.666666);
}

.row.inline .s56 {
    width: calc( 83.333333% - 10px/2.166666);
}

.row.inline .p12 {
    left: calc( 50% + 10px/2);
}

.row.inline .p13 {
    left: calc( 33.333333% + 10px/3.666666);
}

.row.inline .p23 {
    left: calc( 66.666666% + 10px/2.333333);
}

.row.inline .p14 {
    left: calc( 25% + 10px/2.333333);
}

.row.inline .p34 {
    left: calc( 75% + 10px/1.333333);
}

.row.inline .p16 {
    left: calc( 16.666666% + 10px/2.166666);
}

.row.inline .p56 {
    left: calc( 83.333333% + 10px/1.666666);
}

.row.inline .p12,
.row.inline .p13,
.row.inline .p23,
.row.inline .p14,
.row.inline .p34,
.row.inline .p16,
.row.inline .p56 {
    min-height: 1px;
}

.row.inline .pl12 {
    left: calc( -50% + 10px/2);
}

.row.inline .pl13 {
    left: calc( -33.333333% + 10px/3.666666);
}

.row.inline .pl23 {
    left: calc( -66.666666% + 10px/2.333333);
}

.row.inline .pl14 {
    left: calc( -25% + 10px/2.666666);
}

.row.inline .pl34 {
    left: calc( -75% + 10px/1.333333);
}

.row.inline .pl16 {
    left: calc( -16.666666% + 10px/2.166666);
}

.row.inline .pl56 {
    left: calc( -83.333333% + 10px/1.666666);
}

.row.inline .sx12 {
    margin-right: calc( 50% + 10px/2);
}

.row.inline .sx13 {
    margin-right: calc( 33.333333% + 10px/1.666666);
}

.row.inline .sx23 {
    margin-right: calc( 66.666666% + 10px/2.333333);
}

.row.inline .sx14 {
    margin-right: calc( 25% + 10px/2.666666);
}

.row.inline .sx34 {
    margin-right: calc( 75% + 10px/1.333333);
}

.row.inline .sx16 {
    margin-right: calc( 16.666666% + 10px/2.166666);
}

.row.inline .sx56 {
    margin-right: calc( 83.333333% + 10px/1.666666);
}

@media screen and (min-width: 399px) {
    .row.inline .xs_s1 {
        width: 100%;
    }
    .row.inline .xs_s12 {
        width: calc( 50% - 10px/2);
    }
    .row.inline .xs_s13 {
        width: calc( 33.333333% - 10px/1.666666);
    }
    .row.inline .xs_s23 {
        width: calc( 66.666666% - 10px/2.333333);
    }
    .row.inline .xs_s14 {
        width: calc( 25% - 10px/1.333333);
    }
    .row.inline .xs_s34 {
        width: calc( 75% - 10px/2.666666);
    }
    .row.inline .xs_s15 {
        width: calc( 20% - 10px/1.333333);
    }
    .row.inline .xs_s25 {
        width: calc( 40% - 10px/2);
    }
    .row.inline .xs_s35 {
        width: calc( 60% - 10px/2.333333);
    }
    .row.inline .xs_s45 {
        width: calc( 80% - 10px/2.666666);
    }
    .row.inline .xs_s16 {
        width: calc( 16.666666% - 10px/1.666666);
    }
    .row.inline .xs_s56 {
        width: calc( 83.333333% - 10px/2.166666);
    }
    .row.inline .xs_p12 {
        left: calc( 50% + 10px/2);
    }
    .row.inline .xs_p13 {
        left: calc( 33.333333% + 10px/3.666666);
    }
    .row.inline .xs_p23 {
        left: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .xs_p14 {
        left: calc( 25% + 10px/2.333333);
    }
    .row.inline .xs_p34 {
        left: calc( 75% + 10px/1.333333);
    }
    .row.inline .xs_p16 {
        left: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .xs_p56 {
        left: calc( 83.333333% + 10px/1.666666);
    }
    .row.inline .xs_p12,
    .row.inline .xs_p13,
    .row.inline .xs_p23,
    .row.inline .xs_p14,
    .row.inline .xs_p34,
    .row.inline .xs_p16,
    .row.inline .xs_p56 {
        min-height: 1px;
    }
    .row.inline .xs_pl12 {
        left: calc( -50% + 10px/2);
    }
    .row.inline .xs_pl13 {
        left: calc( -33.333333% + 10px/3.666666);
    }
    .row.inline .xs_pl23 {
        left: calc( -66.666666% + 10px/2.333333);
    }
    .row.inline .xs_pl14 {
        left: calc( -25% + 10px/2.666666);
    }
    .row.inline .xs_pl34 {
        left: calc( -75% + 10px/1.333333);
    }
    .row.inline .xs_pl16 {
        left: calc( -16.666666% + 10px/2.166666);
    }
    .row.inline .xs_pl56 {
        left: calc( -83.333333% + 10px/1.666666);
    }
    .row.inline .xs_sx12 {
        margin-right: calc( 50% + 10px/2);
    }
    .row.inline .xs_sx13 {
        margin-right: calc( 33.333333% + 10px/1.666666);
    }
    .row.inline .xs_sx23 {
        margin-right: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .xs_sx14 {
        margin-right: calc( 25% + 10px/2.666666);
    }
    .row.inline .xs_sx34 {
        margin-right: calc( 75% + 10px/1.333333);
    }
    .row.inline .xs_sx16 {
        margin-right: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .xs_sx56 {
        margin-right: calc( 83.333333% + 10px/1.666666);
    }
}

@media screen and (min-width: 550px) {
    .row.inline .sm_s1 {
        width: 100%;
    }
    .row.inline .sm_s12 {
        width: calc( 50% - 10px/2);
    }
    .row.inline .sm_s13 {
        width: calc( 33.333333% - 10px/1.666666);
    }
    .row.inline .sm_s23 {
        width: calc( 66.666666% - 10px/2.333333);
    }
    .row.inline .sm_s14 {
        width: calc( 25% - 10px/1.333333);
    }
    .row.inline .sm_s34 {
        width: calc( 75% - 10px/2.666666);
    }
    .row.inline .sm_s15 {
        width: calc( 20% - 10px/1.333333);
    }
    .row.inline .sm_s25 {
        width: calc( 40% - 10px/2);
    }
    .row.inline .sm_s35 {
        width: calc( 60% - 10px/2.333333);
    }
    .row.inline .sm_s45 {
        width: calc( 80% - 10px/2.666666);
    }
    .row.inline .sm_s16 {
        width: calc( 16.666666% - 10px/1.666666);
    }
    .row.inline .sm_s56 {
        width: calc( 83.333333% - 10px/2.166666);
    }
    .row.inline .sm_p12 {
        left: calc( 50% + 10px/2);
    }
    .row.inline .sm_p13 {
        left: calc( 33.333333% + 10px/3.666666);
    }
    .row.inline .sm_p23 {
        left: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .sm_p14 {
        left: calc( 25% + 10px/2.333333);
    }
    .row.inline .sm_p34 {
        left: calc( 75% + 10px/1.333333);
    }
    .row.inline .sm_p16 {
        left: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .sm_p56 {
        left: calc( 83.333333% + 10px/1.666666);
    }
    .row.inline .sm_p12,
    .row.inline .sm_p13,
    .row.inline .sm_p23,
    .row.inline .sm_p14,
    .row.inline .sm_p34,
    .row.inline .sm_p16,
    .row.inline .sm_p56 {
        min-height: 1px;
    }
    .row.inline .sm_pl12 {
        left: calc( -50% + 10px/2);
    }
    .row.inline .sm_pl13 {
        left: calc( -33.333333% + 10px/3.666666);
    }
    .row.inline .sm_pl23 {
        left: calc( -66.666666% + 10px/2.333333);
    }
    .row.inline .sm_pl14 {
        left: calc( -25% + 10px/2.666666);
    }
    .row.inline .sm_pl34 {
        left: calc( -75% + 10px/1.333333);
    }
    .row.inline .sm_pl16 {
        left: calc( -16.666666% + 10px/2.166666);
    }
    .row.inline .sm_pl56 {
        left: calc( -83.333333% + 10px/1.666666);
    }
    .row.inline .sm_sx12 {
        margin-right: calc( 50% + 10px/2);
    }
    .row.inline .sm_sx13 {
        margin-right: calc( 33.333333% + 10px/1.666666);
    }
    .row.inline .sm_sx23 {
        margin-right: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .sm_sx14 {
        margin-right: calc( 25% + 10px/2.666666);
    }
    .row.inline .sm_sx34 {
        margin-right: calc( 75% + 10px/1.333333);
    }
    .row.inline .sm_sx16 {
        margin-right: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .sm_sx56 {
        margin-right: calc( 83.333333% + 10px/1.666666);
    }
}

@media screen and (min-width: 768px) {
    .row.inline .med_s1 {
        width: 100%;
    }
    .row.inline .med_s12 {
        width: calc( 50% - 10px/2);
    }
    .row.inline .med_s13 {
        width: calc( 33.333333% - 10px/1.666666);
    }
    .row.inline .med_s23 {
        width: calc( 66.666666% - 10px/2.333333);
    }
    .row.inline .med_s14 {
        width: calc( 25% - 10px/1.333333);
    }
    .row.inline .med_s34 {
        width: calc( 75% - 10px/2.666666);
    }
    .row.inline .med_s15 {
        width: calc( 20% - 10px/1.333333);
    }
    .row.inline .med_s25 {
        width: calc( 40% - 10px/2);
    }
    .row.inline .med_s35 {
        width: calc( 60% - 10px/2.333333);
    }
    .row.inline .med_s45 {
        width: calc( 80% - 10px/2.666666);
    }
    .row.inline .med_s16 {
        width: calc( 16.666666% - 10px/1.666666);
    }
    .row.inline .med_s56 {
        width: calc( 83.333333% - 10px/2.166666);
    }
    .row.inline .med_p12 {
        left: calc( 50% + 10px/2);
    }
    .row.inline .med_p13 {
        left: calc( 33.333333% + 10px/3.666666);
    }
    .row.inline .med_p23 {
        left: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .med_p14 {
        left: calc( 25% + 10px/2.333333);
    }
    .row.inline .med_p34 {
        left: calc( 75% + 10px/1.333333);
    }
    .row.inline .med_p16 {
        left: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .med_p56 {
        left: calc( 83.333333% + 10px/1.666666);
    }
    .row.inline .med_p12,
    .row.inline .med_p13,
    .row.inline .med_p23,
    .row.inline .med_p14,
    .row.inline .med_p34,
    .row.inline .med_p16,
    .row.inline .med_p56 {
        min-height: 1px;
    }
    .row.inline .med_pl12 {
        left: calc( -50% + 10px/2);
    }
    .row.inline .med_pl13 {
        left: calc( -33.333333% + 10px/3.666666);
    }
    .row.inline .med_pl23 {
        left: calc( -66.666666% + 10px/2.333333);
    }
    .row.inline .med_pl14 {
        left: calc( -25% + 10px/2.666666);
    }
    .row.inline .med_pl34 {
        left: calc( -75% + 10px/1.333333);
    }
    .row.inline .med_pl16 {
        left: calc( -16.666666% + 10px/2.166666);
    }
    .row.inline .med_pl56 {
        left: calc( -83.333333% + 10px/1.666666);
    }
    .row.inline .med_sx12 {
        margin-right: calc( 50% + 10px/2);
    }
    .row.inline .med_sx13 {
        margin-right: calc( 33.333333% + 10px/1.666666);
    }
    .row.inline .med_sx23 {
        margin-right: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .med_sx14 {
        margin-right: calc( 25% + 10px/2.666666);
    }
    .row.inline .med_sx34 {
        margin-right: calc( 75% + 10px/1.333333);
    }
    .row.inline .med_sx16 {
        margin-right: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .med_sx56 {
        margin-right: calc( 83.333333% + 10px/1.666666);
    }
}

@media screen and (min-width: 1024px) {
    .row.inline .lg_s1 {
        width: 100%;
    }
    .row.inline .lg_s12 {
        width: calc( 50% - 10px/2);
    }
    .row.inline .lg_s13 {
        width: calc( 33.333333% - 10px/1.666666);
    }
    .row.inline .lg_s23 {
        width: calc( 66.666666% - 10px/2.333333);
    }
    .row.inline .lg_s14 {
        width: calc( 25% - 10px/1.333333);
    }
    .row.inline .lg_s34 {
        width: calc( 75% - 10px/2.666666);
    }
    .row.inline .lg_s15 {
        width: calc( 20% - 10px/1.333333);
    }
    .row.inline .lg_s25 {
        width: calc( 40% - 10px/2);
    }
    .row.inline .lg_s35 {
        width: calc( 60% - 10px/2.333333);
    }
    .row.inline .lg_s45 {
        width: calc( 80% - 10px/2.666666);
    }
    .row.inline .lg_s16 {
        width: calc( 16.666666% - 10px/1.666666);
    }
    .row.inline .lg_s56 {
        width: calc( 83.333333% - 10px/2.166666);
    }
    .row.inline .lg_p12 {
        left: calc( 50% + 10px/2);
    }
    .row.inline .lg_p13 {
        left: calc( 33.333333% + 10px/3.666666);
    }
    .row.inline .lg_p23 {
        left: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .lg_p14 {
        left: calc( 25% + 10px/2.333333);
    }
    .row.inline .lg_p34 {
        left: calc( 75% + 10px/1.333333);
    }
    .row.inline .lg_p16 {
        left: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .lg_p56 {
        left: calc( 83.333333% + 10px/1.666666);
    }
    .row.inline .lg_p12,
    .row.inline .lg_p13,
    .row.inline .lg_p23,
    .row.inline .lg_p14,
    .row.inline .lg_p34,
    .row.inline .lg_p16,
    .row.inline .lg_p56 {
        min-height: 1px;
    }
    .row.inline .lg_pl12 {
        left: calc( -50% + 10px/2);
    }
    .row.inline .lg_pl13 {
        left: calc( -33.333333% + 10px/3.666666);
    }
    .row.inline .lg_pl23 {
        left: calc( -66.666666% + 10px/2.333333);
    }
    .row.inline .lg_pl14 {
        left: calc( -25% + 10px/2.666666);
    }
    .row.inline .lg_pl34 {
        left: calc( -75% + 10px/1.333333);
    }
    .row.inline .lg_pl16 {
        left: calc( -16.666666% + 10px/2.166666);
    }
    .row.inline .lg_pl56 {
        left: calc( -83.333333% + 10px/1.666666);
    }
    .row.inline .lg_sx12 {
        margin-right: calc( 50% + 10px/2);
    }
    .row.inline .lg_sx13 {
        margin-right: calc( 33.333333% + 10px/1.666666);
    }
    .row.inline .lg_sx23 {
        margin-right: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .lg_sx14 {
        margin-right: calc( 25% + 10px/2.666666);
    }
    .row.inline .lg_sx34 {
        margin-right: calc( 75% + 10px/1.333333);
    }
    .row.inline .lg_sx16 {
        margin-right: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .lg_sx56 {
        margin-right: calc( 83.333333% + 10px/1.666666);
    }
}

@media screen and (min-width: 1280px) {
    .row.inline .xl_s1 {
        width: 100%;
    }
    .row.inline .xl_s12 {
        width: calc( 50% - 10px/2);
    }
    .row.inline .xl_s13 {
        width: calc( 33.333333% - 10px/1.666666);
    }
    .row.inline .xl_s23 {
        width: calc( 66.666666% - 10px/2.333333);
    }
    .row.inline .xl_s14 {
        width: calc( 25% - 10px/1.333333);
    }
    .row.inline .xl_s34 {
        width: calc( 75% - 10px/2.666666);
    }
    .row.inline .xl_s15 {
        width: calc( 20% - 10px/1.333333);
    }
    .row.inline .xl_s25 {
        width: calc( 40% - 10px/2);
    }
    .row.inline .xl_s35 {
        width: calc( 60% - 10px/2.333333);
    }
    .row.inline .xl_s45 {
        width: calc( 80% - 10px/2.666666);
    }
    .row.inline .xl_s16 {
        width: calc( 16.666666% - 10px/1.6666666);
    }
    .row.inline .xl_s56 {
        width: calc( 83.333333% - 10px/2.1666666);
    }
    .row.inline .xl_p12 {
        left: calc( 50% + 10px/2);
    }
    .row.inline .xl_p13 {
        left: calc( 33.333333% + 10px/3.666666);
    }
    .row.inline .xl_p23 {
        left: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .xl_p14 {
        left: calc( 25% + 10px/2.333333);
    }
    .row.inline .xl_p34 {
        left: calc( 75% + 10px/1.333333);
    }
    .row.inline .xl_p16 {
        left: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .xl_p56 {
        left: calc( 83.333333% + 10px/1.666666);
    }
    .row.inline .xl_p12,
    .row.inline .xl_p13,
    .row.inline .xl_p23,
    .row.inline .xl_p14,
    .row.inline .xl_p34,
    .row.inline .xl_p16,
    .row.inline .xl_p56 {
        min-height: 1px;
    }
    .row.inline .xl_pl12 {
        left: calc( -50% + 10px/2);
    }
    .row.inline .xl_pl13 {
        left: calc( -33.333333% + 10px/3.666666);
    }
    .row.inline .xl_pl23 {
        left: calc( -66.666666% + 10px/2.333333);
    }
    .row.inline .xl_pl14 {
        left: calc( -25% + 10px/2.666666);
    }
    .row.inline .xl_pl34 {
        left: calc( -75% + 10px/1.333333);
    }
    .row.inline .xl_pl16 {
        left: calc( -16.666666% + 10px/2.166666);
    }
    .row.inline .xl_pl56 {
        left: calc( -83.333333% + 10px/1.666666);
    }
    .row.inline .xl_sx12 {
        margin-right: calc( 50% + 10px/2);
    }
    .row.inline .xl_sx13 {
        margin-right: calc( 33.333333% + 10px/1.666666);
    }
    .row.inline .xl_sx23 {
        margin-right: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .xl_sx14 {
        margin-right: calc( 25% + 10px/2.666666);
    }
    .row.inline .xl_sx34 {
        margin-right: calc( 75% + 10px/1.333333);
    }
    .row.inline .xl_sx16 {
        margin-right: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .xl_sx56 {
        margin-right: calc( 83.333333% + 10px/1.666666);
    }
}

@media screen and (min-width: 1400px) {
    .row.inline .xxl_s1 {
        width: 100%;
    }
    .row.inline .xxl_s12 {
        width: calc( 50% - 10px/2);
    }
    .row.inline .xxl_s13 {
        width: calc( 33.333333% - 10px/1.666666);
    }
    .row.inline .xxl_s23 {
        width: calc( 66.666666% - 10px/2.333333);
    }
    .row.inline .xxl_s14 {
        width: calc( 25% - 10px/1.333333);
    }
    .row.inline .xxl_s34 {
        width: calc( 75% - 10px/2.666666);
    }
    .row.inline .xxl_s15 {
        width: calc( 20% - 10px/1.333333);
    }
    .row.inline .xxl_s25 {
        width: calc( 40% - 10px/2);
    }
    .row.inline .xxl_s35 {
        width: calc( 60% - 10px/2.333333);
    }
    .row.inline .xxl_s45 {
        width: calc( 80% - 10px/2.666666);
    }
    .row.inline .xxl_s16 {
        width: calc( 16.666666% - 10px/1.666666);
    }
    .row.inline .xxl_s56 {
        width: calc( 83.333333% - 10px/2.166666);
    }
    .row.inline .xxl_p12 {
        left: calc( 50% + 10px/2);
    }
    .row.inline .xxl_p13 {
        left: calc( 33.333333% + 10px/3.666666);
    }
    .row.inline .xxl_p23 {
        left: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .xxl_p14 {
        left: calc( 25% + 10px/2.333333);
    }
    .row.inline .xxl_p34 {
        left: calc( 75% + 10px/1.333333);
    }
    .row.inline .xxl_p16 {
        left: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .xxl_p56 {
        left: calc( 83.333333% + 10px/1.666666);
    }
    .row.inline .xxl_p12,
    .row.inline .xxl_p13,
    .row.inline .xxl_p23,
    .row.inline .xxl_p14,
    .row.inline .xxl_p34,
    .row.inline .xxl_p16,
    .row.inline .xxl_p56 {
        min-height: 1px;
    }
    .row.inline .xxl_pl12 {
        left: calc( -50% + 10px/2);
    }
    .row.inline .xxl_pl13 {
        left: calc( -33.333333% + 10px/3.666666);
    }
    .row.inline .xxl_pl23 {
        left: calc( -66.666666% + 10px/2.333333);
    }
    .row.inline .xxl_pl14 {
        left: calc( -25% + 10px/2.666666);
    }
    .row.inline .xxl_pl34 {
        left: calc( -75% + 10px/1.333333);
    }
    .row.inline .xxl_pl16 {
        left: calc( -16.666666% + 10px/2.166666);
    }
    .row.inline .xxl_pl56 {
        left: calc( -83.333333% + 10px/1.666666);
    }
    .row.inline .xxl_sx12 {
        margin-right: calc( 50% + 10px/2);
    }
    .row.inline .xxl_sx13 {
        margin-right: calc( 33.333333% + 10px/1.666666);
    }
    .row.inline .xxl_sx23 {
        margin-right: calc( 66.666666% + 10px/2.333333);
    }
    .row.inline .xxl_sx14 {
        margin-right: calc( 25% + 10px/2.666666);
    }
    .row.inline .xxl_sx34 {
        margin-right: calc( 75% + 10px/1.333333);
    }
    .row.inline .xxl_sx16 {
        margin-right: calc( 16.666666% + 10px/2.166666);
    }
    .row.inline .xxl_sx56 {
        margin-right: calc( 83.333333% + 10px/1.666666);
    }
}


/** * Float based grid layouts, by default. */

.s1 {
    width: 100%;
    float: none;
}

.s12 {
    width: 50%;
}

.s13 {
    width: 33.333333%;
}

.s23 {
    width: 66.666666%;
}

.s14 {
    width: 25%;
}

.s34 {
    width: 75%;
}

.s15 {
    width: 20%;
}

.s25 {
    width: 40%;
}

.s35 {
    width: 60%;
}

.s45 {
    width: 80%;
}

.s16 {
    width: 16.666666%;
}

.s56 {
    width: 83.333333%;
}

.p12 {
    left: 50%;
}

.p13 {
    left: 33.333333%;
}

.p23 {
    left: 66.666666%;
}

.p14 {
    left: 25%;
}

.p34 {
    left: 75%;
}

.p16 {
    left: 16.666666%;
}

.p56 {
    left: 83.333333%;
}

.p12,
.p13,
.p23,
.p14,
.p34,
.p16,
.p56 {
    min-height: 1px;
}

.pl12 {
    left: -50%;
}

.pl13 {
    left: -33.333333%;
}

.pl23 {
    left: -66.666666%;
}

.pl14 {
    left: -25%;
}

.pl34 {
    left: -75%;
}

.pl16 {
    left: -16.666666%;
}

.pl56 {
    left: -83.333333%;
}

.sx12 {
    margin-right: 50%;
}

.sx13 {
    margin-right: 33.333333%;
}

.sx23 {
    margin-right: 66.666666%;
}

.sx14 {
    margin-right: 25%;
}

.sx34 {
    margin-right: 75%;
}

.sx16 {
    margin-right: 16.666666%;
}

.sx56 {
    margin-right: 83.333333%;
}

@media screen and (min-width: 399px) {
    .xs_s1 {
        width: 100%;
        float: none;
    }
    .xs_s12 {
        width: 50%;
    }
    .xs_s13 {
        width: 33.333333%;
    }
    .xs_s23 {
        width: 66.666666%;
    }
    .xs_s14 {
        width: 25%;
    }
    .xs_s34 {
        width: 75%;
    }
    .xs_s15 {
        width: 20%;
    }
    .xs_s25 {
        width: 40%;
    }
    .xs_s35 {
        width: 60%;
    }
    .xs_s45 {
        width: 80%;
    }
    .xs_s16 {
        width: 16.666666%;
    }
    .xs_s56 {
        width: 83.333333%;
    }
    .xs_p12 {
        left: 50%;
    }
    .xs_p13 {
        left: 33.333333%;
    }
    .xs_p23 {
        left: 66.666666%;
    }
    .xs_p14 {
        left: 25%;
    }
    .xs_p34 {
        left: 75%;
    }
    .xs_p16 {
        left: 16.666666%;
    }
    .xs_p56 {
        left: 83.333333%;
    }
    .xs_p12,
    .xs_p13,
    .xs_p23,
    .xs_p14,
    .xs_p34,
    .xs_p16,
    .xs_p56 {
        min-height: 1px;
    }
    .xs_pl12 {
        left: -50%;
    }
    .xs_pl13 {
        left: -33.333333%;
    }
    .xs_pl23 {
        left: -66.666666%;
    }
    .xs_pl14 {
        left: -25%;
    }
    .xs_pl34 {
        left: -75%;
    }
    .xs_pl16 {
        left: -16.666666%;
    }
    .xs_pl56 {
        left: -83.333333%;
    }
    .xs_sx12 {
        margin-right: 50%;
    }
    .xs_sx13 {
        margin-right: 33.333333%;
    }
    .xs_sx23 {
        margin-right: 66.666666%;
    }
    .xs_sx14 {
        margin-right: 25%;
    }
    .xs_sx34 {
        margin-right: 75%;
    }
    .xs_sx16 {
        margin-right: 16.666666%;
    }
    .xs_sx56 {
        margin-right: 83.333333%;
    }
}

@media screen and (min-width: 550px) {
    .sm_s1 {
        width: 100%;
        float: none;
    }
    .sm_s12 {
        width: 50%;
    }
    .sm_s13 {
        width: 33.333333%;
    }
    .sm_s23 {
        width: 66.666666%;
    }
    .sm_s14 {
        width: 25%;
    }
    .sm_s34 {
        width: 75%;
    }
    .sm_s15 {
        width: 20%;
    }
    .sm_s25 {
        width: 40%;
    }
    .sm_s35 {
        width: 60%;
    }
    .sm_s45 {
        width: 80%;
    }
    .sm_s16 {
        width: 16.666666%;
    }
    .sm_s56 {
        width: 83.333333%;
    }
    .sm_p12 {
        left: 50%;
    }
    .sm_p13 {
        left: 33.333333%;
    }
    .sm_p23 {
        left: 66.666666%;
    }
    .sm_p14 {
        left: 25%;
    }
    .sm_p34 {
        left: 75%;
    }
    .sm_p16 {
        left: 16.666666%;
    }
    .sm_p56 {
        left: 83.333333%;
    }
    .sm_p12,
    .sm_p13,
    .sm_p23,
    .sm_p14,
    .sm_p34,
    .sm_p16,
    .sm_p56 {
        min-height: 1px;
    }
    .sm_pl12 {
        left: -50%;
    }
    .sm_pl13 {
        left: -33.333333%;
    }
    .sm_pl23 {
        left: -66.666666%;
    }
    .sm_pl14 {
        left: -25%;
    }
    .sm_pl34 {
        left: -75%;
    }
    .sm_pl16 {
        left: -16.666666%;
    }
    .sm_pl56 {
        left: -83.333333%;
    }
    .sm_sx12 {
        margin-right: 50%;
    }
    .sm_sx13 {
        margin-right: 33.333333%;
    }
    .sm_sx23 {
        margin-right: 66.666666%;
    }
    .sm_sx14 {
        margin-right: 25%;
    }
    .sm_sx34 {
        margin-right: 75%;
    }
    .sm_sx16 {
        margin-right: 16.666666%;
    }
    .sm_sx56 {
        margin-right: 83.333333%;
    }
}

@media screen and (min-width: 768px) {
    .med_s1 {
        width: 100%;
        float: none;
    }
    .med_s12 {
        width: 50%;
    }
    .med_s13 {
        width: 33.333333%;
    }
    .med_s23 {
        width: 66.666666%;
    }
    .med_s14 {
        width: 25%;
    }
    .med_s34 {
        width: 75%;
    }
    .med_s15 {
        width: 20%;
    }
    .med_s25 {
        width: 40%;
    }
    .med_s35 {
        width: 60%;
    }
    .med_s45 {
        width: 80%;
    }
    .med_s16 {
        width: 16.666666%;
    }
    .med_s56 {
        width: 83.333333%;
    }
    .med_p12 {
        left: 50%;
    }
    .med_p13 {
        left: 33.333333%;
    }
    .med_p23 {
        left: 66.666666%;
    }
    .med_p14 {
        left: 25%;
    }
    .med_p34 {
        left: 75%;
    }
    .med_p16 {
        left: 16.666666%;
    }
    .med_p56 {
        left: 83.333333%;
    }
    .med_p12,
    .med_p13,
    .med_p23,
    .med_p14,
    .med_p34,
    .med_p16,
    .med_p56 {
        min-height: 1px;
    }
    .med_pl12 {
        left: -50%;
    }
    .med_pl13 {
        left: -33.333333%;
    }
    .med_pl23 {
        left: -66.666666%;
    }
    .med_pl14 {
        left: -25%;
    }
    .med_pl34 {
        left: -75%;
    }
    .med_pl16 {
        left: -16.666666%;
    }
    .med_pl56 {
        left: -83.333333%;
    }
    .med_sx12 {
        margin-right: 50%;
    }
    .med_sx13 {
        margin-right: 33.333333%;
    }
    .med_sx23 {
        margin-right: 66.666666%;
    }
    .med_sx14 {
        margin-right: 25%;
    }
    .med_sx34 {
        margin-right: 75%;
    }
    .med_sx16 {
        margin-right: 16.666666%;
    }
    .med_sx56 {
        margin-right: 83.333333%;
    }
}

@media screen and (min-width: 1024px) {
    .lg_s1 {
        width: 100%;
        float: none;
    }
    .lg_s12 {
        width: 50%;
    }
    .lg_s13 {
        width: 33.333333%;
    }
    .lg_s23 {
        width: 66.666666%;
    }
    .lg_s14 {
        width: 25%;
    }
    .lg_s34 {
        width: 75%;
    }
    .lg_s15 {
        width: 20%;
    }
    .lg_s25 {
        width: 40%;
    }
    .lg_s35 {
        width: 60%;
    }
    .lg_s45 {
        width: 80%;
    }
    .lg_s16 {
        width: 16.666666%;
    }
    .lg_s56 {
        width: 83.333333%;
    }
    .lg_p12 {
        left: 50%;
    }
    .lg_p13 {
        left: 33.333333%;
    }
    .lg_p23 {
        left: 66.666666%;
    }
    .lg_p14 {
        left: 25%;
    }
    .lg_p34 {
        left: 75%;
    }
    .lg_p16 {
        left: 16.666666%;
    }
    .lg_p56 {
        left: 83.333333%;
    }
    .lg_p12,
    .lg_p13,
    .lg_p23,
    .lg_p14,
    .lg_p34,
    .lg_p16,
    .lg_p56 {
        min-height: 1px;
    }
    .lg_pl12 {
        left: -50%;
    }
    .lg_pl13 {
        left: -33.333333%;
    }
    .lg_pl23 {
        left: -66.666666%;
    }
    .lg_pl14 {
        left: -25%;
    }
    .lg_pl34 {
        left: -75%;
    }
    .lg_pl16 {
        left: -16.666666%;
    }
    .lg_pl56 {
        left: -83.333333%;
    }
    .lg_sx12 {
        margin-right: 50%;
    }
    .lg_sx13 {
        margin-right: 33.333333%;
    }
    .lg_sx23 {
        margin-right: 66.666666%;
    }
    .lg_sx14 {
        margin-right: 25%;
    }
    .lg_sx34 {
        margin-right: 75%;
    }
    .lg_sx16 {
        margin-right: 16.666666%;
    }
    .lg_sx56 {
        margin-right: 83.333333%;
    }
}

@media screen and (min-width: 1280px) {
    .xl_s1 {
        width: 100%;
        float: none;
    }
    .xl_s12 {
        width: 50%;
    }
    .xl_s13 {
        width: 33.333333%;
    }
    .xl_s23 {
        width: 66.666666%;
    }
    .xl_s14 {
        width: 25%;
    }
    .xl_s34 {
        width: 75%;
    }
    .xl_s15 {
        width: 20%;
    }
    .xl_s25 {
        width: 40%;
    }
    .xl_s35 {
        width: 60%;
    }
    .xl_s45 {
        width: 80%;
    }
    .xl_s16 {
        width: 16.666666%;
    }
    .xl_s56 {
        width: 83.333333%;
    }
    .xl_p12 {
        left: 50%;
    }
    .xl_p13 {
        left: 33.333333%;
    }
    .xl_p23 {
        left: 66.666666%;
    }
    .xl_p14 {
        left: 25%;
    }
    .xl_p34 {
        left: 75%;
    }
    .xl_p16 {
        left: 16.666666%;
    }
    .xl_p56 {
        left: 83.333333%;
    }
    .xl_p12,
    .xl_p13,
    .xl_p23,
    .xl_p14,
    .xl_p34,
    .xl_p16,
    .xl_p56 {
        min-height: 1px;
    }
    .xl_pl12 {
        left: -50%;
    }
    .xl_pl13 {
        left: -33.333333%;
    }
    .xl_pl23 {
        left: -66.666666%;
    }
    .xl_pl14 {
        left: -25%;
    }
    .xl_pl34 {
        left: -75%;
    }
    .xl_pl16 {
        left: -16.666666%;
    }
    .xl_pl56 {
        left: -83.333333%;
    }
    .xl_sx12 {
        margin-right: 50%;
    }
    .xl_sx13 {
        margin-right: 33.333333%;
    }
    .xl_sx23 {
        margin-right: 66.666666%;
    }
    .xl_sx14 {
        margin-right: 25%;
    }
    .xl_sx34 {
        margin-right: 75%;
    }
    .xl_sx16 {
        margin-right: 16.666666%;
    }
    .xl_sx56 {
        margin-right: 83.333333%;
    }
}

@media screen and (min-width: 1400px) {
    .xxl_s1 {
        width: 100%;
        float: none;
    }
    .xxl_s12 {
        width: 50%;
    }
    .xxl_s13 {
        width: 33.333333%;
    }
    .xxl_s23 {
        width: 66.666666%;
    }
    .xxl_s14 {
        width: 25%;
    }
    .xxl_s34 {
        width: 75%;
    }
    .xxl_s15 {
        width: 20%;
    }
    .xxl_s25 {
        width: 40%;
    }
    .xxl_s35 {
        width: 60%;
    }
    .xxl_s45 {
        width: 80%;
    }
    .xxl_s16 {
        width: 16.666666%;
    }
    .xxl_s56 {
        width: 83.333333%;
    }
    .xxl_p12 {
        left: 50%;
    }
    .xxl_p13 {
        left: 33.333333%;
    }
    .xxl_p23 {
        left: 66.666666%;
    }
    .xxl_p14 {
        left: 25%;
    }
    .xxl_p34 {
        left: 75%;
    }
    .xxl_p16 {
        left: 16.666666%;
    }
    .xxl_p56 {
        left: 83.333333%;
    }
    .xxl_p12,
    .xxl_p13,
    .xxl_p23,
    .xxl_p14,
    .xxl_p34,
    .xxl_p16,
    .xxl_p56 {
        min-height: 1px;
    }
    .xxl_pl12 {
        left: -50%;
    }
    .xxl_pl13 {
        left: -33.333333%;
    }
    .xxl_pl23 {
        left: -66.666666%;
    }
    .xxl_pl14 {
        left: -25%;
    }
    .xxl_pl34 {
        left: -75%;
    }
    .xxl_pl16 {
        left: -16.666666%;
    }
    .xxl_pl56 {
        left: -83.333333%;
    }
    .xxl_sx12 {
        margin-right: 50%;
    }
    .xxl_sx13 {
        margin-right: 33.333333%;
    }
    .xxl_sx23 {
        margin-right: 66.666666%;
    }
    .xxl_sx14 {
        margin-right: 25%;
    }
    .xxl_sx34 {
        margin-right: 75%;
    }
    .xxl_sx16 {
        margin-right: 16.666666%;
    }
    .xxl_sx56 {
        margin-right: 83.333333%;
    }
}

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

.hr--clear {
    border: 0;
}

.visually-hidden {
    position: absolute;
    display: block;
    overflow: hidden;
    clip: rect(0 0 0 0);
    width: 1px;
    height: 1px;
    max-width: 1px;
    max-height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.bg-transparent {
    background-color: transparent;
}

.bg-transparent:hover {
    background-color: transparent !important;
}

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

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

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

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


/*
 * Responsive Table Styles
 * Used for the cart and account
 */

.med_show {
    display: none !important;
}

.sm_show {
    display: none !important;
}

@media screen and (max-width: 767px) {
    .med_hide {
        display: none !important;
    }
    .med_show {
        display: block !important;
    }
    .med_d-block-ab {
        display: block;
        position: absolute;
    }
    .med_d-block {
        display: block;
        position: relative;
    }
    .med_u-container {
        width: 100%;
    }
    .med_u-row {
        display: block;
        position: relative;
    }
    .med_u-row::before,
    .med_u-row::after {
        content: " ";
        /* 1 */
        display: table;
        /* 2 */
    }
    .med_u-row::after {
        clear: both;
        border-bottom: 1px solid var(--color-border);
        width: 100%;
    }
}

@media screen and (max-width: 550px) {
    .sm_hide {
        display: none !important;
    }
    .sm_show {
        display: block !important;
    }
}

.divider {
    display: block;
    position: relative;
    background-color: var(--color-border);
    height: 4px;
    margin: 1rem 0rem 1.4rem;
    width: 100px;
}

.divider--wide {
    display: block;
    position: relative;
    background-color: var(--color-border);
    height: 1px;
    margin: 1rem 0rem 1.4rem;
    width: 100%;
}

.inline-block {
    display: inline-block;
}

.clear-both {
    display: block;
    clear: both;
}

.bg-placeholder {
    background-repeat: repeat;
    background-size: auto;
}

.placeholder-wrapper--footer {
    position: relative;
    width: 150px;
    max-width: 100%;
}

@media screen and (max-width: 767px) {
    .placeholder-wrapper--footer {
        margin-left: auto;
        margin-right: auto;
    }
}

.errors {
    color: #c0363a;
}

.fallback-text {
    text-transform: capitalize;
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.one-hundred-height-hero {
    height: 100vh !important;
}

.seventy-five-height-hero {
    height: 75vh !important;
}

.sixty-six-height-hero {
    height: 66vh !important;
}

.ie .one-hundred-height-hero {
    height: 700px !important;
}

.ie .seventy-five-height-hero {
    height: 600px !important;
}

.ie .sixty-six-height-hero {
    height: 500px !important;
}

.seven-fifty-height-hero {
    height: 750px !important;
}

.sixty-fifty-height-hero {
    height: 650px !important;
}

.five-fifty-height-hero {
    height: 550px !important;
}

.four-fifty-height-hero {
    height: 450px !important;
}

.icon-menu {
    position: relative;
    width: 24px;
    height: 20px;
    transition: all 0.3s ease;
}

.icon-menu .diamond-bar {
    position: absolute;
    top: -12px;
    left: -10px;
    width: 44px;
    height: 42px;
    background-color: transparent;
    transition: all 0.3s ease;
}

.icon-menu .icon-bar,
.icon-menu .icon-bar:before,
.icon-menu .icon-bar:after {
    position: absolute;
    display: block;
    width: 24px;
    height: 2px;
    border-radius: 2px;
    transition: all 0.3s ease;
}

.icon-menu .icon-bar:before,
.icon-menu .icon-bar:after {
    content: "";
}

.icon-menu .icon-bar {
    top: 8px;
}

.icon-menu .icon-bar:before {
    top: -8px;
}

.icon-menu .icon-bar:after {
    top: 8px;
}

.icon-menu.open .diamond-bar {
    transform: rotate(45deg);
    background-color: var(--color-header-icon-bg);
}

.icon-menu.open .icon-bar:before,
.icon-menu.open .icon-bar:after {
    top: 0;
}

.icon-menu.open #hamburger-bar {
    background-color: transparent;
}

.icon-menu.open .icon-bar:before {
    transform: rotate(45deg);
}

.icon-menu.open .icon-bar:after {
    transform: rotate(-45deg);
}

.icon-loader {
    display: inline-block;
    width: 60px;
    height: 60px;
    background-image: var(--icon-loader);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
}


/*
 * Accent line
 */

.accent-line {
    display: block;
    margin: 2px 0 0;
}

.accent-line--curved {
    width: 75px;
    height: 10px;
}

.accent-line--curved svg {
    display: block;
    width: 100%;
    height: 100%;
}

.accent-line--curved svg path {
    fill: var(--color-accent-line);
}

.accent-line--straight {
    width: 75px;
    height: 2px;
    margin-top: 8px;
    margin-bottom: 4px;
    background-color: var(--color-accent-line);
}


/*
 * Load more
 */

.loadMore {
    margin: 0 0 40px;
    min-width: 148px;
    text-align: center;
    text-transform: uppercase;
}

@media screen and (min-width: 768px) {
    .loadMore {
        margin: 20px 0 60px;
    }
}

.loadMore.loading {
    display: none;
}

.loadMore.loading+.icon-load-more {
    display: block;
}

.loadMore--fake {
    display: none;
}

.visually-hidden+.pagination .loadMore--fake {
    display: inline-block;
}

@media screen and (max-width: 767px) {
    .empty-collection .loadMore {
        margin: 20px 0 60px;
    }
}

.icon-load-more {
    width: 60px;
    height: 60px;
    background-image: var(--icon-loader);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 0 auto;
    display: none;
}

.EndlessScroll .icon-load-more {
    display: block;
}

.loadMore--fake+.icon-load-more {
    display: none;
}

::-webkit-input-placeholder {
    color: var(--color-input-placeholder);
}

:-moz-placeholder {
    color: var(--color-input-placeholder);
}

::-moz-placeholder {
    color: var(--color-input-placeholder);
}

:-ms-input-placeholder {
    color: var(--color-input-placeholder);
}

input:-webkit-autofill {
    background-color: transparent !important;
    box-shadow: 0 0 0 1000px white inset;
}

input,
textarea,
select {
    color: var(--color-text);
    background-color: var(--color-background);
    border-radius: 0;
}

input,
textarea,
select {
    display: block;
    position: relative;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    line-height: 1.5;
    font-size: var(--font-size-body);
    line-height: normal;
    border: 0;
    padding: 10px 14px;
    -webkit-appearance: none;
    -moz-appearance: none;
}


/* IE 10 */

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

input[type=checkbox] {
    -webkit-appearance: checkbox;
    cursor: pointer;
}

select {
    padding-right: 5rem;
    cursor: pointer;
}

.selector-wrapper {
    position: relative;
}

.selector-wrapper .icon-arrow {
    display: block;
    position: absolute;
    color: var(--color-text);
    right: 14px;
    pointer-events: none;
    z-index: 10;
    bottom: 0;
    width: 12px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.selector-wrapper select {
    display: inline-block;
    height: 44px;
    max-width: 100%;
    padding-right: 50px;
    border: 1px solid var(--color-border);
}

legend {
    margin-bottom: 1rem;
    width: 100%;
}

label {
    display: block;
    position: relative;
    font-weight: var(--body-font-weight);
    width: 100%;
    margin-bottom: 10px;
}

.accessible-label {
    position: absolute;
    display: block;
    overflow: hidden;
    clip: rect(0 0 0 0);
    width: 1px;
    height: 1px;
    max-width: 1px;
    max-height: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.inputGroup {
    display: block;
    position: relative;
    margin-bottom: 1em;
    text-align: justify;
}

.inputGroup::after {
    display: inline-block;
    position: relative;
    content: "";
    width: 100%;
}

.inputGroup.inline {
    margin: 1rem auto;
}

.inputGroup.inline:first-child {
    margin-left: 0;
}

.inputGroup.inline:last-child {
    margin-right: 0;
}

.inputGroup.counter {
    width: 120px;
}

.inputGroup.no-label {
    padding-top: 10px;
}

.inputGroup::after {
    display: block;
}

.inputGroup .icon-arrow {
    position: absolute;
    right: 14px;
    bottom: 0;
    height: 45px;
    z-index: 5;
    pointer-events: none;
}

input.inline {
    display: inline-block;
    position: relative;
    margin: 1rem auto;
}

input.inline:first-child {
    margin-left: 0;
}

input.inline:last-child {
    margin-right: 0;
}

input[type=password] {
    border: 1px solid var(--color-border);
}

.search-page-form {
    display: flex;
}

.search-page-form input[type=search] {
    border: 1px solid var(--color-border);
    float: left;
    width: calc(100% - 115px);
    box-sizing: border-box;
    margin-bottom: 18px;
    line-height: normal;
    height: 50px;
    appearance: none;
    -moz-appearance: none;
    -webkit-appearance: none;
}

@media screen and (min-width: 1023px) {
    .search-page-form input[type=search] {
        width: 75%;
        margin-bottom: 0;
    }
}

.search-page-form input[type=submit] {
    float: left;
    border-width: 1px;
    width: 115px;
    line-height: 1;
    height: 50px;
    margin-top: 0;
}

@media screen and (min-width: 1023px) {
    .search-page-form input[type=submit] {
        width: 25%;
        min-width: 120px;
    }
}


/*
 * Mail Chimp
 */

.mce_hidden {
    font-size: 0;
    width: 0;
    height: 0;
    overflow: hidden;
}

.d-table {
    display: table;
    table-layout: fixed;
    width: 100%;
}

.d-table-row-group {
    display: table-row-group;
}

.d-table-header {
    display: table-header-group;
}

.d-table-footer {
    display: table-footer-group;
}

.d-table-row {
    display: table-row;
}

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


/*
 * Pagination
 */

.pagination {
    margin: 0 0 20px;
    width: 100%;
    clear: both;
    display: flex;
    align-items: center;
    justify-content: center;
    line-height: 1.2;
}

.pagination .prev,
.pagination .next,
.pagination .deco {
    display: block;
    margin: 10px;
}

.pagination .page {
    opacity: 0.6;
    transition: opacity 0.25s ease;
    margin: 10px;
    border-radius: 50%;
}

.pagination .page:hover,
.pagination .page.current {
    opacity: 1;
}

.pagination .page a,
.pagination .page.current {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    min-width: 28px;
    height: 28px;
    border-radius: 50%;
    padding: 6px;
    border: 1px solid var(--color-text);
}

.account-home .pagination {
    margin-top: 20px;
}

.responsive-image {
    position: relative;
    height: 0;
    width: 100%;
}

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

.rte h1,
.rte h2,
.rte h3,
.rte h4,
.rte h5,
.rte h6 {
    margin: 0;
}

.rte h1 {
    margin-bottom: 0.8em;
}

.rte h2 {
    margin-bottom: 0.6em;
}

.rte h3 {
    margin-bottom: 0.5em;
}

.rte h4 {
    margin-bottom: 0.4em;
}

.rte h5 {
    margin-bottom: 0.35em;
}

.rte h6 {
    margin-bottom: 0.3em;
}

.rte p {
    margin: 0.7em 0;
}

.rte img {
    max-width: 100%;
}

.rte ul,
.rte ol {
    margin: 0 0 1em 25px;
    padding: 0;
    text-align: left !important;
}

.rte ol {
    list-style: decimal inside;
}

.rte ol ul,
.rte ol ol {
    margin: 0;
    padding-left: 1em;
}

.rte ol ul {
    list-style: disc inside;
}

.rte ol ol {
    list-style: decimal inside;
}

.rte ul {
    list-style: disc inside;
}

.rte ul ul,
.rte ul ol {
    margin: 0;
    padding-left: 1em;
}

.rte ul ul {
    list-style: circle inside;
}

.rte ul ul ul {
    list-style: square inside;
}

.rte ul ol {
    list-style: decimal inside;
}

.rte li {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    line-height: 1.5;
    list-style: inherit;
    text-align: left !important;
}

.rte li div {
    text-align: left !important;
}

.rte li ul,
.rte li ol {
    margin: 0;
    padding-left: 1em;
}

.rte li ul {
    list-style: decimal inside;
}

.rte li ol {
    list-style: decimal inside;
}

.rte a {
    transition: opacity 0.2s ease;
    color: var(--color-text);
}

.rte a:hover {
    opacity: 0.8;
}

.rte blockquote {
    margin: 2em 0;
    padding-left: 1em;
    border-left: 4px solid var(--color-border);
    font-size: 20px;
    line-height: 26px;
    letter-spacing: 0.25px;
}

@media screen and (min-width: 550px) {
    .rte blockquote {
        font-size: 25px;
        line-height: 30px;
        padding-left: 2em;
    }
}

.rte table,
.rte th,
.rte td {
    border: 1px solid var(--color-border);
    border-collapse: collapse;
    padding: 0;
}

.rte table {
    width: 100%;
    margin: 20px 0;
}

.rte table tr {
    height: 40px;
}

.rte table tr:first-of-type td {
    font-size: var(--font-size-h4);
    font-weight: var(--body-font-weight-medium);
}

.rte table th,
.rte table td {
    padding: 20px;
}

.rte table th {
    font-size: var(--font-size-h4);
    font-weight: var(--body-font-weight-medium);
    text-transform: uppercase;
    background: var(--color-background-table-header);
    margin: 0;
}

.rte table td {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    line-height: 1.5;
    margin: 0;
}

html {
    touch-action: manipulation;
    font-size: var(--font-size-body);
}

body {
    display: block;
    position: relative;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    transition: opacity 0.25s ease-in-out;
    background-color: var(--color-background);
}

body.is-page-loading {
    opacity: 0;
}

a {
    color: inherit;
    text-decoration: none;
}

a .link-hover {
    transition: opacity 0.2s ease;
    color: var(--color-text);
}

a .link-hover:hover {
    opacity: 0.8;
}

.container-wrap {
    display: block;
    position: relative;
    margin: auto;
    width: 100%;
}

.container {
    display: block;
    position: relative;
    margin: 0rem auto;
    max-width: 100%;
    width: calc(100% - 80px);
    padding-left: 40px;
    padding-right: 40px;
    z-index: 0;
}

@media screen and (max-width: 1023px) {
    .container {
        width: 100%;
    }
}

@media screen and (max-width: 549px) {
    .container {
        padding: 0 20px;
    }
}


/* Use a row to specify width and .inline or .float options
 * to set up a wrapper for grids.
 */

.row {
    display: block;
    position: relative;
    margin: 0 auto;
    max-width: 100%;
    width: 100%;
    z-index: 1;
}

.row::before,
.row::after {
    content: " ";
    /* 1 */
    display: table;
    /* 2 */
}

.row::after {
    clear: both;
}

.row.row-sm {
    width: 90%;
}

@media screen and (min-width: 399px) {
    .row.row-sm {
        width: 75%;
    }
}

@media screen and (min-width: 768px) {
    .row.row-sm {
        width: 60%;
    }
}

.row.row-med {
    width: 90%;
}

@media screen and (min-width: 399px) {
    .row.row-med {
        width: 80%;
    }
}

@media screen and (min-width: 768px) {
    .row.row-med {
        width: 70%;
    }
}

.row.row-lg {
    width: 90%;
}

@media screen and (min-width: 399px) {
    .row.row-lg {
        width: 87.5%;
    }
}

@media screen and (min-width: 768px) {
    .row.row-lg {
        width: 85%;
    }
}

.row.inline {
    text-align: justify;
}

.row.inline::before {
    display: none;
}

.row.inline::after {
    display: inline-block;
    position: relative;
    content: "";
    width: 100%;
}

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

.row.inline .block {
    display: inline-block;
    position: relative;
    float: none;
}

.block {
    display: block;
    position: relative;
    float: left;
    vertical-align: top;
}

.block--right {
    float: right;
}

.content {
    display: inline-block;
    position: relative;
    margin: auto;
    text-align: left;
    width: 99%;
    vertical-align: middle;
}

.placeholder-svg,
.svg-placeholder>svg {
    background: #aba9a9;
    fill: rgba(246, 247, 255, 0.3);
}

.svg-placeholder {
    position: relative;
    overflow: hidden;
    background: #aba9a9;
}

.svg-placeholder>svg {
    position: absolute;
    left: 50%;
    top: 50%;
    height: 100%;
    max-height: 100%;
    min-height: 400px;
    max-width: 100%;
    transform: translate(-50%, -50%);
}

.header--full+.shopify-section {
    margin-top: 10px;
}


/**
 * Outer carousel container.
 */

.carousel {
    overflow: hidden;
}

.carousel .button {
    margin: 10px 0 30px;
}


/**
 * Title of section.
 */

.carousel-slide {
    padding: 0 1rem;
}

.carousel-slide-image {
    display: block;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 100%;
    width: 100%;
}

.carousel-slide-image:hover .collectionBlock-image-inner {
    opacity: 1;
}

.carousel-slide-info {
    display: block;
    position: relative;
    padding: 20px 0px 30px;
}

@media screen and (max-width: 549px) {
    .carousel-slide-info {
        padding: 15px 0px 0px;
    }
}

.carousel-slide-info::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

.pageWrap {
    display: block;
    position: relative;
    background: inherit;
}

.bodyWrap {
    transition: transform 0.25s ease-in-out;
}

.main-content {
    display: block;
    outline: none;
}

.shopify-challenge__container {
    padding: 50px 0;
}

[data-spacer=default] {
    padding-top: 120px;
}

@media screen and (max-width: 550px) {
    [data-spacer=default] {
        padding-top: 100px;
    }
}

[data-spacer=large] {
    padding-top: 160px;
}

[data-spacer=small] {
    padding-top: 100px;
}

.button-wrapper {
    margin: 30px auto;
}

.social-links {
    margin: 0 0 10px;
}

.social-links li {
    display: inline-block;
    margin-right: 10px;
}

.social-links li:last-child {
    margin-right: 0;
}

.social-link {
    display: inline-block;
}

.social-link .icon {
    display: block;
    width: 16px;
    height: 16px;
    fill: currentColor;
}

.social-link:hover {
    opacity: 0.7;
}

.mfp-arrow-left .icon,
.slick-prev .icon {
    transform: rotate(180deg);
}

.text-dark .slick-dots li {
    border-color: var(--color-text);
}

.mfp-arrow-left::before,
.mfp-arrow-left::after,
.mfp-arrow-right::before,
.mfp-arrow-right::after {
    content: none;
}

hr {
    display: block;
    position: relative;
    border: 0;
    border-top: 1px solid var(--color-border);
}


/*
 * Cart Popover
 */

.popover-container {
    display: block;
    position: fixed;
    height: 0;
    top: 0;
    width: 100%;
    z-index: 2000;
}

.popover {
    display: block;
    position: relative;
    transition: opacity 0.3s ease-in-out;
    background-color: var(--color-background);
    border: 1px solid var(--color-border);
    color: var(--color-text);
    margin: 0 auto;
    opacity: 0;
    top: 20px;
}

.popover.is-visible {
    opacity: 1;
}

.header-cartPopover {
    transition: opacity 0.3s ease-in-out, margin 0.2s ease;
    position: absolute;
    top: 100%;
    right: 80px;
    z-index: 1011;
    border: 1px solid var(--color-border);
    background-color: var(--color-background);
    color: var(--color-text);
    opacity: 0;
    margin-top: -30px;
}

@media screen and (max-width: 1023px) {
    .header-cartPopover {
        right: 40px;
    }
}

@media screen and (max-width: 767px) {
    .header-cartPopover {
        margin-top: -10px;
    }
}

.header--logo_center_links_center .header-cartPopover {
    margin-top: -50px;
}

.header--has-scrolled .header-cartPopover {
    margin-top: 0;
}

.header-cartPopover.is-visible {
    opacity: 1;
}

.header-cartPopover .h3 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: 11px;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    padding-bottom: 10px;
    text-align: center;
}

.popover-error {
    display: block;
    position: relative;
    color: var(--color-error);
    padding: 10px 20px;
    text-align: left;
    width: 250px;
}

.popover-inner {
    display: block;
    position: relative;
    cursor: pointer;
    padding: 10px 20px 20px;
    text-align: left;
    width: 250px;
}

.popover-inner::before,
.popover-inner::after {
    content: " ";
    display: table;
}

.popover-inner::after {
    clear: both;
}

.popover-item-thumb {
    display: block;
    position: relative;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    height: 75px;
    float: left;
    margin-right: 20px;
    width: 75px;
}

.popover-item-info {
    display: block;
    position: relative;
    overflow: hidden;
    font-size: var(--font-size-body);
}

.popover-item-title {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.popover-item-variant,
.popover-item-price {
    display: block;
    opacity: 0.65;
}

.popover-item-unit-price {
    display: block;
    opacity: 0.45;
    font-size: 0.9em;
}


/*================ VENDOR ================*/

.swatch {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .swatch {
        justify-content: center;
    }
}

.swatch.error {
    background-color: #E8D2D2 !important;
    color: #333 !important;
    padding: 1em;
}

.swatch.error p {
    margin: 0.7em 0;
}

.swatch.error p:first-child {
    margin-top: 0;
}

.swatch.error p:last-child {
    margin-bottom: 0;
}

.swatch.error code {
    font-family: monospace;
}

.swatch__element {
    position: relative;
    margin: 0px 18px 18px 0;
    -webkit-transform: translateZ(0);
    /* webkit flicker fix */
    -webkit-font-smoothing: antialiased;
    /* webkit text rendering fix */
}

.swatch__element::after {
    content: attr(data-value);
    position: absolute;
    left: 0;
    top: 100%;
    margin-top: 8px;
    background: var(--color-background);
    color: var(--color-text);
    padding: 2px 5px;
    border-radius: 3px;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.15);
    border: 1px solid var(--color-text-alpha-60);
    white-space: nowrap;
    pointer-events: none;
    opacity: 0;
    visibility: hidden;
    transition: transform 0.15s ease, opacity 0.15s ease, visibility 0s linear 0.15s;
    font-size: 12px;
    transform: translateY(50%);
}

.swatch__element:hover {
    z-index: 5;
}

.swatch__element:hover::after {
    opacity: 1;
    visibility: visible;
    transition: transform 0.3s ease, opacity 0.3s ease, visibility 0s linear 0s;
    transform: translateY(0);
}

@media screen and (max-width: 767px) {
    .swatch__element {
        float: none;
        display: inline-block;
        margin: 0 9px 18px;
    }
}

.swatch__input {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    border-radius: 50%;
    display: block;
    cursor: pointer;
}

.swatch__label {
    position: relative;
    border-radius: 50%;
    height: 22px;
    min-width: 22px;
    margin: 0;
    font-size: 13px;
    text-align: center;
    line-height: 22px;
    white-space: nowrap;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.soldout .swatch__label {
    opacity: 0.6;
}

.swatch__color {
    position: absolute;
    top: 0;
    left: 0;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background-color: #ddd;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    transition: box-shadow 0.2s ease;
}

.swatch__color[class*=white] {
    box-shadow: inset 0 0 0 1px rgba(0, 0, 0, 0.35);
}

.swatch__color-name {
    text-transform: none;
    padding: 3px 0 3px 30px;
    width: 100%;
    display: block;
    white-space: normal;
    text-align: left;
    line-height: 1.4;
}

.swatch--square .swatch__label {
    border-radius: 0;
}

.swatch--square .swatch__color {
    border-radius: 0;
}

.swatch--square .swatch__color::after {
    border-radius: 0;
    top: -3px;
    left: -3px;
    right: -3px;
    bottom: -3px;
}

.swatch__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    overflow: hidden;
    font-size: 0;
    line-height: 0;
    text-indent: -100%;
    display: none;
}

.product__swatch {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-top: 10px;
}

@media screen and (max-width: 767px) {
    .product__swatch {
        margin-top: 5px;
    }
}

.product__swatch .swatch__element {
    margin: 0 8px 8px 0;
}

.product__swatch .swatch__element:last-child {
    margin-right: 0;
}

.product__swatch .swatch__element::after {
    content: none;
}

.product__swatch .swatch__label {
    min-width: 12px;
    max-width: 12px;
    width: 12px;
    height: 12px;
    max-height: 12px;
    border: 0;
    border-radius: 0;
    cursor: default;
}

.product__swatch .swatch__color {
    width: 100%;
    height: 100%;
}

.product__swatch .swatch__link {
    display: block;
}

.swatch__input:checked+.swatch__label .swatch__color,
.is-active .swatch__color {
    box-shadow: inset 0 0 0 1px #000;
}

.swatch__input:checked+.swatch__label .swatch__color[class*=black],
.is-active .swatch__color[class*=black] {
    box-shadow: inset 0 0 0 1px #000, inset 0 0 0 2px #fff;
}

.disclosure {
    position: relative;
    margin-bottom: 10px;
}

.disclosure__toggle {
    text-transform: uppercase;
    text-align: left;
    letter-spacing: 0.02em;
    font-size: 0.8rem;
    line-height: normal;
    margin: 0 0 10px;
    padding: 10px 44px 10px 14px;
    white-space: nowrap;
    border: 1px solid var(--color-border);
    background: var(--color-background);
}

.disclosure__toggle .icon-arrow {
    position: absolute;
    top: 0;
}

.disclosure-list {
    background-color: var(--color-background);
    border: 1px solid var(--color-border);
    bottom: 100%;
    position: absolute;
    display: none;
    margin: 0 0 5px;
    padding: 0;
    min-height: 30px;
    max-height: 300px;
    overflow-y: auto;
}

.disclosure-list--visible {
    display: block;
}

.disclosure-list__item {
    white-space: nowrap;
    padding: 0;
    margin: 0;
    text-align: left;
}

.disclosure-list__option {
    text-transform: uppercase;
    padding: 8px 15px 8px 15px;
    width: 100%;
    display: block;
    font-size: 0.8rem;
}

.disclosure-list__option:hover {
    background-color: var(--color-footer-bottom-bg-hover);
}

.disclosure-list__item--current .disclosure-list__option span {
    border-bottom: 1px solid var(--color-footer-bottom-text);
}

.disclosure--footer {
    display: flex;
    margin-right: -15px;
}

.disclosure--footer .disclosure {
    padding-right: 10px;
}

.disclosure--footer .disclosure__toggle {
    color: var(--color-footer-bottom-text);
    background-color: var(--color-footer-bottom-bg);
    border-color: var(--color-footer-bottom-border);
}

.disclosure--footer .disclosure-list {
    background-color: var(--color-footer-bottom-bg);
    border: 1px solid var(--color-footer-bottom-border);
}

.disclosure--footer .icon-arrow {
    right: 10px;
    height: 100%;
    color: inherit;
}

@media screen and (max-width: 767px) {
    .disclosure--footer {
        justify-content: center;
    }
}


/*! Flickity v2.2.1
https://flickity.metafizzy.co
---------------------------------------------- */

.flickity-enabled {
    position: relative;
}

.flickity-enabled:focus {
    outline: none;
}

.flickity-viewport {
    overflow: hidden;
    position: relative;
    height: 100%;
    transition: height 0.3s ease-in;
}

.flickity-slider {
    position: absolute;
    width: 100%;
    height: 100%;
}

.flickity-enabled.is-draggable {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.flickity-enabled.is-draggable .flickity-viewport {
    cursor: move;
    cursor: -webkit-grab;
    cursor: grab;
}

.flickity-enabled.is-draggable .flickity-viewport.is-pointer-down {
    cursor: -webkit-grabbing;
    cursor: grabbing;
}

.flickity-button {
    position: absolute;
    background: transparent !important;
    border: none;
    color: var(--color-text) !important;
}

.flickity-button:hover {
    background: white;
    cursor: pointer;
}

.flickity-button:focus {
    outline: none;
    box-shadow: 0 0 0 5px #19F;
}

.flickity-button:disabled {
    cursor: auto;
    pointer-events: none;
}

.flickity-prev-next-button {
    top: 50%;
    width: 40px;
    height: 40px;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: translateY(-50%);
}

.flickity-prev-next-button.previous {
    left: 10px;
}

.flickity-prev-next-button.next {
    right: 10px;
}

.flickity-rtl .flickity-prev-next-button.previous {
    left: auto;
    right: 10px;
}

.flickity-rtl .flickity-prev-next-button.next {
    right: auto;
    left: 10px;
}

.flickity-page-dots {
    position: absolute;
    width: 100%;
    bottom: -25px;
    padding: 0;
    margin: 0;
    list-style: none;
    text-align: center;
    line-height: 1;
}

.flickity-page-dots {
    display: block;
    position: absolute;
    bottom: 0;
    left: 40px;
    right: 40px;
    padding: 0;
    text-align: center;
}

.flickity-rtl .flickity-page-dots {
    direction: rtl;
}

.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    background: transparent;
    border-radius: 50%;
    opacity: 0.3;
    cursor: pointer;
    border: 2px solid var(--color-text);
}

.flickity-page-dots .dot.is-selected {
    opacity: 1;
}

[data-dots-style=line] .flickity-page-dots .dot {
    height: 2px;
    width: 40px;
    border-width: 1px;
    border-radius: 0;
}

button.flickity-prev-next-button,
.flickity-prev-next-button.btn,
.flickity-prev-next-button.shopify-payment-button__button--unbranded {
    display: block;
    background-color: none !important;
    border: 0;
    z-index: 100;
    cursor: pointer;
}

button.flickity-prev-next-button.previous,
.flickity-prev-next-button.previous.btn,
.flickity-prev-next-button.previous.shopify-payment-button__button--unbranded {
    left: 0;
}

button.flickity-prev-next-button.next,
.flickity-prev-next-button.next.btn,
.flickity-prev-next-button.next.shopify-payment-button__button--unbranded {
    right: 0;
}

button.flickity-prev-next-button:disabled,
.flickity-prev-next-button.btn:disabled,
.flickity-prev-next-button.shopify-payment-button__button--unbranded:disabled,
button.flickity-prev-next-button[disabled],
.flickity-prev-next-button[disabled].btn,
.flickity-prev-next-button[disabled].shopify-payment-button__button--unbranded {
    cursor: default;
}

@media screen and (min-width: 768px) {
    button.flickity-prev-next-button,
    .flickity-prev-next-button.btn,
    .flickity-prev-next-button.shopify-payment-button__button--unbranded {
        display: block;
    }
}

.mfp-bg {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1042;
    overflow: hidden;
    position: fixed;
    background: #0b0b0b;
    opacity: 0.8;
}

.mfp-wrap {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1043;
    position: fixed;
    outline: 0 !important;
    -webkit-backface-visibility: hidden;
}

.mfp-container {
    text-align: center;
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    padding: 0 8px;
    box-sizing: border-box;
}

.mfp-container::before {
    content: "";
    display: inline-block;
    height: 100%;
    vertical-align: middle;
}

.mfp-align-top .mfp-container::before {
    display: none;
}

.mfp-content {
    position: relative;
    display: inline-block;
    vertical-align: middle;
    margin: 0 auto;
    text-align: left;
    z-index: 1045;
}

.mfp-ajax-holder .mfp-content,
.mfp-inline-holder .mfp-content {
    width: 100%;
    cursor: auto;
}

.mfp-ajax-cur {
    cursor: progress;
}

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: zoom-out;
}

.mfp-zoom {
    cursor: pointer;
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
}

.mfp-auto-cursor .mfp-content {
    cursor: auto;
}

.mfp-arrow,
.mfp-close,
.mfp-counter,
.mfp-preloader {
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
}

.mfp-loading.mfp-figure {
    display: none;
}

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

.mfp-preloader {
    color: #ccc;
    position: absolute;
    top: 50%;
    width: auto;
    text-align: center;
    margin-top: -0.8em;
    left: 8px;
    right: 8px;
    z-index: 1044;
}

.mfp-preloader a {
    color: #ccc;
}

.mfp-preloader a:hover {
    color: #fff;
}

.mfp-s-ready .mfp-preloader {
    display: none;
}

.mfp-s-error .mfp-content {
    display: none;
}

button.mfp-arrow,
.mfp-arrow.btn,
.mfp-arrow.shopify-payment-button__button--unbranded,
button.mfp-close,
.mfp-close.btn,
.mfp-close.shopify-payment-button__button--unbranded {
    overflow: visible;
    cursor: pointer;
    background: none;
    border: 0;
    -webkit-appearance: none;
    display: block;
    outline: 0;
    padding: 0;
    z-index: 1046;
    box-shadow: none;
    touch-action: manipulation;
}

button.mfp-arrow .icon,
.mfp-arrow.btn .icon,
.mfp-arrow.shopify-payment-button__button--unbranded .icon,
button.mfp-close .icon,
.mfp-close.btn .icon,
.mfp-close.shopify-payment-button__button--unbranded .icon {
    pointer-events: none;
    fill: currentColor;
}

button::-moz-focus-inner,
.btn::-moz-focus-inner,
.shopify-payment-button__button--unbranded::-moz-focus-inner {
    padding: 0;
    border: 0;
}

.mfp-close {
    width: 44px;
    height: 44px;
    line-height: 44px;
    position: absolute;
    right: 0;
    top: 0;
    text-decoration: none;
    text-align: center;
    opacity: 0.65;
    padding: 0 0 18px 10px;
    color: #fff;
    font-style: normal;
    font-size: 40px;
}

.mfp-close:focus,
.mfp-close:hover {
    opacity: 1;
}

.mfp-close .icon-close {
    display: block;
    width: 20px;
    height: 20px;
    margin: 10px;
    fill: currentColor;
    pointer-events: none;
}

.mfp-close-btn-in .mfp-close {
    color: #333;
}

.mfp-iframe-holder .mfp-close,
.mfp-image-holder .mfp-close {
    color: #fff;
    right: -10px;
    text-align: right;
    padding-right: 0;
    width: auto;
}

.mfp-counter {
    position: absolute;
    top: 0;
    right: 0;
    color: #ccc;
    font-size: 12px;
    line-height: 18px;
    white-space: nowrap;
}

.mfp-arrow {
    position: absolute;
    opacity: 0.65;
    margin: 0;
    top: 50%;
    margin-top: -55px;
    padding: 0;
    width: 90px;
    height: 110px;
    -webkit-tap-highlight-color: transparent;
}

.mfp-arrow:active {
    margin-top: -54px;
}

.mfp-arrow:focus,
.mfp-arrow:hover {
    opacity: 1;
}

.mfp-arrow::after,
.mfp-arrow::before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    position: absolute;
    left: 0;
    top: 0;
    margin-top: 35px;
    margin-left: 35px;
    border: medium inset transparent;
}

.mfp-arrow::after {
    border-top-width: 13px;
    border-bottom-width: 13px;
    top: 8px;
}

.mfp-arrow::before {
    border-top-width: 21px;
    border-bottom-width: 21px;
    opacity: 0.7;
}

.mfp-arrow-left {
    left: 0;
}

.mfp-arrow-right {
    right: 0;
}

.mfp-iframe-holder {
    padding-top: 40px;
    padding-bottom: 40px;
}

.mfp-iframe-holder .mfp-content {
    line-height: 0;
    width: 100%;
    max-width: 900px;
}

.mfp-iframe-holder .mfp-close {
    top: -40px;
}

.mfp-iframe-scaler {
    width: 100%;
    height: 0;
    overflow: hidden;
    padding-top: 56.25%;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #000;
}

.mfp-iframe-scaler iframe {
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

img.mfp-img {
    width: auto;
    max-width: 100%;
    height: auto;
    display: block;
    line-height: 0;
    box-sizing: border-box;
    padding: 40px 0 40px;
    margin: 0 auto;
    cursor: default;
}

.mfp-figure {
    line-height: 0;
}

.mfp-figure::after {
    content: "";
    position: absolute;
    left: 0;
    top: 40px;
    bottom: 40px;
    display: block;
    right: 0;
    width: auto;
    height: auto;
    z-index: -1;
    box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
    background: #444;
}

.mfp-figure small {
    color: #bdbdbd;
    display: block;
    font-size: 12px;
    line-height: 14px;
}

.mfp-figure figure {
    margin: 0;
}

.mfp-bottom-bar {
    margin-top: -36px;
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    cursor: auto;
}

.mfp-title {
    text-align: left;
    line-height: 18px;
    color: #f3f3f3;
    word-wrap: break-word;
    padding-right: 36px;
}

.mfp-image-holder .mfp-content {
    max-width: 100%;
}

.mfp-gallery .mfp-image-holder .mfp-figure {
    cursor: pointer;
}

.mfp-gallery .mfp-arrow {
    font-size: 1.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mfp-gallery .mfp-arrow::before {
    border: 0;
    margin: 0;
    position: static;
    width: auto;
    height: auto;
}

.mfp-gallery .mfp-arrow::after {
    content: none;
}

@media screen and (max-width: 800px) and (orientation: landscape),
screen and (max-height: 300px) {
    .mfp-img-mobile .mfp-image-holder {
        padding-left: 0;
        padding-right: 0;
    }
    .mfp-img-mobile img.mfp-img {
        padding: 0;
    }
    .mfp-img-mobile .mfp-figure::after {
        top: 0;
        bottom: 0;
    }
    .mfp-img-mobile .mfp-figure small {
        display: inline;
        margin-left: 5px;
    }
    .mfp-img-mobile .mfp-bottom-bar {
        background: rgba(0, 0, 0, 0.6);
        bottom: 0;
        margin: 0;
        top: auto;
        padding: 3px 5px;
        position: fixed;
        box-sizing: border-box;
    }
    .mfp-img-mobile .mfp-bottom-bar:empty {
        padding: 0;
    }
    .mfp-img-mobile .mfp-counter {
        right: 5px;
        top: 3px;
    }
    .mfp-img-mobile .mfp-close {
        top: -3px;
        right: 0;
        width: 35px;
        height: 35px;
        line-height: 35px;
        background: rgba(0, 0, 0, 0.6);
        position: fixed;
        text-align: center;
        padding: 0;
    }
}

@media all and (max-width: 900px) {
    .mfp-arrow {
        -webkit-transform: scale(0.75);
        transform: scale(0.75);
    }
    .mfp-arrow-left {
        -webkit-transform-origin: 0;
        transform-origin: 0;
    }
    .mfp-arrow-right {
        -webkit-transform-origin: 100%;
        transform-origin: 100%;
    }
    .mfp-container {
        padding-left: 6px;
        padding-right: 6px;
    }
}

div.mce_inline_error {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h5);
    line-height: 1.6;
    color: var(--color-error);
    padding: 10px 0;
    text-align: center;
}


/*================ Modals ================*/

.modal {
    -webkit-transform: translateY(-20px);
    transform: translateY(-20px);
    background-color: var(--color-background);
    color: var(--color-text);
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    overflow: hidden;
    position: fixed;
    touch-action: manipulation;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out, visibility 0s linear 0.5s;
}

.modal--is-active {
    -webkit-transform: translateY(0);
    transform: translateY(0);
    display: block;
    opacity: 1;
    visibility: visible;
    transition: opacity 0.25s ease-in-out, visibility 0s linear 0s;
}

.modal__inner {
    -moz-transform-style: preserve-3d;
    transform-style: preserve-3d;
    height: 100%;
}

.modal__centered {
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    position: relative;
    top: 50%;
}

.modal__close {
    border: 0;
    padding: 55px;
    position: fixed;
    top: 0;
    right: 0;
    z-index: 2;
}

.modal__close .icon {
    font-size: calc(((20) / (var(--font-size-base))) * 1em);
}


/* Shopify Model Viewer UI */

.shopify-model-viewer-ui {
    position: relative;
    display: inline-block;
    cursor: pointer;
}

.shopify-model-viewer-ui model-viewer {
    transform: translateZ(0);
    z-index: 1;
}

.shopify-model-viewer-ui model-viewer.shopify-model-viewer-ui__disabled {
    pointer-events: none;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen model-viewer {
    position: relative;
    width: 100vw;
    height: 100vh;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--exit-fullscreen {
    display: block;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--fullscreen .shopify-model-viewer-ui__control-icon--enter-fullscreen {
    display: none;
}

.shopify-model-viewer-ui.shopify-model-viewer-ui--desktop:hover .shopify-model-viewer-ui__controls-area,
.shopify-model-viewer-ui.shopify-model-viewer-ui--desktop.shopify-model-viewer-ui--child-focused .shopify-model-viewer-ui__controls-area {
    opacity: 1;
}

.shopify-model-viewer-ui:not(.shopify-model-viewer-ui--desktop) .shopify-model-viewer-ui__controls-area {
    display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area {
    display: flex;
    flex-direction: column;
    background: var(--color-background);
    opacity: 0;
    border: 1px solid var(--color-text-alpha-5);
    position: absolute;
    bottom: 10px;
    right: 10px;
    z-index: 1;
    transition: opacity 0.1s linear;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__controls-area:not(.shopify-model-viewer-ui__controls-area--playing) {
    display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button {
    color: var(--color-text);
    border-radius: 0;
    border: none;
    margin: 0px;
    cursor: pointer;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button:not(.focus-visible) {
    outline: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control {
    padding: 0px;
    height: 44px;
    width: 44px;
    background: transparent;
    position: relative;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:hover {
    color: var(--color-text-alpha-55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:active,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control.focus-visible:focus {
    color: var(--color-text-alpha-55);
    background: var(--color-text-alpha-5);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--control:not(:last-child):after {
    position: absolute;
    content: "";
    border-bottom: 1px solid var(--color-text-alpha-5);
    width: 28px;
    bottom: 0px;
    right: 8px;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon {
    width: 44px;
    height: 44px;
    fill: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster {
    background: var(--color-background);
    position: absolute;
    border: 1px solid var(--color-text-alpha-5);
    top: 50%;
    left: 50%;
    padding: 0;
    transform: translate3d(-50%, -50%, 0);
    height: 62px;
    width: 62px;
    z-index: 1;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:hover,
.shopify-model-viewer-ui .shopify-model-viewer-ui__button--poster:focus {
    color: var(--color-text-alpha-55);
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__poster-control-icon {
    width: 60px;
    height: 60px;
    z-index: 1;
    fill: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--exit-fullscreen {
    display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__control-icon--enter-fullscreen {
    display: block;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__spritesheet {
    display: none;
}

.shopify-model-viewer-ui .shopify-model-viewer-ui__sr-only {
    border: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

.plyr.plyr--full-ui.plyr--video {
    color: var(--color-text);
    background-color: transparent;
    /* stylelint-disable-next-line */
    /* stylelint-disable-next-line */
    /* stylelint-disable-next-line */
}

.plyr.plyr--full-ui.plyr--video .plyr__video-wrapper {
    background-color: transparent;
}

.plyr.plyr--full-ui.plyr--video .plyr__poster {
    background-color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video:fullscreen .plyr__video-wrapper .plyr.plyr--full-ui.plyr--video:fullscreen .plyr__poster {
    background-color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video:-webkit-full-screen .plyr__video-wrapper,
.plyr.plyr--full-ui.plyr--video:-webkit-full-screen .plyr__poster {
    background-color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video:-moz-full-screen .plyr__video-wrapper,
.plyr.plyr--full-ui.plyr--video:-moz-full-screen .plyr__poster {
    background-color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video:-ms-fullscreen .plyr__video-wrapper,
.plyr.plyr--full-ui.plyr--video:-ms-fullscreen .plyr__poster {
    background-color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr--fullscreen-fallback .plyr__video-wrapper,
.plyr.plyr--full-ui.plyr--video .plyr--fullscreen-fallback .plyr__poster {
    background-color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid {
    background-color: var(--color-background);
    border-color: var(--color-text-alpha-5);
}

.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid.plyr__tab-focus,
.plyr.plyr--full-ui.plyr--video .plyr__control.plyr__control--overlaid:hover {
    color: var(--color-text-alpha-55);
}

.plyr.plyr--full-ui.plyr--video .plyr__controls {
    background-color: var(--color-background);
    border-color: var(--color-text-alpha-5);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-thumb {
    box-shadow: 2px 0 0 0 var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-thumb {
    box-shadow: 2px 0 0 0 var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-thumb {
    box-shadow: 2px 0 0 0 var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-webkit-slider-runnable-track {
    background-image: linear-gradient(to right, currentColor var(--value, 0), var(--color-text-alpha-60) var(--value, 0));
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-moz-range-track {
    background-color: var(--color-text-alpha-60);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]::-ms-fill-upper {
    background-color: var(--color-text-alpha-60);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
    box-shadow: 0 0 0 4px var(--color-text-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-moz-range-track {
    box-shadow: 0 0 0 4px var(--color-text-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range].plyr__tab-focus::-ms-track {
    box-shadow: 0 0 0 4px var(--color-text-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-moz-range-thumb {
    box-shadow: 0 0 0 3px var(--color-text-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-ms-thumb {
    box-shadow: 0 0 0 3px var(--color-text-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress input[type=range]:active::-webkit-slider-thumb {
    box-shadow: 0 0 0 3px var(--color-text-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress .plyr__tooltip {
    background-color: var(--color-text);
    color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr__progress .plyr__tooltip::before {
    border-top-color: var(--color-text);
}

.plyr.plyr--full-ui.plyr--video.plyr--loading .plyr__progress__buffer {
    background-image: linear-gradient(-45deg, var(--color-text-alpha-60) 25%, transparent 25%, transparent 50%, var(--color-text-alpha-60) 50%, var(--color-text-alpha-60) 75%, transparent 75%, transparent);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range] {
    color: var(--color-background);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-moz-range-thumb {
    box-shadow: 2px 0 0 0 var(--color-text);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-ms-thumb {
    box-shadow: 2px 0 0 0 var(--color-text);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-webkit-slider-thumb {
    box-shadow: 2px 0 0 0 var(--color-text);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-webkit-slider-runnable-track {
    background-image: linear-gradient(to right, currentColor var(--value, 0), var(--color-background-alpha-60) var(--value, 0));
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-moz-range-track,
.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]::-ms-fill-upper {
    background-color: var(--color-background-alpha-60);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-webkit-slider-runnable-track {
    box-shadow: 0 0 0 4px var(--color-background-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-moz-range-track {
    box-shadow: 0 0 0 4px var(--color-background-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range].plyr__tab-focus::-ms-track {
    box-shadow: 0 0 0 4px var(--color-background-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-moz-range-thumb {
    box-shadow: 0 0 0 3px var(--color-background-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-ms-thumb {
    box-shadow: 0 0 0 3px var(--color-background-alpha-25);
}

.plyr.plyr--full-ui.plyr--video .plyr__volume input[type=range]:active::-webkit-slider-thumb {
    box-shadow: 0 0 0 3px var(--color-background-alpha-25);
}


/**
 * Product Reviews
 */

.product__reviews {
    /* Vertically center review stars on tablet and mobile */
}

.product__reviews .yotpo .yotpo-regular-box {
    border: 0;
}

@media screen and (max-width: 960px) {
    .product__reviews .yotpo.yotpo-main-widget .yotpo-bottomline .yotpo-stars,
    .product__reviews .yotpo .yotpo-modal-dialog .yotpo-bottomline .yotpo-stars {
        padding-bottom: 6px;
    }
}

.product__badge {
    margin: 0 0 10px;
    height: 30px;
    float: right;
}

@media screen and (max-width: 767px) {
    .product__badge {
        float: none;
        text-align: center;
    }
}

.product__badge .yotpo {
    pointer-events: none;
}

.product__badge .yotpo * {
    pointer-events: none;
}

.product__badge .main-widget {
    display: none;
}

.shopify-product-reviews-badge,
.yotpo.bottomLine:not([data-yotpo-element-id]) {
    display: block;
    margin: 0 0 2px;
    min-width: 64px;
    min-height: 17px;
    background-image: var(--icon-loader);
    background-size: 32px auto !important;
    background-repeat: no-repeat;
    background-position: center center;
}

.spr-badge-starrating {
    font-size: 0.79rem;
    margin-right: 5px;
}

.yotpo {
    display: inline-block;
    position: relative;
}

.yotpo a.write-review-btn-hidden {
    display: none;
    margin-left: 10px;
}

.yotpo .text-m {
    color: var(--color-text);
    margin-left: 4px;
    cursor: default;
}

.yotpo .standalone-bottomline.star-clickable,
.yotpo .standalone-bottomline .star-clickable,
.yotpo .standalone-bottomline a {
    cursor: default !important;
}

.yotpo .standalone-bottomline a,
.yotpo .standalone-bottomline a:hover,
.yotpo .standalone-bottomline a:active,
.yotpo .standalone-bottomline a:focus {
    color: var(--color-text) !important;
}

.spr-form-input {
    border: 1px solid var(--color-border);
}

.spr-starrating,
div.spr-form-input {
    border: none;
}

.spr-review-header-byline {
    font-style: normal !important;
}

.spr-review-header-byline strong {
    font-style: normal;
    font-weight: normal;
}

.spr-header-title,
.spr-summary {
    text-align: left !important;
}

.spr-summary-actions-newreview {
    margin-top: 3px;
    margin-left: 10px;
}

.reviews-fake {
    display: none !important;
}

[data-app-reviews=not-installed] .product__badge,
[data-app-reviews=not-installed] .product__reviews,
[data-app-reviews=not-installed] .spr-badge {
    display: none !important;
}

.slick-slider {
    box-sizing: border-box;
    display: block;
    position: relative;
    -moz-box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    display: block;
    height: 100%;
    margin: 0;
    overflow: hidden;
    padding: 0;
    position: relative;
    transition: height 0.3s ease;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

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

.slick-track {
    will-change: transform;
    display: block;
    height: 100%;
    left: 0;
    position: relative;
    top: 0;
}

.slick-track::after,
.slick-track::before {
    content: "";
    display: table;
}

.slick-track::after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    will-change: transform;
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
    position: relative !important;
    width: 100%;
}

[dir=rtl] .slick-slide {
    float: right;
}

.slick-slide img {
    position: relative;
    display: block;
    width: 100%;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    border: 1px solid transparent;
    display: block;
    height: auto;
}

.adaptiveHeight .slick-slide {
    height: auto !important;
}

button.slick-next,
.slick-next.btn,
.slick-next.shopify-payment-button__button--unbranded,
button.slick-prev,
.slick-prev.btn,
.slick-prev.shopify-payment-button__button--unbranded {
    position: absolute;
    top: calc(50% - 20px);
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: none !important;
    opacity: 1 !important;
    border: 0;
    cursor: pointer;
    font-size: 0;
    padding: 0;
    width: 40px;
    height: 40px;
}

@media screen and (max-width: 767px) {
    button.slick-next,
    .slick-next.btn,
    .slick-next.shopify-payment-button__button--unbranded,
    button.slick-prev,
    .slick-prev.btn,
    .slick-prev.shopify-payment-button__button--unbranded {
        display: none !important;
        visibility: hidden;
    }
}

button.slick-next.slick-disabled,
.slick-next.slick-disabled.btn,
.slick-next.slick-disabled.shopify-payment-button__button--unbranded,
button.slick-prev.slick-disabled,
.slick-prev.slick-disabled.btn,
.slick-prev.slick-disabled.shopify-payment-button__button--unbranded {
    cursor: default;
    opacity: 0;
    visibility: hidden;
}

button.slick-next.slick-disabled::after,
.slick-next.slick-disabled.btn::after,
.slick-next.slick-disabled.shopify-payment-button__button--unbranded::after,
button.slick-prev.slick-disabled::after,
.slick-prev.slick-disabled.btn::after,
.slick-prev.slick-disabled.shopify-payment-button__button--unbranded::after {
    opacity: 0;
}

.slick-next {
    right: 20px;
}

@media screen and (max-width: 1023px) {
    .slick-next {
        right: 0;
    }
}

.slick-prev {
    left: 20px;
}

@media screen and (max-width: 1023px) {
    .slick-prev {
        left: 0;
    }
}

.slick-dots {
    display: block;
    position: absolute;
    padding: 0 0 1rem 0;
    left: 0;
    right: 0;
    bottom: 30px;
    text-align: center;
}

.slick-dots li {
    display: inline-block;
    position: relative;
    transition: opacity 0.2s ease-in-out;
    -webkit-transition: opacity 0.2s ease-in-out;
    background: 0 0;
    border: 2px solid #fff;
    border-radius: 50%;
    cursor: pointer;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    opacity: 0.3;
}

.slick-dots li:hover {
    opacity: 1;
}

.slick-dots li.slick-active {
    opacity: 1;
}

.slick-dots li button,
.slick-dots li .btn,
.slick-dots li .shopify-payment-button__button--unbranded {
    display: none;
}

[data-dots-style=line] .slick-dots li {
    height: 2px;
    width: 40px;
    border-width: 1px;
    border-radius: 0;
}

.slick-next,
.slick-prev {
    background: 0 0 !important;
}


/*================ MODULES ================*/


/*
 * Header
 */

.shopify-section-header {
    position: absolute;
    width: 100%;
    z-index: 1000;
}

.shopify-section-header--fixed {
    position: fixed;
    top: 0;
    left: 0;
}

.site-header {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 120px;
    z-index: 1000;
    color: var(--color-header-text);
    background-color: var(--color-header-bg);
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
    will-change: all;
    transition: height 0.25s ease-in-out, color 0.25s ease-in-out, background 0.25s ease-in-out, transform 0.25s ease-in-out;
}

.site-header.header--has-scrolled {
    height: 60px;
}

.site-header.header--has-scrolled::before {
    height: calc(100vh - 60px);
}

.site-header>.container,
.site-header>.container>.row,
.site-header>.container>.row>.header-fix-cont {
    height: 100%;
}

.site-header::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    z-index: -1;
    height: calc(100vh - 120px);
    background: var(--color-search-overlay);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.25s ease-in-out, height 0.25s ease-in-out, visibility 0s linear 0.25s;
}

.cart--is-visible .site-header {
    width: 100vw;
}

.modal--is-visible .site-header {
    width: 100vw;
}

.header--is-standard {
    height: 120px;
}

@media screen and (min-width: 1024px) {
    .header--is-standard .menuToggle {
        display: none;
    }
    .header--is-standard .header-fix-cont {
        position: relative;
        z-index: auto;
    }
    .header--is-standard .logo {
        position: relative;
        font-size: 22px;
        align-items: center;
    }
    .header--is-standard .nav-standard {
        display: flex;
    }
}

@media screen and (min-width: 1024px) and (max-width: 1023px) {
    .header--is-standard .nav-standard {
        display: none;
    }
}

@media screen and (min-width: 1024px) {
    .header--is-standard.header--has-scrolled {
        color: var(--color-header-text-scroll);
        background-color: var(--color-header-bg-scroll);
    }
    .header--is-standard.header--has-scrolled .nav-standard .menu-item--meganav {
        padding-bottom: 16px;
        margin-bottom: -12px;
    }
    .header--is-standard.header--has-scrolled .nav-standard .megamenu-wrapper {
        padding-top: 70px;
    }
}

@media screen and (min-width: 1024px) {
    .header--logo_center_links_left .nav-standard,
    .header--logo_left_links_left .nav-standard {
        float: left;
        margin-left: -20px;
    }
    .header--logo_center_links_left .logo,
    .header--logo_left_links_left .logo {
        position: absolute;
        top: 0;
        left: 50%;
    }
}

@media screen and (min-width: 1024px) and (min-width: 768px) {
    .header--logo_center_links_left .logo,
    .header--logo_left_links_left .logo {
        transform: translateX(-50%);
    }
}

@media screen and (min-width: 1024px) {
    .header--logo_left_links_right .logo,
    .header--logo_center_links_right .logo {
        float: left;
        white-space: nowrap;
        text-align: left;
    }
    .header--logo_left_links_right .nav-standard,
    .header--logo_center_links_right .nav-standard {
        float: right;
    }
    .header--logo_left_links_right .nav-standard .menu,
    .header--logo_center_links_right .nav-standard .menu {
        margin-right: 15px;
    }
    .header--logo_left_links_right .nav-standard .menu-item:last-child>.submenu,
    .header--logo_center_links_right .nav-standard .menu-item:last-child>.submenu {
        left: auto;
        right: 0;
    }
    .header--logo_left_links_right .nav-standard .menu-item:last-child .submenu-item>.submenu,
    .header--logo_center_links_right .nav-standard .menu-item:last-child .submenu-item>.submenu {
        left: auto;
        right: 100%;
    }
}

@media screen and (min-width: 1024px) {
    .header--logo_left_links_center .logo {
        float: left;
        white-space: nowrap;
        text-align: left;
    }
    .header--logo_left_links_center .nav-standard {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        padding-left: 400px;
        padding-right: 400px;
        justify-content: center;
    }
    .header--logo_left_links_center .nav-standard .menu {
        width: auto;
        margin: 0;
    }
    .header--logo_left_links_center .nav-standard .menu-item:last-child {
        margin-right: 0;
    }
    .header--logo_left_links_center.header--has-scrolled .nav-standard .menu {
        margin-top: 0;
    }
}

.header--logo_center_links_center:not(.header--is-hamburger) {
    height: 160px;
}

@media screen and (min-width: 1024px) {
    .header--logo_center_links_center:not(.header--is-hamburger) .logo {
        position: absolute;
        top: 0;
        left: 50%;
        text-align: center;
        white-space: nowrap;
        visibility: visible;
        justify-content: center;
        margin: 0 auto;
        max-height: 120px;
        transform: translateX(-50%);
        transition: none;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .logo__text {
        margin-top: 0px;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .nav-standard {
        position: static;
        padding-top: 120px;
        clear: both;
        height: auto;
        justify-content: center;
        transition: padding 0.15s ease-in-out;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .nav-standard .menu {
        width: auto;
        margin: 0;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .nav-standard .menu-item:last-child {
        margin-right: 0;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .header-icons {
        position: absolute;
        top: 0;
        right: 0;
        max-height: 120px;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .megamenu-wrapper {
        padding-top: 160px;
        transition: padding 0.15s ease-in-out, opacity 0.25s ease-in-out, visibility 0s linear 0.25s;
    }
    .header--logo_center_links_center:not(.header--is-hamburger) .is-expanded .megamenu-wrapper {
        transition: padding 0.15s ease-in-out, opacity 0.25s ease-in-out, visibility 0s linear 0s;
    }
    .header--logo_center_links_center:not(.header--is-hamburger).header--has-scrolled {
        height: 60px;
    }
    .header--logo_center_links_center:not(.header--is-hamburger).header--has-scrolled .logo {
        position: absolute;
        top: 0;
        left: 0;
        text-align: left;
        justify-content: flex-start;
        transform: none;
    }
    .header--logo_center_links_center:not(.header--is-hamburger).header--has-scrolled .nav-standard {
        padding-top: 0;
        height: 100%;
    }
}

.header--no-bg {
    color: var(--color-header-text-home);
    background-color: var(--color-header-bg-home);
}

.header--no-bg .menuToggle .diamond-bar {
    background-color: var(--color-header-icon-bg-home);
}

.header--no-bg .icon-menu .icon-bar,
.header--no-bg .icon-menu .icon-bar:before,
.header--no-bg .icon-menu .icon-bar:after {
    background-color: var(--color-header-icon-home);
}

.header--no-bg.header--has-scrolled .menuToggle .diamond-bar {
    background-color: var(--color-header-icon-bg-scroll);
}

.header--no-bg.header--has-scrolled .icon-menu .icon-bar,
.header--no-bg.header--has-scrolled .icon-menu .icon-bar:before,
.header--no-bg.header--has-scrolled .icon-menu .icon-bar:after {
    background-color: var(--color-header-icon-scroll);
}

.header--has-scrolled {
    background-color: var(--color-dropdown-bg);
}

.header--has-scrolled,
.header--megamenu-visible,
.header--search-visible {
    color: var(--color-dropdown-text);
}

.header--has-scrolled .logo__image--home:not(.logo__image--single),
.header--megamenu-visible .logo__image--home:not(.logo__image--single),
.header--search-visible .logo__image--home:not(.logo__image--single) {
    position: absolute !important;
    visibility: hidden !important;
}

.header--has-scrolled .logo__image--other,
.header--megamenu-visible .logo__image--other,
.header--search-visible .logo__image--other {
    position: relative !important;
    visibility: visible !important;
}

.header--search-visible {
    background-color: var(--color-dropdown-bg);
    width: 100vw;
}

.header--search-visible::before {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.25s ease-in-out, height 0.25s ease-in-out, visibility 0s linear 0s;
}

.header--search-hiding {
    width: 100vw;
}

.header--search-hiding::before {
    opacity: 0;
    visibility: hidden;
}

.header--is-hamburger .header-icons .searchToggle {
    display: none;
}

.header--is-hamburger .logo {
    float: none;
    max-width: calc(100% - 160px);
}

.header--is-hamburger .header-icons {
    position: static;
}

.header--is-hamburger.header--has-scrolled {
    color: var(--color-header-text-scroll);
    background: var(--color-header-bg-scroll);
    height: 60px;
}

.header--is-hamburger.header--has-scrolled .logo__text+.logo {
    display: block;
}

@media screen and (max-width: 549px) {
    .header--is-hamburger.header--has-scrolled .logo__text {
        display: none;
    }
}

@media screen and (max-width: 549px) {
    .header--is-hamburger.header--has-scrolled .logo--text-only .logo__text {
        display: block;
    }
}

.header-fix-cont {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    z-index: 3;
    height: 100%;
}

.header-fix-cont-inner {
    height: 100%;
}

.header--logo_left_links_right .header-fix-cont-inner,
.header--logo_center_links_right .header-fix-cont-inner {
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
}


/**
 * The "X" that closes the nav on mobile.
 */

.nav-mobile-close {
    position: absolute;
    right: 40px;
    top: 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    z-index: 3;
    background: none;
    border: 0;
    padding: 0;
    color: inherit;
    cursor: pointer;
}

.nav-mobile-close .icon-close {
    display: block;
    width: 22px;
    height: 22px;
}

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


/*
* Navigations
*/

.header--is-standard~.nav-hamburger {
    display: none;
}

.nav-hamburger {
    position: fixed;
    top: 0;
    right: 100%;
    width: 100vw;
    height: 100vh;
    padding: 70px 0 0;
    z-index: 1000;
    will-change: transform;
    transition: transform 0.25s ease-in-out;
    background-color: var(--color-drawer-bg);
}

@media screen and (min-width: 768px) {
    .nav-hamburger {
        width: 320px;
    }
}

.nav--is-visible:not(.nav--is-hiding) .nav-hamburger {
    transform: translateX(100%);
}

.nav-hamburger .menu {
    padding-bottom: 0;
    padding-right: 0;
    margin-bottom: 20px;
    overflow: hidden;
    text-align: left;
    min-height: 1px;
    z-index: 1;
}

.nav-hamburger .submenu {
    position: static;
    padding: 0 0 0 25px;
    opacity: 1;
    display: none;
}

.nav-hamburger .is-expanded>.submenu {
    pointer-events: all;
}

.nav-hamburger .menu-item {
    font-size: 20px;
}

.nav-hamburger .menu-item,
.nav-hamburger .submenu-item {
    position: relative;
    line-height: 25px;
    margin: 7px 0 24px;
}

.nav-hamburger .menu-item:last-child,
.nav-hamburger .submenu-item:last-child {
    margin-bottom: 0;
}

.nav-hamburger .menu-item a,
.nav-hamburger .submenu-item a {
    padding: 5px 0;
    line-height: inherit;
    word-break: break-word;
}

.nav-hamburger .menu-item .dropdown-arrow,
.nav-hamburger .submenu-item .dropdown-arrow {
    position: absolute;
    top: 0;
    right: 0;
    margin: 0;
    padding: 10px;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    color: var(--color-drawer-text);
    border: 0;
    background-color: transparent;
    appearance: none;
    -webkit-appearance: none;
}

.nav-hamburger .menu-item .dropdown-arrow .icon-arrow,
.nav-hamburger .submenu-item .dropdown-arrow .icon-arrow {
    transition: transform 0.25s ease;
}

.nav-hamburger .menu-item.has-submenu>a,
.nav-hamburger .submenu-item.has-submenu>a {
    padding-right: 24px;
}

.nav-hamburger .menu-item.has-submenu>a::after,
.nav-hamburger .submenu-item.has-submenu>a::after {
    content: none;
}

.nav-hamburger .menu-item.has-submenu.is-expanded>.dropdown-arrow .icon-arrow,
.nav-hamburger .submenu-item.has-submenu.is-expanded>.dropdown-arrow .icon-arrow {
    transform: rotateX(180deg);
}

.nav-hamburger .submenu-item {
    margin: 0;
  font-size: 18px;
  
}

.nav-hamburger .submenu-item a {
    border-bottom: 1px solid var(--color-border);
    padding: 12px 0;
    line-height: 20px;
}

.nav-hamburger .submenu-item .dropdown-arrow {
    top: 5px;
}

.nav-hamburger .submenu-item .submenu {
    border: 1px solid var(--color-border);
    border-top: 0;
    padding: 0 20px;
    margin-bottom: 10px;
}

.nav-hamburger .submenu-item .submenu .submenu-item {
    font-size: 14px;
}

.nav-hamburger .submenu-item .submenu .submenu-item:last-child a {
    border-bottom: none;
}

.nav-inner {
    width: 100%;
    overflow-x: hidden;
    overflow-y: auto;
    max-height: calc(100vh - 70px);
    padding: 0 45px;
}

.nav-inner .nav-search .h4 {
    color: inherit;
}

.nav-inner-wrapper {
    position: relative;
    width: calc(100vw - 90px);
    margin: 0 auto 70px;
}

@media screen and (min-width: 768px) {
    .nav-inner-wrapper {
        width: 230px;
    }

}

.nav-user {
    border-top: 2px solid var(--color-drawer-text);
    padding: 33px 0 15px;
    font-size: 1.14rem;
    line-height: 25px;
}

.nav-user__item {
    margin-bottom: 17px;
}

.nav-user__item:last-child {
    margin-bottom: 0;
}

.nav--is-hiding {
    overflow-x: hidden;
}


/*
 * Menu
 */

.menu {
    display: block;
    position: relative;
    min-height: 48%;
    text-align: center;
    width: 100%;
    padding-bottom: 35px;
}

.menu.menu--has-meganav {
    position: static;
}

.menu-item,
.submenu-item {
    font-size: 15px;
    line-height: 1.5;
    margin: 0.6em auto;
  
    /**
   * Just the link is what get's animated out of frame.
   */
}

.menu-item>a,
.submenu-item>a {
    display: block;
    opacity: 1;
    line-height: 25px;
}

.submenu-item>a {
    line-height: 20px;
}

.menu-item>a::after,
.submenu-item>a::after,
.submenu-item__title::after {
    content: "";
    display: block;
    border-bottom: 2px solid var(--color-header-text);
    margin-bottom: -2px;
    transform-origin: 100% 50%;
    transform: scaleX(0);
    transition: transform 0.2s ease-in-out;
}

.header--no-bg .menu-item>a::after,
.header--no-bg .submenu-item>a::after,
.header--no-bg .submenu-item__title::after {
    border-color: var(--color-header-text-home);
}

.header--has-scrolled .menu-item>a::after,
.header--has-scrolled .submenu-item>a::after,
.header--has-scrolled .submenu-item__title::after {
    border-color: var(--color-header-text-scroll);
}

.header--search-visible .menu-item>a::after,
.header--megamenu-visible .menu-item>a::after,
.header--search-visible .submenu-item>a::after,
.header--megamenu-visible .submenu-item>a::after,
.header--search-visible .submenu-item__title::after,
.header--megamenu-visible .submenu-item__title::after {
    border-color: var(--color-dropdown-text);
}

.nav-hamburger .menu-item>a::after,
.nav-hamburger .submenu-item>a::after,
.nav-hamburger .submenu-item__title::after {
    content: none;
}

.menu-item>a:hover::after,
.submenu-item>a:hover::after,
.submenu-item__title:hover::after {
    transform: scaleX(1);
    transform-origin: 0% 50%;
}

.submenu-item>a::after {
    border-color: var(--color-dropdown-text);
}

.header--no-bg .submenu-item>a::after,
.header--has-scrolled .submenu-item>a::after,
.header--search-visible .submenu-item>a::after,
.header--megamenu-visible .submenu-item>a::after {
    border-color: var(--color-dropdown-text);
}

.toggle-submenu {
    display: inline-block;
    vertical-align: middle;
    margin: 0 0 0 6px;
    line-height: 25px;
    padding: 0;
    background: transparent;
    color: inherit;
    border: none;
    pointer-events: none;
    transform: translateZ(0);
}

.toggle-submenu .icon {
    display: block;
    width: 12px;
    height: 12px;
    will-change: transform;
    transform-style: preserve-3d;
    transition: transform 0.25s ease-in-out;
}

.is-expanded .toggle-submenu .icon {
    transform: rotateX(180deg);
}


/**
 * Submenu
 */

.submenu {
    display: block;
    position: absolute;
    transition: opacity 0.25s ease-in-out, visibility 0s linear 0.25s;
    left: 0;
    right: 0;
    top: 0;
    z-index: 9999;
    opacity: 0;
    visibility: hidden;
    background: var(--color-drawer-bg);
    pointer-events: none;
}

.is-expanded .submenu {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.25s ease-in-out, visibility 0s linear 0s;
}


/**
 * Stabdard Navigation
 */

.nav-standard {
    display: none;
    align-items: center;
    justify-content: flex-start;
    height: 100%;
}

.nav-standard .menu {
    display: flex;
    align-items: flex-start;
    min-height: 1px;
    padding: 0;
    height: auto !important;
}

.nav-standard .submenu {
    top: 100%;
    right: auto;
    z-index: 1000;
    background: var(--color-dropdown-bg);
    color: var(--color-dropdown-text);
    border-radius: 3px;
    width: auto;
    min-width: 124px;
    text-align: left;
    padding: 4px 0 0;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    transform: none;
}

.nav-standard .menu-item,
.nav-standard .submenu-item {
    position: relative;
    font-size: 15px; 
}

.nav-standard .menu-item>a,
.nav-standard .submenu-item>a {
    display: inline-block;
    width: auto;
    white-space: nowrap;
    vertical-align: middle;
}

.nav-standard .menu-item {
    margin: 0 9px 0 0;
    padding: 5px 20px;
    white-space: nowrap;
}

.nav-standard .menu-item>a,
.nav-standard .menu-item>.toggle-submenu {
    position: relative;
    z-index: 3;
}

.nav-standard .menu-item--meganav {
    position: static;
}

.nav-standard .menu-item--meganav .submenu-item {
    position: static;
}

.nav-standard .menu-item--meganav .submenu-item.has-submenu>a::after {
    content: "";
    display: block;
    margin: 0 0 -2px;
    transform-origin: 100% 50%;
    transform: scaleX(0);
    transition: transform 0.2s ease-in-out;
}

.nav-standard .menu-item--meganav .submenu-item.has-submenu>a:hover::after {
    transform: scaleX(1);
    transform-origin: 0% 50%;
}

.nav-standard .submenu-item {
    display: block;
    margin: 0 0 4px;
}

.nav-standard .submenu-item.has-submenu {
    position: relative;
}

.nav-standard .submenu-item.has-submenu>a::after {
    content: "";
    transform: none;
    display: inline-block;
    vertical-align: middle;
    margin: 7px 0 0 4px;
    top: auto;
    right: auto;
}

.nav-standard .submenu-item a {
    display: block;
    color: inherit;
    width: auto;
    padding: 5px 22px;
}

.nav-standard .submenu-item .submenu {
    top: 0;
    left: 100%;
    right: auto;
    margin: 0 1px;
}

.nav-standard .login-links {
    padding: 8px 0;
    position: static;
}

.nav-standard .nav-footer {
    padding: 0;
}

.menu-item--meganav {
    position: static;
}

.menu-item--meganav.is-expanded {
    padding-bottom: 57px;
    margin-bottom: -53px;
}

.menu-item--meganav .submenu {
    position: static;
    pointer-events: none;
    opacity: 1;
    visibility: visible;
    box-shadow: none;
    padding: 0;
    margin: 0;
    background: transparent;
    overflow: hidden;
    display: flex;
    flex-wrap: wrap;
    transition: none;
    transform: none;
}

.menu-item--meganav .submenu .submenu-item {
    width: 25%;
    padding-bottom: 20px;
    padding-right: 40px;
}

.menu-item--meganav .submenu .submenu-item:nth-child(4n+1) {
    clear: left;
}

.menu-item--meganav .submenu .submenu-item a {
    display: inline-block;
    opacity: 1;
    padding: 0;
    white-space: normal;
}

.menu-item--meganav .submenu .submenu-item a.submenu-item__title {
    padding: 5px 0;
    font-size: 18px;
    font-weight: var(--body-font-weight-bold);
    margin-bottom: 15px;
    opacity: 1;
}

.menu-item--meganav .submenu .submenu-item:hover>a {
    transform: none;
}

.menu-item--meganav .submenu .submenu-item .submenu {
    top: auto;
    left: auto;
    margin: 0;
    display: block;
}

.menu-item--meganav .submenu .submenu-item .submenu .submenu-item {
    float: none;
    display: block;
    padding-bottom: 0;
    margin-bottom: 10px;
    width: 100%;
}

.menu-item--meganav .submenu.submenu--items-1 .submenu-item {
    width: 90%;
}

.menu-item--meganav .submenu.submenu--items-2 .submenu-item {
    width: 40%;
}

.menu-item--meganav .submenu.submenu--items-2 .submenu-item:nth-child(2n+1) {
    clear: left;
}

.menu-item--meganav .submenu.submenu--items-3 .submenu-item {
    width: 33.33%;
}

.menu-item--meganav .submenu.submenu--items-3 .submenu-item:nth-child(4n+1) {
    clear: none;
}

.menu-item--meganav .submenu.submenu--items-3 .submenu-item:nth-child(3n+1) {
    clear: left;
}

.megamenu__image {
    float: left;
    width: 29%;
    margin-right: 6%;
    text-align: left;
    padding-bottom: 20px;
}

.megamenu__image a {
    width: 100%;
    opacity: 1;
}

.megamenu__image h2 {
    font-size: var(--font-size-h1);
}

.megamenu__image h4 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: var(--font-size-base);
    position: relative;
    display: flex;
}

.megamenu__image h4 span {
    position: relative;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    background: var(--color-dropdown-bg);
    padding-right: 16px;
    max-width: 90%;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

.megamenu__image h4::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    width: 100%;
    height: 1px;
    background: var(--color-border);
}

.megamenu__image-inner {
    display: block;
    width: 100%;
    height: auto;
    margin-bottom: 20px;
}

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

.menu-item--meganav:not(.is-expanded)>.megamenu-wrapper {
    pointer-events: none;
}

.megamenu-wrapper {
    opacity: 0;
    visibility: hidden;
    margin-top: 0px;
    z-index: -1;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
    position: absolute;
    top: 0;
    left: -80px;
    right: -80px;
    padding-top: 130px;
    background: var(--color-dropdown-bg);
    color: var(--color-dropdown-text);
    pointer-events: auto;
    transition: padding 0.25s ease-in-out, opacity 0.25s ease-in-out, visibility 0s linear 0.25s;
}

@media screen and (max-width: 1023px) {
    .megamenu-wrapper {
        left: -40px;
        right: -40px;
    }
}

@media screen and (max-width: 549px) {
    .megamenu-wrapper {
        left: -20px;
        right: -20px;
    }
}

.is-expanded .megamenu-wrapper {
    z-index: 2;
    opacity: 1;
    visibility: visible;
    transition: padding 0.25s ease-in-out, opacity 0.25s ease-in-out, visibility 0s linear 0s;
}

.is-expanded .megamenu-wrapper .submenu {
    pointer-events: auto;
}

.megamenu-inner {
    padding-top: 24px;
    max-height: calc(80vh - 60px);
    overflow-y: auto;
    overflow-x: hidden;
}

.nav-social {
    margin: 10px 0;
    padding: 0;
}

.nav-social .social-links li {
    margin-right: 15px;
}

.nav-social .social-links li:last-child {
    margin-right: 0;
}

.nav-social .social-link .icon {
    width: 20px;
    height: 20px;
}

.header-icons {
    float: right;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    color: inherit;
}

.header-icons .nav-item {
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 12px;
    cursor: pointer;
    position: relative;
    z-index: 3;
}

@media screen and (max-width: 767px) {
    .header-icons .nav-item {
        margin-right: 8px;
    }
}

.header-icons .nav-item:last-child {
    margin-right: 0;
}

.header-icons .searchToggle {
    top: auto;
}

@media screen and (max-width: 1023px) {
    .header-icons .searchToggle {
        display: none;
    }
}

.header-icons .icon path {
    stroke: currentColor;
}

.header-icons .icon-cart path:first-child {
    fill: currentColor;
}

.header-icons .icon-cart path:last-child {
    fill: var(--color-button-primary-bg);
}

.header-icons .cartToggle--empty .icon-cart path:last-child {
    opacity: 0;
}

.nav-account-link {
    width: 30px;
    height: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.nav-account-link .icon {
    width: 22px;
    height: 22px;
    display: block;
}

.nav-account-link .icon-cart {
    width: 32px;
    height: 26px;
}

.nav-account-link .icon-circle {
    width: 27px;
    height: 27px;
}

@media screen and (max-width: 399px) {
    .nav-account-link {
        margin-right: 10px;
    }
}


/**
 * Menu Icon
 */

.menuToggle {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -20px;
    font-size: 20px;
    padding: 12px 10px 10px;
    z-index: 100;
    cursor: pointer;
    transition: opacity 0.25s, background 0.25s;
    /**
   * Square behind hamburger, rotates when menu is open.
   */
}

.menuToggle .diamond-bar {
    background-color: var(--color-header-icon-bg);
}

.header--has-scrolled .menuToggle .diamond-bar {
    background-color: var(--color-header-icon-bg-scroll);
}

.icon-menu .icon-bar,
.icon-menu .icon-bar:before,
.icon-menu .icon-bar:after {
    background-color: var(--color-header-icon);
}

.header--has-scrolled .icon-menu .icon-bar,
.header--has-scrolled .icon-menu .icon-bar:before,
.header--has-scrolled .icon-menu .icon-bar:after {
    background-color: var(--color-header-icon-scroll);
}


/**
 * Cart Icon - The number of items within the cartToggle.
 */

.cartToggle {
    position: relative;
}

.cartToggle .icon-circle {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.cartToggle-items {
    position: relative;
    color: inherit;
    font-size: 12px;
    line-height: normal;
    text-align: center;
}

.searchToggle {
    width: 30px;
    height: 30px;
    margin: 0;
    padding: 0;
    border: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.searchToggle .icon-close {
    display: block;
    width: 20px;
    height: 20px;
    padding: 0;
    fill: currentColor;
}

.searchToggle--close {
    position: absolute;
    right: 0;
    top: 2px;
    right: -5px;
    z-index: 3;
    color: var(--color-dropdown-text);
    background-color: transparent;
    padding: 0;
    border: none;
}


/*
 * Main Logo
 */

.logo {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    position: relative;
    z-index: 4;
    margin: 0 auto;
    padding: 10px 0;
    text-align: center;
    color: inherit;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

@media screen and (max-width: 1023px) {
    .logo {
        max-width: calc(100% - 160px);
    }
}

@media screen and (max-width: 767px) {
    .logo {
        flex-direction: column;
    }
}

.logo .logo__image--home:not(.logo__image--single) {
    position: absolute;
    visibility: hidden;
  background: transparent;
}

.header--no-bg .logo .logo__image--home {
    position: relative;
    visibility: visible;
  background: transparent;
}

.header--no-bg .logo .logo__image--other:not(.logo__image--single) {
    position: absolute;
    visibility: hidden;
  background: transparent;
}

.logo__image {
    display: block;
    width: auto;
    max-width: inherit;
    max-height: 100%;
    object-fit: contain;
}

.logo__image-link {
    float: left;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    position: relative;
}

.logo__image-link+.logo__text {
    padding-left: 15px;
}

@media screen and (max-width: 550px) {
    .logo__image-link+.logo__text {
        padding: 10px 0;
    }
}

@media screen and (max-width: 549px) {
    .logo__image-link {
        max-width: 100%;
    }
}

.logo__text {
    font-size: 1.5rem;
    line-height: 30px;
    padding: 0;
    margin-bottom: 0;
}

@media screen and (min-width: 768px) {
    .logo__text {
        white-space: nowrap;
    }
}

@media screen and (max-width: 767px) {
    .logo__text {
        display: none;
    }
    .logo--text-only .logo__text {
        display: block;
    }
}


/**
 * Navigation Ajax search
 */

.nav-search {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin: 0;
}

.nav-search .search-form__sticky-container {
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    z-index: 10;
    background-color: var(--color-dropdown-bg);
    padding: 30px 0;
}

.nav-search .search-form {
    position: relative;
    width: 100%;
    margin: 0 auto;
}

.nav-search label.icon-search {
    position: absolute;
    top: 7px;
    left: 0;
    width: 22px;
    height: 22px;
    margin-bottom: 0;
}

.nav-search label.icon-search .icon {
    display: block;
    width: 100%;
    height: 100%;
}

.nav-search .inputGroup {
    margin: 0 auto;
    width: 100%;
    height: 35px;
}

.nav-search-overlay {
    display: block;
    position: absolute;
    transition: opacity 0.2s ease-in-out, visibility 0s linear 0.2s;
    top: 0;
    left: -80px;
    opacity: 0;
    overflow: hidden;
    z-index: 1;
    pointer-events: none;
    border-top: 1px solid var(--color-border);
    background-color: var(--color-dropdown-bg);
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
}

@media screen and (max-width: 1023px) {
    .nav-search-overlay {
        left: -40px;
    }
}

@media screen and (max-width: 549px) {
    .nav-search-overlay {
        left: -20px;
    }
}

.header--search-visible .nav-search-overlay {
    width: 100vw;
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.2s ease-in-out, visibility 0s linear 0s;
}

.header--search-hiding .nav-search-overlay {
    width: 100vw;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease-in-out, visibility 0s linear 0.2s;
}

.nav-search-input {
    font-size: 1.57rem;
    line-height: normal;
    height: 100%;
    padding: 0 47px;
    width: 100%;
    border-radius: 0;
    background: transparent;
    -webkit-appearance: none;
    box-sizing: border-box;
    color: var(--color-dropdown-text);
    box-sizing: border-box;
    box-shadow: none;
}

.nav-search-input::-ms-clear {
    display: none;
}

.nav-search-input::placeholder {
    color: var(--color-dropdown-text);
}

.nav-search-input::-webkit-input-placeholder {
    color: var(--color-dropdown-text);
}

.nav-search-input:-moz-placeholder {
    color: var(--color-dropdown-text);
}

.nav-search-input::-moz-placeholder {
    color: var(--color-dropdown-text);
}

.nav-search-input:-ms-input-placeholder {
    color: var(--color-dropdown-text);
}

input[type=search].nav-search-input {
    box-sizing: border-box;
}

.nav-search-submit {
    display: none;
}

.nav-search-scroller {
    max-height: calc(90vh - 60px);
    overflow-x: hidden;
    overflow-y: auto;
}

.nav-search-container {
    position: relative;
    width: calc(100vw - 80px - var(--scrollbar-width));
    margin-left: 40px;
}

.nav-search-container.is-searching .results::before {
    content: "";
    display: block;
    width: 64px;
    height: 64px;
    background-image: var(--icon-loader);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
    margin: 15px auto;
}

.results {
    color: var(--color-dropdown-text);
    display: flex;
    justify-content: space-between;
    margin: 0 -20px;
}

.results .no-results {
    flex-grow: 1;
    margin: 44px 20px;
    text-align: center;
}

.results__column {
    width: 20%;
    padding: 0 20px 20px;
}

.results__column--products {
    min-width: 50%;
    flex-grow: 1;
}

.results__heading {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    position: relative;
    font-size: 1.14rem;
    font-weight: var(--body-font-weight-medium);
    color: inherit;
    border-bottom: 2px solid var(--color-border-dark);
    display: flex;
    justify-content: space-between;
    text-align: left;
    margin-bottom: 30px;
    padding-bottom: 9px;
}

.results__heading .view-all {
    position: absolute;
    bottom: 0;
    right: 0;
}

.results__heading .icon {
    width: 40px;
    height: 40px;
    transform: rotate(-90deg);
}

.results__list {
    list-style: none;
}

.results__column--products .results__list {
    margin: 20px -5px 0;
    display: flex;
    flex-wrap: wrap;
}

.result__item {
    margin-bottom: 10px;
}

.results__column--products .result__item {
    width: calc(25% - 10px);
    margin: 0 5px 40px;
}

.results__column--products .result__item::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

.result__item--center {
    display: flex;
    flex-direction: column;
}

.result__image {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: var(--image-aspect-ratio);
    margin-bottom: 15px;
}

.result__image a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.result__image img {
    display: block;
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-fit: var(--image-size);
    cursor: pointer;
}

.result__image .product-status-flag {
    display: flex;
    align-items: center;
    justify-content: center;
}

.result__title {
    overflow: hidden;
    text-align: left;
    margin: 0;
    color: inherit;
    font-size: var(--font-size-h4);
    line-height: 1.5;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

.result__item--center .result__title {
    text-align: center;
    order: 1;
}

 <div class="product-tags">
   {% for tag in product.tags %}
     <span class="tag">{{ tag }}</span>
   {% endfor %}
</div>

.result__price {
    float: right;
    text-align: right;
    margin-left: 15px;
    max-width: 50%;
}

.result__item--center .result__price {
    max-width: 100%;
    order: 2;
    text-align: center;
    margin: 0 auto;
}


/*
 * Footer
 */

.site-footer {
    color: var(--color-footer-text);
    background-color: var(--color-footer-bg);
}

.site-footer ul,
.site-footer li {
    list-style-type: none;
}

.site-footer .footer-inner {
    padding-top: 40px;
    padding-bottom: 36px;
}

@media screen and (min-width: 1024px) {
    .site-footer--push {
        padding-bottom: 48px;
    }
}

.footer__blocks {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: 0 -15px;
}

@media screen and (max-width: 1023px) {
    .footer__blocks {
        margin: 0 -10px;
    }
}

@media screen and (max-width: 767px) {
    .footer__blocks {
        margin: 0;
        flex-direction: column;
        justify-content: flex-start;
        align-items: center;
        text-align: center;
    }
}

.footer__blocks--2 {
    justify-content: flex-start;
}

.footer__block {
    max-width: 20%;
    padding: 0 15px;
    line-height: 1.5;
}

@media screen and (max-width: 1023px) {
    .footer__block {
        padding: 0 10px;
    }
}

@media screen and (max-width: 767px) {
    .footer__block {
        max-width: none;
        width: 100%;
        padding: 0;
        margin: 0 0 30px;
    }
    .footer__block:last-child {
        margin-bottom: 0;
    }
}

.footer__blocks--2 .footer__block {
    width: 20%;
}

@media screen and (max-width: 767px) {
    .footer__blocks--2 .footer__block {
        width: 100%;
    }
}

.footer__block-title {
    font-size: 18px;
    font-weight: var(--body-font-weight-medium);
    margin: 0 0 15px;
}

.footer__block-text {
    margin-bottom: 10px;
}

.footer__block-menu-link {
    margin-bottom: 5px;
}

.footer__block .signUp-form .inputGroup {
    border-color: var(--color-footer-text);
}

.footer__block .signUp-form .inputGroup ::-webkit-input-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .signUp-form .inputGroup :-moz-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .signUp-form .inputGroup ::-moz-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .signUp-form .inputGroup :-ms-input-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .contact-form .inputGroup ::-webkit-input-placeholder,
.footer__block .comment-form .inputGroup ::-webkit-input-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .contact-form .inputGroup :-moz-placeholder,
.footer__block .comment-form .inputGroup :-moz-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .contact-form .inputGroup ::-moz-placeholder,
.footer__block .comment-form .inputGroup ::-moz-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .contact-form .inputGroup :-ms-input-placeholder,
.footer__block .comment-form .inputGroup :-ms-input-placeholder {
    color: var(--color-footer-placeholder-text);
}

.footer__block .contact-form input.signUp-input,
.footer__block .comment-form input.signUp-input {
    color: var(--color-footer-text);
    border-color: var(--color-footer-text);
}

.footer__block .contact-form button.signUp-submit,
.footer__block .comment-form button.signUp-submit,
.footer__block .contact-form .signUp-submit.btn,
.footer__block .comment-form .signUp-submit.btn,
.footer__block .contact-form .signUp-submit.shopify-payment-button__button--unbranded,
.footer__block .comment-form .signUp-submit.shopify-payment-button__button--unbranded {
    color: var(--color-footer-text);
    border-color: var(--color-footer-text);
}

.footer__block .contact-form button.signUp-submit:hover,
.footer__block .comment-form button.signUp-submit:hover,
.footer__block .contact-form .signUp-submit.btn:hover,
.footer__block .comment-form .signUp-submit.btn:hover,
.footer__block .contact-form .signUp-submit.shopify-payment-button__button--unbranded:hover,
.footer__block .comment-form .signUp-submit.shopify-payment-button__button--unbranded:hover {
    color: var(--color-footer-text);
    background-color: var(--color-footer-bg-hover);
}

.footer-bottom {
    padding: 28px 0 20px;
    font-size: 12px;
    line-height: 1.5;
    color: var(--color-footer-bottom-text);
    background-color: var(--color-footer-bottom-bg);
}

@media screen and (max-width: 767px) {
    .footer-bottom {
        text-align: center;
    }
}

.footer-bottom__left {
    width: 50%;
    float: left;
}

@media screen and (max-width: 767px) {
    .footer-bottom__left {
        float: none;
        width: 100%;
    }
}

.footer-bottom__right {
    max-width: 50%;
    float: right;
}

@media screen and (max-width: 767px) {
    .footer-bottom__right {
        float: none;
        max-width: none;
    }
}

.footer__logo {
    display: inline-block;
    margin: 5px 0;
}

.footer__logo img {
    display: block;
}

.footer__logo--placeholder {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 100%;
    overflow: hidden;
}

.footer__logo--placeholder svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 150%;
    height: 150%;
    transform: translate(-50%, -50%);
}

.footer__payment {
    margin: 0 0 10px;
}

@media screen and (max-width: 767px) {
    .footer__payment {
        margin-bottom: 15px;
    }
}

.footer__text,
.footer__copyright {
    color: inherit;
}

.footer__text p,
.footer__copyright p {
    font-size: inherit;
    line-height: inherit;
    margin: 0;
}

.footer__text a,
.footer__copyright a {
    text-decoration: none;
}

.footer__social {
    margin: 5px 0 0;
    text-align: right;
}

@media screen and (max-width: 767px) {
    .footer__social {
        text-align: center;
        margin: 10px 0;
    }
}

.footer__social .social-links {
    white-space: nowrap;
}

.footer__menu {
    font-size: inherit;
    line-height: inherit;
}

.footer__menu ul {
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .footer__menu ul {
        justify-content: center;
        margin-bottom: 10px;
    }
}

.footer__menu li {
    margin-right: 15px;
}

.footer__menu li:last-child {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .footer__menu li {
        margin: 0 6px 6px;
    }
}

.payment-icon-list {
    margin: 0;
    color: var(--color-footer-text);
    font-size: 1.5rem;
}

.payment-icon-list>li {
    display: inline-block;
    list-style: outside none none;
    margin: 0 4px 4px 0;
}

.payment-icon-list>li .payment-icon {
    display: inline-block;
    width: 38px;
    height: 24px;
    vertical-align: middle;
    box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
    border-radius: 3px;
}

@media screen and (max-width: 549px) {
    .payment-icon-list {
        text-align: center;
    }
}

.siteAlert {
    transition: transform 0.25s ease-in-out;
    z-index: 1000;
    overflow: hidden;
    text-align: left;
    color: var(--color-text);
    background-color: var(--color-top-bar-bg);
}

[data-scroll-lock-locked=true] .siteAlert {
    width: 100vw;
}

@media screen and (min-width: 768px) {
    .siteAlert {
        text-align: center;
    }
}

.siteAlert .alert-title {
    color: var(--color-heading);
    min-height: 35px;
}

.siteAlert .alert-text {
    color: inherit;
}

.siteAlert p {
    margin-top: 7px;
    margin-bottom: 7px;
    color: var(--color-top-bar-text);
}

.siteAlert .row.row-lg {
    display: inline-block;
}

.siteAlert .block {
    text-align: left;
    float: none;
}

.siteAlert .block p {
    font-size: 1rem;
}

@media screen and (min-width: 768px) {
    .siteAlert .block {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        max-width: 80%;
    }
}

@media screen and (max-width: 399px) {
    .siteAlert {
        display: flex;
        align-items: center;
        padding: 5px 0;
        justify-content: center;
    }
    .siteAlert .block p {
        margin: 0;
        line-height: 1.3;
    }
}

@media screen and (max-width: 1023px) {
    .siteAlert[data-status-mobile=false] {
        display: none;
    }
}

.no-js .account-form {
    display: block !important;
    margin-left: auto;
    margin-right: auto;
}

.account-form h2 {
    margin-bottom: 20px;
}

.account-form h3 {
    margin-bottom: 10px;
    font-size: var(--font-size-h2);
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

.account-form input[type=text],
.account-form input[type=email],
.account-form input[type=password],
.account-form input[type=tel] {
    font-size: var(--font-size-h4);
    background-color: white;
    border: 1px solid var(--color-border);
    width: 100%;
}

.account-form input[type=hidden] {
    display: none;
}

.account-form select {
    font-size: var(--font-size-h4);
    background-color: #FFFFFF;
    border: 1px solid var(--color-border);
    width: 100%;
}

.account-form .errors {
    margin: 10px 0;
}

.account-form .errors a {
    text-decoration: underline;
}

.account-form .button,
.account-form .account-form__submit {
    display: inline-block;
    vertical-align: middle;
    float: left;
}

@media screen and (max-width: 550px) {
    .account-form .button,
    .account-form .account-form__submit {
        text-align: center;
        width: 100%;
    }
}

.account-form .guest-login-submit {
    margin-left: 10px;
}

@media screen and (max-width: 550px) {
    .account-form .guest-login-submit {
        margin-left: 0px;
        margin-top: 10px;
    }
}

.account-form__link {
    display: inline-block;
    margin: 8px auto;
}

@media screen and (min-width: 768px) {
    .account-form__link--password {
        position: absolute;
    }
}

.account-form__info-text {
    margin-bottom: 20px;
}

.js-editAddress span.validation,
.js-addAddress span.validation {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h6);
    line-height: 1.6;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    color: #000;
    padding-top: 7px;
    display: block;
    height: 0;
    overflow: hidden;
    transition: height 0.3s ease;
}

.js-editAddress span.validation.validation--showup,
.js-addAddress span.validation.validation--showup {
    height: 20px;
}

.checkboxBlock input[type=checkbox] {
    display: inline-block;
    margin-right: 10px;
}

.checkboxBlock label {
    display: inline;
}

.account-home {
    margin: 0 auto 50px;
}

.account-home h3 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-h2);
    margin-bottom: 10px;
}

.account-home .account-orders,
.account-home .account-details {
    vertical-align: top;
}

.account-home .account-title {
    margin-bottom: 2em;
}

.account-home .account-title a {
    opacity: 0.6;
}


/* The Account: Link at the tops of the inner account pages
 */

.account-crumbs {
    margin-bottom: 2em;
}

a.account-breadcrumb {
    transition: opacity 0.2s ease;
    color: var(--color-text);
    text-decoration: underline;
}

a.account-breadcrumb:hover {
    opacity: 0.8;
}

a.account-addresses {
    transition: opacity 0.2s ease;
    color: var(--color-text);
}

a.account-addresses:hover {
    opacity: 0.8;
}


/* Global Table styles for /account pages
 */

.account-table .d-table-cell {
    padding: 15px 0;
    border-bottom: 1px solid var(--color-border);
    text-align: center;
}

.account-table .d-table-cell.no-border {
    : cn: Cn;
}

@media screen and (max-width: 767px) {
    .account-table .d-table-header {
        display: none;
    }
    .account-table .d-table-cell {
        float: left;
        text-align: left;
        border-bottom: 0px solid var(--color-border);
        border-top: 1px solid var(--color-border);
    }
    .account-table .d-table-row {
        border-bottom: 1px solid var(--color-border);
    }
    .account-table .d-table-row::before,
    .account-table .d-table-row::after {
        content: " ";
        display: table;
    }
    .account-table .d-table-row::after {
        clear: both;
    }
    .account-table .u-right {
        text-align: left;
    }
}


/* Order table on /account page
 */

.account-home-table .order-number {
    text-align: left;
}

.account-home-table .order-number a {
    text-decoration: underline;
    transition: opacity 0.2s ease;
    color: var(--color-text);
}

.account-home-table .order-number a:hover {
    opacity: 0.8;
}

.account-home-table .order-total {
    text-align: right;
}

@media screen and (max-width: 767px) {
    .account-home-table .order {
        margin: 30px 0 0;
    }
    .account-home-table .d-table-cell {
        width: 50%;
    }
    .account-home-table .order-number {
        border-top: 0px solid var(--color-border);
        width: 100%;
    }
    .account-home-table .order-number h4 {
        color: var(--color-text);
    }
    .account-home-table .order-number h4,
    .account-home-table .order-number a {
        display: inline !important;
    }
    .account-home-table .order-total {
        text-align: left;
    }
}

@media screen and (max-width: 1023px) {
    .account-details {
        margin-top: 50px;
    }
}


/*
 * Orders Page
 */

@media screen and (max-width: 767px) {
    .order-table .d-table-cell {
        width: 33%;
    }
    .order-table .order-product {
        border-top: 0px solid var(--color-border);
        width: 100%;
    }
    .order-table .order-product-total {
        text-align: left !important;
    }
    .order-table .price {
        text-align: right;
    }
}

@media screen and (max-width: 550px) {
    .order-table .table-cell-summary {
        border-top: none;
    }
    .order-table .table-cell-summary.title {
        width: 55%;
    }
    .order-table .table-cell-summary.price {
        width: 40%;
        padding-left: 5%;
        text-align: right !important;
    }
}

.order-table-summary {
    margin: 30px 0;
}

@media screen and (max-width: 767px) {
    .order-table-summary .d-table-cell {
        width: 50%;
    }
}

@media screen and (max-width: 550px) {
    .order-table-summary h2.med_show {
        border-bottom: 1px solid var(--color-border);
        padding-bottom: 15px;
        margin-bottom: 0;
    }
}

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

.order-product .order-product-thumb {
    display: inline-block;
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    height: 50px;
    margin-right: 10px;
    width: 50px;
    vertical-align: middle;
}

.order-product a {
    display: inline-block;
    position: relative;
    width: 60%;
    vertical-align: middle;
}

.order-product-discounts {
    padding-top: 5px;
}

.order-product-discounts p {
    font-size: 0.9rem;
    opacity: 0.7;
}

.order-container h3,
.order-container h4 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

.order-container h3 {
    margin-top: 15px;
}

@media screen and (max-width: 550px) {
    .order-addresses {
        margin-top: 0;
    }
}


/*
 * Addresses
 */

.saved-addresses {
    margin-top: 50px;
}

.saved-addresses .address {
    margin: 20px 0;
}

.saved-addresses .address a {
    line-height: 2.5;
    text-decoration: underline;
}

.page-title--article {
    padding-top: 50px;
}

@media screen and (max-width: 767px) {
    .page-title--article {
        padding-top: 30px;
    }
    .page-title--article .row.row-sm {
        width: 100%;
    }
}

.article__image {
    position: relative;
    padding-top: 66%;
    margin: 30px 0px;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
}

.article__image a {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}

.article__content img {
    display: block;
    margin: auto;
    margin-bottom: 40px;
    max-width: 100%;
}

@media screen and (max-width: 767px) {
    .article__content .row.row-sm {
        width: 100%;
    }
}

.article-footer {
    margin-top: 20px;
    margin-bottom: 50px;
}

.article-footer .accent-line {
    margin-bottom: 30px;
}

.article-footer .tags,
.article-footer .share {
    color: var(--color-text);
}

.article-footer .tags a,
.article-footer .share a {
    color: var(--color-text);
}

.article-footer .share {
    clear: left;
    margin: 10px 0;
}

.article-footer .share a {
    transition: opacity 0.2s ease;
    text-decoration: none;
    display: inline-block;
    vertical-align: middle;
    padding: 10px;
    color: var(--color-text);
}

.article-footer .share a:hover {
    opacity: 0.8;
}

.article-footer .share a:first-child {
    margin-left: 5px;
}

.article-footer .share-links {
    justify-content: initial;
}

.article-footer .tags {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

.prev-next {
    text-align: center;
    width: 100%;
    margin: 20px 0;
    line-height: normal;
}

.prev-next::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

.prev-next a {
    transition: opacity 0.2s ease;
    display: flex;
    align-items: center;
    color: var(--color-text);
    text-decoration: none;
}

.prev-next a:hover {
    opacity: 0.8;
}

.prev-next .icon-arrow {
    width: 12px;
    height: 12px;
}

.prev-next .__prev {
    float: left;
}

.prev-next .__next {
    float: right;
}

.prev-next .__prev .icon-arrow {
    transform: rotate(90deg);
    margin-right: 6px;
}

.prev-next .__next .icon-arrow {
    transform: rotate(-90deg);
    margin-left: 6px;
}

.back-to-all {
    float: left;
}

.back-to-all a {
    transition: opacity 0.2s ease;
    color: var(--color-text);
    text-decoration: none;
}

.back-to-all a:hover {
    opacity: 0.8;
}

.blog-listing .back-to-all {
    margin-top: -40px;
    margin-bottom: 60px;
}

.article-comments h3 {
    margin-bottom: 10px;
}

.article-comments .meta-comments {
    border-bottom: 1px solid var(--color-border);
    padding-bottom: 5px;
}

.article-comments #comments>ul>li {
    border-top: 1px solid var(--color-border);
    padding-top: 20px;
    padding-bottom: 20px;
}

.article-comments #comments>ul>li:first-child {
    border-top: 0;
}

.comment-form {
    margin-top: 10px;
}

.comment-form input[type=submit].button {
    margin-top: 10px;
    margin-bottom: 45px;
}

@media screen and (max-width: 399px) {
    .comment-form input[type=submit].button {
        width: 100%;
    }
}

.comment-form h4 {
    margin-bottom: 15px;
}

.blog-index-link {
    margin-bottom: 50px;
}

.blog-index-link .icon-arrow {
    transform: rotate(90deg);
    margin-right: 5px;
}

.blog-index-link a {
    transition: opacity 0.2s ease;
    display: flex;
    align-items: center;
    color: var(--color-text);
    text-decoration: none;
}

.blog-index-link a:hover {
    opacity: 0.8;
}

.blog-pagination {
    padding: 5px 0;
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
}

.blog-pagination .page,
.blog-pagination .next,
.blog-pagination .prev {
    padding: 0 5px;
}

.blog-pagination .page.current,
.blog-pagination .next.current,
.blog-pagination .prev.current {
    opacity: 0.8;
    text-decoration: underline;
}

.blog-pagination .page a:hover,
.blog-pagination .next a:hover,
.blog-pagination .prev a:hover {
    text-decoration: underline;
}


/*
 * Page Banners - Collections Page and About Page
 */

.shopify-section+.shopify-section .banner {
    margin-top: 10px;
}

.banner {
    display: block;
    overflow: hidden;
    margin: 10px 0 0;
}

.banner .banner-inner {
    display: block;
    position: relative;
    height: 440px;
}

@media screen and (min-width: 1024px) {
    .banner .banner-inner.banner-padded {
        height: 750px;
        padding-top: 0;
    }
}

@media screen and (min-width: 1024px) {
    .banner .banner-inner.banner-padded--normal {
        height: 650px;
        padding-top: 0;
    }
}

@media screen and (min-width: 1024px) {
    .banner .banner-inner.banner-padded--small {
        height: 550px;
        padding-top: 0;
    }
}

.banner .banner-inner.banner-padded--one-hundred {
    height: 100vh;
    padding-top: 0;
}

.banner .banner-inner.banner-padded--original-height {
    height: auto;
    padding-top: 0;
}

.banner .banner-inner.banner-padded--original-height .banner__title {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.banner .banner-inner .banner-img {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}

.banner .page-title {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    margin: 0;
    text-align: inherit;
}

.banner .page-title::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.banner .page-title h1 {
    color: inherit;
}

.banner .page-title .container {
    position: relative;
}

.banner .page-title__wrapper {
    padding-top: 30px;
    padding-bottom: 30px;
}

.banner .svg-placeholder::after {
    content: none;
}

.banner--transparent-header {
    margin: 0;
}

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

.banner--text-left,
.banner--text-bottom-left {
    text-align: left;
}

.banner--text-right,
.banner--text-bottom-right {
    text-align: right;
}

.banner--text-bottom-left .page-title,
.banner--text-bottom-right .page-title {
    align-items: flex-end;
    padding-bottom: 40px;
}

@media screen and (max-width: 550px) {
    .banner--text-bottom-left .page-title,
    .banner--text-bottom-right .page-title {
        padding-bottom: 20px;
    }
}

.banner--text-left .row,
.banner--text-bottom-left .row {
    margin-left: 0;
}

.banner--text-right .row,
.banner--text-bottom-right .row {
    margin-right: 0;
}

[data-spacer=small] .banner--transparent-header {
    margin-top: -100px;
}

[data-spacer=default] .banner--transparent-header {
    margin-top: -120px;
}

[data-spacer=large] .banner--transparent-header {
    margin-top: -160px;
}

@media screen and (max-width: 550px) {
    [data-spacer=default] .banner--transparent-header {
        margin-top: -100px;
    }
}

.banner-fallback {
    display: block;
    height: 320px;
    width: 100%;
}

.banner-img__container {
    position: relative;
    height: 0;
    width: 100%;
    overflow: hidden;
}

.banner-img__container img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.banner-about .container .banner-inner,
.banner-contact .container .banner-inner {
    height: auto;
}

.banner-about img,
.banner-contact img {
    display: block;
    width: 100%;
}

.banner-contact {
    margin-top: 50px;
}


/*
 * Blog module
 */

.blogModule {
    margin: 10px 0;
    color: var(--color-text);
}

.blogModule h1,
.blogModule h2,
.blogModule h3,
.blogModule h4,
.blogModule h5,
.blogModule h6 {
    color: var(--color-heading);
}

.blogModule a {
    position: relative;
    transition: none;
}

.blogModule .page-title {
    position: relative;
    margin-top: 50px;
    margin-bottom: 50px;
}

.blogModule .page-title h2 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h1);
    line-height: 1.1;
    margin-bottom: 0.2em;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .blogModule .page-title h2 {
        font-size: var(--font-size-h1-mobile);
    }
}

.blogModule .page-title p {
    margin: 0;
}

.blogModule .page-title .button {
    position: absolute;
    top: 1px;
    right: 0;
    margin: 0;
}

.blogModule .page-title .button:first-child:last-child {
    display: inline-block;
    position: relative;
    top: auto;
}

@media screen and (max-width: 1023px) {
    .blogModule .page-title .button {
        margin: 10px auto;
        position: relative;
        right: auto;
        top: auto;
    }
}

@media screen and (max-width: 399px) {
    .blogModule .page-title .button {
        width: 100%;
    }
}

.blogModule .page-title--no-text {
    text-align: center;
}

.blogModule .page-title--no-text .button {
    position: static;
}

.blogModule .carousel-slide-image {
    position: relative;
    width: auto;
    height: 0;
    margin-bottom: 10px;
    padding-top: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.blogModule .carousel-slide-image>.carousel-slide-excerpt {
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
}

.blogModule .carousel-slide-info {
    padding: 0 10px 0 0;
    display: block;
}

@media screen and (max-width: 767px) {
    .blogModule .carousel-slide-info {
        padding-left: 10px;
    }
}

.blogModule .carousel-slide-info+.carousel-slide-image {
    margin: 0 0 30px;
}

.blogModule .button-wrapper {
    margin: 30px auto 50px;
}

.blogModule--template {
    margin: 50px 0;
}

@media screen and (max-width: 767px) {
    .blogModule--template {
        margin-top: 20px;
    }
}

.post-meta {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    text-transform: capitalize;
}

.post-meta span::after {
    content: "•";
    margin: 0 4px;
}

.post-meta span:last-child::after {
    content: none;
}

.post-meta__date {
    margin-bottom: 0;
    text-align: left;
}

.post-meta__author {
    position: relative;
    overflow: hidden;
    text-align: right;
}

.post-title {
    margin: 15px 0;
}

.post-meta,
.post-tags {
    font-size: 0.86rem;
}

.post-tags {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding-bottom: 8px;
    pointer-events: none;
}

.blogModule-posts__post--has-image .post-tags {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 0 0 8px 10px;
}

.article--has-image .post-tags {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    padding: 18px 0 0 10px;
}

.article--no-image .post-tags {
    justify-content: center;
}

.post-tags__tag {
    display: inline-block;
    line-height: 1.5;
    padding: 1px 8px;
    background: var(--color-background);
    border: 1px solid var(--color-text);
    margin: 0 10px 10px 0;
    letter-spacing: 1px;
    text-transform: uppercase;
    pointer-events: auto;
}

@media screen and (max-width: 549px) {
    .post-tags__tag {
        padding: 0 5px;
    }
}

.blogModule-posts__post--has-image .post-tags__tag,
.article--has-image .post-tags__tag {
    border-color: transparent;
}

@media only screen and (min-width: 1024px) {
    .blogModule-posts__post.lg_s12:nth-child(2n+1),
    .blogModule-posts__post.lg_s13:nth-child(3n+1),
    .blogModule-posts__post.lg_s14:nth-child(4n+1),
    .blogModule-posts__post.lg_s15:nth-child(5n+1) {
        clear: both;
    }
}

@media only screen and (max-width: 1023px) and (min-width: 768px) {
    .blogModule-posts__post:nth-child(2n+1) {
        clear: both;
    }
}

.blogModule-posts__wrapper {
    position: relative;
    overflow: hidden;
}

.blogModule-posts {
    margin: 0 5px -20px;
}

@media screen and (min-width: 768px) {
    .blogModule-posts::after {
        content: "";
        display: table;
        clear: both;
        line-height: 0;
        height: 0;
    }
}

@media screen and (max-width: 767px) {
    .blogModule-posts--horizontal {
        margin: 0 auto;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 30px;
        margin-bottom: -30px;
    }
}

@media screen and (max-width: 767px) {
    .blogModule-posts--horizontal .blogModule-posts__post {
        display: inline-block;
        float: none;
        width: 66%;
        white-space: normal;
    }
    .blogModule-posts--horizontal .blogModule-posts__post:first-child {
        margin-left: 5px;
    }
    .blogModule-posts--horizontal .blogModule-posts__post:last-child {
        margin-right: 5px;
    }
}

.blogModule-posts__post {
    padding: 0 5px;
}

.blogModule-posts__post p {
    position: relative;
    margin: 0;
}

@media screen and (min-width: 768px) {
    .blogModule-posts__post {
        float: left;
        margin-bottom: 20px;
    }
}

.blogModule--template .blogModule-posts__post {
    margin-bottom: 20px;
}

.blogModule-posts__post-block {
    position: relative;
}

.fake-blog--image {
    padding-top: 0 !important;
    height: 200px !important;
    width: 300px !important;
    max-width: 100%;
    position: relative;
    overflow: hidden;
    margin-left: auto;
    margin-right: auto;
}

.fake-blog--image svg {
    display: block;
    max-width: 100%;
    max-height: 100%;
}

hr.post-divider {
    display: block;
    position: relative;
    border-top: 2px solid var(--color-border);
    margin: 0 auto 40px;
    width: 80px;
}

@media screen and (min-width: 768px) {
    hr.post-divider {
        display: none;
    }
}

.article--featured {
    position: relative;
    margin-bottom: 10px;
}

.article--featured::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

.article--featured .article__image-container {
    position: relative;
    float: right;
    width: calc(50% + 80px - 10px);
    margin-right: calc(-80px + 10px);
}

@media screen and (max-width: 1023px) {
    .article--featured .article__image-container {
        width: calc(50% + 40px - 10px);
        margin-right: calc(-40px + 10px);
    }
}

@media screen and (max-width: 767px) {
    .article--featured .article__image-container {
        float: none;
        width: calc(100% + 60px);
        margin: 0 -30px 10px;
    }
}

@media screen and (max-width: 549px) {
    .article--featured .article__image-container {
        width: calc(100% + 20px);
        margin: 0 -10px 10px;
    }
}

.article--featured .article__image {
    margin: 0;
    padding-top: 89%;
}

@media screen and (max-width: 767px) {
    .article--featured .article__image {
        padding-top: 66%;
    }
}

.article--featured .article__title {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    margin: 0 0 10px;
}

.article--featured .post-meta {
    margin: 10px 0 0 10px;
    text-align: center;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    font-size: 0.86rem;
    text-transform: capitalize;
}

@media screen and (min-width: 768px) {
    .article--featured .post-meta {
        position: absolute;
        top: auto;
        bottom: 0;
        width: auto;
        text-align: left;
        width: 100%;
        max-width: 100%;
        margin: 0 0 0 -8px;
        transform-origin: left bottom;
        -webkit-transform-origin: left bottom;
        transform: rotate(-90deg);
    }
}

.article--featured .article__content {
    overflow: hidden;
    padding-right: 50px;
    opacity: 1;
    transition: opacity 0.15s ease-out;
}

.article--featured .article__content p {
    font-size: 1.15rem;
    line-height: 1.78;
    margin: 0;
}

.article--featured.article--no-image {
    text-align: center;
}

.article--featured.article--no-image .article__content {
    padding-right: 0;
    max-width: 725px;
    margin: 0 auto;
}

.article--featured.article--no-image .post-meta {
    margin: 10px 0;
    display: block;
    text-align: inherit;
}

@media screen and (min-width: 768px) {
    .article--featured.article--no-image .post-meta {
        position: static;
        width: 100%;
        max-width: 100%;
        transform: none;
    }
}

@media screen and (max-width: 767px) {
    .article--featured .accent-line {
        margin-left: auto;
        margin-right: auto;
    }
    .article--featured .article__content {
        padding-right: 0;
        margin-bottom: 15px;
    }
}

.article--featured.is-loading .article__content {
    opacity: 0;
}

.blogModule-posts__post--no-image .carousel-slide-image {
    display: none;
}

@media screen and (max-width: 767px) {
    .blogModule-posts__post--no-image .post-tags {
        margin-left: 10px;
    }
}

.blog-title {
    display: inline-block;
    position: relative;
    width: auto;
}

.blog-title span+.blog-rss {
    margin-left: 12px;
}

.blog-title--has-rss {
    max-width: calc(100% - 150px);
}

.blog-rss {
    transition: opacity 0.2s ease;
    font-size: 1rem;
    line-height: normal;
    opacity: 0.4;
    position: absolute;
    top: 50%;
    left: 100%;
    margin-top: -12px;
    white-space: nowrap;
}

.blog-rss .icon-rss {
    display: inline-block;
    vertical-align: middle;
    width: 24px;
    height: 24px;
    fill: currentColor;
}

.blog-rss .blog-rss__label {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h4);
    line-height: 1.5;
    transition: opacity 0.2s ease;
    opacity: 0;
    line-height: 1.1;
    display: inline-block;
    vertical-align: middle;
    margin-left: 5px;
}

.blog-rss:hover {
    opacity: 1;
}

.blog-rss:hover .blog-rss__label {
    opacity: 1;
}

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


/*
 * Breadcrumbs
 */

.breadcrumbs {
    padding: 8px 0;
}

.breadcrumbs a,
.breadcrumbs span {
    opacity: 0.5;
}

.breadcrumbs a:hover {
    opacity: 1;
}

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

.breadcrumbs-sep {
    margin: 0 5px;
}

.cart-wrapper {
    max-width: 100%;
}

.cart-container {
    padding-top: 50px;
}

@media screen and (max-width: 767px) {
    .cart-container {
        padding-top: 25px;
    }
}

.cart-drawer {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1012;
    width: 100vw;
    height: 100vh;
    background-color: #fff;
    background-color: var(--color-background);
    touch-action: manipulation;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out, visibility 0s linear 0.5s;
}

.cart--is-visible .cart-drawer {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.25s ease-in-out, visibility 0s linear 0s;
}

.cart-drawer .scroll {
    position: relative;
    padding: 40px 0;
    width: 100%;
    height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
}

.cart-drawer #Cart {
    display: block;
    position: relative;
    min-height: calc(100vh - 80px);
    transform: translateX(80%);
    transition: transform 0.5s ease-in-out;
}

.cart-drawer #Cart.open {
    transform: translateX(0);
}

.cart-drawer #Cart.close {
    transform: translateX(80%);
    transition: transform 0.5s ease-in-out;
}

.cart-drawer #Cart .product-price {
    display: block;
}

.cart-drawer .cart-title h2 {
    padding-top: 80px;
}

.cart-drawer .cart-title--empty {
    position: absolute;
    top: 50%;
    left: 0;
    right: 0;
    margin: 0;
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
    .cart-drawer .cart-title--empty {
        padding: 0 20px;
    }
}

.cart-drawer .cart-title--empty h2 {
    padding-top: 0;
}

.cart-product__discounts p,
.cart-discounts {
    opacity: 0.7;
    font-size: 0.9rem;
    margin: 5px 0;
}

.cart-form {
    display: flex;
    margin-bottom: 50px;
}

@media screen and (max-width: 1023px) {
    .cart-form {
        flex-direction: column;
        margin-bottom: 25px;
    }
}

.cart-form .cart-table {
    padding-top: 3px;
    width: calc(100% - 465px);
}

@media screen and (max-width: 1399px) {
    .cart-form .cart-table {
        width: calc(100% - 360px);
    }
}

@media screen and (max-width: 1279px) {
    .cart-form .cart-table {
        width: calc(100% - 300px);
    }
}

@media screen and (max-width: 1023px) {
    .cart-form .cart-table {
        width: 100%;
    }
}

.cart-form .checkout-buttons {
    width: 465px;
    max-width: 100%;
    padding: 0 0 0 80px;
}

@media screen and (max-width: 1399px) {
    .cart-form .checkout-buttons {
        width: 360px;
        padding: 0 0 0 60px;
    }
}

@media screen and (max-width: 1279px) {
    .cart-form .checkout-buttons {
        width: 300px;
        padding: 0 0 0 40px;
    }
}

@media screen and (max-width: 1023px) {
    .cart-form .checkout-buttons {
        width: 360px;
        padding: 30px 0 0;
        margin: 0 auto;
    }
}

@media screen and (max-width: 399px) {
    .cart-form .checkout-buttons {
        width: 100%;
    }
}

.cart-form .additional-checkout-buttons {
    float: left;
    width: 100%;
    position: relative;
}

@media screen and (max-width: 767px) {
    .cart-form .additional-checkout-buttons {
        margin-top: 8px;
    }
}

.cart-form .additional-checkout-buttons .shopify-cleanslate>div>div {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.cart-form .additional-checkout-buttons .shopify-cleanslate>div>div>div {
    min-width: 385px !important;
    margin: 0 0 8px !important;
}

@media screen and (max-width: 1399px) {
    .cart-form .additional-checkout-buttons .shopify-cleanslate>div>div>div {
        min-width: 300px !important;
    }
}

@media screen and (max-width: 1279px) {
    .cart-form .additional-checkout-buttons .shopify-cleanslate>div>div>div {
        min-width: 260px !important;
    }
}

@media screen and (max-width: 1023px) {
    .cart-form .additional-checkout-buttons .shopify-cleanslate>div>div>div {
        min-width: 100% !important;
    }
}

.cart-close {
    position: absolute;
    top: 6px;
    right: -6px;
    width: 36px;
    height: 36px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 5;
    color: inherit;
    background: transparent;
    padding: 0;
    border: 0;
}

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

@media screen and (max-width: 767px) {
    .cart-close {
        top: -3px;
        right: -22px;
    }
}

@media screen and (max-width: 549px) {
    .cart-close {
        right: -5px;
    }
}

.cart-title {
    margin-bottom: 50px;
    float: none;
}

@media screen and (max-width: 767px) {
    .cart-title {
        margin-bottom: 40px;
        text-align: center;
    }
}

.cart-title h2 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: 3rem;
    line-height: normal;
    margin-bottom: 7px;
    padding-top: 20px;
}

@media screen and (max-width: 767px) {
    .cart-title h2 {
        font-size: 1.83rem;
    }
}

.cart-title p {
    font-size: 18px;
    margin: 0 0 17px;
}

@media screen and (max-width: 767px) {
    .cart-title p {
        font-size: 1.14rem;
    }
}

.cart-title .button {
    text-align: center;
    min-width: 385px;
    padding: 13px 30px;
    letter-spacing: 1px;
    text-transform: uppercase;
}

@media screen and (max-width: 549px) {
    .cart-title .button {
        min-width: 0;
        width: auto;
    }
}

@media screen and (max-width: 399px) {
    .cart-title .button {
        width: 100%;
    }
}

.cart-title--empty {
    text-align: center;
    margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
    .template-cart .cart-title--mobile:not(.cart-title--empty) {
        display: none;
    }
}

.js-go-back h4 {
    font-size: 0.8rem;
    margin-top: 25px;
    line-height: 2;
}


/*
 * Cart Table
 */

.cart-table {
    display: table;
}

.cart-table-header {
    display: table-header-group;
}

.cart-table-body {
    display: table-row-group;
}

.cart-table-footer {
    display: table-footer-group;
}

.cart-table-row {
    display: table-row;
}

.cart-table-cell {
    border-bottom: 1px solid var(--color-border);
    padding: 25px;
    text-align: center;
    position: relative;
}

@media screen and (min-width: 768px) {
    .cart-table-cell {
        display: table-cell;
        vertical-align: middle;
    }
    .cart-table-cell:first-child {
        text-align: left;
        padding-left: 0;
    }
    .cart-table-cell:last-child {
        text-align: right;
        padding-right: 0;
    }
}

@media screen and (max-width: 1399px) {
    .cart-table-cell {
        padding: 20px;
    }
}

@media screen and (max-width: 1279px) {
    .cart-table-cell {
        padding: 15px;
    }
}

@media screen and (max-width: 767px) {
    .cart-table-cell {
        border-bottom: 0px solid var(--color-border);
        width: auto;
        padding: 0;
        text-align: center;
    }
    .cart-table-cell:empty {
        display: none;
    }
    .cart-table-cell.is-update {
        text-align: right;
    }
}

.cart-table-header .cart-table-cell {
    color: var(--color-cart-text);
    padding-top: 2px;
    padding-bottom: 9px;
}

.cart-table-body .cart-table-cell:first-child {
    padding-left: 0;
}

.cart-table-footer .cart-table-cell {
    color: var(--color-cart-text);
    border-bottom: 0px solid var(--color-border);
    padding: 5px 0;
}

.cart-table-footer .cart-table-cell.is-update {
    text-align: center;
}

@media screen and (min-width: 768px) {
    .cart-table-cell--product {
        width: 50%;
    }
}

.cart-table-cell--quantity {
    box-sizing: content-box;
    width: 120px;
}

@media screen and (max-width: 767px) {
    .cart-table-cell--quantity {
        margin: 17px auto;
    }
}

@media screen and (min-width: 768px) {
    .cart-product {
        display: flex;
        align-items: center;
    }
}

.cart-product__thumb {
    display: inline-block;
    position: relative;
    height: 134px;
}

@media screen and (min-width: 768px) {
    .cart-product__thumb {
        flex: 0 0 110px;
        min-width: 110px;
        margin-right: 20px;
    }
}

@media screen and (max-width: 767px) {
    .cart-product__thumb {
        width: 183px;
        height: 183px;
        margin: 0 auto 10px;
    }
}

.cart-product__thumb-img {
    display: block;
    width: 100%;
    height: 100%;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
}

@media screen and (min-width: 768px) {
    .cart-product__desc {
        flex: 0 0 calc(100% - 130px);
    }
}

@media screen and (max-width: 768px) {
    .cart-product__title {
        font-size: 1.14rem;
    }
}

.cart-product__variant {
    display: block;
    opacity: 0.7;
}

.cart-product__quantity {
    text-align: center;
    width: 120px;
    margin: 0 auto;
}

.cart-product__quantity .counter {
    display: inline-block;
    position: relative;
}

.cart-product__quantity .counter .inputCounter {
    background-color: transparent;
    max-width: 120px;
}

.cart-product__quantity select {
    border: 1px solid var(--color-border);
}

.cart-product__remove {
    position: absolute;
    left: 50%;
    width: 120px;
    min-width: 0;
    margin: 7px 0 0 -60px;
    padding: 0;
    border: none;
    font-size: 0.86rem;
    opacity: 0.5;
    color: var(--color-text);
    background-color: transparent;
    text-align: center;
    cursor: pointer;
    transition: opacity 0.2s;
}

.cart-product__remove:hover {
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .cart-product__remove {
        position: static;
        width: auto;
        margin-left: 0;
    }
}

.cart-product__price {
    white-space: nowrap;
}

@media screen and (max-width: 767px) {
    .cart-product__price {
        margin: 6px 0;
    }
}

.cart-product__total-price {
    white-space: nowrap;
}

.cart-product__total {
    width: 150px;
    text-align: center;
    font-size: 1.11rem;
}

@media screen and (max-width: 767px) {
    .cart-product__total {
        float: left;
        font-size: 1.2rem;
        padding: 0px 3px 15px 3px !important;
        width: auto;
        text-align: left;
    }
}

.cart-subtotal-title {
    position: relative;
}

.cart-subtotal-title p {
    float: right;
}

.cart-total-price {
    text-align: left;
    font-size: 1.43rem;
    margin: 0;
    overflow: hidden;
}

.cart-total-price>span:first-child {
    float: left;
    margin-right: 10px;
}

.cart-total-price>span:last-child {
    float: right;
}

.cart-product__error {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    text-align: center;
    font-size: 0.8rem;
    padding: 5px 0;
}

@media screen and (max-width: 767px) {
    .cart-table,
    .cart-table-header,
    .cart-table-body,
    .cart-table-footer,
    .cart-table-row,
    .cart-table-cell {
        display: block;
    }
    .cart-subtotal-title {
        display: none;
    }
    .cart-update {
        z-index: 2;
        margin-left: 0;
    }
    .cart-table-row {
        padding: 16px 0;
    }
    .cart-table-row::after {
        content: "";
        display: block;
        width: 200px;
        height: 1px;
        margin: 0 auto;
        background: var(--color-border);
    }
    .cart-table-row:last-child::after {
        content: none;
    }
}

@media screen and (max-width: 550px) {
    .cart-table {
        width: 200px;
        margin: 0 auto;
    }
    .cart-table-footer {
        text-align: center;
    }
    .cart-table-footer .cart-table-cell.is-update {
        text-align: inherit;
    }
    .cart-table-footer .cart-update {
        margin-top: 0px;
        margin-left: auto;
    }
}


/*
 * Bottom Section: Checkout Buttons
 */

.checkout-buttons .cart-discounts {
    text-align: left;
}

.checkout-buttons .js-continueShopping {
    margin-bottom: 8px;
}

@media screen and (max-width: 549px) {
    .checkout-buttons .js-continueShopping {
        margin-bottom: 0;
    }
}

.checkout-buttons .button {
    width: 100%;
    height: 54px;
    padding: 14px 0;
    margin: 0 0 8px;
}

@media screen and (min-width: 750px) {
    .checkout-buttons .button {
        height: 42px;
        padding: 9px 2px;
    }
}

@media screen and (max-width: 749px) {
    .checkout-buttons .button {
        width: 100%;
        margin-bottom: 0;
        margin-top: 8px;
    }
}

@media screen and (max-width: 767px) {
    .additional-checkout-buttons button,
    .additional-checkout-buttons .btn,
    .additional-checkout-buttons .shopify-payment-button__button--unbranded {
        margin-top: 20px;
    }
    .additional-checkout-buttons button:first-child,
    .additional-checkout-buttons .btn:first-child,
    .additional-checkout-buttons .shopify-payment-button__button--unbranded:first-child {
        margin-top: 0;
    }
}

.additional-checkout-buttons .shopify-cleanslate>div>div>div {
    min-width: 240px !important;
}

@media screen and (max-width: 767px) {
    .additional-checkout-buttons .shopify-cleanslate>div>div>div {
        min-width: 240px !important;
    }
}

@media screen and (min-width: 750px) {
    .additional-checkout-buttons .shopify-cleanslate>div>div>div>div,
    .additional-checkout-buttons .shopify-cleanslate>div>div>div>div:only-child {
        margin-left: 0 !important;
        float: left !important;
    }
}

@media screen and (max-width: 749px) {
    .additional-checkout-buttons {
        width: 300px;
        margin-left: 0;
    }
}

@media screen and (max-width: 549px) {
    .additional-checkout-buttons {
        width: 100%;
    }
}

.cart__checkout {
    float: left;
    font-size: 0.95rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.js-continueShopping {
    float: left;
    margin-left: 0px !important;
    padding-left: 15px;
    padding-right: 15px;
    white-space: nowrap;
}

.js-continueShopping:not(.js-continueShopping--empty) {
    font-size: 0.95rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.js-continueShopping.js-continueShopping--empty {
    float: none;
}

.cart__buttons-wrapper {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: flex-start;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .cart__buttons-wrapper {
        justify-content: flex-start;
    }
}

.cart__buttons-wrapper .errors {
    width: 385px;
    max-width: 100%;
    margin: 0 0 20px auto;
    display: none;
}

@media screen and (max-width: 767px) {
    .cart__buttons-wrapper .errors {
        margin-right: auto;
        margin-left: 0;
    }
}

.cart__buttons {
    position: relative;
    width: 100%;
}

.cart__buttons .cart__update,
.cart__buttons .cart__checkout {
    margin-right: 0;
}

@media screen and (max-width: 767px) {
    .cart__buttons .cart__update,
    .cart__buttons .cart__checkout {
        margin-right: auto;
    }
}

.cart__buttons--disabled::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0);
    cursor: default;
}

.cart__button-fieldset {
    padding: 0;
    margin: 0;
    border: 0;
}

.cart__checkout {
    display: block;
    margin-left: auto;
    margin-right: 0;
    margin-bottom: 0;
    width: 100%;
}

@media screen and (max-width: 767px) {
    .cart__checkout {
        display: block;
        margin-left: 0;
        margin-right: auto;
    }
}

@media screen and (max-width: 399px) {
    .cart__checkout {
        width: 100%;
    }
}

.cart__update {
    display: none;
    margin: 0 0 10px auto;
    width: 100%;
    letter-spacing: 1px;
    text-transform: uppercase;
    font-size: 0.95rem;
}

@media screen and (max-width: 767px) {
    .cart__update {
        margin-left: 0;
        margin-right: auto;
    }
}

.acceptance__input {
    display: block;
    width: 13px;
    height: 13px;
    margin: 4px 7px 4px 0;
    float: none;
}

.acceptance__input~.cart__buttons::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: var(--color-background-alpha-35);
    z-index: 1;
    cursor: default;
    -webkit-transition: opacity 0.3s ease, visibility 0s linear 0s;
    transition: opacity 0.3s ease, visibility 0s linear 0s;
}

.acceptance__input:checked~.cart__buttons::after {
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 0.3s ease, visibility 0s linear 0.3s;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.acceptance__label {
    display: block;
    margin: 0 0 20px;
    max-width: calc(100% - 20px);
}

.acceptance__label p {
    margin: 0;
}

.cart-tax-info {
    margin: 0 0 27px;
    font-size: var(--font-size-body);
    color: var(--color-cart-text);
    letter-spacing: 0.05em;
}

@media screen and (max-width: 1023px) {
    .cart-tax-info {
        margin-bottom: 27px;
    }
}

.order-notes {
    margin: 27px 0;
}

@media screen and (max-width: 1023px) {
    .order-notes {
        margin: 20px 0;
    }
}

.order-notes__label {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    color: var(--color-text);
    font-size: var(--font-size-body);
    line-height: 1.5;
    margin-bottom: 5px;
}

.order-notes__content {
    border: 1px solid var(--color-border-dark);
    width: 100%;
    height: 114px;
    resize: none;
}

.template-collection .banner {
    display: block;
}

@media screen and (min-width: 768px) {
    .template-collection .banner {
        display: block;
    }
}

.collection-no-products {
    padding: 150px 0;
}

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

.collection-no-products h4 {
    margin-bottom: 20px;
}

.page-title__heading-tag {
    margin-left: 10px;
}


/**
 * Collection featured block
 */

.featured-block {
    align-self: stretch;
}

.featured-block__container {
    position: relative;
    overflow: hidden;
    min-height: 100%;
    padding-top: var(--image-aspect-ratio);
}

@media screen and (min-width: 1024px) {
    .lg_s12 .featured-block__container {
        padding-top: var(--image-aspect-ratio-half);
    }
}

@media screen and (max-width: 767px) {
    .featured-block__container {
        padding-top: var(--image-aspect-ratio);
        min-height: 240px;
    }
}

@media screen and (max-width: 767px) {
    .featured-block--mobile-2 .featured-block__container {
        padding-top: var(--image-aspect-ratio-half);
    }
}

.featured-block__wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.featured__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.featured__image.svg-placeholder svg {
    display: block;
    width: 100%;
    height: 100%;
}

.featured__image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.featured__content {
    position: relative;
    text-align: center;
    padding: 40px;
    width: 100%;
    word-break: break-word;
}

@media screen and (max-width: 1023px) {
    .featured__content {
        padding: 25px;
    }
    .featured__content h2 {
        font-size: var(--font-size-h2-mobile);
    }
}

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

.featured__content h2 {
    color: inherit;
}

.featured__content p {
    margin: 0 0 20px;
    font-size: 1.25rem;
}

.featured__content .button {
    margin-bottom: 0;
}

.collectionGrid {
    margin: 10px 0;
}

.collectionGrid .collectionBlock {
    margin-bottom: 10px;
}

.collectionGrid .pagination--infinity {
    margin: -30px 0 30px;
}

.collectionGrid .button {
    min-width: 156px;
}

.collectionGrid .button-wrapper {
    margin-top: 20px;
}

@media screen and (max-width: 549px) {
    .collectionGrid .collectionBlock-info {
        display: flex;
        flex-direction: column;
        text-align: center;
    }
    .collectionGrid .collectionBlock-info .product__badge {
        text-align: center;
    }
    .collectionGrid .collectionBlock__title {
        order: 0;
        text-align: center;
        font-size: var(--font-size-h4);
        line-height: 1.5;
        margin: 5px 0;
    }
    .collectionGrid .collectionBlock__price {
        order: 1;
        margin: 5px 0;
        max-width: 100%;
        float: none;
        text-align: center;
        display: flex;
        flex-direction: column-reverse;
    }
    .collectionGrid .collectionBlock__price p {
        margin: 0;
    }
    .collectionGrid .product__swatch {
        order: 2;
        justify-content: center;
    }
}

.template-collection .collectionGrid,
.template-search .collectionGrid {
    padding: 20px 0;
}

@media screen and (min-width: 768px) {
    .template-collection .collectionGrid,
    .template-search .collectionGrid {
        padding: 25px 0;
    }
}

.collectionGrid::before {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: var(--color-background-overlay);
    background-image: var(--icon-loader);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 64px auto;
    opacity: 0;
    visibility: hidden;
    z-index: 200;
    transition: opacity 0.2s ease, visibility 0s linear 0.2s;
}

.collectionGrid.is-loading::before {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.2s ease, visibility 0s linear 0s;
}

.collectionGrid__wrapper {
    overflow: hidden;
}

.collectionGrid-row {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding: 0 5px;
    /**
  	* Static to accommodate Quick View.
  	*/
}

.collectionGrid-row .collectionBlock {
    position: static !important;
    padding: 0 5px;
}

.collectionGrid-row--grid {
    overflow: hidden;
}

@media screen and (max-width: 549px) {
    .collectionGrid-row--grid .gridSpacer {
        display: none;
    }
}

@media screen and (max-width: 549px) {
    .collectionGrid-row--grid>.collectionBlock {
        display: block;
    }
    .collectionGrid-row--grid>.collectionBlock.grid-sort {
        display: inline-block;
    }
}

.collectionGrid-row--slider {
    display: block;
    position: relative;
    clear: both;
    padding: 0 5px;
}

@media screen and (max-width: 767px) {
    .collectionGrid-row--slider {
        display: block;
        width: 100%;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding-bottom: 30px;
        margin-bottom: -30px;
    }
}

.collectionGrid-row--slider .collectionBlock {
    padding: 0 5px;
    margin-bottom: 0;
    white-space: normal;
}

.collectionGrid-row--slider .collectionBlock.quickView--is-active,
.collectionGrid-row--slider .collectionBlock.quickView--is-visible {
    position: static !important;
}

@media screen and (max-width: 767px) {
    .collectionGrid-row--slider .collectionBlock {
        min-width: 0;
        width: 66%;
        display: inline-block;
        float: none;
    }
    .collectionGrid-row--slider .collectionBlock:first-child {
        margin-left: 5px;
    }
    .collectionGrid-row--slider .collectionBlock:last-child {
        margin-right: 5px;
    }
}

.collectionGrid-row--slider button.slick-prev,
.collectionGrid-row--slider .slick-prev.btn,
.collectionGrid-row--slider .slick-prev.shopify-payment-button__button--unbranded,
.collectionGrid-row--slider button.slick-next,
.collectionGrid-row--slider .slick-next.btn,
.collectionGrid-row--slider .slick-next.shopify-payment-button__button--unbranded {
    display: flex !important;
    top: 50%;
    width: 50px;
    height: 50px;
    margin-top: 0;
}

.collectionGrid-row--slider button.slick-prev .icon,
.collectionGrid-row--slider .slick-prev.btn .icon,
.collectionGrid-row--slider .slick-prev.shopify-payment-button__button--unbranded .icon,
.collectionGrid-row--slider button.slick-next .icon,
.collectionGrid-row--slider .slick-next.btn .icon,
.collectionGrid-row--slider .slick-next.shopify-payment-button__button--unbranded .icon {
    width: 100%;
    height: 100%;
}

.collectionGrid-row--slider button.slick-prev,
.collectionGrid-row--slider .slick-prev.btn,
.collectionGrid-row--slider .slick-prev.shopify-payment-button__button--unbranded {
    left: 20px;
}

.collectionGrid-row--slider button.slick-prev .icon,
.collectionGrid-row--slider .slick-prev.btn .icon,
.collectionGrid-row--slider .slick-prev.shopify-payment-button__button--unbranded .icon {
    transform: rotate(90deg);
}

.collectionGrid-row--slider button.slick-next,
.collectionGrid-row--slider .slick-next.btn,
.collectionGrid-row--slider .slick-next.shopify-payment-button__button--unbranded {
    right: 20px;
}

.collectionGrid-row--slider button.slick-next .icon,
.collectionGrid-row--slider .slick-next.btn .icon,
.collectionGrid-row--slider .slick-next.shopify-payment-button__button--unbranded .icon {
    transform: rotate(-90deg);
}

.collectionGrid-row--slider .slick-slide.has-quickView {
    position: static !important;
    will-change: unset !important;
}

@media screen and (max-width: 767px) {
    .collection-slider__wrapper {
        overflow: hidden;
    }
}

[data-style=black] .slick-arrow {
    color: black;
}

[data-style=white] .slick-arrow {
    color: white;
}


/*
 * Product Grid Nav - breadcrumbs and filters
 */

.collectionGrid-nav.row {
    padding: 0 0 5px;
    margin: 0 auto 20px;
}

.collectionGrid-nav.row>.block {
    vertical-align: middle;
}

@media screen and (max-width: 549px) {
    .collectionGrid-nav.row>.block.grid-sort {
        display: inline-block;
    }
}

.collectionGrid-nav .breadcrumbs {
    padding-right: 40px;
}

@media screen and (min-width: 768px) {
    .collectionGrid-nav .grid-sort {
        display: flex;
        align-items: center;
        justify-content: space-between;
    }
    .collectionGrid-nav .grid-sort .block {
        white-space: nowrap;
    }
}

@media screen and (max-width: 1023px) {
    .collectionGrid-nav .grid-sort {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .collectionGrid-nav .breadcrumbs:not(.search-alert) {
        display: none !important;
    }
}

@media screen and (min-width: 1024px) {
    .collectionGrid-nav {
        display: flex;
        justify-content: space-between;
        align-items: center;
    }
}

.collectionGrid-nav::after {
    content: none;
}

.collectionGrid-nav--center {
    justify-content: center;
}

.search-alert {
    margin-bottom: 20px;
}

.grid-sort {
    text-align: justify;
    width: 100%;
}

@media screen and (min-width: 768px) {
    .grid-sort {
        width: auto;
    }
}

.collectionGrid-sort {
    text-align: left;
    width: 100%;
}

@media screen and (min-width: 768px) {
    .collectionGrid-sort {
        text-align: right;
        width: auto;
    }
}

.collectionGrid-sort label {
    display: inline-block;
    position: relative;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    line-height: 1.5;
    font-weight: var(--body-font-weight);
    color: var(--color-label);
    margin: 0 0 10px 0;
    width: 100%;
}

@media screen and (min-width: 768px) {
    .collectionGrid-sort label {
        margin: 0 20px 0 0;
        width: auto;
    }
}

.collectionGrid-sort select {
    display: inline-block;
    position: relative;
    background-color: transparent;
    border: 1px solid var(--color-border);
    width: 100%;
}

@media screen and (min-width: 768px) {
    .collectionGrid-sort select {
        width: auto;
        max-width: 180px;
    }
}

.grid-sort {
    padding: 8px 0;
}


/**
 * These are the individual grid items.
 */

.collectionBlock {
    display: block;
    position: relative;
}

.collectionBlock.is-loading {
    opacity: 0;
}

.collectionBlock .price--hover,
.collectionBlock .product__swatch--hover {
    transform: translateY(50%);
    opacity: 0;
    transition: transform 0.25s ease-in-out, opacity 0.25s ease-in-out;
}

@media screen and (max-width: 767px) {
    .collectionBlock .price--hover,
    .collectionBlock .product__swatch--hover {
        opacity: 1;
        transform: none;
    }
}

.collectionBlock .price--hover {
    transition-delay: 0.1s;
}

.collectionBlock .product__swatch--hover {
    transition-delay: 0s;
}

.collectionBlock:hover .price--hover,
.collectionBlock:hover .product__swatch--hover {
    transform: translateY(0%);
    opacity: 1;
}

.collectionBlock:hover .price--hover {
    transition-delay: 0s;
}

.collectionBlock:hover .product__swatch--hover {
    transition-delay: 0.1s;
}

.ajax-sorting .collectionBlock {
    opacity: 0;
}


/**
 * The text portion below the block.
 */

.collectionBlock-info {
    padding: 20px 0 10px;
    overflow: hidden;
}

@media screen and (max-width: 549px) {
    .collectionBlock-info {
        padding: 10px 0;
    }
    .collectionBlock-info .button {
        display: none;
    }
}

.collectionBlock-info p {
    margin-bottom: 10px;
}

.collectionBlock-info h3 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    margin-bottom: 0;
}

.collectionBlock-info .product-unit-price {
    margin: -5px 0 10px;
}

.collectionBlock-info .spr-badge-starrating {
    margin: 0;
}

.collectionBlock-info .yotpo .standalone-bottomline {
    display: inline-block;
}

.collectionBlock-info .yotpo .text-m {
    display: none;
}

.collectionBlock-info .shopify-product-reviews-badge,
.collectionBlock-info .yotpo.bottomLine:not([data-yotpo-element-id]) {
    background-position: left center;
}

@media screen and (max-width: 549px) {
    .collectionBlock-info .shopify-product-reviews-badge,
    .collectionBlock-info .yotpo.bottomLine:not([data-yotpo-element-id]) {
        background-position: center center;
    }
}

.collectionBlock-info .product__badge {
    margin: 0 0 5px;
    padding: 5px 0;
    line-height: 0;
    float: left;
    clear: left;
}

.collectionBlock-info .product__badge .spr-badge {
    display: block;
    margin-top: 3px;
    margin-bottom: 5px;
}

.collectionBlock-info .product__badge .spr-badge-caption {
    display: none;
}

.collectionBlock-info .product__badge .yotpo-no-reviews {
    display: none;
}

@media screen and (max-width: 767px) {
    .collectionBlock-info .product__badge {
        margin-bottom: 0;
        padding: 0;
        height: 20px;
        text-align: left;
    }
}

@media screen and (max-width: 549px) {
    .collectionBlock-info .product__badge {
        width: 100%;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .collectionBlock-info .product-price,
    .collectionBlock-info .spr-badge {
        margin-bottom: 0;
    }
}

.collectionBlock__title {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-h4);
    line-height: 1.5;
    text-align: left;
    overflow: hidden;
    margin-bottom: 0;
}

.collectionBlock__price {
    float: right;
    text-align: right;
    margin-left: 15px;
    max-width: 50%;
}

.collectionBlock__price p.price {
    margin-top: 1px;
    margin-bottom: 4px;
}

@media screen and (min-width: 550px) {
    .collectionBlock-info--left .collectionBlock__price {
        height: 23px;
    }
}

@media screen and (min-width: 550px) {
    .collectionBlock-info--center {
        display: flex;
        flex-direction: column;
        text-align: center;
    }
    .collectionBlock-info--center .collectionBlock__title {
        order: 0;
        text-align: center;
    }
    .collectionBlock-info--center .collectionBlock__price {
        order: 2;
        text-align: center;
        float: none;
        max-width: 100%;
        margin: 0;
    }
    .collectionBlock-info--center .collectionBlock__price p.price {
        margin: 0;
    }
    .collectionBlock-info--center .product__badge {
        order: 1;
        height: auto;
        margin: 0;
        padding: 0;
        text-align: center;
    }
    .collectionBlock-info--center .shopify-product-reviews-badge,
    .collectionBlock-info--center .yotpo.bottomLine:not([data-yotpo-element-id]) {
        background-position: center center;
    }
    .collectionBlock-info--center .product__swatch {
        order: 3;
        margin-top: 5px;
        justify-content: center;
    }
}


/**
 * This controls the size of image.
 */

.collectionBlock-image {
    display: block;
    position: relative;
    background-position: center;
    background-repeat: no-repeat;
    background-size: var(--image-size);
    padding-top: var(--image-aspect-ratio);
    overflow: hidden;
}

.collectionBlock-image .collectionBlock-hover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
    opacity: 0;
    transition: opacity 0.5s ease-in-out, transform 0.5s ease, visibility 0s linear 0.5s;
}

.collectionBlock-image .collectionBlock-hover::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--color-background);
    pointer-events: none;
}

.collectionBlock-image .collectionBlock-hover__image {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: var(--image-size);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.collectionBlock-image .collectionBlock-hover--placeholder {
    background: #fff;
}

.collectionBlock-image>.collectionBlock-hover::before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: var(--color-background);
}

@media screen and (min-width: 768px) {
    .collectionBlock-image:hover .collectionBlock-hover,
    .collectionBlock-image:hover .collectionBlock-image-inner {
        opacity: 1;
        transition: opacity 0.5s ease-in-out, transform 0.5s ease, visibility 0s linear 0s;
    }
    .collectionBlock-image:hover .collectionBlock-hover {
        transform: scale(1.05);
    }
    body:not(.no-outline) .collectionBlock-image:focus .collectionBlock-image-inner,
    body:not(.no-outline) .collectionBlock-image:focus-within .collectionBlock-image-inner {
        opacity: 1;
        transition: opacity 0.25s ease-in-out, visibility 0s;
    }
}

@media screen and (max-width: 549px) {
    .collectionBlock-image {
        margin-left: auto;
        margin-right: auto;
    }
}

.quickView--is-loading .collectionBlock-image::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: var(--icon-loader);
    background-size: 64px auto !important;
    background-repeat: no-repeat;
    background-position: center center;
}


/**
 * This is the hover layer over the image.
 */

.collectionBlock-image-inner {
    display: block;
    position: absolute;
    transition: opacity 0.25s ease-in-out;
    transform: translate(-50%, -50%);
    top: 50%;
    left: 50%;
    opacity: 0;
    visibility: visible;
    text-align: center;
    z-index: 1;
    /**
   * Hide hover effect alltogether for screens below 1024px.
   */
}

.collectionBlock-image-inner .button {
    max-width: 90%;
    margin: auto;
}

@media screen and (max-width: 1023px) {
    .collectionBlock-image-inner {
        display: none;
    }
}

.collectionBlock-image__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}


/*
 * Collection Filters
 */

.collection-section {
    position: relative;
}

.collection__wrapper::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

.collection__filters {
    position: sticky;
    position: -webkit-sticky;
    top: 60px;
    z-index: 10;
    margin: -25px 0 25px;
    background: var(--color-background);
    border-bottom: 1px solid var(--color-border);
}

@media screen and (max-width: 767px) {
    .collection__filters {
        margin: -20px 0 20px;
    }
}

.collection__filters h3 {
    padding-top: 5px;
    padding-bottom: 5px;
    margin-bottom: 0;
}

.collection__filters.has-tags-expanded .collection__filter:not(.is-expanded) {
    opacity: 0.5;
}

.collection__filters .container {
    z-index: 1;
}

@media screen and (min-width: 1280px) {
    .collection__filters--left {
        float: left;
        width: 320px;
        height: calc(100vh - 60px);
        overflow-x: hidden;
        overflow-y: auto;
        border: 0;
        padding-top: 35px;
    }
    .collection__filters--left .container {
        padding-right: 0;
    }
    .collection__filters--left+.collectionGrid__wrapper {
        min-height: calc(100vh - 60px);
    }
    .collection__filters--left+.collectionGrid__wrapper>.container {
        padding-left: 0;
    }
    .collection__filters--left.has-tags-expanded .collection__filter:not(.is-expanded) {
        opacity: 1;
    }
    .collection__filters--left .collection__filters-list {
        width: 200px;
        padding: 10px 0;
    }
    .collection__filters--left .collection__filter {
        margin-right: 0;
        display: block;
    }
    .collection__filters--left .collection__filter-container {
        position: static;
        top: auto;
        left: auto;
        right: auto;
        max-height: 0;
        border: none;
        margin: 10px 0;
        padding: 0;
        visibility: visible;
        pointer-events: auto;
        overflow: hidden;
        transition: all 0.3s ease-in-out;
    }
    .collection__filters--left .collection__filter-title {
        padding: 0 20px 5px 0;
        border-bottom: 1px solid var(--color-border);
        margin: 0 0 15px;
    }
    .collection__filters--left .collection__filter-title .icon-arrow {
        position: absolute;
        top: 0;
        right: 0;
        margin-right: 0;
    }
    .collection__filters--left .collection__filters-reset {
        margin-left: 0;
        float: none;
    }
    .collection__filters--left .collection__filters-reset-btn {
        margin: 0 0 10px;
    }
    .collection__filters--left .collection__filter-tags {
        display: block;
    }
    .collection__filters--left .collection__filter-tag--default {
        margin-right: 0;
    }
    .collection__filters--left .collection__filter--accordion-expanded .collection__filter-container {
        opacity: 1;
        max-height: 2000px;
    }
    .collection__filters--left .collection__filter--accordion-expanded .collection__filter-title .icon-arrow {
        transform: rotateX(180deg);
    }
}

.collection__filters-wrapper {
    position: relative;
    width: 100%;
    padding: 20px 0;
    background: var(--color-background);
    z-index: 1;
}

.collection__filters-wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: #fff;
    z-index: -1;
}

.collection__filters-reset {
    float: right;
}

.collection__filters-reset--fullwidth {
    float: none;
    width: 100%;
    text-align: left;
}

.collection__filters-reset--fullwidth~.collection__filter .collection__filter-container {
    max-height: calc(100vh - 134px);
}

.collection__filters-reset-btn {
    font-size: var(--font-size-body);
    line-height: 22px;
    padding: 0;
    margin: 10px 0;
    text-align: left;
    border: 0;
    color: var(--color-text);
    background: transparent;
    display: inline-block;
}

.collection__filters-reset-btn .icon-close {
    float: left;
    display: block;
    width: 20px;
    height: 22px;
    padding: 5px;
    margin: 0 2px 0 -5px;
    fill: currentColor;
}

.collection__filters-reset--fullwidth .collection__filters-reset-btn {
    margin-bottom: 0;
}

.collection__filters-reset-btn-text {
    display: block;
    overflow: hidden;
}

.collection__filter {
    position: static;
    margin-right: 50px;
    display: inline-block;
}

@media screen and (max-width: 550px) {
    .collection__filter {
        margin-right: 30px;
    }
}

.collection__filter:last-child {
    margin-right: 0;
}

.collection__filter .swatch {
    display: block;
}

.collection__filter-tag-btn {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    display: block;
    font-size: var(--font-size-body);
    color: var(--color-text);
    background: transparent;
    border: 0;
    padding: 0 0 0 25px;
    text-align: left;
}

.collection__filter-tag-btn.swatch__element {
    padding: 0;
    margin: 0 0 10px;
    display: flex;
    align-items: flex-start;
    width: 100%;
}

.collection__filter-tag-btn.swatch__element::after {
    content: none;
}

.collection__filter-tag-btn .swatch__label {
    height: auto;
    padding: 0;
}

.collection__filter-container {
    position: absolute;
    top: calc(100% + 1px);
    right: -40px;
    left: -40px;
    margin: 0;
    padding: 15px 80px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    background: var(--color-background);
    transition: opacity 0.15s ease, margin 0.15s ease, visibility 0s linear 0.15s;
    border-bottom: 1px solid var(--color-border);
    overflow-y: auto;
    overflow-x: hidden;
    max-height: calc(100vh - 102px);
    -webkit-overflow-scrolling: touch;
}

.is-expanded .collection__filter-container {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
    transition: opacity 0.3s ease, margin 0.3s ease, visibility 0s linear 0s;
}

@media screen and (max-width: 1023px) {
    .collection__filter-container {
        left: 0;
        right: 0;
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (max-width: 767px) {
    .collection__filters--has-tags-selected .collection__filter-container {
        max-height: calc(100vh - 130px);
    }
}

@media screen and (max-width: 549px) {
    .collection__filter-container {
        padding-left: 20px;
        padding-right: 20px;
    }
}

.collection__filter-title {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    cursor: pointer;
    padding: 10px 0;
    margin: 0;
    color: var(--color-text);
    border: none;
    background: none;
    font-size: var(--font-size-body);
    line-height: 22px;
    text-align: left;
    text-transform: none;
}

.collection__filter-title span {
    display: inline-block;
    vertical-align: top;
}

.collection__filter-title .icon-arrow {
    display: inline-block;
    vertical-align: top;
    margin: 6px;
    width: 10px;
    height: 10px;
    fill: currentColor;
    transition: transform 0.2s ease;
}

.is-expanded .collection__filter-title .icon-arrow {
    transform: rotateX(180deg);
}

.collection__filter-tags {
    list-style: none;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    grid-column-gap: 20px;
    margin: 0;
    padding: 0;
}

@media screen and (max-width: 767px) {
    .collection__filter-tags {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media screen and (max-width: 549px) {
    .collection__filter-tags {
        grid-template-columns: repeat(2, 1fr);
    }
}

.collection__filter-tag--default {
    margin-bottom: 10px;
    margin-right: 15px;
}

.collection__filter-tag--default .collection__filter-tag-btn {
    display: block;
    margin: 0;
    padding: 0 0 0 25px;
    position: relative;
    border: 0;
    text-align: left;
    font-size: var(--font-size-body);
    line-height: 22px;
}

.collection__filter-tag--default .collection__filter-tag-btn::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    border-radius: 100%;
    left: 0;
    top: 3px;
    width: 16px;
    height: 16px;
    border: 1px solid var(--color-border);
    background-color: var(--color-background);
}

.collection__filter-tag--default .collection__filter-tag-btn .icon-check {
    position: absolute;
    top: 6px;
    left: 3px;
    width: 10px;
    height: 10px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0s linear 0.2s;
    fill: var(--color-background);
}

.collection__filter-tag--default.is-active .collection__filter-tag-btn::before {
    color: var(--color-background);
    border-color: var(--color-text);
    background-color: var(--color-text);
    background-image: var(--icon-check);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 10px auto;
}

.collection__filter-tag--default.is-active .icon-check {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.2s ease, visibility 0s linear 0s;
}

.collection__filter-tag--number {
    display: inline-block;
    padding: 0;
    margin: 0 6px 10px 0;
}

.collection__filter-tag--number .collection__filter-tag-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 6px;
    height: 32px;
    min-width: 32px;
    border-radius: 16px;
    line-height: 18px;
    border: 1px solid var(--color-border);
    margin: 0;
}

.collection__filter-tag--number.is-active .collection__filter-tag-btn {
    color: var(--color-background);
    border-color: var(--color-text);
    background: var(--color-text);
}

.collection__filter-tags--swatches {
    display: grid;
}

.contact-form-container {
    overflow: hidden;
}

@media screen and (max-width: 399px) {
    .contact-form-container .row.row-med {
        width: 100%;
    }
}

.contact-form-container .contact-form,
.contact-form-container .comment-form {
    margin: 50px 0;
}

.contact-column.contact-column-info {
    display: none;
}

@media screen and (min-width: 768px) {
    .contact-column {
        margin: 0 auto;
        width: 50%;
    }
    .contact-column.contact-column-form {
        width: 62.5%;
    }
    .contact-column.contact-column-info {
        display: block;
        width: 37.5%;
    }
}

@media screen and (min-width: 1024px) {
    .contact-column.contact-column-form {
        width: 75%;
    }
    .contact-column.contact-column-info {
        width: 25%;
    }
}

.contact-column .footer-links {
    text-align: left;
}

.contact-text,
.successForm {
    text-align: center;
}

.contact-text h2 {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h1);
    line-height: 1.1;
    margin-bottom: 0.2em;
}

@media screen and (max-width: 767px) {
    .contact-text h2 {
        font-size: var(--font-size-h1-mobile);
    }
}

.contact-form,
.comment-form {
    margin-top: 30px;
}

.footer__block .contact-form,
.footer__block .comment-form {
    margin-top: 18px;
}

@media screen and (max-width: 767px) {
    .footer__block .contact-form,
    .footer__block .comment-form {
        margin: 15px auto 0;
    }
}

.contact-form .form-item,
.comment-form .form-item,
.contact-form .form-field,
.comment-form .form-field {
    margin-bottom: 20px;
}

.contact-form input,
.comment-form input,
.contact-form textarea,
.comment-form textarea,
.contact-form select,
.comment-form select {
    line-height: normal;
}

.contact-form input[type=text],
.comment-form input[type=text],
.contact-form input[type=email],
.comment-form input[type=email],
.contact-form input[type=tel],
.comment-form input[type=tel],
.contact-form textarea,
.comment-form textarea,
.contact-form select,
.comment-form select {
    display: block;
    width: 100%;
    border: 1px solid var(--color-border);
}

.contact-form input[type=submit],
.comment-form input[type=submit] {
    padding-left: 45px;
    padding-right: 45px;
}

@media screen and (max-width: 549px) {
    .contact-form input[type=submit],
    .comment-form input[type=submit] {
        display: block;
        margin: 0 auto;
    }
}

@media screen and (max-width: 399px) {
    .contact-form input[type=submit],
    .comment-form input[type=submit] {
        width: 100%;
    }
}

.contact-form input[type=radio],
.comment-form input[type=radio],
.contact-form input[type=checkbox],
.comment-form input[type=checkbox] {
    display: inline-block;
    vertical-align: middle;
    margin: 0 4px 2px 0;
}

.contact-form input[type=radio],
.comment-form input[type=radio] {
    -webkit-appearance: radio;
    -moz-appearance: radio;
    -ms-appearance: radio;
    -o-appearance: radio;
    appearance: radio;
}

.contact-form input[type=checkbox],
.comment-form input[type=checkbox] {
    -webkit-appearance: checkbox;
    -moz-appearance: checkbox;
    -ms-appearance: checkbox;
    -o-appearance: checkbox;
    appearance: checkbox;
}

.contact-form fieldset,
.comment-form fieldset {
    padding: 0;
    margin: 0;
    border: 0;
}

.contact-form ::-webkit-input-placeholder,
.comment-form ::-webkit-input-placeholder {
    color: var(--color-input-placeholder);
}

.contact-form :-moz-placeholder,
.comment-form :-moz-placeholder {
    color: var(--color-input-placeholder);
}

.contact-form ::-moz-placeholder,
.comment-form ::-moz-placeholder {
    color: var(--color-input-placeholder);
}

.contact-form :-ms-input-placeholder,
.comment-form :-ms-input-placeholder {
    color: var(--color-input-placeholder);
}

.contact-form label,
.comment-form label {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

#contactFormWrapper {
    max-width: 500px;
    margin: auto;
}


/**
 * Custom HTML Section
 */

.custom-html-section {
    margin: 50px 0;
    text-align: center;
}

.custom-html__code p:last-child {
    margin-bottom: 0;
}


/**
 * FAQ Section
 */

.faq-section,
.faq-content {
    margin: 50px 0;
}

.faq-section .page-title__subheading,
.faq-content .page-title__subheading {
    margin-bottom: 0;
}

.faq-list {
    list-style: none;
    max-width: 1000px;
    margin: 0 auto;
}

.faq-list__item {
    border-bottom: 1px solid var(--color-border);
}

.faq-list__item-question {
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h3);
    line-height: 1.3;
    margin-bottom: 0.2em;
    display: block;
    position: relative;
    padding: 20px 40px 20px 0;
    cursor: pointer;
}

.faq-list__item-question .icon {
    top: 50%;
    right: 0;
    position: absolute;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    padding: 10px;
    margin-top: -20px;
    transition: opacity 0.3s linear, transform 0.3s linear;
}

.faq-list__item-question .icon-minus {
    opacity: 0;
    transform: rotate(90deg);
}

.faq-list__item-question .icon-plus {
    opacity: 1;
}

.is-expanded .faq-list__item-question .icon-minus {
    opacity: 1;
    transform: rotate(0deg);
}

.is-expanded .faq-list__item-question .icon-plus {
    opacity: 0;
    transform: rotate(90deg);
}

.faq-list__item-answer {
    overflow: hidden;
    max-height: 0;
    padding: 0;
    opacity: 0;
    transition: max-height 0.3s ease-in-out, padding 0.3s ease-in-out, opacity 0.3s ease-in-out;
}

.is-expanded .faq-list__item-answer {
    max-height: 2000px;
    padding: 0 0 30px;
    opacity: 1;
}

@media screen and (max-width: 767px) {
    .featured-collection {
        overflow: hidden;
    }
}

.featured-collection .button-wrapper {
    margin-bottom: 50px;
}

.collectionGrid-header {
    margin-top: 50px;
    margin-bottom: 50px;
}

.collectionGrid-header h2 {
    margin: 0;
}

.collectionGrid-header p {
    margin: 10px 0 0;
}

.collectionGrid-header .block {
    text-align: center;
}

.featured-product {
    margin: 50px auto;
}

@media screen and (max-width: 767px) {
    .featured-product .productForm button,
    .featured-product .productForm .btn,
    .featured-product .productForm .shopify-payment-button__button--unbranded {
        margin-left: auto;
        margin-right: auto;
    }
}

.featured-product .shopify-payment-button__button {
    position: relative;
    display: inline-block;
}

.featured-product .product-layout-1 .shopify-payment-button {
    margin-left: auto;
    margin-right: auto;
}

.featured-product .product-layout-1--info .productForm .selector-wrapper,
.featured-product .product-layout-1--info .productForm .inputGroup {
    margin-right: 5px;
    margin-left: 5px;
}

@media screen and (min-width: 768px) {
    .featured-product__wrapper {
        display: flex;
        justify-content: space-between;
    }
}

@media screen and (min-width: 768px) {
    .featured-product__wrapper--vertical {
        flex-direction: column;
        justify-content: center;
    }
}

.onboarding-product select {
    display: none;
}

.product-layout-1--info {
    padding-top: 25px;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .product-layout-1--info {
        padding-top: 0;
    }
}

.product-layout-1--info .productForm-block--options-inline {
    text-align: center;
    justify-content: center;
    margin-right: auto;
}

.product-layout-1--info .productForm-block--options-inline .selector-wrapper {
    margin-left: 5px;
    margin-right: 5px;
}

.product-layout-1--info .productForm {
    width: 100%;
    padding-left: 0;
    text-align: center;
}

.product-layout-1--info .productForm label {
    text-align: center;
}

.product-layout-1--info .productForm select {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
}

.product-layout-1--info .productForm-select label {
    text-align: left;
}

.product-layout-1--info .swatch {
    justify-content: center;
}

.product-layout-1--info .swatch .header {
    text-align: center;
}

.product-layout-1--info .swatch .swatch__element {
    margin-left: 9px;
    margin-right: 9px;
}

.product-layout-1--info .share-links {
    justify-content: center;
}

.product-layout-1--info .product-title__wrapper {
    width: 100%;
    text-align: center;
}

.product-layout-1--info .product-price {
    float: none;
}

.product-layout-1--info .product__badge {
    float: none;
}

.product-layout-1--info .qty__adjust {
    float: none;
    position: relative;
    margin: 0 auto 20px;
}

.pseudoform select {
    display: none;
}

@media screen and (min-width: 768px) {
    .product-layout-4--images,
    .product-layout-4--info {
        max-width: calc(50% - 20px);
    }
    .product-layout-4--images .product-info__wrapper,
    .product-layout-4--info .product-info__wrapper {
        padding-left: 0;
    }
}

.product-layout-1--images,
.product-layout-1--info {
    width: 50%;
    float: none;
    margin-left: auto;
    margin-right: auto;
}

@media screen and (max-width: 1023px) {
    .product-layout-1--images,
    .product-layout-1--info {
        width: 75%;
    }
}

@media screen and (max-width: 767px) {
    .product-layout-1--images,
    .product-layout-1--info {
        width: 100%;
    }
}

.product-layout-1--images {
    width: 100%;
}

@media screen and (min-width: 550px) {
    .product-layout-1--images.product-layout-images--large .productImgSlider {
        width: 85%;
    }
    .product-layout-1--images.product-layout-images--medium .productImgSlider {
        width: 72.25%;
    }
    .product-layout-1--images.product-layout-images--small .productImgSlider {
        width: 59.5%;
    }
}

@media screen and (min-width: 768px) {
    .product-layout-1--images.product-layout-images--large .productImgSlider {
        width: 70%;
    }
    .product-layout-1--images.product-layout-images--medium .productImgSlider {
        width: 59.5%;
    }
    .product-layout-1--images.product-layout-images--small .productImgSlider {
        width: 49%;
    }
}

@media screen and (min-width: 1024px) {
    .product-layout-1--images.product-layout-images--large .productImgSlider {
        width: 55%;
    }
    .product-layout-1--images.product-layout-images--medium .productImgSlider {
        width: 46.75%;
    }
    .product-layout-1--images.product-layout-images--small .productImgSlider {
        width: 38.5%;
    }
}


/**
 * Icons row
 */

.icons-row {
    margin: 10px 0;
}

.icons-row .pad-sm {
    margin: 0;
}

.icons-row--background {
    padding: 50px 0;
}

.icons-row-wrapper {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    margin: 0 -50px -25px;
}

@media screen and (max-width: 1023px) {
    .icons-row-wrapper {
        margin-left: -40px;
        margin-right: -40px;
    }
}

@media screen and (max-width: 767px) {
    .icons-row-wrapper {
        margin: 0 -25px -25px;
    }
}

@media screen and (max-width: 549px) {
    .icons-row-wrapper {
        margin: 0 0 -10px;
    }
}

.icons-row-wrapper--center {
    justify-content: center;
    text-align: center;
}

.icons-row-wrapper--left {
    justify-content: flex-start;
    text-align: left;
}

.icons-row__item {
    width: 33.33333333%;
    padding: 0 50px;
    margin-bottom: 25px;
}

@media screen and (max-width: 1023px) {
    .icons-row__item {
        padding: 0 40px;
    }
}

@media screen and (max-width: 767px) {
    .icons-row__item {
        padding: 0 25px;
    }
}

@media screen and (max-width: 549px) {
    .icons-row__item {
        width: 100%;
        margin-bottom: 35px;
        padding: 0;
    }
    .icons-row__item:last-child {
        margin-bottom: 10px;
    }
}

.icons-row__item .icon {
    display: inline-block;
    width: 45px;
    height: 45px;
    font-size: 2.5em;
    margin-bottom: 10px;
}

.icons-row__item .icon path {
    fill: currentColor;
}

.icons-row__image {
    position: relative;
    display: inline-block;
    width: 45px;
    height: 45px;
    margin-bottom: 10px;
}

.icons-row__image img {
    display: block;
    width: 45px;
    height: 45px;
    object-fit: contain;
    margin: 0 auto;
}

body.allow-grid-items-animations.allow-image-animations .icons-row__image img.lazyload,
body.allow-grid-items-animations.allow-image-animations .icons-row__image img.lazyloading {
    background-size: 45px auto !important;
}

.icons-row__image .icon-svg-placeholder {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 70px;
    height: 70px;
    display: block;
    overflow: hidden;
    transform: translate(-50%, -50%);
}

.icons-row__image .icon-svg-placeholder svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 160px;
    height: 160px;
    margin: -80px 0 0 -80px;
}

.icons-row__title {
    margin-bottom: 18px;
    color: inherit !important;
}

.icons-row__content {
    margin-bottom: 0;
    opacity: 0.75;
}

.gallery {
    overflow: hidden;
    margin: 10px 5px;
}

.gallery .row {
    height: 100%;
}

@media screen and (max-width: 767px) {
    .gallery .row {
        height: auto !important;
    }
}

.gallery .row .block {
    text-align: center;
}

.gallery .row.original-height {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    height: auto;
}

@media screen and (max-width: 767px) {
    .gallery .row.original-height {
        min-height: 0;
    }
}

.gallery .row.original-height::before,
.gallery .row.original-height::after {
    content: none;
}

@media screen and (max-width: 767px) {
    .gallery .row.original-height .gallery-slider {
        height: auto;
        min-height: 0;
    }
}

.gallery .row.original-height .gallery-content {
    height: auto;
}

.gallery .row.original-height .gallery-slider,
.gallery .row.original-height .slick-list,
.gallery .row.original-height .slick-track,
.gallery .row.original-height .slick-slide,
.gallery .row.original-height .slick-image {
    height: auto;
}

.gallery .row.original-height .slide-image {
    position: static;
    float: left;
}

.gallery .row.original-height .slide-placeholder {
    height: 450px;
}

@media screen and (max-width: 767px) {
    .gallery .row.original-height .slide-placeholder {
        height: 50vh;
    }
}

.gallery .gallery-slider {
    height: 100%;
}

@media screen and (max-width: 767px) {
    .gallery .gallery-slider {
        height: 50vw;
        min-height: 275px;
    }
}

.gallery .gallery-content {
    height: 100%;
}

@media screen and (max-width: 767px) {
    .gallery .gallery-content {
        height: auto;
        padding: 50px 0;
    }
}

.gallery-slider {
    padding: 0 5px;
}

.gallery-slider .slick-slide img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.gallery-slider .slide-image-bg {
    position: relative;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    min-height: 1px;
}

.gallery-slider .slick-dots {
    bottom: 10px;
}

@media screen and (max-width: 399px) {
    .gallery-slider .slick-dots {
        bottom: 0;
    }
}

.gallery-slider .slick-arrow {
    background: none !important;
}


/**
 * Text portion of the gallery module.
 */

.gallery-content {
    padding: 0 5px;
    height: 100%;
    /**
   * Vertically aligns .gallery-content-inner
   */
}

.gallery-content::after {
    display: inline-block;
    position: relative;
    content: "";
    height: 100%;
    vertical-align: middle;
}


/**
 * This is the vertically aligned bit.
 */

.gallery-content-inner {
    display: inline-block;
    max-width: 510px;
    text-align: center;
    vertical-align: middle;
    width: 90%;
}

.gallery-content__text {
    margin-bottom: 20px;
}

.gallery-content__text p {
    margin-bottom: 10px;
    font-size: inherit;
    line-height: normal;
}

.gallery-wrap {
    background-color: var(--color-background);
    color: var(--color-text);
}

.gallery-wrap h1,
.gallery-wrap h2,
.gallery-wrap h3,
.gallery-wrap h4,
.gallery-wrap h5,
.gallery-wrap h6 {
    color: var(--color-heading);
}

.gallery-wrap .slick-next,
.gallery-wrap .slick-prev {
    transition: 0.3s opacity;
}

.gallery-wrap .slick-dots li {
    border-color: var(--color-text);
}

.gallery-wrap a {
    transition: opacity 0.2s ease;
}

.gallery-wrap a:hover {
    opacity: 0.8;
}

.collectionList {
    margin: 10px 0;
}

.template-collection .collectionList,
.template-search .collectionList {
    margin: 20px 0;
}

@media screen and (min-width: 768px) {
    .template-collection .collectionList,
    .template-search .collectionList {
        margin: 25px 0;
    }
}

.collectionList .collectionBlock-info {
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px;
}

@media screen and (min-width: 768px) {
    .collectionList .collectionBlock-info {
        padding: 50px;
    }
    .collectionList .collectionBlock-info.text-position--top_left {
        align-items: flex-start;
        justify-content: flex-start;
        text-align: left;
    }
    .collectionList .collectionBlock-info.text-position--top_right {
        align-items: flex-start;
        justify-content: flex-end;
        text-align: right;
    }
    .collectionList .collectionBlock-info.text-position--bottom_left {
        align-items: flex-end;
        justify-content: flex-start;
        text-align: left;
    }
    .collectionList .collectionBlock-info.text-position--bottom_right {
        align-items: flex-end;
        justify-content: flex-end;
        text-align: right;
    }
}

.collectionList .collectionBlock-info h3 {
    color: inherit;
}

.collectionList .collectionBlock-info p {
    margin: 10px 0 0;
    color: inherit;
    font-size: 1.14rem;
}

.collectionList .collectionBlock-info .button {
    margin-top: 20px;
}

@media screen and (max-width: 549px) {
    .collectionList .collectionBlock-info p {
        display: none;
    }
}

.collectionList .collectionBlock {
    overflow: hidden;
    cursor: pointer;
    border: 5px solid var(--color-background);
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.collectionList .collectionBlock:hover .collectionBlock-image--zoom {
    transform: translateZ(0) scale(1.2);
}

.collectionList .collectionBlock-image {
    padding-top: 66%;
    background-size: cover;
    overflow: hidden;
}

.collectionList .collectionBlock-image::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.collectionList .collectionBlock-image svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
}

.collectionList .collectionBlock-image--no-image::after {
    content: none;
}

.collectionList .collectionBlock-image--zoom {
    transition: transform 4s ease-out !important;
    transform: translateZ(0) scale(1);
}

.collectionList-header {
    margin-top: 50px;
    margin-bottom: 50px;
}

.collectionList-header p:last-child {
    margin-bottom: 5px;
}

.collectionList-header .block {
    text-align: center;
}

.collectionList-header .collections {
    margin-bottom: 25px;
}

.collectionList-header .collection {
    display: inline-block;
    position: relative;
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h4);
    line-height: 1.5;
    transition: color 0.2s, opacity 0.2s;
    border-bottom: 2px solid transparent;
    color: var(--color-text);
    cursor: pointer;
    margin: 0 15px;
    opacity: 0.6;
    padding: 1px 0;
    text-transform: uppercase;
    /**
   * Active class needs to be applied to first collection in markup.
   */
}

.collectionList-header .collection:hover {
    opacity: 1;
}

.collectionList-header .collection.is-active {
    border-bottom: 2px solid var(--color-text);
    opacity: 1;
}

.collectionList-row {
    padding: 0 5px;
}

.collectionList__wrapper {
    overflow: hidden;
}

.collectionList__inner {
    float: left;
    width: 100%;
    margin: -5px 0;
}

.row--mosaic::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

@media screen and (min-width: 768px) {
    .row--mosaic {
        position: relative;
        height: calc(100vh - 60px);
    }
    .row--mosaic.row--default-height {
        height: 75vh;
        min-height: 560px;
    }
    .row--mosaic .collectionBlock {
        float: left;
        position: relative;
        width: 100%;
        height: 100%;
    }
    .row--mosaic .collectionBlock-image {
        height: 100%;
        padding-top: 0;
    }
    .row--mosaic .collectionBlock-info {
        padding: 30px;
    }
    .row--mosaic .collectionBlock-info div {
        width: 100%;
    }
    .row--mosaic .collectionBlock-info.text-position--bottom_right {
        padding-right: 50px;
    }
    .row--mosaic.row--2-blocks .collectionBlock {
        width: 50%;
        height: 100%;
    }
    .row--mosaic.row--3-blocks {
        padding-right: 50%;
    }
    .row--mosaic.row--3-blocks .collectionBlock {
        width: 100%;
        height: 50%;
    }
    .row--mosaic.row--3-blocks .collectionBlock:last-child {
        width: calc(50% - 5px);
        height: 100%;
        position: absolute;
        top: 0;
        right: 5px;
    }
    .row--mosaic.row--4-blocks {
        padding-right: 50%;
    }
    .row--mosaic.row--4-blocks .collectionBlock {
        width: 100%;
        height: 50%;
    }
    .row--mosaic.row--4-blocks .collectionBlock:nth-child(2),
    .row--mosaic.row--4-blocks .collectionBlock:nth-child(3) {
        width: 50%;
    }
    .row--mosaic.row--4-blocks .collectionBlock:last-child {
        width: calc(50% - 5px);
        height: 100%;
        position: absolute;
        top: 0;
        right: 5px;
    }
    .row--mosaic.row--5-blocks {
        padding-right: 40%;
    }
    .row--mosaic.row--5-blocks .collectionBlock {
        height: 50%;
    }
    .row--mosaic.row--5-blocks .collectionBlock:nth-child(1),
    .row--mosaic.row--5-blocks .collectionBlock:nth-child(4) {
        width: 66.66%;
    }
    .row--mosaic.row--5-blocks .collectionBlock:nth-child(2),
    .row--mosaic.row--5-blocks .collectionBlock:nth-child(3) {
        width: 33.33%;
    }
    .row--mosaic.row--5-blocks .collectionBlock:last-child {
        width: calc(40% - 5px);
        height: 100%;
        position: absolute;
        top: 0;
        right: 5px;
    }
}

@media screen and (max-width: 1023px) and (min-width: 768px) {
    .row--mosaic {
        height: auto;
        min-height: 0;
    }
    .row--mosaic.row--1-blocks .collectionBlock,
    .row--mosaic.row--2-blocks .collectionBlock {
        height: 50vh;
        min-height: 480px;
    }
    .row--mosaic.row--3-blocks,
    .row--mosaic.row--4-blocks,
    .row--mosaic.row--5-blocks {
        padding-right: 5px;
    }
    .row--mosaic.row--3-blocks .collectionBlock,
    .row--mosaic.row--4-blocks .collectionBlock,
    .row--mosaic.row--5-blocks .collectionBlock {
        height: 25vh;
        min-height: 240px;
    }
    .row--mosaic.row--3-blocks .collectionBlock:last-child,
    .row--mosaic.row--4-blocks .collectionBlock:last-child,
    .row--mosaic.row--5-blocks .collectionBlock:last-child {
        width: 100%;
        height: 50vh;
        min-height: 480px;
        position: relative;
        right: 0;
    }
    .row--mosaic.row--5-blocks .collectionBlock:last-child {
        right: 0;
    }
    .row--mosaic.row--default-height {
        height: auto;
        min-height: 0;
    }
    .row--mosaic.row--default-height .collectionBlock {
        height: 35vh;
        min-height: 240px;
    }
    .row--mosaic.row--default-height.row--1-blocks .collectionBlock,
    .row--mosaic.row--default-height.row--2-blocks .collectionBlock {
        height: 75vh;
    }
    .row--mosaic.row--default-height.row--3-blocks .collectionBlock:last-child,
    .row--mosaic.row--default-height.row--4-blocks .collectionBlock:last-child,
    .row--mosaic.row--default-height.row--5-blocks .collectionBlock:last-child {
        height: 75vh;
        min-height: 560px;
    }
}

@media screen and (max-width: 767px) {
    .row--mosaic .collectionBlock {
        float: left;
        width: 100%;
    }
    .row--mosaic .collectionBlock-image {
        padding-top: 50%;
        height: 0;
    }
}

@media screen and (max-width: 399px) {
    .row--mosaic .collectionBlock {
        width: 100%;
    }
    .row--mosaic .button {
        padding: 14px 18px;
    }
}


/*
 * Logo list
 */

.logos-list {
    padding: 25px 0;
}

.logos-list-wrapper {
    position: relative;
    overflow: hidden;
    height: 90px;
    text-align: center;
    padding: 0 40px;
}

.logos-list-wrapper .slick-prev {
    left: -40px;
}

.logos-list-wrapper .slick-next {
    right: -40px;
}

.logos-list-wrapper .slick-track {
    margin: auto;
}

@media screen and (max-width: 767px) {
    .logos-list-wrapper {
        padding: 0;
    }
    .logos-list-wrapper .slick-prev {
        left: 0;
    }
    .logos-list-wrapper .slick-next {
        right: 0;
    }
}

.logos-slider {
    height: 100%;
    margin: auto;
}

.logos-slider__item {
    display: block;
    width: 120px;
    height: 90px;
    margin: auto;
    background-color: transparent;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: contain;
}

.logos-slider__item::after {
    content: none;
}

.logos-slider__item svg {
    background: transparent;
    fill: var(--color-text-alpha-30);
}

.map-section {
    position: relative;
    background-color: #fafafa;
}

.no-js .map-section .lazyload {
    display: none;
}

.map {
    width: 100%;
    height: 75vh;
    position: relative;
}

.map--bg {
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
    background-size: cover;
}

.map__info {
    display: flex;
    align-items: center;
    width: 50%;
    position: absolute;
    left: 50%;
    margin-left: -25%;
    bottom: 50px;
    padding: 25px 5px;
    box-shadow: 0 10px 20px rgba(0, 0, 0, 0.19), 0 6px 6px rgba(0, 0, 0, 0.23);
}

@media screen and (max-width: 1280px) {
    .map__info {
        width: 66%;
        margin-left: -33%;
    }
}

@media screen and (max-width: 1023px) {
    .map__info {
        width: 80%;
        margin-left: -40%;
    }
}

.map__info_title,
.map__address_container,
.map__hours_container {
    width: 33.3333%;
    padding-left: 25px;
    padding-right: 25px;
    height: 100%;
    display: inline-block;
    float: left;
    text-align: center;
}

.map__info_title>div,
.map__address_container>div,
.map__hours_container>div {
    display: inline-block;
    text-align: left;
}

.map__info_subheading {
    display: block;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    margin-top: 5px;
}

.map__hours_container {
    border-right: none;
    text-align: center;
}

.map__address_container {
    border-right: 1px solid #eee;
    border-left: 1px solid #eee;
    text-align: center;
}

@media screen and (max-width: 767px) {
    .map-section {
        padding-bottom: 30px;
    }
    .map__info {
        position: relative;
        bottom: auto;
        left: auto;
        padding: 35px;
        margin: -117px 28px 0;
        width: auto;
        display: block;
        box-shadow: 0 2px 4px rgba(153, 153, 153, 0.5);
    }
    .map__info_title,
    .map__address_container,
    .map__hours_container {
        width: 100%;
        text-align: center;
        padding: 0;
        float: none;
        display: block;
    }
    .map__info_title>div,
    .map__address_container>div,
    .map__hours_container>div {
        display: block;
        text-align: inherit;
    }
    .map__info_title::after {
        content: "";
        display: block;
        margin: 15px auto;
        width: 50px;
        height: 2px;
        background: var(--color-border);
    }
    .map__info_subheading {
        margin-top: 8px;
    }
    .map__address_container {
        border-right: 0;
        border-left: 0;
        margin-bottom: 20px;
    }
}


/**
* Mosaic Section
*/

.header--full+.shopify-section--mosaic {
    margin-top: 10px;
}

.section-mosaic {
    margin: 10px 0;
}

.section-mosaic .block {
    padding: 5px;
}

@media screen and (max-width: 767px) {
    .section-mosaic .block--left {
        display: flex;
        flex-direction: column;
    }
    .section-mosaic .block--left .mosaic__blocks {
        order: 1;
        width: 100%;
    }
    .section-mosaic .block--left .mosaic__content {
        order: 2;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .section-mosaic button.slick-next,
    .section-mosaic .slick-next.btn,
    .section-mosaic .slick-next.shopify-payment-button__button--unbranded,
    .section-mosaic button.slick-prev,
    .section-mosaic .slick-prev.btn,
    .section-mosaic .slick-prev.shopify-payment-button__button--unbranded {
        display: flex !important;
        visibility: visible;
    }
}

.mosaic__wrapper {
    overflow: hidden;
}

.mosaic__inner {
    float: left;
    width: 100%;
    margin: -5px 0;
    padding-left: 5px;
    padding-right: 5px;
}

.mosaic__content {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    height: 100%;
}

@media screen and (min-width: 768px) {
    .mosaic__blocks--one .mosaic__content {
        height: 50%;
    }
    .mosaic__blocks--two .mosaic__content {
        height: 60%;
    }
    .mosaic__blocks--three .mosaic__content {
        height: 60%;
    }
    .mosaic__blocks--four .mosaic__content {
        height: 40%;
    }
}

@media screen and (max-width: 767px) {
    .mosaic__content {
        padding: 50px 0;
    }
}

.mosaic__content-container {
    padding: 0 100px;
}

@media screen and (max-width: 1399px) {
    .mosaic__content-container {
        padding: 0 10px;
    }
}

.mosaic__text {
    margin: 0 auto 20px;
    line-height: normal;
}

.mosaic__image {
    position: relative;
    overflow: hidden;
    height: calc(100vh - 10px*2);
}

.block--default-height .mosaic__image {
    height: calc(75vh - 10px*2);
}

@media screen and (max-width: 1023px) {
    .mosaic__image {
        height: calc(50vh - 10px*2);
    }
    .block--default-height .mosaic__image {
        height: calc(50vh * 0.75 - 10px*2);
    }
}

@media screen and (max-width: 767px) {
    .mosaic__image {
        height: 0;
        padding-top: calc(100% - 10px);
    }
    .block--default-height .mosaic__image {
        height: 0;
        padding-top: calc(75% - 10px);
    }
}

@media screen and (min-width: 768px) {
    .mosaic__image--one {
        min-height: 496px;
    }
    .mosaic__image--two,
    .mosaic__image--three {
        min-height: 426px;
    }
    .mosaic__image--four,
    .mosaic__image--five {
        min-height: 600px;
    }
}


/*
 * Mosaic Blocks
 */

@media screen and (min-width: 768px) {
    .mosaic__blocks-wrapper {
        height: calc(100vh - 10px*2);
    }
    .block--default-height .mosaic__blocks-wrapper {
        height: calc(75vh - 10px*2);
    }
    .mosaic__blocks--one {
        min-height: 496px;
    }
    .mosaic__blocks--two,
    .mosaic__blocks--three {
        min-height: 426px;
    }
    .mosaic__blocks--four,
    .mosaic__blocks--five {
        min-height: 600px;
    }
    .mosaic__blocks--five .mosaic__block {
        width: calc(50% - 10px);
    }
    .mosaic__blocks--five .mosaic__block:first-child {
        width: calc(100% - 10px);
    }
    .block--images-only .mosaic__blocks--four .mosaic__block:nth-child(2),
    .block--images-only .mosaic__blocks--four .mosaic__block:nth-child(3) {
        width: calc(40% - 10px);
    }
    .block--images-only .mosaic__blocks--four .mosaic__block:nth-child(1),
    .block--images-only .mosaic__blocks--four .mosaic__block:nth-child(4) {
        width: calc(60% - 10px);
    }
    .block--images-only .mosaic__blocks--five .mosaic__block:nth-child(1) {
        width: calc(100% - 10px);
    }
    .block--images-only .mosaic__blocks--five .mosaic__block:nth-child(3),
    .block--images-only .mosaic__blocks--five .mosaic__block:nth-child(4) {
        width: calc(40% - 10px);
    }
    .block--images-only .mosaic__blocks--five .mosaic__block:nth-child(2),
    .block--images-only .mosaic__blocks--five .mosaic__block:nth-child(5) {
        width: calc(60% - 10px);
    }
    .block--no-text .mosaic__blocks--two .mosaic__block {
        width: calc(100% - 10px);
        height: calc(50% - 10px);
    }
    .block--no-text .mosaic__blocks--three .mosaic__block {
        width: calc(50% - 10px);
        height: calc(50% - 10px);
    }
    .block--no-text .mosaic__blocks--three .mosaic__block:first-child {
        width: calc(100% - 10px);
    }
    .block--no-text .mosaic__blocks--four .mosaic__block {
        height: calc(50% - 10px);
    }
    .block--no-text .mosaic__blocks--five .mosaic__block {
        height: calc(33.3333% - 10px);
    }
}

@media screen and (min-width: 768px) {
    .mosaic__blocks {
        display: flex;
        flex-wrap: wrap;
        float: left;
        width: calc(100% + 10px);
        margin: -5px;
    }
    .mosaic__blocks--one .mosaic__blocks {
        height: calc(50% + 10px);
    }
    .mosaic__blocks--two .mosaic__blocks {
        height: calc(40% + 10px);
    }
    .mosaic__blocks--three .mosaic__blocks {
        height: calc(40% + 10px);
    }
    .mosaic__blocks--four .mosaic__blocks {
        height: calc(60% + 10px);
    }
    .mosaic__blocks--five .mosaic__blocks {
        height: calc(100% + 10px);
    }
    .block--no-text .mosaic__blocks {
        height: calc(100% + 10px);
    }
}

.mosaic__blocks button.slick-arrow,
.mosaic__blocks .slick-arrow.btn,
.mosaic__blocks .slick-arrow.shopify-payment-button__button--unbranded {
    color: inherit;
}

[data-text-color=black] .mosaic__blocks {
    color: #000;
}

[data-text-color=white] .mosaic__blocks {
    color: #fff;
}

.mosaic__block {
    position: relative;
    height: calc(100% - 10px);
}

@media screen and (max-width: 767px) {
    .mosaic__block {
        height: 0;
        padding-top: calc(100% - 10px);
        display: block !important;
    }
    .block--default-height .mosaic__block {
        padding-top: calc(75% - 10px);
    }
}

@media screen and (min-width: 768px) {
    .mosaic__block {
        margin: 5px;
    }
    .mosaic__blocks--one .mosaic__block {
        width: calc(100% - 10px);
    }
    .mosaic__blocks--two .mosaic__block {
        width: calc(50% - 10px);
    }
    .mosaic__blocks--three .mosaic__block {
        width: calc(33.33% - 10px);
    }
    .mosaic__blocks--four .mosaic__block {
        width: calc(50% - 10px);
        height: calc(50% - 10px);
    }
    .mosaic__blocks--four .mosaic__blocks--split .mosaic__block:nth-child(1),
    .mosaic__blocks--four .mosaic__blocks--split .mosaic__block:nth-child(2),
    .mosaic__blocks--four .mosaic__blocks--split .mosaic__block:nth-child(3),
    .mosaic__blocks--four .mosaic__blocks--split .mosaic__block:nth-child(4) {
        width: calc(50% - 10px);
    }
    .mosaic__blocks--five .mosaic__blocks--split .mosaic__block:nth-child(2),
    .mosaic__blocks--five .mosaic__blocks--split .mosaic__block:nth-child(3),
    .mosaic__blocks--five .mosaic__blocks--split .mosaic__block:nth-child(4),
    .mosaic__blocks--five .mosaic__blocks--split .mosaic__block:nth-child(5) {
        width: calc(50% - 10px);
    }
}

.mosaic__block--collection .svg-placeholder svg,
.mosaic__block--product .svg-placeholder svg {
    min-height: 200px;
}

.mosaic__block-link--video {
    z-index: 5;
    color: inherit;
}

.mosaic__block-link--video .icon-play {
    position: absolute;
    top: 50%;
    left: 50%;
    display: inline-block;
    width: 50px;
    height: 50px;
    min-height: 50px;
    padding: 4px;
    text-align: center;
    opacity: 1;
    transform: translate(-50%, -50%);
}

.mosaic__block-image {
    position: relative;
    height: 100%;
    display: block;
}

@media screen and (max-width: 767px) {
    .mosaic__block-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }
}

.mosaic__block-bg,
.mosaic__image-bg {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    overflow: hidden;
}

.mosaic__image-bg--no-image .svg-placeholder,
.mosaic__block-bg--no-image .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.mosaic__image-bg--no-image .svg-placeholder svg,
.mosaic__block-bg--no-image .svg-placeholder svg {
    max-width: 200%;
}

.mosaic__block-text,
.mosaic__image-text {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    padding: 16px;
    z-index: 2;
    display: flex;
    align-items: flex-end;
    justify-content: flex-start;
    font-size: 1.285rem;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

@media screen and (max-width: 767px) {
    .mosaic__block-text,
    .mosaic__image-text {
        font-size: 1.3rem;
    }
}

[data-text-color=black] .mosaic__block-text,
[data-text-color=black] .mosaic__image-text {
    color: #000;
}

[data-text-color=white] .mosaic__block-text,
[data-text-color=white] .mosaic__image-text {
    color: #fff;
}

.mosaic__block-text p,
.mosaic__image-text p {
    margin: 0;
    font-size: inherit;
    line-height: inherit;
}

.mosaic__block-link {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
}

.mosaic__product-price {
    display: block;
    font-size: 70%;
}

.mosaic__image-bg::after,
.mosaic__block-bg::after {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.mosaic__image-bg .svg-placeholder::after,
.mosaic__block-bg .svg-placeholder::after {
    content: none;
}

.section-newsletter {
    padding: 50px 0;
}

@media screen and (max-width: 767px) {
    .section-newsletter {
        padding: 30px 0;
    }
}

.signUp {
    /**
   * Auto required to center container
   */
    margin: 0 auto;
    text-align: center;
}

.signUp h4 {
    max-width: 550px;
}

.signUp-confirmation {
    display: none;
}

.signUp-posted {
    /**
   * Hide body text, hide form.
   */
    /**
   * Show confirmation
   */
}

.signUp-posted .signUp-body,
.signUp-posted .signUp-form {
    display: none;
}

.signUp-posted .signUp-confirmation {
    display: block;
}

.signUp-form {
    display: block;
    position: relative;
    margin: 28px auto 0;
    width: 100%;
    max-width: 100%;
}

@media screen and (min-width: 768px) {
    .signUp-form {
        width: 400px;
    }
}

@media screen and (max-width: 767px) {
    .signUp-form {
        width: 300px;
        display: inline-block;
        margin-top: 15px;
    }
}

.signUp-form .inputGroup {
    display: block;
    position: relative;
    height: 45px;
    width: 100%;
    margin-bottom: 0;
}

.signUp-form .inputGroup ::-webkit-input-placeholder {
    color: var(--color-input-placeholder);
}

.signUp-form .inputGroup :-moz-placeholder {
    color: var(--color-input-placeholder);
}

.signUp-form .inputGroup ::-moz-placeholder {
    color: var(--color-input-placeholder);
}

.signUp-form .inputGroup :-ms-input-placeholder {
    color: var(--color-input-placeholder);
}

.signUp-form .inputGroup::after {
    display: none;
}

.signUp-form+.errors {
    margin: 0.5em 0;
}

input.signUp-input {
    height: 100%;
    padding: 0;
    width: 100%;
    padding: 0 45px 0 10px;
    color: var(--color-text);
    border: 2px solid var(--color-text);
    background-color: transparent;
}

.contact-form input.signUp-input,
.comment-form input.signUp-input {
    color: var(--color-text);
    border: 2px solid var(--color-text);
}

button.signUp-submit,
.signUp-submit.btn,
.signUp-submit.shopify-payment-button__button--unbranded {
    display: block;
    position: absolute;
    background-color: rgba(255, 255, 255, 0);
    border: 0;
    color: var(--color-text);
    background: transparent;
    border: 2px solid var(--color-text);
    top: 0;
    bottom: 0;
    right: 0;
    width: 45px;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: background 0.2s ease;
}

button.signUp-submit .icon-submit,
.signUp-submit.btn .icon-submit,
.signUp-submit.shopify-payment-button__button--unbranded .icon-submit {
    display: block;
    width: 20px;
    height: 20px;
}

button.signUp-submit:hover,
.signUp-submit.btn:hover,
.signUp-submit.shopify-payment-button__button--unbranded:hover {
    opacity: 1;
    background-color: var(--color-text-alpha-5);
    color: var(--color-text);
}

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

.page-title h1,
.page-title h2 {
    margin-bottom: 20px;
}

@media screen and (min-width: 550px) {
    .page-title {
        margin: 0 0 20px;
    }
}

.page-title .rte p {
    margin: 20px 0;
}

.page-title--left,
.page-title--article {
    text-align: left;
}

.template-collection .page-title,
.template-page .page-title {
    margin-top: 25px;
    margin-bottom: 25px;
}

@media screen and (min-width: 550px) {
    .template-collection .page-title,
    .template-page .page-title {
        margin-top: 50px;
        margin-bottom: 50px;
    }
}

.template-collection .banner .page-title,
.template-page .banner .page-title {
    margin: 0;
}

.template-collection .banner .page-title h1,
.template-page .banner .page-title h1 {
    line-height: 1;
    margin-bottom: 15px;
}

.template-collection .text-content,
.template-page .text-content {
    margin-top: 50px;
    margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
    .template-collection .text-content .row.row-sm,
    .template-page .text-content .row.row-sm {
        width: 100%;
    }
}

.page-title__heading {
    line-height: 1.1;
    margin-bottom: 0.2em;
}

.page-title__subheading {
    color: inherit;
    margin: 0 0 15px;
}

.page-title__text p {
    word-break: break-word;
    font-size: var(--font-size-banner-text);
    line-height: 1.4;
    margin-bottom: 0.2em;
}

@media screen and (max-width: 767px) {
    .page-title__text p {
        font-size: var(--font-size-banner-text-mobile);
    }
}


/*
 * About page
 */

.content-about {
    margin: 40px auto 45px;
    max-width: 75%;
}

@media screen and (min-width: 768px) {
    .content-about {
        margin: 60px auto 75px;
    }
}

@media screen and (max-width: 767px) {
    .content-about {
        margin: 60px auto 75px;
        max-width: 100%;
    }
}

.content-about img {
    max-width: 100%;
    height: auto;
}


/*
 * .template-404
 */

.template-404 .main-content {
    padding: 50px 0;
}

.fourOhFour-button {
    margin-top: 15px;
}

.template-password a {
    text-decoration: none;
}

.template-password h1,
.template-password h3,
.template-password a,
.template-password p,
.template-password label,
.template-password .feedback.error,
.template-password .logo__text {
    color: white;
}

.template-password .logo {
    margin: 20px auto;
    max-width: 100%;
}

.template-password .logo img {
    margin-left: auto;
    margin-right: auto;
    max-width: 100%;
    height: auto;
}

.template-password .input-group {
    display: flex;
    align-items: flex-start;
    justify-content: center;
    max-width: 440px;
    margin: 30px auto;
}

.template-password .input-group input {
    margin: 0;
    width: 100%;
    height: 48px;
    line-height: normal;
}

.template-password .input-group input.button {
    padding: 12px 30px;
}

.template-password .input-group .form-field--email,
.template-password .input-group .form-field--password {
    width: calc(100% - 120px);
    margin: 0;
}

.template-password .input-group .form-field--email input,
.template-password .input-group .form-field--password input {
    border: 0;
}

.template-password .input-group .form-field--submit {
    width: 120px;
    margin: 0;
}

.template-password .password__newsletter-text p {
    margin: 20px 0 0;
}

.password__container {
    position: relative;
    min-height: 100%;
    min-height: 100vh;
    overflow-x: hidden;
    overflow-y: auto;
    display: flex;
    align-items: center;
    justify-content: center;
}

.password__background {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: transparent no-repeat center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.password__overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #333;
    opacity: 0.4;
}

.password__login {
    padding-top: 30px;
}

.password__footer {
    margin: 20px 0;
}

.template-product .header--logo_center_links_center.is-standard~.bodyWrap-spacer {
    padding-top: 200px;
}

@media screen and (max-width: 1280px) {
    .template-product .header--logo_center_links_center.is-standard~.bodyWrap-spacer {
        padding-top: 180px;
    }
}

@media screen and (max-width: 767px) {
    .template-product .header--logo_center_links_center.is-standard~.bodyWrap-spacer {
        padding-top: 120px;
    }
}

@media screen and (max-width: 550px) {
    .template-product .header--logo_center_links_center.is-standard~.bodyWrap-spacer {
        padding-top: 100px;
    }
}

.template-product .flickity-page-dots {
    bottom: -30px;
}

@media screen and (min-width: 768px) {
    .row--slideshow {
        display: flex;
        justify-content: space-between;
    }
}

.product {
    width: 100%;
    margin: 50px 0;
}

.product .breadcrumbs {
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .featured-product {
        margin-top: 10px;
    }
}

.productImgSlider {
    position: relative;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    max-width: 640px;
    overflow: visible;
}

@media screen and (min-width: 1024px) {
    .product-layout-images--large .productImgSlider {
        width: 100%;
        max-width: none;
    }
    .product-layout-images--medium .productImgSlider {
        width: 85%;
    }
    .product-layout-images--small .productImgSlider {
        width: 70%;
    }
}

@media screen and (max-width: 767px) {
    .productImgSlider {
        width: calc(100% + 60px);
        max-width: none;
        margin-left: -30px;
        margin-right: -30px;
    }
}

@media screen and (max-width: 549px) {
    .productImgSlider {
        max-width: none;
        width: calc(100% + 40px);
        margin-left: -20px;
        margin-right: -20px;
    }
    .productImgSlider .product-image {
        padding-left: 10px;
        padding-right: 10px;
    }
}

.productImgSlider .flickity-page-dots {
    left: 0;
    right: 0;
    bottom: 10px;
}

@media screen and (min-width: 550px) {
    .product-layout-1--images .productImgSlider {
        margin: 0 auto;
    }
}

@media screen and (min-width: 768px) {
    .productImgSlider--single {
        margin: 0;
    }
    .productImgSlider--single .product-single__media--image {
        background-position: top left;
    }
    .product-layout-1--images .productImgSlider--single .product-single__media--image {
        background-position: top center;
    }
}

.productImgSlider-nav {
    outline: 0;
    position: relative;
    padding: 0 30px;
    margin: 5px auto;
}

.productImgSlider-nav:not(.flickity-enabled) {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.productImgSlider-nav .flickity-prev-next-button {
    width: 30px;
    height: 30px;
}

@media screen and (max-width: 767px) {
    .productImgSlider-nav {
        margin-left: -40px;
        margin-right: -40px;
        width: auto;
        max-width: none;
    }
}

@media screen and (max-width: 549px) {
    .productImgSlider-nav {
        margin-left: -20px;
        margin-right: -20px;
    }
}

@media screen and (max-width: 399px) {
    .productImgSlider-nav {
        padding: 0;
    }
    .productImgSlider-nav .flickity-prev-next-button {
        display: none;
    }
}

.product-single__media-thumb {
    width: 108px;
    height: 108px;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 399px) {
    .product-single__media-thumb {
        width: 96px;
        height: 96px;
    }
}

.product-single__media-thumb img {
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    object-fit: cover;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.product-single__thumbnail {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
}

.is-nav-selected .product-single__thumbnail::before {
    content: "";
    box-sizing: border-box;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    pointer-events: none;
    box-sizing: border-box;
    border: 1px solid var(--color-button-primary-bg);
}

.product-single__thumbnail .icon {
    position: absolute;
    top: 2px;
    right: 2px;
    margin: 5px;
    height: 22px;
    width: 22px;
    fill: var(--color-background);
    vertical-align: baseline;
}

.product-single__thumbnail .icon-media-model-outline,
.product-single__thumbnail .icon-media-video-outline {
    stroke: var(--color-text-alpha-5);
}

.product-single__thumbnail .icon-media-model-element,
.product-single__thumbnail .icon-media-video-element {
    fill: var(--color-text);
}

.product-single__thumbnail-img {
    cursor: pointer;
    display: block;
    max-width: 100%;
    max-height: 100%;
    width: 100%;
    height: 100%;
}

body.allow-image-animations .product-single__thumbnail-img.lazyload,
body.allow-image-animations .product-single__thumbnail-img.lazyloading,
body.allow-image-animations .product-single__thumbnail-img.lazyloaded {
    background-size: 45px auto !important;
}

.product-single__media--onboarding svg {
    display: block;
    width: 150%;
    height: 150%;
    max-width: 150%;
    max-height: 150%;
}

@media screen and (max-width: 767px) {
    .product-single__media--onboarding {
        margin-bottom: -40px;
    }
    .product-single__media--onboarding svg {
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

.product-layout-1--images .product-single__media--onboarding {
    position: relative;
    height: 50vh;
    max-height: 50vw;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
    .product-layout-1--images .product-single__media--onboarding {
        margin-bottom: -25px;
        max-height: 268px;
    }
}

.product-layout-1--images .product-single__media--onboarding svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 150%;
    height: 150%;
    max-width: 150%;
    max-height: 150%;
    transform: translate(-50%, -50%);
}

.product-single__media {
    width: 100%;
    min-height: 1px;
    position: relative;
    overflow: hidden;
}

.product-single__media video,
.product-single__media model-viewer {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.product-single__media--image {
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center center;
    height: auto;
}

@media screen and (min-width: 768px) {
    [data-gallery=zoom] .product-single__media--image {
        cursor: zoom-in;
        cursor: -moz-zoom-in;
        cursor: -webkit-zoom-in;
        cursor: var(--icon-zoom-in), zoom-in;
    }
}

.quickView .product-single__media--image {
    max-height: 600px;
}

.product-single__media--no-js {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.product-single__media .media-video,
.product-single__media .plyr__video-wrapper {
    height: 100%;
}

.product-single__media iframe,
.product-single__media model-viewer,
.product-single__media .shopify-model-viewer-ui,
.product-single__media img,
.product-single__media>video,
.product-single__media .plyr,
.product-single__media .media-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 100%;
    height: 100%;
}


/**
 * Product Images Scroller
 */

.row--scrollable {
    position: relative;
}

@media screen and (min-width: 768px) {
    .row--scrollable::after {
        content: "";
        display: table;
        clear: both;
        line-height: 0;
        height: 0;
    }
}

.row--scrollable .product-layout-4--images,
.row--scrollable .product-layout-4--info {
    max-width: none;
}

.row--scrollable .product-layout-images {
    position: relative;
}

.row--scrollable .product-layout-images::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

@media screen and (min-width: 768px) {
    .row--scrollable .product-layout-images {
        float: left;
    }
    .row--scrollable .product-layout-images+.product-info {
        float: right;
        padding-left: 40px;
    }
}

@media screen and (min-width: 1024px) {
    .row--scrollable .product-layout-images--large {
        width: calc(100% - 430px);
    }
    .row--scrollable .product-layout-images--large+.product-info {
        width: 430px;
    }
}

@media screen and (min-width: 1280px) {
    .row--scrollable .product-layout-images--large {
        width: calc(100% - 540px);
    }
    .row--scrollable .product-layout-images--large+.product-info {
        width: 540px;
    }
}

@media screen and (min-width: 1024px) {
    .row--scrollable .product-layout-images--medium {
        width: 60%;
    }
    .row--scrollable .product-layout-images--medium+.product-info {
        width: 40%;
    }
}

@media screen and (min-width: 1280px) {
    .row--scrollable .product-layout-images--medium {
        width: calc(100% - 540px);
    }
    .row--scrollable .product-layout-images--medium+.product-info {
        width: 540px;
    }
}

@media screen and (min-width: 1024px) {
    .row--scrollable .product-layout-images--small {
        width: 50%;
    }
    .row--scrollable .product-layout-images--small+.product-info {
        width: 50%;
    }
}

@media screen and (min-width: 1280px) {
    .row--scrollable .product-layout-images--small {
        width: calc(100% - 600px);
    }
    .row--scrollable .product-layout-images--small+.product-info {
        width: 600px;
    }
}

@media screen and (min-width: 768px) {
    .row--scrollable .productImgScroller {
        padding-left: 74px;
    }
    .row--scrollable .productImgScroller--single {
        margin-left: 0;
        padding-left: 0;
        float: left;
    }
    .row--scrollable .product-image {
        margin-bottom: 10px;
    }
    .row--scrollable .product-info {
        position: sticky;
        position: -webkit-sticky;
        top: 100px;
    }
}

@media screen and (min-width: 1024px) {
    .row--scrollable .productImgScroller {
        padding-left: 106px;
    }
    .row--scrollable .productImgScroller--single {
        padding-left: 0;
    }
}

.row--scrollable .product-info .product-title {
    margin-bottom: 20px;
}

.row--scrollable .product-info .product-price h2 {
    margin: 20px 0;
}

@media screen and (max-width: 767px) {
    .row--scrollable .product-info .product-price {
        text-align: center;
    }
}

.productImgScroller {
    position: relative;
    margin: 0 0 0 -106px;
    float: right;
    overflow: hidden;
}

@media screen and (min-width: 1024px) {
    .product-layout-images--large .productImgScroller {
        width: 100%;
    }
    .product-layout-images--medium .productImgScroller {
        width: 85%;
        margin-right: 7.5%;
    }
    .product-layout-images--small .productImgScroller {
        width: 70%;
        margin-right: 15%;
    }
}

@media screen and (min-width: 768px) {
    .productImgScroller {
        width: 100%;
        height: auto !important;
    }
}

@media screen and (max-width: 1023px) {
    .productImgScroller {
        margin-left: -74px;
    }
}

@media screen and (max-width: 767px) {
    .productImgScroller {
        overflow: visible;
        float: none;
        margin: 0 auto;
    }
    .productImgScroller .flickity-page-dots {
        left: 0;
        right: 0;
        bottom: 10px;
    }
}

@media screen and (max-width: 767px) and (min-width: 550px) {
    .product-layout-images--large .productImgScroller {
        width: 100%;
    }
    .product-layout-images--medium .productImgScroller {
        width: 85%;
    }
    .product-layout-images--small .productImgScroller {
        width: 70%;
    }
}

@media screen and (max-width: 549px) {
    .productImgScroller {
        margin: 0 -10px;
    }
}

@media screen and (max-width: 399px) {
    .productImgScroller {
        margin: 0 -20px;
    }
}

@media screen and (min-width: 768px) {
    .productImgScroller--single {
        margin-left: 0;
    }
    .productImgScroller--single .product-single__media--image {
        background-position: top left;
    }
}

@media screen and (min-width: 768px) {
    .productImgScroller-nav {
        float: left;
        position: sticky;
        position: -webkit-sticky;
        top: 100px;
        left: 0;
        width: 64px;
        margin-bottom: 28px;
        background-color: var(--color-background);
    }
}

@media screen and (min-width: 1024px) {
    .productImgScroller-nav {
        width: 106px;
    }
}

@media screen and (max-width: 767px) {
    .productImgScroller-nav {
        outline: 0;
        position: relative;
        height: 108px;
        width: auto;
        padding: 0 30px;
        margin: 5px -40px;
    }
}

@media screen and (max-width: 550px) {
    .productImgScroller-nav {
        margin-left: -20px;
        margin-right: -20px;
    }
}

@media screen and (max-width: 399px) {
    .productImgScroller-nav {
        padding: 0;
    }
    .productImgScroller-nav .flickity-prev-next-button {
        display: none;
    }
}

.productImgScroller-nav .flickity-prev-next-button {
    width: 30px;
    height: 30px;
}

.productImgScroller-nav .product-single__media-thumb {
    position: relative;
}

@media screen and (min-width: 768px) {
    .productImgScroller-nav .product-single__media-thumb {
        display: block;
        width: 64px;
        height: 64px;
        margin-bottom: 10px;
        padding: 0;
        cursor: pointer;
        overflow: visible;
    }
    .productImgScroller-nav .product-single__media-thumb a {
        opacity: 0.35;
        transition: opacity 0.3s ease-in-out;
    }
    .productImgScroller-nav .product-single__media-thumb a:hover {
        opacity: 0.5;
    }
    .productImgScroller-nav .product-single__media-thumb.active a {
        opacity: 1;
    }
    .productImgScroller-nav .product-single__media-thumb.active a::after {
        content: "";
        box-sizing: border-box;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 5;
        pointer-events: none;
        box-sizing: border-box;
        border: 1px solid var(--color-button-primary-bg);
    }
    .productImgScroller-nav .product-single__media-thumb .icon {
        margin: 2px;
        width: 18px;
        height: 18px;
    }
}

@media screen and (min-width: 1024px) {
    .productImgScroller-nav .product-single__media-thumb {
        width: 96px;
        height: 96px;
    }
}

@media screen and (max-width: 399px) {
    .productImgScroller-nav .product-single__media-thumb {
        width: 96px;
        height: 96px;
    }
}


/**
 * Product Images and Layouts
 */

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

.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) a,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) button,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) .btn,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) .shopify-payment-button__button--unbranded,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) input,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) iframe,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) .plyr,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) .plyr__progress__buffer,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) .shopify-model-viewer-ui__button,
.productImgSlider:not(.productImgSlider--single) .product-image:not(.is-selected) .shopify-model-viewer-ui__controls-area {
    visibility: hidden;
}

.product-image--onboarding {
    overflow: hidden;
}

.product-image--onboarding svg {
    margin: -20% 0;
    background: transparent;
    fill: var(--color-text);
}

.product-image__lightbox-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
    cursor: var(--icon-zoom-in), zoom-in;
    outline: none;
}

.product-single__view-in-space {
    width: 100%;
    position: relative;
    margin: 0;
    padding: 10px 15px;
    border-color: transparent;
    color: var(--color-text);
    background: var(--color-text-alpha-8);
}

.product-single__view-in-space[data-shopify-xr-hidden] {
    visibility: hidden;
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

@media screen and (min-width: 768px) {
    .product-single__view-in-space[data-shopify-xr-hidden] {
        display: none;
    }
}

.product-single__view-in-space:hover .product-single__view-in-space-text,
.product-single__view-in-space:focus .product-single__view-in-space-text {
    border-bottom-color: var(--color-text);
}

.product-single__view-in-space .icon {
    display: inline-block;
    width: 22px;
    height: 22px;
    margin-right: 4px;
    fill: transparent;
}

.product-single__view-in-space .icon .icon-media-model-outline {
    stroke: none;
}

.product-single__view-in-space .icon .icon-media-model-element {
    fill: var(--color-text);
    opacity: 1;
}

.product-single__view-in-space-text {
    display: inline-block;
    vertical-align: middle;
}

.product-info__wrapper {
    padding-left: 70px;
}

@media screen and (max-width: 1023px) {
    .product-info__wrapper {
        padding-left: 30px;
    }
}

@media screen and (max-width: 767px) {
    .product-info__wrapper {
        padding-left: 0;
        margin: 30px auto 0;
    }
}

.product-layout-1--info .product-info__wrapper {
    margin-left: auto;
    margin-right: auto;
    padding-left: 0;
}

.product-info__wrapper::after {
    content: "";
    display: table;
    clear: both;
    line-height: 0;
    height: 0;
}

.quickView-info-container .product-info__wrapper {
    max-width: 430px;
    margin-left: 0;
}

.product-info__wrapper .yotpo .text-m {
    margin-left: 4px;
}

.product-info__wrapper .product-price {
    font-size: 16px;
}

@media screen and (max-width: 767px) {
    .product-vendor {
        text-align: center;
    }
}

.product-title {
    font-size: var(--font-size-h2);
    line-height: 1.32;
    color: var(--color-heading);
    margin-bottom: 9px;
}

.quickView-info-container .product-title {
    margin-right: 35px;
}

@media screen and (max-width: 767px) {
    .product-title {
        text-align: center;
    }
}

.product-price {
    display: block;
    float: left;
    margin-bottom: 20px;
}

@media screen and (max-width: 767px) {
    .product-price {
        float: none;
        text-align: center;
    }
}

.product-price__sale {
    text-decoration: line-through;
    margin-left: 5px;
}

.product-unit-price {
    display: block;
    margin-top: 4px;
    font-size: 0.9em;
    opacity: 0.5;
}

.shop-bar__price .product-unit-price {
    display: none;
}

.product-description {
    display: block;
    position: relative;
    clear: both;
    padding: 30px 0 10px;
    line-height: 1.5;
}

.product-title__wrapper .product-description {
    padding: 10px 0 30px;
}


/**
 * Tabs
 */

.product-tabs {
    padding: 55px 0;
    display: flex;
    margin: 0 -20px;
}

@media screen and (max-width: 767px) {
    .product-tabs {
        flex-direction: column;
        margin: 0;
    }
}

.product-tabs-nav {
    width: 33.333333%;
    padding: 0 20px;
}

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

.product-tabs-contents {
    width: 66.666666%;
    padding: 0 20px;
}

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

.product-tab {
    padding: 12px 0;
    border-top: 1px solid var(--color-border);
    border-bottom: 1px solid var(--color-border);
    text-align: left;
}

.product-tab+.product-tab {
    margin-top: -1px;
}

.product-tab-title {
    display: block;
    position: relative;
    font-family: var(--heading-font-family);
    font-weight: var(--heading-font-weight);
    font-style: var(--heading-font-style);
    font-size: var(--font-size-h2);
    line-height: 1.4;
    margin-bottom: 0.2em;
    width: 100%;
    line-height: 1.5;
    text-align: left;
    text-transform: none;
    background: none;
    color: var(--color-text);
    padding: 10px 40px 10px 0;
    margin: 0;
    border: 0;
    border-bottom: 2px solid var(--color-border);
    overflow: hidden;
    cursor: pointer;
}

@media screen and (max-width: 767px) {
    .product-tab-title {
        font-size: var(--font-size-h2-mobile);
    }
}

.product-tab-title .button-toggle {
    position: absolute;
    top: 0;
    right: 0;
    margin: 25px 10px 0 0;
    width: 16px;
    height: 16px;
}

@media screen and (max-width: 767px) {
    .product-tab-title .button-toggle {
        margin-top: 20px;
    }
}

.product-tab-title .button-toggle .icon {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transition: opacity 0.2s ease-in-out, transform 0.2s ease-in-out;
}

.product-tab-title .button-toggle .icon-plus {
    opacity: 1;
}

.product-tab-title .button-toggle .icon-minus {
    opacity: 0;
}

.product-tab-title::before {
    content: "";
    position: absolute;
    left: 0;
    top: -12px;
    bottom: -12px;
    width: 0;
    opacity: 0.35;
    background: var(--color-border);
    background: linear-gradient(transparent 0%, var(--color-border) 25%, var(--color-border) 75%, transparent 100%);
}

.product-tab-title.is-active .button-toggle .icon-plus {
    opacity: 0;
    transform: rotate(90deg);
}

.product-tab-title.is-active .button-toggle .icon-minus {
    opacity: 1;
}

.product-tab-title.is-active::before {
    width: 100%;
    opacity: 0;
    transition: width 0.15s linear 0s, opacity 0.5s ease;
}

@media screen and (min-width: 768px) {
    .product-tabs--single .product-tab-title {
        cursor: default;
    }
    .product-tabs--single .product-tab-title .icon {
        display: none;
    }
}

.product-tab-content {
    margin: 0;
    overflow: hidden;
    height: 0;
    opacity: 0;
    transition: opacity 0.3s cubic-bezier(0, 1, 0.5, 1), margin 0.15s linear;
}

.product-tab-content img {
    max-width: 100%;
    height: auto;
}

.product-tab-content td {
    border: 1px solid var(--color-border);
    padding: 4px;
}

.product-tab-content.is-active {
    margin: 20px 0;
    height: auto;
    opacity: 1;
    transition: opacity 0.3s cubic-bezier(1, 0, 1, 0.5), margin 0.3s linear;
}

@media screen and (min-width: 768px) {
    .product-tabs--single .product-tab-content {
        margin: 20px 0;
        height: auto;
        opacity: 1;
        transition: opacity 0.3s cubic-bezier(1, 0, 1, 0.5), margin 0.3s linear;
    }
}

.product-share {
    display: block;
    position: relative;
    margin-top: 20px;
    padding: 0 0 24px;
}

.featured-product .product-share {
    padding-bottom: 0;
}

.productForm {
    display: block;
    position: relative;
}

@media screen and (max-width: 767px) {
    .productForm label {
        text-align: center;
    }
}

.productForm h2 {
    margin-bottom: 0.6em;
    font-size: var(--font-size-h1);
    line-height: 1.1;
}

.productForm .selector-wrapper,
.productForm .inputGroup {
    display: inline-block;
    position: relative;
    width: 200px;
    margin-right: 20px;
    margin-bottom: 10px;
}

@media screen and (max-width: 550px) {
    .productForm .selector-wrapper,
    .productForm .inputGroup {
        margin-right: auto !important;
        margin-left: auto !important;
    }
}

.productForm .selector-wrapper select,
.productForm .inputGroup select {
    display: inline-block;
    min-width: 100%;
    border: 1px solid var(--color-border);
}

.productForm select,
.productForm input {
    border: 0;
    border-bottom: 1px solid var(--color-border);
}

.productForm .selector-wrapper,
.productForm .inputGroup,
.productForm select,
.productForm input {
    width: 100%;
}

@media screen and (min-width: 550px) {
    .productForm .selector-wrapper,
    .productForm .inputGroup,
    .productForm select,
    .productForm input {
        width: auto;
    }
    .productForm .selector-wrapper .inputCounter,
    .productForm .inputGroup .inputCounter,
    .productForm select .inputCounter,
    .productForm input .inputCounter {
        width: 120px;
    }
}

.productForm button,
.productForm .btn,
.productForm .shopify-payment-button__button--unbranded {
    display: block;
    margin-left: 0;
    font-size: 1.1rem;
}

.product-layout-1--info .productForm button,
.product-layout-1--info .productForm .btn,
.product-layout-1--info .productForm .shopify-payment-button__button--unbranded {
    margin-left: auto;
    margin-right: auto;
}

.qty__adjust {
    display: block;
    position: relative;
    width: 101px;
    margin-bottom: 20px;
    color: var(--color-button-primary-bg);
}

@media screen and (max-width: 767px) {
    .qty__adjust {
        position: relative;
        margin: 0 auto 20px;
    }
}

.qty__adjust input {
    display: block;
    width: 100%;
    height: 44px;
    text-align: center;
    padding: 0 35px;
    color: var(--color-text);
    background: var(--color-background);
    border: 1px solid var(--color-border);
}

.qty__adjust input::-webkit-inner-spin-button,
.qty__adjust input::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

[data-show_quantity=false] .qty__adjust {
    display: none;
}

.qty__adjust-btn {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    cursor: pointer;
    color: var(--color-text);
    padding: 0;
    margin: 0;
    background: none;
    border: 0;
}

.qty__adjust-btn.decrease {
    left: 0;
}

.qty__adjust-btn.increase {
    right: 0;
}

.productForm-block {
    display: block;
    position: relative;
    margin-bottom: 10px;
}

.productForm-block .productForm-submit {
    display: block;
    margin: auto;
    height: 44px;
    margin: 10px 0 0;
    white-space: nowrap;
}

.productForm-block .productForm-submit .icon {
    display: inline-block;
    width: 20px;
    height: 20px;
}

@media screen and (min-width: 550px) {
    .productForm-block .inputGroup {
        display: inline-block;
    }
}

@media screen and (max-width: 767px) {
    .productForm-block {
        max-width: 100%;
        margin-left: auto;
        margin-right: auto;
    }
    .productForm-block .inputGroup,
    .productForm-block .selector-wrapper,
    .productForm-block label,
    .productForm-block input,
    .productForm-block select {
        width: 100%;
        max-width: 500px;
    }
    .productForm-block .inputGroup .inputCounter {
        width: 100%;
    }
    .productForm-block .selector-wrapper {
        margin-left: 0;
        margin-right: 0;
    }
}

.productForm-block--options-inline .swatch {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .productForm-block--options-inline {
        display: flex;
        align-items: flex-start;
        flex-wrap: wrap;
        margin-right: -20px;
    }
    .productForm-block--options-inline .selector-wrapper select {
        width: 200px;
    }
}

.productForm-buttons .productForm-submit,
.productForm-buttons .shopify-payment-button,
.productForm-buttons .shopify-payment-button__button,
.productForm-buttons .shopify-payment-button .button {
    width: 500px;
    max-width: 100%;
    font-weight: var(--body-font-weight);
}

@media screen and (max-width: 767px) {
    .productForm-buttons .productForm-submit,
    .productForm-buttons .shopify-payment-button,
    .productForm-buttons .shopify-payment-button__button,
    .productForm-buttons .shopify-payment-button .button {
        margin-left: auto;
        margin-right: auto;
    }
}

.productForm-select {
    position: relative;
    display: inline-block;
    vertical-align: top;
    height: 48px;
    min-width: 60px;
    background: #fff;
}

.productForm-select select {
    height: 100%;
    padding: 1rem 5rem 0 0.6rem;
    background-color: transparent;
    border: 1px solid var(--color-border);
}

.pseudoform .productForm-select select {
    display: block;
}

.productForm-select label {
    position: absolute;
    top: 0;
    left: 0;
    text-align: left;
    text-transform: uppercase;
    font-size: 0.69rem;
    padding: 0.3rem 0.6rem;
}

.productForm-select .icon-arrow {
    height: 100%;
}

@media screen and (min-width: 768px) {
    .productForm-select+.productForm-submit {
        margin-left: 10px;
    }
}

@media screen and (max-width: 767px) {
    .productForm-select {
        margin-top: 15px;
        margin-bottom: 15px;
    }
}

.product-status-flag {
    display: block;
    position: absolute;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    transition: opacity 0.2s ease, top 0.2s ease, left 0.2s ease;
    z-index: 1;
    top: 0;
    left: 0;
    min-width: 44px;
    height: 44px;
    padding: 0 6px;
    margin: 10px 0 0 10px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    line-height: 1;
    text-align: center;
    white-space: normal;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    border-radius: 50%;
    color: var(--color-badge-text);
    background-color: var(--color-badge-bg);
}

.product-status-flag--rectangle {
    border-radius: 0;
    height: auto;
    padding: 10px 12px;
}


/*
 * Sticky "Shop" Bar
 */

.shop-bar {
    position: fixed;
    z-index: 10;
    top: auto !important;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 48px;
    background: var(--color-background);
    border-top: 1px solid var(--color-border);
    opacity: 0;
    visibility: hidden;
    will-change: transform, opacity;
    transition: transform 0.3s ease-in-out, opacity 0.3s linear, visibility 0s linear 0.3s;
}

@media screen and (max-width: 1023px) {
    .shop-bar {
        display: none;
    }
}

.shop-bar--is-visible {
    opacity: 1;
    visibility: visible;
    transition: transform 0.3s ease-in-out, opacity 0.3s linear, visibility 0s linear 0s;
}

.productForm--shop-bar {
    float: right;
    display: flex;
    align-items: center;
    width: auto;
}

.productForm--shop-bar button,
.productForm--shop-bar .btn,
.productForm--shop-bar .shopify-payment-button__button--unbranded {
    min-width: 150px;
    padding: 12px 30px;
    text-align: center;
}

.productForm--shop-bar .selector-wrapper {
    margin: 0;
    border-right: 1px solid var(--color-border);
}

.productForm--shop-bar .selector-wrapper select {
    padding-left: 18px;
    border-bottom: 0;
    height: 47px;
    line-height: normal;
    border: 0;
    border-radius: 0;
}

.productForm--shop-bar .selector-wrapper label {
    display: none !important;
}

.productForm--shop-bar .selector-wrapper::after {
    right: 18px;
}

.productForm--shop-bar .productForm-block {
    margin-bottom: 0;
}

.productForm--shop-bar .productForm-submit {
    margin: 0;
    height: 47px;
    border: 0;
    border-radius: 0;
}

.shop-bar__info {
    display: flex;
    align-items: center;
    position: relative;
    padding-right: 100px;
    border-right: 1px solid var(--color-border);
    font-size: 16px;
    line-height: 1.5;
    overflow: hidden;
}

.shop-bar__info .product-price {
    margin-bottom: 0;
}

.shop-bar__image {
    width: 48px;
    height: 48px;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    position: relative;
    margin-right: 20px;
}

.shop-bar__title {
    margin: 0 20px 0 0;
    font-size: inherit;
    line-height: inherit;
}

.shop-bar__vendor {
    margin: 0 20px 0 0;
    opacity: 0.7;
    font-size: inherit;
    line-height: inherit;
}

.shop-bar__price {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    text-align: right;
    font-size: inherit;
    line-height: inherit;
    padding-right: 30px;
}


/*
 * Counter Elements in productForm in quickView and on product.liquid
 */

.counter {
    font-size: 0;
}

.inputCounter {
    border: 1px solid var(--color-border);
    text-align: center;
    width: 100%;
    height: 44px;
    padding-left: 30px;
    padding-right: 30px;
}

@media screen and (min-width: 550px) {
    .inputCounter {
        width: 120px;
    }
}

.inputCounter__btn {
    display: block;
    position: absolute;
    bottom: 0;
    color: var(--color-text);
    background-color: transparent;
    border: 0;
    padding: 0;
    cursor: pointer;
    font-size: 1.25rem;
    line-height: normal;
    text-align: center;
    width: 40px;
    height: 44px;
    min-width: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 10;
}

@media screen and (min-width: 550px) {
    .inputCounter__btn {
        width: 30px;
    }
}

.inputCounter__btn--down {
    left: 0px;
}

.inputCounter__btn--up {
    right: 0px;
}

.share-links {
    margin: 0;
    display: flex;
    flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
    .share-links {
        justify-content: center;
    }
}

.share-link {
    display: inline-block;
    color: var(--color-text);
    text-decoration: none;
    padding: 8px 12px;
    background: transparent;
    border: 1px solid var(--color-text-alpha-8);
    margin: 0 10px 0 0;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 12px;
    letter-spacing: 1px;
    position: relative;
    background: transparent;
    transition: border 0.25s ease;
}

.share-link .icon {
    display: inline-block;
    vertical-align: middle;
    margin: 0 5px 0 0;
    width: 18px;
    height: 18px;
    fill: currentColor;
}

.share-link:hover {
    border-color: var(--color-text-alpha-60);
}

.shopify-model-viewer-ui,
model-viewer,
.video__contain .plyr--video,
.video__contain>video,
.video__contain .contain--video {
    width: 100%;
    height: 100%;
    position: absolute !important;
    top: 0;
    left: 0;
    max-width: 100%;
    /* IE FIX */
    min-width: 100%;
    min-height: 100%;
}

video::-webkit-media-controls-panel {
    display: flex !important;
    opacity: 1 !important;
}


/* Override default magnific popup cursors */

.mfp-zoom-out-cur,
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
    cursor: pointer;
}

.mfp-zoom {
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
    cursor: var(--icon-zoom-in), zoom-in;
}

.flickity-enabled .flickity-viewport .zoom-container,
.flickity-enabled .flickity-viewport.is-pointer-down .zoom-container {
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
    cursor: var(--icon-zoom-in), zoom-in;
}


/* Magnific popup custom style */

.template-product .mfp-container {
    padding: 0;
}

.template-product .mfp-wrap {
    width: 100vw;
    overflow: hidden !important;
    cursor: auto;
    -moz-cursor: auto;
    -webkit-cursor: auto;
}

.template-product .mfp-bg {
    width: 100vw;
    background: var(--color-background);
}

.template-product .mfp-close {
    color: var(--color-text);
    background: var(--color-background);
    opacity: 1;
    cursor: pointer;
}

.template-product .mfp-close .icon {
    width: 44px;
    height: 44px;
    padding: 12px;
    margin: 0;
    background: var(--color-text-alpha-5);
    transition: background 0.2s ease;
}

.template-product .mfp-close:hover .icon {
    background: var(--color-text-alpha-10);
}

.template-product .mfp-arrow {
    top: auto;
    bottom: 0;
    margin: 0;
    width: 44px;
    height: 44px;
    opacity: 1;
    color: var(--color-text);
    background: var(--color-background);
    transform: none;
}

.template-product .mfp-arrow .icon {
    width: 44px;
    height: 44px;
    padding: 12px;
    background: var(--color-text-alpha-5);
    transition: background 0.2s ease;
}

.template-product .mfp-arrow:hover .icon {
    background: var(--color-text-alpha-10);
}

.template-product .mfp-arrow-right {
    right: auto;
    left: 44px;
}

.template-product .mfp-bottom-bar {
    margin-top: -44px;
    z-index: 2;
}

.template-product .mfp-content {
    width: 100%;
    height: 100%;
}

.template-product .mfp-figure,
.template-product .mfp-gallery .mfp-image-holder .mfp-figure {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
    cursor: var(--icon-zoom-in), zoom-in;
}

.template-product .mfp-figure::after,
.template-product .mfp-gallery .mfp-image-holder .mfp-figure::after {
    content: none;
}

.template-product .mfp-counter {
    background: var(--color-background);
}

.template-product .mfp-counter-text {
    font-size: 1.142rem;
    line-height: 24px;
    padding: 10px 20px;
    color: var(--color-text);
    background: var(--color-text-alpha-5);
}

.template-product img.mfp-img {
    padding: 0;
    cursor: inherit;
}

.template-product .mfp-fade-in-up.mfp-wrap .mfp-img,
.template-product .mfp-fade-in-up.mfp-wrap .zoomImg {
    transition: opacity 0.25s ease-in-out;
}

.template-product .mfp-iframe-holder .mfp-close,
.template-product .mfp-image-holder .mfp-close {
    right: 0;
}

.template-product .mfp-fade-in-up.mfp-bg,
.template-product .mfp-fade-in-up.mfp-wrap .mfp-content,
.template-product .mfp-fade-in-up.mfp-wrap .mfp-arrow {
    opacity: 0;
    transform: translateY(100%);
    transition: transform 0.25s ease-in-out, opacity 0.25s ease-in-out;
}

.template-product .mfp-fade-in-up.mfp-bg.mfp-ready,
.template-product .mfp-fade-in-up.mfp-wrap.mfp-ready .mfp-content,
.template-product .mfp-fade-in-up.mfp-wrap.mfp-ready .mfp-arrow {
    opacity: 1;
    transform: translateY(0);
}

.template-product .mfp-fade-in-up.mfp-bg.mfp-removing,
.template-product .mfp-fade-in-up.mfp-wrap.mfp-removing .mfp-content,
.template-product .mfp-fade-in-up.mfp-wrap.mfp-removing .mfp-arrow {
    opacity: 0;
    transform: translateY(100%);
}

.template-product .mfp-fade-in-up.mfp-wrap .mfp-s-loading .mfp-img,
.template-product .mfp-fade-in-up.mfp-wrap .mfp-s-loading .zoomImg {
    opacity: 0;
}

.zoom-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    background-color: var(--color-background);
    background-image: var(--icon-loader);
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 64px auto;
    transition: opacity 0.25s ease-in-out;
    cursor: zoom-in;
    cursor: -moz-zoom-in;
    cursor: -webkit-zoom-in;
    cursor: var(--icon-zoom-in), zoom-in;
}

.zoom-container.is-zoomed {
    opacity: 1;
    cursor: zoom-out;
    cursor: -moz-zoom-out;
    cursor: -webkit-zoom-out;
    cursor: var(--icon-zoom-out), zoom-out;
}

.zoom-container--loaded {
    background-image: none;
}

.zoomImg {
    min-width: 100vw;
    min-height: 100vh;
    object-fit: contain;
}


/**
 * Product Features
 */

.product-features--container {
    margin: 50px 0;
}

@media screen and (max-width: 767px) {
    .product-features--container {
        margin-top: 10px;
    }
}

.feature-item {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    margin-bottom: 50px;
}

.feature-item[data-alignment=center] {
    align-items: center;
}

.feature-item:last-child {
    margin-bottom: 0;
}

@media screen and (max-width: 767px) {
    .feature-item {
        flex-direction: row-reverse;
        flex-wrap: wrap;
        margin-bottom: 20px;
        text-align: center;
    }
    .feature-item:last-child {
        margin-bottom: 0;
    }
}

.feature-item .button {
    margin-top: 10px;
}

.feature-item--odd {
    flex-direction: row-reverse;
}

.feature-item--center {
    align-items: center;
}

.feature-image {
    position: relative;
    width: calc(50% - 30px);
}

.feature-image .svg-placeholder {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .feature-image {
        width: calc(100% + 60px);
        margin: 0 -30px 20px;
    }
    .feature-image .placeholder-svg-filled {
        margin-left: auto;
        margin-right: auto;
        max-height: 320px;
    }
}

@media screen and (max-width: 549px) {
    .feature-image {
        width: calc(100% + 10px*2);
        margin: 0 -10px 20px;
    }
}

.feature-image-bg {
    width: 100%;
    height: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}

.feature-text {
    width: calc(50% - 30px);
}

@media screen and (max-width: 767px) {
    .feature-text {
        width: 100%;
    }
}

.feature-text-wrap {
    max-width: 520px;
}

@media screen and (max-width: 767px) {
    .feature-text-wrap {
        margin: 0 auto;
    }
}

.feature-text-wrap .h2 {
    line-height: 1.1;
    margin-bottom: 0.2em;
}

.feature-text__p p {
    font-size: inherit;
}

.product-form {
    clear: both;
    padding: 0;
}

@media screen and (max-width: 767px) {
    .product-form {
        text-align: center;
    }
    .product-form .shopify-payment-button__more-options {
        margin-left: auto;
    }
}

.product-form .swatch,
.product-form .signUp-form {
    margin: 0;
}

.product-form .contact-form label,
.product-form .comment-form label {
    color: inherit;
}

.product-form .contact-form label p,
.product-form .comment-form label p {
    color: inherit;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
    margin: 0 0 10px;
}

.product-single__variants {
    display: none;
}

.variants-wrapper {
    margin-bottom: 5px;
}

.variant-wrapper--boxes {
    display: flex;
    flex-wrap: wrap;
}

.variant-wrapper--color {
    width: 100%;
    margin-bottom: 5px;
}

.variant-input-wrap {
    margin: 0;
    padding: 0;
    border: 0;
    width: 100%;
}

.variant-input-wrap--boxes {
    width: calc(100% + 4px);
    margin: 0 -4px 12px 0;
}

.variant-label {
    display: block;
    margin-bottom: 5px;
}

.variant-label--color {
    width: 100%;
}

@media screen and (max-width: 767px) {
    .variant-label--color {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }
}

.variant-label__value {
    color: var(--color-label);
}

.variant-label__value::before {
    content: ": ";
}

.variant-field {
    position: relative;
    display: inline-block;
    margin: 0 4px 4px 0;
}

input[type=radio].variant-input {
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 2;
    width: 100%;
    height: 32px;
    margin: 0;
    clip: unset;
    cursor: pointer;
}

.variant-input:checked+.variant__button-label {
    box-shadow: inset 0 0 0 1px var(--color-text);
}

.variant__button-label {
    letter-spacing: 0.025em;
    line-height: 1.6;
    position: relative;
    display: inline-block;
    font-weight: normal;
    margin: 0;
    padding: 7px 15px 7px;
    background-color: var(--color-background);
    box-shadow: inset 0 0 0 1px var(--color-text-alpha-10);
    cursor: pointer;
    -webkit-transition: box-shadow 0.25s ease;
    transition: box-shadow 0.25s ease;
}

.variant__button-label.disabled {
    color: var(--color-text);
}

.variant__button-label.disabled:after {
    position: absolute;
    content: "";
    left: 50%;
    top: 0;
    bottom: 0;
    border-left: 1px solid;
    border-color: var(--color-text);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.variant__button-label--color {
    margin: 0;
}


/**
	* Popup
	*/

.popup {
    position: fixed;
    bottom: 0;
    z-index: -1;
    opacity: 0;
    visibility: hidden;
    transform: translateY(20%);
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0s linear 0.5s, z-index 0s linear 0.5s;
}

.no-js .popup {
    display: none;
}

.popup .popup__heading {
    margin: 6px 0 12px;
    font-size: 1.25rem;
    font-weight: var(--body-font-weight-medium);
}

.popup p {
    line-height: 1.5;
}

.popup #mail {
    display: table-cell;
}

.popup .input-group {
    margin-top: 25px;
}

.popup .input-group-btn {
    display: table-cell;
    vertical-align: top;
}

.popup .signUp-form {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 0;
    padding: 0;
}

.popup--visible {
    opacity: 1;
    visibility: visible;
    z-index: 9999;
    transform: translateY(0%);
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0s linear 0s, z-index 0s linear 0s;
}

.popup--left {
    left: 0;
}

.popup--right {
    right: 0;
}

.popup--center {
    left: 50%;
}

.popup--no-image {
    width: 440px;
    max-width: 100%;
}

.popup--no-image .popup__column {
    width: 100%;
}

.popup__container {
    position: relative;
    background-color: var(--color-background);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
    width: 720px;
    max-width: calc(100% - 20px);
    margin: 10px;
}

.popup--center .popup__container {
    transform: translateX(-50%);
}

.popup__wrap {
    display: flex;
    align-items: center;
}

.popup__column {
    width: 50%;
    padding: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media screen and (max-width: 767px) {
    .popup__column {
        padding: 40px 20px;
    }
}

.popup__column--image {
    align-self: stretch;
    position: relative;
    overflow: hidden;
}

.popup__image {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    padding: 0;
    background-color: #e0e0e0;
}

.popup__image img {
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transform: translate(-50%, -50%);
}

.popup__close {
    position: absolute;
    top: 0px;
    right: 0px;
    color: var(--color-text);
    background: none;
    border: none;
    width: 48px;
    height: 48px;
    padding: 0;
    transition: opacity 0.3s ease;
}

.popup__close .icon-close {
    width: 15px;
    height: 15px;
}

.popup__close:hover {
    opacity: 0.75;
}

.quickView-button {
    cursor: pointer;
    vertical-align: middle;
    text-transform: uppercase;
    font-size: 0.9rem;
    letter-spacing: 1px;
    transition: opacity 0.3s ease, visibility 0s linear 0s;
}

.quickView--is-loading .quickView-button {
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.quickView {
    display: block;
    height: 0;
    opacity: 0;
    position: static;
    overflow: hidden;
    transition: height 0.2s ease-in-out 0.1s, 0.2s opacity 0.1s;
}

.quickView--is-visible .quickView {
    height: 680px;
    opacity: 1;
}

@media screen and (max-width: 1023px) {
    .quickView {
        display: none;
    }
}

.quickView-inner-wrap {
    overflow-x: hidden;
    overflow-y: auto;
    height: 600px;
}

.quickView-wrap {
    display: block;
    position: absolute;
    z-index: 10;
    background-color: var(--color-background);
    height: 0;
    left: 0;
    right: 0;
    overflow: hidden;
    transition: height 0.2s ease-in-out 0.1s, padding 0.2s ease-in-out 0.1s, 0.2s opacity 0.1s;
}

.quickView--is-visible .quickView-wrap {
    height: 650px;
    padding-top: 50px;
}

.collection-slider .quickView-wrap {
    padding-left: 15px;
    padding-right: 15px;
}

.quickView-wrap .container {
    height: 600px;
}

.quickView-wrap .container .row {
    height: 100%;
    display: flex;
    justify-content: space-between;
}

.quickView-wrap .product-single__media {
    cursor: default !important;
}

.quickView-wrap .product-title {
    text-align: left;
}

.quickView-wrap .productForm-buttons {
    max-width: 500px;
}

.quickView-wrap .zoom-container,
.quickView-wrap .product-image__lightbox-link {
    display: none;
}

.quickView-wrap [data-payment-button-quickview=true] {
    display: block;
}

.quickView-wrap [data-payment-button-quickview=false] {
    display: none;
}

.quickView-img {
    width: 50%;
    height: 100%;
}

.quickView-info-container {
    min-height: 100%;
    display: flex;
    align-items: stretch;
    flex-direction: column;
    justify-content: center;
}

.quickView-info {
    width: 50%;
    height: 100%;
    -webkit-user-select: initial;
    -khtml-user-select: initial;
    -moz-user-select: initial;
    -ms-user-select: initial;
    user-select: initial;
    padding-left: 70px;
    padding-right: 40px;
    align-self: center;
}

.quickView-info .product-info h2 {
    margin-right: 20px;
}

.quickView-close {
    transition: opacity 0.2s ease;
    position: absolute;
    top: 0;
    right: -8px;
    z-index: 10;
    color: var(--color-text);
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
}

.quickView-close:hover {
    opacity: 0.8;
}


/**
 * Related products
 */

.related-products .page-title {
    margin: 50px 0;
}

.related-products .page-title h2 {
    margin: 0;
}

.related-products h4 {
    font-size: 1.11rem;
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
}

@media screen and (min-width: 768px) {
    .related-products .collectionGrid-row.row--center {
        display: flex;
        justify-content: center;
        flex-wrap: wrap;
    }
}

.related-products .carousel-slide {
    overflow: visible;
}

@media screen and (max-width: 767px) {
    .related-products .carousel-slide {
        margin-bottom: 50px;
    }
    .related-products .carousel-slide:last-child {
        margin-bottom: 0;
    }
}

.related-products .carousel-slide:hover .collectionBlock-image-inner {
    opacity: 1;
}

.title-module {
    text-align: center;
    margin: 50px 0;
}

@media screen and (min-width: 768px) {
    .title-module {
        margin: 100px 0;
    }
}

.title-module .accent-line {
    margin: 22px auto;
}

.title-module .accent-line--straight {
    margin: 20px auto 16px;
}

.rich__subheading {
    margin-top: 0;
}

.rich-content p {
    margin-bottom: 1em;
}

.rich-content.no-button p {
    margin-bottom: 5px;
}

.rich-content .button-wrap {
    margin-top: 15px;
}

@media screen and (min-width: 768px) {
    .row--split {
        display: flex;
        flex-wrap: wrap;
        align-items: flex-start;
        justify-content: center;
        position: relative;
        text-align: left;
        margin-bottom: 20px;
        margin-top: 20px;
    }
    .row--split .rich__subheading {
        padding-top: 10px;
    }
    .row--split .accent-line {
        position: absolute;
        top: 50%;
        left: 50%;
        margin: 0;
        transform: rotate(90deg);
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
    }
    .row--split .accent-line--curved {
        height: 75px;
        margin: -37.5px 0 0 -37.5px;
    }
    .row--split .accent-line--straight {
        margin: -1px 0 0 -37.5px;
    }
    .row--split .rich-heading {
        width: calc(50% - 5px);
        padding: 0 45px 0 0;
        margin: 0 auto 0 0;
    }
    .row--split .rich-heading h2 {
        margin: 0;
    }
    .row--split .rich-text__accent-line {
        position: relative;
        margin: auto;
        width: 10px;
        height: 75px;
        align-self: center;
    }
    .row--split .rich-content {
        width: calc(50% - 5px);
        padding: 10px 0 0 45px;
        margin: 0 0 0 auto;
    }
    .row--split .rich-content p {
        margin: 0;
    }
    .row--split+.row {
        margin-top: 40px;
    }
    .row--split::before,
    .row--split::after {
        content: none;
    }
}


/**
 * Template search
 */

.template-search .page-title {
    margin-bottom: 3px;
}

.template-search .page-title h1 {
    margin-top: 50px;
}

@media screen and (max-width: 767px) {
    .template-search .page-title h1 {
        margin-top: 25px;
        margin-bottom: 0;
    }
}

.template-search .search-info {
    width: 100%;
    padding: 8px 0;
    margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
    .template-search .search-info {
        padding-right: 40px;
    }
}

.template-search .search-info h3 {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: 1.29rem;
    margin-bottom: 0;
}

.template-search .collectionGrid-nav {
    margin-bottom: 48px;
}

@media screen and (max-width: 1023px) {
    .template-search .collectionGrid-nav {
        display: flex;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        text-align: center;
    }
    .template-search .collectionGrid-nav .collectionGrid-sort {
        order: 1;
    }
    .template-search .collectionGrid-nav .search-info {
        order: 2;
        text-align: center;
    }
    .template-search .collectionGrid-nav .button {
        min-width: 0;
    }
}


/**
 * Hero Module
 */

.hero {
    overflow: hidden;
    /**
   * This remains if the slideshow is disabled too, so don't delete.
   */
}

@media screen and (min-width: 768px) {
    .hero:hover .slick-prev,
    .hero:hover .slick-next {
        /**
     * Same as default state.
     */
        opacity: 1;
    }
    .hero:hover .slick-prev:hover,
    .hero:hover .slick-next:hover {
        opacity: 1;
    }
}

.hero .hero-slide {
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
}

@media screen and (max-width: 767px) {
    .hero[data-down-arrow=true] .slick-dots {
        bottom: 25px;
    }
}

.hero[data-down-arrow=true].hero--dots-center .slick-dots {
    bottom: 25px;
}

.hero .slick-list {
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    position: absolute;
}

.hero .slick-track {
    line-height: 0;
}

.hero .hero-slide {
    line-height: normal;
}

.hero.original-height {
    padding: 0;
    height: auto !important;
    min-height: 0;
}

.hero.original-height .slick-list {
    position: relative;
}

.hero.original-height .slide-text {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

.main-content>.shopify-section-slideshow:first-of-type .hero.original-height .slide-text {
    padding-top: 60px;
}

.hero.original-height .slide-image {
    position: static;
    overflow: hidden;
    height: auto;
    display: flex;
    align-items: center;
}

.hero.original-height .slide-image img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.hero.original-height .slide-image__container {
    position: relative;
    height: 0;
    width: 100%;
    overflow: hidden;
}

.hero.original-height .slide-image--blank {
    width: 100%;
    height: 60vh;
}

.hero.original-height .slide-image--blank .placeholder-svg,
.hero.original-height .slide-image--blank .svg-placeholder>svg {
    width: 100%;
    height: 100%;
}

.hero.original-height .hero-slide,
.hero.original-height .slick-list,
.hero.original-height .slick-track,
.hero.original-height .slick-slide,
.hero.original-height .slide-inner {
    height: auto;
}

.hero.original-height .hero-slide {
    position: relative;
}

.hero.original-height .slide-background-container {
    position: relative;
    height: 360px;
}

.hero.original-height .slide-background {
    height: 100%;
}

.hero[data-current-style=black]+.hero-scroll-down {
    color: black;
}

.hero[data-current-style=black] button.slick-next,
.hero[data-current-style=black] .slick-next.btn,
.hero[data-current-style=black] .slick-next.shopify-payment-button__button--unbranded,
.hero[data-current-style=black] button.slick-prev,
.hero[data-current-style=black] .slick-prev.btn,
.hero[data-current-style=black] .slick-prev.shopify-payment-button__button--unbranded {
    color: black;
}

.hero[data-current-style=black] .slick-dots li {
    border-color: black;
}

.hero[data-current-style=white]+.hero-scroll-down {
    color: white;
}

.hero[data-current-style=white] button.slick-next,
.hero[data-current-style=white] .slick-next.btn,
.hero[data-current-style=white] .slick-next.shopify-payment-button__button--unbranded,
.hero[data-current-style=white] button.slick-prev,
.hero[data-current-style=white] .slick-prev.btn,
.hero[data-current-style=white] .slick-prev.shopify-payment-button__button--unbranded {
    color: white;
}

.hero[data-current-style=white] .slick-dots li {
    border-color: white;
}

.hero .slide-slide {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.hero:not(.slick-initialized) .hero-slide:not(.initial-slide) {
    display: none;
}

.hero--dots-left .slick-dots {
    text-align: left;
    margin-left: 72px;
}

@media screen and (max-width: 1023px) {
    .hero--dots-left .slick-dots {
        margin-left: 32px;
    }
}

@media screen and (max-width: 549px) {
    .hero--dots-left .slick-dots {
        margin-left: 12px;
    }
}

.hero--dots-center .slick-dots {
    text-align: center;
}

.hero--dots-right .slick-dots {
    text-align: right;
    margin-right: 72px;
}

@media screen and (max-width: 1023px) {
    .hero--dots-right .slick-dots {
        margin-right: 32px;
    }
}

@media screen and (max-width: 549px) {
    .hero--dots-right .slick-dots {
        margin-right: 12px;
    }
}

.hero-slide--center .slide-inner {
    text-align: center;
}

.hero-slide--center .slide-inner .row {
    justify-content: center;
}

.hero-slide--left,
.hero-slide--bottom-left {
    text-align: left;
}

.hero-slide--left .slide-inner .row,
.hero-slide--bottom-left .slide-inner .row {
    justify-content: flex-start;
}

.hero-slide--left .slide-content .button,
.hero-slide--bottom-left .slide-content .button {
    margin-left: 0;
}

@media screen and (min-width: 768px) {
    .hero-slide--left .slide-content .button,
    .hero-slide--bottom-left .slide-content .button {
        margin-right: 16px;
    }
}

.hero-slide--right,
.hero-slide--bottom-right {
    text-align: right;
}

.hero-slide--right .slide-inner .row,
.hero-slide--bottom-right .slide-inner .row {
    justify-content: flex-end;
}

.hero-slide--right .slide-content .button,
.hero-slide--bottom-right .slide-content .button {
    margin-right: 0;
}

@media screen and (min-width: 768px) {
    .hero-slide--right .slide-content .button,
    .hero-slide--bottom-right .slide-content .button {
        margin-left: 16px;
    }
}

.hero-slide--bottom-left .slide-inner .row,
.hero-slide--bottom-right .slide-inner .row {
    align-items: flex-end;
}

@media screen and (max-width: 767px) {
    .hero-slide--bottom-left .slide-inner .row,
    .hero-slide--bottom-right .slide-inner .row {
        align-items: center;
    }
}

.hero-slide--bottom-left .slide-content,
.hero-slide--bottom-right .slide-content {
    margin-bottom: 50px;
}

@media screen and (max-width: 767px) {
    .hero-slide--bottom-left .slide-content,
    .hero-slide--bottom-right .slide-content {
        margin-bottom: 0;
    }
}

.hero-slide--style-white {
    color: #fff;
    background-color: #000;
}

.hero-slide--style-white.slide--onboarding {
    background-color: transparent;
}

.hero-slide--style-black {
    color: #000;
    background-color: #fff;
}

.hero-slide--style-black.slide--onboarding {
    background-color: transparent;
}

.hero-scroll-down {
    position: relative;
    left: 50%;
    z-index: 10;
    width: 64px;
    height: 32px;
    margin-top: -32px;
    margin-left: -32px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.hero-scroll-down .icon-arrow-slider {
    width: 22px;
    height: 22px;
}

.slide-content {
    padding: 30px 0;
    position: relative;
}

.slide-content::before {
    content: "";
    height: 100%;
    left: 0;
    opacity: 0.5;
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 0;
}

.slide-content__subheading,
.slide-content__heading,
.slide-content__text {
    color: inherit;
}

.slide-content__subheading,
.slide-content__heading,
.slide-content__text,
.slide-content__buttons {
    position: relative;
    overflow: hidden;
    z-index: 9;
}

.slide-content__button {
    margin-left: 10px;
    margin-right: 10px;
    margin-top: 10px;
    min-width: 150px;
    padding-left: 15px;
    padding-right: 15px;
}

@media screen and (max-width: 399px) {
    .slide-content__button {
        margin-left: 0;
        margin-right: 0;
        padding-left: 10px;
        padding-right: 10px;
        width: 100%;
    }
    .slide-content__button+.button {
        margin-left: 0;
    }
}

.slide-content__heading {
    line-height: 1;
    margin-bottom: 15px;
}

.slide-content__text p {
    font-size: var(--font-size-banner-text);
    margin: 0 0 15px;
}

@media screen and (max-width: 399px) {
    .slide-content__text p {
        font-size: var(--font-size-banner-text-mobile);
    }
}

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

.slide-inner .container {
    height: 100%;
    max-height: 100%;
    overflow: hidden;
    z-index: 999;
}

.slide-inner .row {
    height: 100%;
    display: flex;
    align-items: center;
}

.slide-inner .row::before,
.slide-inner .row::after {
    content: none;
}

.slide-content {
    display: inline-block;
    position: relative;
    max-width: 100%;
}

@media screen and (min-width: 700px) {
    .slide-content {
        max-width: 700px;
    }
}

.slide-background-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.slide-background {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.slide-background--top-center {
    background-position: top center;
}

.slide-background--right-center {
    background-position: center right;
}

.slide-background--center-center {
    background-position: center center;
}

.slide-background--left-center {
    background-position: center left;
}

.slide-background--bottom-center {
    background-position: bottom center;
}

@media screen and (min-width: 768px) {
    .slide-background--mobile,
    .slide-image--mobile {
        display: none !important;
    }
}

.slide-background--blank {
    position: relative;
    width: 0;
    height: 100%;
    min-height: 100%;
    top: 0;
    left: 50%;
    padding-right: 264%;
    transform: translateX(-50%);
}

@media screen and (min-width: 1400px) {
    .slide-background--blank {
        top: 50%;
        left: 0;
        width: 100%;
        padding-right: 0;
        padding-bottom: 38%;
        transform: translateY(-50%);
    }
}

.slide-background--blank .placeholder-svg,
.slide-background--blank .svg-placeholder>svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    min-height: 100%;
    transform: none;
}

.gallery-slider .slide-background--blank {
    top: 0;
    left: 50%;
    padding-right: 264%;
    transform: translateX(-50%);
}

@media screen and (max-width: 767px) {
    .slide-background--has-mobile .slide-background--desktop {
        display: none !important;
    }
}

.slide-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .slide-image--has-mobile .slide-image--desktop {
        display: none !important;
    }
}

.slide-placeholder svg {
    top: 50%;
    left: 50%;
    height: 100%;
    width: 100%;
    max-width: 100%;
    max-height: 100%;
    min-height: 400px;
    position: absolute;
    transform: translate(-50%, -50%);
}

.js-slide {
    overflow: hidden;
}

.overlay {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 99;
}

.original-height {
    min-height: 360px;
}

.ie .hero {
    min-height: 800px;
}

.hero--is-loading {
    background-image: var(--icon-loader);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 64px auto;
}

.hero--zoom-out .slick-current .slide-image,
.hero--zoom-out .slick-current .slide-image-container,
.hero--zoom-out .slick-current .slide-background,
.hero--zoom-out .slick-current .slide-background-container,
.gallery-slider--zoom-out .slick-current .slide-image,
.gallery-slider--zoom-out .slick-current .slide-image-container,
.gallery-slider--zoom-out .slick-current .slide-background,
.gallery-slider--zoom-out .slick-current .slide-background-container {
    -webkit-animation-name: moZoomOut;
    animation-name: moZoomOut;
}

.hero--zoom-out.hero--is-loading .slick-slide .slide-image,
.hero--zoom-out.hero--is-loading .slick-slide .slide-image-container,
.hero--zoom-out.hero--is-loading .slick-slide .slide-background,
.hero--zoom-out.hero--is-loading .slick-slide .slide-background-container,
.gallery-slider--zoom-out.gallery-slider--is-loading .slick-slide .slide-image,
.gallery-slider--zoom-out.gallery-slider--is-loading .slick-slide .slide-image-container,
.gallery-slider--zoom-out.gallery-slider--is-loading .slick-slide .slide-background,
.gallery-slider--zoom-out.gallery-slider--is-loading .slick-slide .slide-background-container {
    -webkit-animation-name: none;
    animation-name: none;
}


/**
 * Split hero Section
 */

.split-hero {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    margin: 10px;
    position: relative;
}

@media screen and (max-width: 767px) {
    .split-hero {
        flex-direction: column;
    }
}

.split-hero[data-style=white] {
    color: #fff;
}

.split-hero[data-style=black] {
    color: #000;
}

.split-hero__half {
    position: relative;
    width: calc(50% - 10px/2);
    height: 100%;
}

@media screen and (max-width: 767px) {
    .split-hero__half {
        height: calc(50% - 10px/2);
        width: 100%;
    }
}

.split-hero__box {
    height: 100%;
}

.split-hero__image {
    height: 100%;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center center;
    overflow: hidden;
}

[data-style=white] .split-hero__image {
    background-color: #000 !important;
}

[data-style=black] .split-hero__image {
    background-color: #fff !important;
}

.split-hero__image--top-center {
    background-position: top center;
}

.split-hero__image--center-right {
    background-position: center right;
}

.split-hero__image--center-left {
    background-position: center left;
}

.split-hero__image--bottom-center {
    background-position: bottom center;
}

@media screen and (min-width: 768px) {
    .split-hero__image--mobile {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .split-hero__box--has-mobile .split-hero__image--desktop {
        display: none !important;
    }
}

@media screen and (max-width: 767px) {
    .split-hero__box--has-mobile .split-hero__image--desktop {
        display: none !important;
    }
}

.split-hero__image--onboarding {
    position: relative;
    background-color: #aba9a9;
}

.split-hero__image--onboarding svg {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 150%;
    transform: translate(-50%, -50%);
}

.split-hero__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.split-hero__content {
    position: absolute;
    top: 0;
    left: -10px;
    right: -10px;
    bottom: 0;
}

.split-hero__content .container {
    height: 100%;
    overflow: hidden;
}

.split-hero__content .row {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
    text-align: center;
}

.split-hero__content--left .row,
.split-hero__content--bottom-left .row {
    justify-content: flex-start;
    text-align: left;
}

.split-hero__content--right .row,
.split-hero__content--bottom-right .row {
    justify-content: flex-end;
    text-align: right;
}

.split-hero__content--bottom-left .row,
.split-hero__content--bottom-right .row {
    align-items: flex-end;
}

@media screen and (max-width: 767px) {
    .split-hero__content--left .row,
    .split-hero__content--right .row {
        align-items: flex-start;
    }
}

.split-hero__heading {
    line-height: 1;
    margin-bottom: 15px;
}

.split-hero__text {
    padding: 60px 0;
    width: calc(50% - 70px);
}

@media screen and (max-width: 1023px) {
    .split-hero__text {
        width: calc(50% - 35px);
    }
}

@media screen and (max-width: 767px) {
    .split-hero__text {
        width: 100%;
        padding: 40px 0;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .split-hero__text h2,
    .split-hero__text p,
    .split-hero__text .button {
        white-space: nowrap;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

.split-hero__text h2 {
    color: inherit;
}

.split-hero__richtext {
    line-height: 1.4;
    margin-bottom: 0;
}

.split-hero__richtext p {
    font-size: var(--font-size-banner-text);
    line-height: inherit;
    font-family: inherit;
    margin: 0 0 15px;
}

@media screen and (max-width: 767px) {
    [data-mobile=stacked] .split-hero__richtext {
        margin-bottom: 20px;
    }
}

.split-hero__buttons {
    margin: 0 -10px;
}

.split-hero__buttons .button {
    min-width: 150px;
    text-align: center;
    margin: 10px 10px 0;
    padding-left: 15px;
    padding-right: 15px;
}

@media screen and (max-width: 399px) {
    .split-hero__buttons .button {
        min-width: 0;
        padding-left: 10px;
        padding-right: 10px;
        width: calc(100% - 10px*2);
    }
}

@media screen and (max-width: 399px) {
    .split-hero__buttons--inline .button {
        width: calc(50% - 10px*2);
    }
}

.store-availability-small-text {
    font-size: 90%;
}

.store-availability-information {
    display: flex;
    margin: 30px 0 0;
}

@media screen and (max-width: 767px) {
    .store-availability-information {
        justify-content: center;
    }
}

.store-availability-information-container {
    margin-left: 5px;
}

.store-availability-information__title {
    margin-bottom: 0;
}

.store-availability-information__stock {
    margin-bottom: 0;
}

.store-availability-information__stores {
    margin-top: 8px;
}

.store-availability-information__link {
    text-decoration: underline;
    cursor: pointer;
}

.store-availability-container .icon,
.store-availabilities-modal .icon {
    width: 12px;
    height: 12px;
    margin: 4px 4px 0 0;
}

.store-availability-container .icon-in-stock,
.store-availabilities-modal .icon-in-stock {
    fill: #00730B;
}

.store-availability-container .icon-out-of-stock,
.store-availabilities-modal .icon-out-of-stock {
    fill: var(--color-error);
}

.store-availability-container .icon-close,
.store-availabilities-modal .icon-close {
    width: 24px;
    height: 24px;
    margin: 0;
}

.store-availability-container .store-availability-list__stock,
.store-availabilities-modal .store-availability-list__stock {
    line-height: 20px;
}

.store-availability-container .store-availability-list__stock .icon,
.store-availabilities-modal .store-availability-list__stock .icon {
    margin: 0 2px 0 0;
    height: 20px;
    vertical-align: top;
}

.store-availabilities-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    box-sizing: border-box;
    border: 0;
    box-shadow: none;
    display: flex;
    flex-direction: column;
    touch-action: manipulation;
    z-index: 1010;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.5s ease-in-out, visibility 0s linear 0.5s;
    transform: translateY(0);
    text-align: left;
}

.store-availabilities-modal .container {
    transform: translateX(80%);
    transition: transform 0.5s ease-in-out;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.store-availabilities-modal--active {
    opacity: 1;
    visibility: visible;
    transition: opacity 0.25s ease-in-out, visibility 0s linear 0s;
}

.store-availabilities-modal--active .container {
    transform: translateX(0);
}

@media screen and (max-width: 767px) {
    .store-availabilities-modal--active {
        width: 100%;
        height: 100%;
        z-index: 9999;
    }
}

.store-availabilities-modal__header {
    position: relative;
    margin: 16px 0 16px 0;
    padding: 0 32px 0 0;
}

.store-availabilities-modal__product-title {
    text-transform: none;
    margin-bottom: 0;
    padding-top: 40px;
    color: inherit;
    font-size: var(--font-size-h3);
    font-weight: var(--body-font-weight-bold);
}

@media screen and (max-width: 767px) {
    .store-availabilities-modal__product-title {
        padding-top: 0;
        font-size: var(--font-size-h3);
    }
}

.store-availabilities-modal__variant-title {
    margin: 0;
}

.store-availabilities-list {
    overflow-y: auto;
    margin-right: -80px;
    padding-right: 80px;
}

@media screen and (max-width: 1023px) {
    .store-availabilities-list {
        margin-right: -40px;
        padding-right: 40px;
    }
}

@media screen and (max-width: 549px) {
    .store-availabilities-list {
        margin-right: -20px;
        padding-right: 20px;
    }
}

.store-availabilities-modal__close {
    position: absolute;
    top: 0;
    right: 0;
    padding: 0;
    margin: -5px -5px 0 0;
    background: none;
    border: none;
    width: 36px;
    height: 36px;
    align-self: start;
    color: inherit;
}

.store-availability-list__item {
    padding-bottom: 16px;
}

.store-availability-list__item::before {
    content: "";
    display: block;
    margin: 0 0 16px 0;
    border-bottom: 1px solid var(--color-border);
}

.store-availability-list__address {
    font-size: 90%;
    font-style: var(--body-font-weight);
    margin-bottom: 0;
}

.store-availability-list__address p {
    font-size: inherit;
    margin: 0;
}

.store-availability-list-header {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 8px;
}

.store-availability-list-header__location {
    font-weight: var(--body-font-weight-bold);
    color: inherit;
}

.store-availability-list-header__location,
.store-availability-list-header__distance {
    font-size: var(--font-size-body);
    margin: 0;
}

.store-availability-list__stock {
    margin-top: 5px;
    margin-bottom: 15px;
}

.store-availability-list__phone {
    margin-bottom: 0;
}

.store-availability-list__phone a {
    text-decoration: none;
}


/**
 * Testimonials
 */

.testimonials-section {
    margin: 50px 0 20px;
}

@media screen and (max-width: 767px) {
    .testimonials-section {
        margin: 50px 0;
    }
}

@media screen and (max-width: 767px) {
    .testimonials {
        margin: 0 -40px;
        overflow: hidden;
    }
}

@media screen and (max-width: 549px) {
    .testimonials {
        margin: 0 -20px;
    }
}

@media screen and (max-width: 767px) {
    .testimonials h2 {
        margin-bottom: 15px;
        text-align: center;
    }
}

@media screen and (min-width: 550px) {
    .testimonials__blocks {
        display: flex;
        flex-wrap: wrap;
    }
}

@media screen and (min-width: 1024px) {
    .testimonials__blocks {
        margin: 0 -40px;
    }
}

@media screen and (max-width: 767px) {
    .testimonials__blocks {
        margin-bottom: -30px;
        padding-bottom: 30px;
        display: block;
        white-space: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
    }
}

.testimonial {
    padding: 28px 25px 0;
    width: 100%;
}

@media screen and (min-width: 550px) {
    .testimonial {
        padding-left: 40px;
        padding-right: 40px;
    }
}

@media screen and (min-width: 768px) {
    .testimonial {
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 767px) {
    .testimonial {
        display: inline-block;
        width: 66%;
        white-space: normal;
    }
    .testimonial:first-child {
        margin-left: 17%;
    }
    .testimonial:last-child {
        margin-right: 17%;
    }
}

@media screen and (min-width: 768px) {
    .testimonial--one-half {
        width: 50%;
    }
}

@media screen and (min-width: 768px) {
    .testimonial--one-third {
        width: 50%;
    }
}

@media screen and (min-width: 1024px) {
    .testimonial--one-third {
        width: 33.33%;
    }
}

.testimonial--justify {
    text-align: justify;
}

@media screen and (min-width: 768px) {
    .testimonial--justify .testimonial__author {
        margin-left: 26px;
    }
}

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

.testimonial--center .testimonial__bottom {
    justify-content: center;
}

@media screen and (min-width: 768px) {
    .testimonial--center .accent-line+.testimonial__author {
        margin-left: 26px;
    }
}

.testimonial__blockquote {
    position: relative;
    z-index: 1;
    margin: 0 0 20px;
    line-height: 1.55;
    text-align: inherit;
}

@media screen and (min-width: 1280px) {
    .testimonial__blockquote {
        margin: 0 0 48px;
    }
}

@media screen and (min-width: 768px) {
    .testimonial__blockquote {
        margin: 0 0 30px;
    }
}

@media screen and (max-width: 767px) {
    .testimonial__blockquote {
        text-align-last: center;
    }
}

.testimonial__blockquote-quotes {
    content: "";
    position: absolute;
    left: -23px;
    top: -28px;
    z-index: -1;
    width: 114px;
    height: 71px;
}

.testimonial__blockquote-quotes svg {
    display: block;
    width: 100%;
    height: 100%;
}

@media screen and (max-width: 767px) {
    .testimonial__blockquote-quotes {
        left: -14px;
    }
}

.testimonial__bottom {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .testimonial__bottom {
        flex-direction: column;
    }
}

.testimonial__author {
    font-family: var(--body-font-family);
    font-weight: var(--body-font-weight);
    font-style: var(--body-font-style);
    font-size: var(--font-size-body);
    margin: 0;
}

@media screen and (max-width: 767px) {
    .testimonial__author {
        margin: 15px 0 0;
    }
}

.video-module.style-default {
    background-color: var(--color-background);
}

.video-module.style-light h2,
.video-module.style-light a,
.video-module.style-light p {
    color: #fff;
}

.video-module.style-dark h2,
.video-module.style-dark a,
.video-module.style-dark p {
    color: var(--color-text);
}

.video-module h2,
.video-module p {
    text-align: center;
}

.video-container {
    display: block;
    position: relative;
    text-align: center;
}

.video-container img {
    display: block;
    width: 100%;
    height: auto;
}

.video-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-button {
    display: inline-block;
    margin-top: 10px;
}

.video-button .icon-play {
    display: block;
    width: 72px;
    height: 72px;
}

.video-container-img {
    width: 100%;
    object-fit: cover;
    transition: opacity 200ms ease-in-out, min-height 0.3s ease !important;
}

.video-container-bg {
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.video-placeholder {
    overflow: hidden;
}

.video-container-bg--placeholder {
    position: relative;
    height: 100%;
    min-width: 100%;
    width: 0;
    padding-right: 264%;
    left: 50%;
    transform: translateX(-50%);
}

@media screen and (min-width: 1400px) {
    .video-container-bg--placeholder {
        top: 50%;
        left: 0;
        width: 100%;
        padding-right: 0;
        padding-bottom: 38%;
        transform: translateY(-50%);
    }
}

.video-container-bg--placeholder .placeholder-svg,
.video-container-bg--placeholder .svg-placeholder>svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video-text-wrapper {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
}

.video-text__content {
    max-width: 700px;
    margin: 0 auto;
    padding: 30px;
}

.main-content>.featured-video:first-of-type .video-text__content {
    padding-top: 115px;
}

.video-text__heading {
    line-height: 1;
    margin: 0 0 15px;
}

.video-text__text p {
    font-size: var(--font-size-banner-text);
    margin-bottom: 15px;
}

.video__logo {
    display: block;
    margin: 15px auto;
    height: auto;
    width: 100%;
    max-width: 100%;
}

.custom-footer h3 {
    font-size: 17px;
}