/** Shopify CDN: Minification failed

Line 7418:99 Expected identifier but found whitespace
Line 7418:167 Expected identifier but found whitespace
Line 10668:75 Expected identifier but found whitespace
Line 10668:76 Unexpected "has("
Line 10668:130 Expected identifier but found whitespace
Line 10668:131 Unexpected "not("
Line 17530:49 Expected identifier but found whitespace

**/
@charset "UTF-8";

/*================ Typography ================*/

:root {
    --adjust-body: var(--FONT-ADJUST-BODY);
    --adjust-heading: var(--FONT-ADJUST-HEADING);
    --adjust-button: var(--FONT-ADJUST-MEDIUM-BUTTON);
    --adjust-small-button: var(--FONT-ADJUST-SMALL-BUTTON);
    --adjust-medium-button: var(--FONT-ADJUST-MEDIUM-BUTTON);
    --adjust-large-button: var(--FONT-ADJUST-LARGE-BUTTON);
    --adjust-nav: var(--FONT-ADJUST-NAV);
    --adjust-nav-top-level: var(--FONT-ADJUST-NAV-TOP-LEVEL);
    --adjust-accent: var(--FONT-ADJUST-SUBHEADING);
    --adjust-label: var(--FONT-ADJUST-LABEL);
    --adjust-product-grid: var(--FONT-ADJUST-PRODUCT-GRID);
    --adjust-product-grid-heading: var(--FONT-ADJUST-PRODUCT-GRID-HEADING);
    --adjust-badges: calc(var(--FONT-ADJUST-BADGES) * var(--FONT-ADJUST-SUBHEADING));
}

a {
    text-decoration: none;
}

html,
body {
    font-size: 1rem;
}

body {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
    line-height: 1.5625;
    color: var(--text);
    -webkit-font-smoothing: antialiased;
    -webkit-text-size-adjust: 100%;
}

input,
textarea,
select,
button {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
    font-size: calc(1rem * var(--adjust-body));
    line-height: 26px;
    border-radius: var(--RADIUS);
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-family: var(--FONT-STACK-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    text-transform: var(--HEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    display: block;
    color: var(--heading);
    margin: 0 0 0.5em;
    font-size: var(--heading-size, 3rem);
    line-height: 1.25;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
.h1 a,
.h2 a,
.h3 a,
.h4 a,
.h5 a,
.h6 a {
    text-decoration: none;
    font-weight: inherit;
}

h1 .strong,
h1.strong,
h1 strong,
h2 .strong,
h2.strong,
h2 strong,
h3 .strong,
h3.strong,
h3 strong,
h4 .strong,
h4.strong,
h4 strong,
h5 .strong,
h5.strong,
h5 strong,
h6 .strong,
h6.strong,
h6 strong,
.h1 .strong,
.h1.strong,
.h1 strong,
.h2 .strong,
.h2.strong,
.h2 strong,
.h3 .strong,
.h3.strong,
.h3 strong,
.h4 .strong,
.h4.strong,
.h4 strong,
.h5 .strong,
.h5.strong,
.h5 strong,
.h6 .strong,
.h6.strong,
.h6 strong {
    font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
}

h1,
.h1 {
    --heading-size: calc(3rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 1439px) {
    h1,
    .h1 {
        --heading-size: calc(2.5rem * var(--adjust-heading));
    }
}

@media only screen and (max-width: 767px) {
    h1,
    .h1 {
        --heading-size: calc(2.25rem * var(--adjust-heading));
    }
}

h2,
.h2 {
    --heading-size: calc(2.5rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 1439px) {
    h2,
    .h2 {
        --heading-size: calc(2.1rem * var(--adjust-heading));
    }
}

@media only screen and (max-width: 767px) {
    h2,
    .h2 {
        --heading-size: calc(1.75rem * var(--adjust-heading));
    }
}

h3,
.h3 {
    --heading-size: calc(1.75rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 1439px) {
    h3,
    .h3 {
        --heading-size: calc(1.5rem * var(--adjust-heading));
    }
}

@media only screen and (max-width: 767px) {
    h3,
    .h3 {
        --heading-size: calc(1.25rem * var(--adjust-heading));
    }
}

h4,
.h4 {
    --heading-size: calc(1.3125rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 1439px) {
    h4,
    .h4 {
        --heading-size: calc(1.28rem * var(--adjust-heading));
    }
}

@media only screen and (max-width: 767px) {
    h4,
    .h4 {
        --heading-size: calc(1.25rem * var(--adjust-heading));
    }
}

h5,
.h5 {
    --heading-size: calc(1.1rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 767px) {
    h5,
    .h5 {
        --heading-size: calc(1rem * var(--adjust-heading));
    }
}

h6,
.h6 {
    --heading-size: calc(1rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 767px) {
    h6,
    .h6 {
        --heading-size: calc(0.875rem * var(--adjust-heading));
    }
}

.h1-body {
    --text-size: calc(3rem * var(--adjust-body));
    font-size: var(--text-size);
}

@media only screen and (max-width: 767px) {
    .h1-body {
        --text-size: calc(2rem * var(--adjust-body));
    }
}

.h2-body {
    --text-size: calc(3rem * var(--adjust-body));
    font-size: var(--text-size);
}

@media only screen and (max-width: 767px) {
    .h2-body {
        --text-size: calc(2rem * var(--adjust-body));
    }
}

.h3-body {
    --text-size: calc(2rem * var(--adjust-body));
    font-size: var(--text-size);
}

@media only screen and (max-width: 767px) {
    .h3-body {
        --text-size: calc(1.5rem * var(--adjust-body));
    }
}

.h4-body {
    --text-size: calc(1.3125rem * var(--adjust-body));
    font-size: var(--text-size);
}

@media only screen and (max-width: 767px) {
    .h4-body {
        --text-size: calc(1.25rem * var(--adjust-body));
    }
}

.h5-body {
    --text-size: calc(1.1rem * var(--adjust-body));
    font-size: var(--text-size);
}

@media only screen and (max-width: 767px) {
    .h5-body {
        --text-size: calc(1rem * var(--adjust-body));
    }
}

.h6-body {
    --text-size: calc(1rem * var(--adjust-body));
    font-size: var(--text-size);
}

@media only screen and (max-width: 767px) {
    .h6-body {
        --text-size: calc(0.875rem * var(--adjust-body));
    }
}

.h1-body,
.h2-body,
.h3-body,
.h4-body,
.h5-body,
.h6-body {
    font-size: var(--text-size, 1rem);
}

p,
.p {
    font-size: calc(1rem * var(--adjust-body));
}

.h1 p,
.h2 p,
.h3 p,
.h4 p,
.h5 p,
.h6 p,
.h1 .p,
.h2 .p,
.h3 .p,
.h4 .p,
.h5 .p,
.h6 .p {
    font-size: inherit;
}

p img {
    margin: 0;
}

p a {
    text-decoration: underline;
    text-decoration-thickness: var(--BORDER-WIDTH);
}

em {
    font-style: var(--FONT-STYLE-BODY-ITALIC);
}

b,
strong {
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

small {
    --text-size: calc(0.75rem * var(--adjust-body));
    font-size: var(--text-size);
}

sup,
sub {
    position: relative;
    font-size: 60%;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.5em;
}

.font-heading {
    font-family: var(--FONT-STACK-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    text-transform: var(--HEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-HEADING);
}

.font-body {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
}

.main-heading {
    --heading-size: calc(3rem * var(--adjust-heading));
    font-size: var(--heading-size);
    text-transform: var(--HEADING-TEXT-CAPS);
    line-height: 1.2;
}

@media only screen and (max-width: 1439px) {
    .main-heading {
        --heading-size: calc(2.5rem * var(--adjust-heading));
    }
}

@media only screen and (max-width: 767px) {
    .main-heading {
        --heading-size: calc(2.25rem * var(--adjust-heading));
    }
}

.main-text {
    text-transform: none;
    --text-size: calc(1.3125rem * var(--adjust-body));
    font-size: var(--text-size);
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
}

@media only screen and (max-width: 767px) {
    .main-text {
        --text-size: calc(1.25rem * var(--adjust-body));
    }
}

.section-header__subheading,
.subheading-text {
    font-family: var(--FONT-STACK-SUBHEADING);
    font-weight: var(--FONT-WEIGHT-SUBHEADING);
    font-size: calc(0.875rem * var(--FONT-ADJUST-SUBHEADING));
    text-transform: var(--SUBHEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-SUBHEADING);
    color: inherit;
}

.button-typography {
    font-family: var(--FONT-STACK-BUTTON);
    font-weight: var(--FONT-WEIGHT-BUTTON);
    font-style: var(--FONT-STYLE-BUTTON);
    text-transform: var(--BUTTON-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-BUTTON);
}

.label-typography {
    font-family: var(--FONT-STACK-LABEL);
    font-weight: var(--FONT-WEIGHT-LABEL);
    font-style: var(--FONT-STYLE-LABEL);
    font-size: calc(1.2rem * var(--adjust-label));
    text-transform: var(--LABEL-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-LABEL);
}

.price--bold,
.product__price--bold {
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.text-discounts {
    opacity: 0.7;
    font-size: calc(0.875rem * var(--adjust-body));
}

.text-discounts .price {
    color: inherit;
}


/*================ Normalize ================*/

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

html,
body {
    padding: 0;
    margin: 0;
}

input {
    background: none;
}

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

details,
header,
main {
    overflow: hidden;
}

audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline;
}

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

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

[hidden],
template {
    display: none;
}

blockquote {
    --text-size: calc(0.9375rem * var(--adjust-body));
    font-size: var(--text-size);
    line-height: 1.45;
    font-style: var(--FONT-STYLE-BODY-ITALIC);
    margin: 0 0 var(--gutter);
    padding: calc(var(--gutter) / 2) var(--gutter);
}

blockquote p {
    margin-bottom: 0;
}

blockquote p+cite {
    margin-top: calc(var(--gutter) / 2);
}

blockquote cite {
    display: block;
    font-size: calc(0.6875rem * var(--adjust-body));
}

blockquote cite::before {
    content: "— ";
}

code,
pre {
    background-color: #FAF7F5;
    font-family: Consolas, monospace;
    font-size: calc(0.875rem * var(--adjust-body));
    border: 0 none;
    padding: 0 2px;
    color: #51AB62;
}

pre {
    overflow: auto;
    padding: calc(var(--gutter) / 2);
    margin: 0 0 var(--gutter);
}

hr {
    clear: both;
    border-top: solid var(--accent);
    border-width: var(--BORDER-WIDTH) 0 0;
    margin: var(--gutter) 0;
    height: 0;
}

ul,
ol {
    margin: 0 0 calc(var(--gutter) / 2) 20px;
    padding: 0;
}

ol {
    list-style: decimal;
}

ul ul,
ul ol,
ol ol,
ol ul {
    margin: 4px 0 5px 20px;
}

li {
    margin-bottom: 0.25em;
}

ul.square {
    list-style: square outside;
}

ul.disc {
    list-style: disc outside;
}

ol.alpha {
    list-style: lower-alpha outside;
}

.no-bullets {
    list-style: none outside;
    margin-left: 0;
}

.inline-list {
    margin-left: 0;
}

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

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border: var(--BORDER-WIDTH) solid var(--border);
}

.table-wrap {
    max-width: 100%;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
}

@media only screen and (max-width: 767px) {
    .table-wrap {
        margin-bottom: 20px;
    }
}

th,
td {
    text-align: left;
    padding: 20px;
    font-weight: inherit;
    border: var(--BORDER-WIDTH) solid var(--border);
}

@media only screen and (max-width: 767px) {
    th,
    td {
        padding: 15px;
    }
}

@media only screen and (max-width: 479px) {
    th,
    td {
        padding: 10px;
    }
}

img {
    border: 0 none;
}

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

img,
iframe {
    max-width: 100%;
}

form {
    margin-bottom: 0;
}

input,
textarea,
button,
select {
    color: var(--text);
    padding: 0;
    margin: 0;
    line-height: 26px;
    -webkit-user-select: text;
    user-select: text;
}

button {
    background: none;
    border: none;
    cursor: pointer;
}

button,
input,
textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

button {
    background: none;
    border: none;
    display: inline-block;
    cursor: pointer;
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
}

input[type=image] {
    padding-left: 0;
    padding-right: 0;
}

fieldset {
    padding: calc(var(--gutter) / 2);
}

legend {
    border: 0;
    padding: 0;
}

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

input,
textarea,
select {
    font-size: var(--FONT-SIZE-INPUT);
    border: var(--BORDER-WIDTH) solid var(--border);
    background: var(--input-bg);
    max-width: 100%;
    padding: 13px 20px;
}

input[disabled],
input.disabled,
textarea[disabled],
textarea.disabled,
select[disabled],
select.disabled {
    cursor: default;
    background-color: var(--disabled-grey);
    border-color: var(--disabled-grey-darken);
}

input[type=checkbox],
input[type=radio] {
    display: inline-block;
    padding: 0;
    width: auto;
}

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

input[type=radio] {
    -webkit-appearance: radio;
    -moz-appearance: radio;
    appearance: radio;
}

input[type=image] {
    padding-left: 0;
    padding-right: 0;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    text-overflow: "";
    cursor: pointer;
}

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

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

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

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

optgroup {
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

option {
    color: var(--black);
    background-color: var(--white);
}

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

@media only screen and (max-width: 767px) {
    .table--responsive h2,
    .table--responsive h3 {
        text-align: center;
    }
    .table--responsive thead {
        display: none;
    }
    .table--responsive tr {
        display: block;
        position: relative;
    }
    .table--responsive th {
        padding: 10px 10px 0;
    }
    .table--responsive tr,
    .table--responsive td {
        float: left;
        clear: both;
        width: 100%;
    }
    .table--responsive th,
    .table--responsive td {
        display: block;
        padding: 15px 15px 15px 0;
    }
}

@media only screen and (max-width: 479px) {
    .table--small-hide {
        display: none !important;
    }
}


/*================ Heights ================*/

:root {
    --full-height: 100vh;
    --three-quarters: 75vh;
    --two-thirds: 66vh;
    --one-half: 50vh;
    --one-third: 33vh;
    --one-fifth: 20vh;
    --announcement-height: 0px;
    --content-full: calc(100vh - var(--header-height, 0px) - var(--announcement-height, 0px));
}

.original-height {
    --min-h: 240px;
}

.full-height {
    --min-h: var(--full-height);
}

.three-quarters-height {
    --min-h: var(--three-quarters);
}

.two-thirds-height {
    --min-h: var(--two-thirds);
}

.one-half-height {
    --min-h: var(--one-half);
}

.one-third-height {
    --min-h: var(--one-third);
}

.one-fifth-height {
    --min-h: var(--one-fifth);
}

.seven-fifty-height {
    --min-h: 750px;
}

.six-fifty-height {
    --min-h: 650px;
}

.five-fifty-height {
    --min-h: 550px;
}

.four-fifty-height {
    --min-h: 450px;
}

.three-fifty-height {
    --min-h: 350px;
}

.three-hundred-height {
    --min-h: 300px;
}

.two-fifty-height {
    --min-h: 250px;
}

.two-hundred-height {
    --min-h: 200px;
}

.one-fifty-height {
    --min-h: 150px;
}

.one-hundred-height {
    --min-h: 100px;
}

.original-height,
.full-height,
.three-quarters-height,
.two-thirds-height,
.one-half-height,
.one-third-height,
.one-fifth-height,
.seven-fifty-height,
.six-fifty-height,
.five-fifty-height,
.four-fifty-height,
.three-fifty-height,
.three-hundred-height,
.two-fifty-height,
.two-hundred-height,
.one-fifty-height,
.one-hundred-height {
    min-height: var(--min-h);
}

@media only screen and (max-width: 767px) {
    .original-height-mobile {
        --min-h: auto;
    }
    .full-height-mobile {
        --min-h: var(--full-height);
    }
    .three-quarters-height-mobile {
        --min-h: var(--three-quarters);
    }
    .two-thirds-height-mobile {
        --min-h: var(--two-thirds);
    }
    .one-half-height-mobile {
        --min-h: var(--one-half);
    }
    .one-third-height-mobile {
        --min-h: var(--one-third);
    }
    .one-fifth-height-mobile {
        --min-h: var(--one-fifth);
    }
    .seven-fifty-height-mobile {
        --min-h: 750px;
    }
    .six-fifty-height-mobile {
        --min-h: 650px;
    }
    .five-fifty-height-mobile {
        --min-h: 550px;
    }
    .four-fifty-height-mobile {
        --min-h: 450px;
    }
    .three-fifty-height-mobile {
        --min-h: 350px;
    }
    .two-fifty-height-mobile {
        --min-h: 250px;
    }
    .one-fifty-height-mobile {
        --min-h: 150px;
    }
    .original-height-mobile,
    .full-height-mobile,
    .three-quarters-height-mobile,
    .two-thirds-height-mobile,
    .one-half-height-mobile,
    .one-third-height-mobile,
    .one-fifth-height-mobile,
    .seven-fifty-height-mobile,
    .six-fifty-height-mobile,
    .five-fifty-height-mobile,
    .four-fifty-height-mobile,
    .three-fifty-height-mobile,
    .two-fifty-height-mobile,
    .one-fifty-height-mobile {
        min-height: var(--min-h);
    }
}


/*================ Links and Buttons ================*/

:root {
    --button-line-height: 1.53;
}

a {
    color: var(--link);
    background: transparent;
}

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

.btn,
.shopify-payment-button__button--unbranded {
    font-family: var(--FONT-STACK-BUTTON);
    font-weight: var(--FONT-WEIGHT-BUTTON);
    font-style: var(--FONT-STYLE-BUTTON);
    text-transform: var(--BUTTON-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-BUTTON);
    --top-bottom-padding: 15px;
    --left-right-padding: 22px;
    --btn-inner-top-bottom: calc(var(--top-bottom-padding) * var(--adjust-button));
    --btn-inner-left-right: calc(var(--left-right-padding) * var(--adjust-button));
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding: var(--btn-inner-top-bottom) var(--btn-inner-left-right);
    line-height: var(--button-line-height);
    border-radius: var(--RADIUS);
    border: var(--BORDER-WIDTH) solid var(--btn-border);
    background: var(--btn-bg);
    color: var(--btn-text);
    text-decoration: none;
    box-shadow: none;
    font-size: calc(1rem * var(--adjust-button));
    text-align: center;
    will-change: color, border, background;
    transition: color 0.3s ease, border 0.3s ease, background 0s linear 0s;
    z-index: 1;
    -webkit-tap-highlight-color: initial;
}

.btn::after,
.shopify-payment-button__button--unbranded::after,
.btn::before,
.shopify-payment-button__button--unbranded::before {
    content: "";
    position: absolute;
    display: flex;
    left: calc(var(--BORDER-WIDTH) * -1);
    top: calc(var(--BORDER-WIDTH) * -1);
    right: calc(var(--BORDER-WIDTH) * -1);
    bottom: calc(var(--BORDER-WIDTH) * -1);
    will-change: transform;
    z-index: -1;
    opacity: 0.3;
    transition: transform 0.3s ease;
    background: var(--btn-bg-hover);
}

.btn::before,
.shopify-payment-button__button--unbranded::before {
    transform: scale(1, 0);
}

.btn::after,
.shopify-payment-button__button--unbranded::after {
    transform: scale(0, 1);
}

.btn[disabled],
[disabled].shopify-payment-button__button--unbranded,
.btn:disabled,
.shopify-payment-button__button--unbranded:disabled,
.btn.disabled,
.disabled.shopify-payment-button__button--unbranded {
    cursor: default;
    opacity: 0.65;
}

.btn[disabled]::before,
[disabled].shopify-payment-button__button--unbranded::before,
.btn[disabled]::after,
[disabled].shopify-payment-button__button--unbranded::after,
.btn:disabled::before,
.shopify-payment-button__button--unbranded:disabled::before,
.btn:disabled::after,
.shopify-payment-button__button--unbranded:disabled::after,
.btn.disabled::before,
.disabled.shopify-payment-button__button--unbranded::before,
.btn.disabled::after,
.disabled.shopify-payment-button__button--unbranded::after {
    content: none;
    transform: scale(0);
}

.btn:hover,
.shopify-payment-button__button--unbranded:hover {
    transition: color 0.3s ease, border 0.3s ease, background 0s linear 0.3s;
}

@media only screen and (min-width: 480px) {
    .btn,
    .shopify-payment-button__button--unbranded {
        min-width: 120px;
    }
}

@media only screen and (min-width: 1440px) {
    .btn,
    .shopify-payment-button__button--unbranded {
        min-width: 180px;
    }
}

@media only screen and (max-width: 479px) {
    .btn,
    .shopify-payment-button__button--unbranded {
        width: 100%;
    }
}

span.btn,
span.shopify-payment-button__button--unbranded {
    cursor: default;
}

.btn--top::before {
    transform-origin: top center;
}

.btn--bottom::before {
    transform-origin: bottom center;
}

.btn--top:hover::before,
.btn--bottom:hover::before {
    transform: none;
}

.btn--left::after {
    transform-origin: center left;
}

.btn--right::after {
    transform-origin: center right;
}

.btn--left:hover::after,
.btn--right:hover::after {
    transform: none;
}

.btn,
.shopify-payment-button__button--unbranded {
    --btn-border: var(--text);
    --btn-bg: var(--text);
    --btn-text: var(--bg);
    --btn-bg-hover: var(--bg-lighten-darken);
}

.collection__filters-more.btn span,
.collection__filters-more.shopify-payment-button__button--unbranded span,
.product-upsell__btn {
    font-size: calc(0.85rem * var(--adjust-button));
}


/*=== Buttons - Advanced ===*/

.btn--advanced {
    display: inline-flex;
    align-items: center;
    justify-content: center;
}

.btn--advanced.btn--small {
    --adjust-button: var(--adjust-small-button);
}

.btn--advanced.btn--large {
    --adjust-button: var(--adjust-large-button);
}

.btn--advanced-width-height {
    --button-width: var(--MEDIUM-BUTTON-WIDTH);
    --button-height: var(--MEDIUM-BUTTON-HEIGHT);
    --btn-min-max-width: calc(100vw - 2 * var(--gutter));
    --btn-width-limit: var(--button-width), var(--btn-min-max-width);
    height: auto;
    min-height: var(--button-height);
    width: auto;
    min-width: var(--stacked-button, min(var(--btn-width-limit)));
    max-width: max(var(--btn-width-limit), 100%);
    align-content: center;
}

@media only screen and (max-width: 767px) {
    .btn--advanced-width-height {
        --btn-min-max-width: calc(100vw - 2 * var(--gutter-mobile));
    }
}

@media only screen and (min-width: 480px) {
    .overlapping-images__buttons .btn--advanced-width-height {
        min-width: min(var(--btn-width-limit), 100%);
    }
}

@media only screen and (max-width: 767px) {
    .brick-block:not(:only-child) .brick-block__inner .btn--advanced-width-height {
        --btn-min-max-width: calc(100vw - (2 * var(--inner) + 2 * var(--gutter-mobile)));
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .brick-block:not(:only-child) .brick-block__inner .btn--advanced-width-height {
        --btn-min-max-width: calc(50vw - (2 * var(--inner) + var(--gutter-mobile)));
    }
}

@media only screen and (min-width: 768px) {
    .brick-block:not(:only-child) .brick-block__inner .btn--advanced-width-height {
        --btn-min-max-width: calc(50vw - 2 * var(--gutter));
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .brick-blocks--gap .brick-block:not(:only-child) .brick-block__inner .btn--advanced-width-height {
        --btn-min-max-width: calc(50vw - (2 * var(--inner) + var(--gutter-mobile) + (var(--gutter-mobile) / 2)));
    }
}

.btn--advanced-width-height.btn--small {
    --button-width: var(--SMALL-BUTTON-WIDTH);
    --button-height: var(--SMALL-BUTTON-HEIGHT);
}

.btn--advanced-width-height.btn--large {
    --button-width: var(--LARGE-BUTTON-WIDTH);
    --button-height: var(--LARGE-BUTTON-HEIGHT);
}

.btn--advanced-width-height.btn--advanced-adaptive-width {
    min-width: min(var(--btn-width-limit), 100%);
}


/*=== Button Primary ===*/

.btn--primary,
.btn--primary .shopify-payment-button__button--unbranded,
input.btn .shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,
input.btn,
input.shopify-payment-button__button--unbranded {
    --btn-border: var(--PRIMARY-BUTTONS-COLOR-BORDER);
    --btn-bg: var(--PRIMARY-BUTTONS-COLOR-BG);
    --btn-text: var(--PRIMARY-BUTTONS-COLOR-TEXT);
    --btn-text-alpha-10: var(--PRIMARY-BUTTONS-COLOR-TEXT-ALPHA-10);
    --btn-bg-hover: var(--PRIMARY-BUTTONS-COLOR-HOVER);
}

.btn--primary-outline,
.btn--primary.btn--outline .shopify-payment-button__button--unbranded,
input.btn--outline.btn .shopify-payment-button__button--unbranded,
input.btn--outline.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,
.btn--outline input.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,
.btn--primary.btn--outline,
.btn--outline .btn--primary.shopify-payment-button__button--unbranded,
.btn--primary .btn--outline.shopify-payment-button__button--unbranded,
.btn--primary .btn--outline .shopify-payment-button__button--unbranded,
.btn--outline .btn--primary .shopify-payment-button__button--unbranded,
input.btn .btn--outline.shopify-payment-button__button--unbranded,
input.btn .btn--outline .shopify-payment-button__button--unbranded,
.btn--outline input.btn .shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn--outline.shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn--outline .shopify-payment-button__button--unbranded,
input.btn--outline.btn,
input.btn--outline.shopify-payment-button__button--unbranded,
.btn--outline input.shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-BUTTONS-PRIMARY-BORDER);
    --btn-bg: var(--OUTLINE-BUTTONS-PRIMARY-BG);
    --btn-text: var(--OUTLINE-BUTTONS-PRIMARY-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-BUTTONS-PRIMARY-TEXT-ALPHA-10);
    --btn-bg-hover: var(--OUTLINE-BUTTONS-PRIMARY-BG-HOVER);
}

.btn--primary-solid-border,
.btn--primary.btn--solid-border .shopify-payment-button__button--unbranded,
input.btn--solid-border.btn .shopify-payment-button__button--unbranded,
input.btn--solid-border.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,
.btn--solid-border input.shopify-payment-button__button--unbranded .shopify-payment-button__button--unbranded,
.btn--primary.btn--solid-border,
.btn--solid-border .btn--primary.shopify-payment-button__button--unbranded,
.btn--primary .btn--solid-border.shopify-payment-button__button--unbranded,
.btn--primary .btn--solid-border .shopify-payment-button__button--unbranded,
.btn--solid-border .btn--primary .shopify-payment-button__button--unbranded,
input.btn .btn--solid-border.shopify-payment-button__button--unbranded,
input.btn .btn--solid-border .shopify-payment-button__button--unbranded,
.btn--solid-border input.btn .shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn--solid-border.shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn--solid-border .shopify-payment-button__button--unbranded,
input.btn--solid-border.btn,
input.btn--solid-border.shopify-payment-button__button--unbranded,
.btn--solid-border input.shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-SOLID-BUTTONS-PRIMARY-BORDER);
    --btn-bg: var(--OUTLINE-SOLID-BUTTONS-PRIMARY-BG);
    --btn-text: var(--OUTLINE-SOLID-BUTTONS-PRIMARY-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-SOLID-BUTTONS-PRIMARY-TEXT-ALPHA-10);
    --btn-bg-hover: var(--OUTLINE-SOLID-BUTTONS-PRIMARY-BG-HOVER);
}

.btn--primary.btn--soft,
.btn--primary .btn--soft.shopify-payment-button__button--unbranded,
input.btn .btn--soft.shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn--soft.shopify-payment-button__button--unbranded,
input.btn--soft.btn,
input.btn--soft.shopify-payment-button__button--unbranded {
    --btn-bg: var(--PRIMARY-BUTTONS-COLOR-ALPHA-05);
    --btn-text: var(--PRIMARY-BUTTONS-COLOR-BG);
    --btn-bg-hover: var(--PRIMARY-BUTTONS-COLOR-ALPHA-10);
}

.btn--primary.btn--text,
.btn--primary .btn--text.shopify-payment-button__button--unbranded,
input.btn .btn--text.shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn--text.shopify-payment-button__button--unbranded,
input.btn--text.btn,
input.btn--text.shopify-payment-button__button--unbranded {
    --btn-text: var(--PRIMARY-BUTTONS-COLOR-BG);
}

.btn--secondary,
.btn--secondary .shopify-payment-button__button--unbranded {
    --btn-border: var(--SECONDARY-BUTTONS-COLOR-BORDER);
    --btn-bg: var(--SECONDARY-BUTTONS-COLOR-BG);
    --btn-text: var(--SECONDARY-BUTTONS-COLOR-TEXT);
    --btn-text-alpha-10: var(--SECONDARY-BUTTONS-COLOR-TEXT-ALPHA-10);
    --btn-bg-hover: var(--COLOR-SECONDARY-OPPOSITE-ALPHA-20);
}

.btn--secondary-outline,
.btn--secondary.btn--outline .shopify-payment-button__button--unbranded,
.btn--secondary.btn--outline,
.btn--outline .btn--secondary.shopify-payment-button__button--unbranded,
.btn--secondary .btn--outline.shopify-payment-button__button--unbranded,
.btn--secondary .btn--outline .shopify-payment-button__button--unbranded,
.btn--outline .btn--secondary .shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-BUTTONS-SECONDARY-BORDER);
    --btn-bg: var(--OUTLINE-BUTTONS-SECONDARY-BG);
    --btn-text: var(--OUTLINE-BUTTONS-SECONDARY-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-BUTTONS-SECONDARY-TEXT-ALPHA-10);
    --btn-bg-hover: var(--OUTLINE-BUTTONS-SECONDARY-BG-HOVER);
}

.btn--secondary-solid-border,
.btn--secondary.btn--solid-border .shopify-payment-button__button--unbranded,
.btn--secondary.btn--solid-border,
.btn--solid-border .btn--secondary.shopify-payment-button__button--unbranded,
.btn--secondary .btn--solid-border.shopify-payment-button__button--unbranded,
.btn--secondary .btn--solid-border .shopify-payment-button__button--unbranded,
.btn--solid-border .btn--secondary .shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-SOLID-BUTTONS-SECONDARY-BORDER);
    --btn-bg: var(--OUTLINE-SOLID-BUTTONS-SECONDARY-BG);
    --btn-text: var(--OUTLINE-SOLID-BUTTONS-SECONDARY-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-SOLID-BUTTONS-SECONDARY-TEXT-ALPHA-10);
    --btn-bg-hover: var(--OUTLINE-SOLID-BUTTONS-SECONDARY-BG-HOVER);
}

.btn--secondary.btn--soft,
.btn--secondary .btn--soft.shopify-payment-button__button--unbranded {
    --btn-bg: var(--SECONDARY-BUTTONS-COLOR-ALPHA-05);
    --btn-text: var(--SECONDARY-BUTTONS-COLOR-BG);
    --btn-bg-hover: var(--SECONDARY-BUTTONS-COLOR-ALPHA-10);
}

.btn--secondary.btn--text,
.btn--secondary .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: var(--SECONDARY-BUTTONS-COLOR-BG);
}

.btn--white,
.btn--white .shopify-payment-button__button--unbranded {
    --btn-border: var(--white);
    --btn-bg: var(--white);
    --btn-text: var(--black);
    --btn-text-alpha-10: var(--black-alpha-10);
    --btn-bg-hover: var(--black-alpha-25);
}

.btn--white-outline,
.btn--white.btn--outline .shopify-payment-button__button--unbranded,
.btn--white.btn--outline,
.btn--outline .btn--white.shopify-payment-button__button--unbranded,
.btn--white .btn--outline.shopify-payment-button__button--unbranded,
.btn--white .btn--outline .shopify-payment-button__button--unbranded,
.btn--outline .btn--white .shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-BUTTONS-WHITE-BORDER);
    --btn-bg: var(--OUTLINE-BUTTONS-WHITE-BG);
    --btn-text: var(--OUTLINE-BUTTONS-WHITE-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-BUTTONS-WHITE-TEXT-ALPHA-10);
}

.btn--white-solid-border,
.btn--white.btn--solid-border .shopify-payment-button__button--unbranded,
.btn--white.btn--solid-border,
.btn--solid-border .btn--white.shopify-payment-button__button--unbranded,
.btn--white .btn--solid-border.shopify-payment-button__button--unbranded,
.btn--white .btn--solid-border .shopify-payment-button__button--unbranded,
.btn--solid-border .btn--white .shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-SOLID-BUTTONS-WHITE-BORDER);
    --btn-bg: var(--OUTLINE-SOLID-BUTTONS-WHITE-BG);
    --btn-text: var(--OUTLINE-SOLID-BUTTONS-WHITE-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-SOLID-BUTTONS-WHITE-TEXT-ALPHA-10);
}

.btn--white.btn--soft,
.btn--white .btn--soft.shopify-payment-button__button--unbranded {
    --btn-bg: var(--white-alpha-10);
    --btn-text: var(--white);
    --btn-bg-hover: var(--white-alpha-20);
}

.btn--white.btn--text,
.btn--white .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: var(--white);
}

.btn--black,
.btn--black .shopify-payment-button__button--unbranded {
    --btn-border: var(--black);
    --btn-bg: var(--black);
    --btn-text: var(--white);
    --btn-text-alpha-10: var(--white-alpha-10);
    --btn-bg-hover: var(--white-alpha-50);
}

.btn--black-outline,
.btn--black.btn--outline .shopify-payment-button__button--unbranded,
.btn--black.btn--outline,
.btn--outline .btn--black.shopify-payment-button__button--unbranded,
.btn--black .btn--outline.shopify-payment-button__button--unbranded,
.btn--black .btn--outline .shopify-payment-button__button--unbranded,
.btn--outline .btn--black .shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-BUTTONS-BLACK-BORDER);
    --btn-bg: var(--OUTLINE-BUTTONS-BLACK-BG);
    --btn-text: var(--OUTLINE-BUTTONS-BLACK-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-BUTTONS-BLACK-TEXT-ALPHA-10);
}

.btn--black-solid-border,
.btn--black.btn--solid-border .shopify-payment-button__button--unbranded,
.btn--black.btn--solid-border,
.btn--solid-border .btn--black.shopify-payment-button__button--unbranded,
.btn--black .btn--solid-border.shopify-payment-button__button--unbranded,
.btn--black .btn--solid-border .shopify-payment-button__button--unbranded,
.btn--solid-border .btn--black .shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-SOLID-BUTTONS-BLACK-BORDER);
    --btn-bg: var(--OUTLINE-SOLID-BUTTONS-BLACK-BG);
    --btn-text: var(--OUTLINE-SOLID-BUTTONS-BLACK-TEXT);
    --btn-text-alpha-10: var(--OUTLINE-SOLID-BUTTONS-BLACK-TEXT-ALPHA-10);
}

.btn--black.btn--soft,
.btn--black .btn--soft.shopify-payment-button__button--unbranded {
    --btn-bg: var(--black-alpha-05);
    --btn-text: var(--black);
    --btn-bg-hover: var(--black-alpha-10);
}

.btn--black.btn--text,
.btn--black .btn--text.shopify-payment-button__button--unbranded {
    --btn-text: var(--black);
}

.btn--ar::before {
    content: none;
}

.btn--small {
    --top-bottom-padding: 10px;
    --left-right-padding: 18px;
}

.btn--medium {
    --top-bottom-padding: 12px;
    --left-right-padding: 20px;
}

.btn--solid {
    border-width: 0;
}

.btn--solid.btn--large,
.btn--solid.btn--medium,
.btn--solid.btn--small,
.product__submit__item:has(.btn--solid)~.product__submit__item .shopify-payment-button__button--unbranded {
    --btn-inner-top-bottom: calc(var(--top-bottom-padding) * var(--adjust-button) + var(--BORDER-WIDTH));
    --btn-inner-left-right: calc(var(--left-right-padding) * var(--adjust-button) + var(--BORDER-WIDTH));
}

.btn--soft {
    border: none;
    padding: calc(var(--btn-inner-top-bottom) + var(--BORDER-WIDTH)) calc(var(--btn-inner-left-right) + var(--BORDER-WIDTH));
}

.btn--text {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
    --btn-text: var(--text);
    font-weight: var(--FONT-WEIGHT-BUTTON-BOLD);
    line-height: 1.25;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: none;
    min-width: 0;
    width: auto;
    overflow: initial;
    transition: none;
}

.btn--text::before,
.btn--text::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.btn--text::before {
    transform: scaleX(0);
    transform-origin: left;
}

.btn--text::after {
    transform-origin: right;
}

.no-touch .btn--text:hover {
    background: transparent;
    border: 0;
}

.no-touch .btn--text:hover::before,
.no-touch .btn--text:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .btn--text:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.btn--text::after,
.btn--text::before {
    top: auto;
    bottom: -0.1rem;
    left: 0;
    right: 0;
    opacity: 1;
    transform-origin: left;
}

.btn--text::after {
    transform: scaleX(1);
    transform-origin: right;
}

.btn--text:hover {
    transition: none;
}

.btn--text:hover::before {
    transform-origin: left;
}

.no-touch .btn--text[disabled]::after,
.no-touch .btn--text:disabled::after,
.no-touch .btn--text.disabled::after {
    transform: none;
}

input.btn,
input.shopify-payment-button__button--unbranded {
    transition: none;
}

input.btn:hover,
input.shopify-payment-button__button--unbranded:hover {
    color: var(--btn-text);
    background: var(--btn-bg);
    transition: none;
}

input.btn::before,
input.shopify-payment-button__button--unbranded::before,
input.btn::after,
input.shopify-payment-button__button--unbranded::after {
    content: none;
}

.additional-checkout-buttons {
    overflow: hidden;
    margin-top: 8px;
}

shopify-accelerated-checkout,
shopify-accelerated-checkout-cart {
    --top-bottom-padding: 15px;
    --shopify-accelerated-checkout-button-block-size: 44px;
    --shopify-accelerated-checkout-button-border-radius: var(--RADIUS);
}

.cart__checkout {
    width: 100%;
    max-width: 300px;
}

.shopify-payment-button__button--unbranded {
    --payment-button-height: calc(1rem * var(--adjust-button) * var(--button-line-height) + (2 * var(--btn-inner-top-bottom)));
    padding: var(--btn-inner-top-bottom) var(--btn-inner-left-right) !important;
    border-radius: var(--RADIUS) !important;
    border: var(--BORDER-WIDTH) solid var(--btn-border) !important;
    background: var(--btn-bg) !important;
    color: var(--btn-text) !important;
    font-family: var(--FONT-STACK-BUTTON) !important;
    font-style: var(--FONT-STYLE-BUTTON) !important;
    font-weight: var(--FONT-WEIGHT-BUTTON) !important;
    font-size: calc(1rem * var(--adjust-button)) !important;
    letter-spacing: var(--LETTER-SPACING-BUTTON);
    line-height: var(--button-line-height) !important;
    transition: color 0.3s ease, border 0.3s ease, background 0s linear 0s !important;
    height: var(--payment-button-height) !important;
    min-height: 44px !important;
}

.shopify-payment-button__button--unbranded:hover {
    border-color: var(--btn-border) !important;
    background: var(--btn-bg) !important;
    color: var(--btn-text) !important;
    transition: color 0.3s ease, border 0.3s ease, background 0s linear 0.3s !important;
}

.btn-quick-buy {
    --adjust-height: max((var(--MEDIUM-BUTTON-HEIGHT) * 0.2), 8px);
    --adjust-size: max((12px * var(--adjust-button)), 12px);
    --btn-font-size: calc(0.9rem * var(--adjust-button));
    --btn-icon-size: calc(var(--adjust-size) + var(--adjust-height));
    --btn-space-block: calc(6px * var(--adjust-button));
    --btn-height: calc(var(--btn-icon-size) / 0.8 + 2 * var(--btn-space-block));
    --btn-width: var(--btn-height);
    --icon-space-inline: calc(2px + var(--btn-space-block));
    --icon-width: calc(var(--btn-height) - 2 * var(--icon-space-inline));
    font-family: var(--FONT-STACK-BUTTON);
    font-weight: var(--FONT-WEIGHT-BUTTON);
    font-style: var(--FONT-STYLE-BUTTON);
    text-transform: var(--BUTTON-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-BUTTON);
    font-size: var(--btn-font-size);
    line-height: inherit;
    text-align: center;
    display: grid;
    position: absolute;
    right: 15px;
    bottom: 15px;
    padding: 0;
    margin: 0;
    border: none;
}

.btn-quick-buy .btn__inner {
    width: var(--btn-width);
    min-height: var(--btn-height);
    display: flex;
    align-items: center;
    justify-content: center;
    justify-self: end;
    border-radius: var(--RADIUS);
    padding-block: var(--btn-space-block);
    cursor: pointer;
    background: var(--COLOR-QUICK-ADD-BG);
    color: var(--COLOR-QUICK-ADD-TEXT);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1), 0 1px 3px rgba(0, 0, 0, 0.07);
    transition: width 0.3s ease;
}

.btn-quick-buy .icon {
    stroke-width: calc(var(--STROKE-WIDTH) - 4px);
    width: var(--icon-width);
    overflow: hidden;
    flex: 0 0 var(--icon-width);
    margin-inline: var(--icon-space-inline);
    transition: transform 0.3s ease, opacity 0.3s ease;
}

.btn-quick-buy .btn__text {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    opacity: 0;
    transition: opacity 0.3s ease, padding 0.3s ease;
}

@media only screen and (max-width: 1023px) {
    .btn-quick-buy .btn__text {
        display: none;
    }
}

.btn-quick-buy .btn__loader {
    position: absolute;
    top: 0;
    right: 0;
    width: var(--btn-width);
    height: var(--btn-height);
    content-visibility: hidden;
    opacity: 0;
    transition: opacity 0.1s ease-in;
}

.btn-quick-buy .svg-loader circle {
    stroke: var(--COLOR-QUICK-ADD-TEXT);
}

.btn-quick-buy .svg-loader circle:first-child {
    opacity: 0.1;
}

.btn-quick-buy:hover .btn__inner {
    width: 100%;
    transition: width 0.3s ease;
}

@media only screen and (max-width: 1023px) {
    .btn-quick-buy:hover .btn__inner {
        width: var(--btn-width);
    }
}

.btn-quick-buy:hover .icon {
    transform: none;
}

.btn-quick-buy:hover .btn__text {
    opacity: 1;
    padding-right: calc(12px * var(--adjust-button));
}

.btn-quick-buy.cart__toggle--has-items .cart-indicator {
    visibility: hidden;
}

.btn-quick-buy.is-loading {
    pointer-events: none;
}

.btn-quick-buy.is-loading .icon {
    opacity: 0;
}

.btn-quick-buy.is-loading .btn__inner {
    width: var(--btn-width);
}

.btn-quick-buy.is-loading .btn__text {
    opacity: 0;
    padding: 0;
}

.btn-quick-buy.is-loading .btn__loader {
    content-visibility: visible;
    opacity: 1;
    transition: opacity 0.3s ease;
}

.btn-quick-buy.is-loading .btn__loader circle~circle {
    animation-play-state: running;
}

.btn--quick-buy {
    --adjust-height: max((var(--MEDIUM-BUTTON-HEIGHT) * 0.2), 8px);
    --adjust-size: max((12px * var(--adjust-button)), 12px);
    --btn-font-size: calc(0.9rem * var(--adjust-button));
    --btn-icon-size: calc(var(--adjust-size) + var(--adjust-height));
    --btn-space-block: calc(6px * var(--adjust-button));
    --btn-quick-buy-height: calc(var(--btn-icon-size) / 0.8 + 2 * var(--btn-space-block));
    --btn-height: calc(var(--button-line-height) * var(--btn-font-size) + 2 * var(--btn-space-block));
    --btn-space-inline: calc((12px * var(--adjust-button) + var(--btn-icon-size)) / 2);
    --btn-inner-top-bottom: var(--btn-space-block);
    --btn-inner-left-right: var(--btn-space-inline);
    min-height: max(var(--btn-quick-buy-height), var(--btn-height));
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: var(--btn-font-size);
}

.btn--quick-buy>span,
.btn--quick-buy .svg-loader {
    transition: opacity 0.3s ease;
}

.btn--quick-buy .svg-loader {
    --loader-size: 24px;
    top: unset;
    left: unset;
    transform: none;
    inset-block-start: 50%;
    inset-inline-start: 50%;
    margin-block-start: calc(-1 * var(--loader-size) / 2);
    margin-inline-start: calc(-1 * var(--loader-size) / 2);
    width: var(--loader-size);
    height: var(--loader-size);
    opacity: 0;
    pointer-events: none;
}

.btn--quick-buy .svg-loader circle {
    stroke: var(--btn-text);
}

.btn--quick-buy .svg-loader circle:first-child {
    opacity: 0.1;
}

.btn--quick-buy.is-loading {
    opacity: 1;
    cursor: default;
    pointer-events: none;
}

.btn--quick-buy.is-loading>span {
    opacity: 0;
    transition: opacity 0s;
}

.btn--quick-buy.is-loading::before,
.btn--quick-buy.is-loading::after {
    content: none;
}

.btn--quick-buy.is-loading .svg-loader {
    opacity: 1;
}

.btn--quick-buy.is-loading circle~circle {
    animation-play-state: running;
}

.share-link {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: calc(0.9rem * var(--adjust-body));
}

.no-touch .share-link::after {
    opacity: 0;
}

.no-touch .share-link:hover::after {
    opacity: 1;
}

.progress-bar+.quick__form .btn-quick-buy,
.progress-bar+.btn-quick-buy {
    bottom: 25px;
}

.btn--scroll-top {
    position: fixed;
    right: 0;
    bottom: 0;
    margin: calc(var(--gutter) / 2);
    z-index: 200;
    overflow: hidden;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, transform 0.3s ease, visibility 0s linear 0.3s;
    min-width: 0;
    width: 60px;
    height: 60px;
    padding: 0;
}

.btn--scroll-top .icon {
    transform: rotate(270deg);
}

.btn--scroll-top.is-visible {
    opacity: 1;
    visibility: visible;
}

@keyframes animate-svg {
    0% {
        stroke-dashoffset: 88;
    }
    100% {
        stroke-dashoffset: 0;
    }
}

.svg-loader {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.svg-loader circle {
    stroke-width: 1;
    stroke: var(--PRIMARY-BUTTONS-COLOR-ALPHA-50);
    fill: none;
}

.svg-loader circle~circle {
    stroke: var(--PRIMARY-BUTTONS-COLOR-TEXT);
    stroke-dashoffset: 88;
    animation: animate-svg 1s linear infinite;
    animation-play-state: paused;
}

body:not(.no-outline) .btn:focus,
body:not(.no-outline) .shopify-payment-button__button--unbranded:focus {
    outline: -webkit-focus-ring-color auto 5px;
}

body:not(.no-outline) .btn-quick-buy:focus,
body:not(.no-outline) .btn-quick-buy.focus-visible {
    outline: -webkit-focus-ring-color auto 5px;
}


/*================ Keyframes animations ================*/

@keyframes fadeInOut {
    0% {
        opacity: 0;
    }
    20% {
        opacity: 1;
    }
    80% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

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

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

@keyframes menuFadeIn {
    0% {
        opacity: 0;
        transform: scale(0.975);
    }
    100% {
        opacity: 1;
        transform: scale(1);
    }
}

@keyframes fadeInOutError {
    0% {
        opacity: 0;
    }
    8% {
        opacity: 1;
    }
    92% {
        opacity: 1;
    }
    100% {
        opacity: 0;
    }
}

@keyframes move {
    0% {
        left: -100%;
    }
    100% {
        left: 100%;
    }
}

@keyframes blink {
    0% {
        opacity: 0.2;
    }
    20% {
        opacity: 1;
    }
    100% {
        opacity: 0.2;
    }
}

@keyframes showCompactHeader {
    0% {
        transform: translateY(-100%);
    }
    100% {
        transform: translateY(0);
    }
}

@keyframes hideCompactHeader {
    0% {
        transform: translateY(0);
    }
    100% {
        transform: translateY(-100%);
    }
}

@keyframes pulse {
    0% {
        opacity: 0.1;
    }
    50% {
        opacity: 1;
    }
    100% {
        opacity: 0.1;
    }
}

@keyframes pulseOut {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    69% {
        transform: scale(0);
        opacity: 0;
    }
    70% {
        transform: scale(1);
        opacity: 0.2;
    }
    100% {
        transform: scale(4);
        opacity: 0;
    }
}

@keyframes pulseOutFast {
    0% {
        transform: scale(0);
        opacity: 0;
    }
    1% {
        transform: scale(1);
        opacity: 0.4;
    }
    65% {
        transform: scale(1.9);
        opacity: 0;
    }
    100% {
        transform: scale(1.9);
        opacity: 0;
    }
}

@keyframes pulseInOutSubtle {
    0% {
        transform: scale(1);
        opacity: 0;
    }
    50% {
        transform: scale(1.125);
        opacity: 0.4;
    }
    100% {
        transform: scale(1);
        opacity: 0;
    }
}

@keyframes progressBar {
    0% {
        width: 0;
    }
    100% {
        width: 100%;
    }
}

@keyframes ticker {
    0% {
        transform: translate3d(0, 0, 0);
    }
    100% {
        transform: translate3d(-100%, 0, 0);
    }
}

@keyframes rotate {
    0% {
        transform: rotate(0);
    }
    100% {
        transform: rotate(360deg);
    }
}

@keyframes fadeInUp {
    0% {
        transform: translateY(15px);
        opacity: 0;
    }
    50% {
        opacity: 1;
    }
    100% {
        transform: translateZ(0);
        opacity: 1;
    }
}

@keyframes pressFadeInUp {
    0% {
        transform: translateY(70%);
        opacity: 0;
    }
    100% {
        transform: translateZ(0);
        opacity: 1;
    }
}

@keyframes pressFadeOutDown {
    0% {
        transform: translateZ(0);
        opacity: 1;
    }
    100% {
        transform: translateY(40%);
        opacity: 0;
    }
}

@keyframes cartItemRemoved {
    0% {
        transform: translateZ(0);
        max-height: 300px;
    }
    50% {
        padding-top: var(--inner);
    }
    90% {
        transform: translate3d(100%, 0, 0);
        max-height: 0;
    }
    100% {
        opacity: 0;
        max-height: 0;
        padding: 0;
    }
}

@keyframes slideInFromLeft {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: none;
    }
}

@keyframes clipPathFromLeft {
    0% {
        -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
        clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    }
    100% {
        -webkit-clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
        clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    }
}

@keyframes clipPathFromRight {
    0% {
        -webkit-clip-path: polygon(100% 0, 100% 0%, 100% 100%, 100% 100%);
        clip-path: polygon(100% 0, 100% 0%, 100% 100%, 100% 100%);
    }
    100% {
        -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
    }
}

@keyframes sliderRightToLeft {
    0% {
        transform: translateX(-40%);
    }
    100% {
        transform: translateX(-50%);
    }
}

@keyframes sliderRightToLeftOneSlide {
    0% {
        transform: translateX(10%);
    }
    100% {
        transform: translateX(0);
    }
}

@keyframes imageInSlide {
    0% {
        transform: translateX(20%);
    }
    100% {
        transform: translateX(0);
    }
}

@keyframes zoomOut {
    from {
        transform: scale(var(--scale-factor, 1.2));
    }
    to {
        transform: scale(1);
    }
}

@keyframes zoomIn {
    from {
        transform: scale(1);
    }
    to {
        transform: scale(var(--scale-factor, 1.2));
    }
}

@keyframes expandAccordion {
    from {
        flex: 2;
    }
    to {
        flex: 5;
    }
}

@keyframes collapseAccordion {
    from {
        flex: var(--factor, 2);
    }
    to {
        flex: 1;
    }
}


/*================ Helper Classes ================*/

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

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

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

.text-background {
    background: var(--bg);
}

.body--rounded-corners .text-background {
    border-radius: var(--radius);
    overflow: hidden;
}

.backdrop--radial {
    position: relative;
}

.backdrop--radial::before {
    content: "";
    position: absolute;
    top: -100px;
    bottom: -100px;
    left: -200px;
    right: -200px;
    z-index: -1;
    border-radius: 50%;
    background: radial-gradient(var(--COLOR-BG-OVERLAY) 0%, rgba(255, 255, 255, 0) 65%);
    opacity: 0;
}

.img-in .backdrop--radial::before {
    opacity: 1;
}

.letter-spacing-nav,
.caps-letter-spacing-nav.caps,
.caps-letter-spacing-nav .caps {
    letter-spacing: var(--LETTER-SPACING-NAV);
}

.caps {
    text-transform: uppercase;
}

.placeholder-svg,
.placeholder-svg-filled {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    fill: var(--bg-lighten-darken-contrast);
    content-visibility: auto;
}

.placeholder-svg-filled {
    background-color: var(--bg-lighten-darken);
}

.placeholder-svg--overlayed {
    position: relative;
    content-visibility: auto;
}

.placeholder-svg--overlayed::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: var(--black);
    opacity: 0.1;
}

.placeholder-bg {
    background-size: contain !important;
    background-position: center center !important;
}

.placeholder-noblocks {
    position: relative;
    width: 100%;
    padding: calc(var(--gutter) / 2);
    text-align: center;
}

.no-image-placeholder {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    content-visibility: auto;
}

.cv-v {
    content-visibility: visible;
}

.cv-h {
    content-visibility: hidden;
}

.cv-a {
    content-visibility: auto;
}

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

.no-placeholder .label-hidden {
    position: inherit !important;
    overflow: auto;
    clip: auto;
    width: auto;
    height: auto;
    margin: 0;
}

.visually-shown {
    position: inherit !important;
    overflow: auto;
    clip: auto;
    width: auto;
    height: auto;
    margin: 0;
}

.highlight {
    color: var(--accent);
}

.hidden {
    display: none;
}

@media only screen and (max-width: 767px) {
    .hidden-sm {
        display: none !important;
    }
}

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

@media only screen and (max-width: 1023px) {
    .hidden-md {
        display: none !important;
    }
}

@media only screen and (min-width: 1024px) {
    .hidden-lg {
        display: none !important;
    }
}

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

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

.clearfix::after {
    content: "";
    display: table;
    clear: both;
}

.is-transitioning {
    display: block !important;
    visibility: visible !important;
}

.table-wrapper {
    overflow: auto;
}

.bg-pos-center-top {
    background-position: center top !important;
}

.bg-pos-center-center {
    background-position: center center !important;
}

.bg-pos-center-bottom {
    background-position: center bottom !important;
}

.bg-pos-left-center {
    background-position: left center !important;
}

.bg-pos-right-center {
    background-position: right center !important;
}

.img-pos-center-top {
    object-position: top;
}

.img-pos-center-center {
    object-position: center;
}

.img-pos-center-bottom {
    object-position: bottom;
}

.img-pos-left-center {
    object-position: left;
}

.img-pos-right-center {
    object-position: right;
}

.align--top-left {
    align-items: flex-start;
    justify-content: flex-start;
    text-align: left;
}

.align--top-center {
    align-items: flex-start;
    justify-content: center;
    text-align: center;
}

.align--top-right {
    align-items: flex-start;
    justify-content: flex-end;
    text-align: left;
}

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

.align--middle-left {
    align-items: center;
    justify-content: flex-start;
    text-align: left;
}

.align--middle-center,
.align--middle-split {
    align-items: center;
    justify-content: center;
    text-align: center;
}

.align--middle-right {
    align-items: center;
    justify-content: flex-end;
    text-align: left;
}

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

.align--bottom-left {
    align-items: flex-end;
    justify-content: flex-start;
    text-align: left;
}

.align--bottom-center {
    align-items: flex-end;
    justify-content: center;
    text-align: center;
}

.align--bottom-right {
    align-items: flex-end;
    justify-content: flex-end;
    text-align: left;
}

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

.align--top-right .wrapper,
.align--top-right .wrapper--narrow,
.align--middle-right .wrapper,
.align--middle-right .wrapper--narrow,
.align--bottom-right .wrapper,
.align--bottom-right .wrapper--narrow {
    margin-right: 0;
}

.align--top-left .wrapper,
.align--top-left .wrapper--narrow,
.align--middle-left .wrapper,
.align--middle-left .wrapper--narrow,
.align--bottom-left .wrapper,
.align--bottom-left .wrapper--narrow {
    margin-left: 0;
}

[data-scroll-locked] .has-scrolled .site-header {
    padding-right: var(--scrollbar-width);
}

[data-scroll-locked] .collection__inner::after {
    width: 100vw;
}

[data-scroll-locked] .btn--scroll-top {
    right: var(--scrollbar-width);
}

@media (pointer: fine) {
    [data-scroll-locked] .megamenu-opened .shopify-section-header,
    [data-scroll-locked] .search-opened .shopify-section-header,
    [data-scroll-locked] .megamenu-opened .site-header,
    [data-scroll-locked] .search-opened .site-header,
    [data-scroll-locked] .search-opened .search-popdown__body--fixed,
    [data-scroll-locked] .search-opened predictive-search,
    [data-scroll-locked] .search-opened search-form,
    [data-scroll-locked] .megamenu-opened .announcement-bar-static,
    [data-scroll-locked] .search-opened .announcement-bar-static,
    [data-scroll-locked] .megamenu-opened .announcement,
    [data-scroll-locked] .search-opened .announcement {
        width: 100vw;
        padding-right: var(--scrollbar-width);
    }
}

@media (pointer: fine) {
    [data-scroll-locked] .megamenu-opened .site-header--has-border .wrapper::before {
        right: calc(-1 * var(--scrollbar-width));
    }
}

@media (pointer: fine) {
    [data-scroll-locked] .search-opened .search-form__inner {
        width: 100vw;
        padding-right: calc(var(--scrollbar-width) + var(--gutter));
    }
}

@media only screen and (pointer: fine) and (max-width: 767px) {
    [data-scroll-locked] .search-opened .search-form__inner {
        padding-right: calc(var(--scrollbar-width) + var(--gutter-mobile));
    }
}

@media only screen and (pointer: fine) and (max-width: 767px) {
    [data-scroll-locked] .search-opened .search-popdown__results {
        padding-right: var(--scrollbar-width);
    }
}

:root {
    --site-width: var(--SITE-WIDTH);
    --site-width-narrow: var(--SITE-WIDTH-NARROW);
    --wrapper-width: calc(100vw - var(--scrollbar-width) - var(--gutter-mobile) * 2);
}

@media only screen and (min-width: 1440px) {
     :root {
        --site-width: calc(var(--SITE-WIDTH) - var(--scrollbar-width));
        --wrapper-width: calc(var(--site-width) - var(--gutter) * 2);
    }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
     :root {
        --wrapper-width: calc(100vw - var(--scrollbar-width) - var(--gutter) * 2);
    }
}

.wrapper--full-padded {
    --wrapper-width: calc(100vw - var(--scrollbar-width) - var(--gutter-mobile) * 2);
}

@media only screen and (min-width: 1024px) {
    .wrapper--full-padded {
        --wrapper-width: calc(100vw - var(--scrollbar-width) - var(--gutter) * 2);
    }
}

.wrapper--full {
    --wrapper-width: calc(100vw - var(--scrollbar-width));
}

@media only screen and (min-width: 1024px) {
    .wrapper--full {
        --wrapper-width: calc(100vw - var(--scrollbar-width));
    }
}

@media only screen and (min-width: 1024px) {
    .wrapper--narrow {
        --wrapper-width: calc(var(--site-width-narrow) - var(--gutter) * 2);
    }
}

@media only screen and (min-width: 1024px) {
    .grid {
        grid-template-columns: var(--grid);
    }
}

@media only screen and (min-width: 768px) {
    .grid {
        justify-content: center;
    }
    .grid .grid__item {
        width: 100%;
    }
}

.grid,
.grid--center {
    display: grid;
    gap: var(--grid-gutter);
}

@media only screen and (max-width: 1023px) {
    .grid,
    .grid--center {
        grid-template-columns: var(--grid-tablet);
    }
}

@media only screen and (max-width: 767px) {
    .grid,
    .grid--center {
        gap: var(--grid-gutter-mobile) var(--grid-gutter);
    }
}

@media only screen and (max-width: 479px) {
    .grid,
    .grid--center {
        grid-template-columns: var(--grid-mobile);
    }
    .grid .mobile--one-whole,
    .grid--center .mobile--one-whole {
        grid-column: span 2;
    }
}

.grid--center {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .grid--center .grid__item {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    .grid__container {
        overflow: hidden;
        margin: 0 calc(var(--gutter-mobile) * -1);
    }
}

.wrapper--full-padded .carousel__container {
    margin: 0 calc(var(--gutter-mobile) * -1);
}

@media only screen and (min-width: 1024px) {
    .wrapper--full-padded .carousel__container {
        margin: 0 calc(var(--gutter) * -1);
    }
    .wrapper--full-padded .carousel {
        padding: 0 var(--gutter);
    }
    .wrapper--full-padded .carousel .flickity-prev-next-button.next {
        right: calc(var(--gutter) * 1.5);
    }
    .wrapper--full-padded .carousel .flickity-prev-next-button.previous {
        left: calc(var(--gutter) * 1.5);
    }
}

@media only screen and (max-width: 1023px) {
    .carousel__container {
        margin: 0 calc(var(--gutter-mobile) * -1);
    }
}

.carousel {
    --flickity-btn-position: calc((var(--gutter) - var(--flickity-btn-size)) / 2);
}

.carousel .flickity-viewport {
    overflow: visible;
}

.carousel .flickity-prev-next-button.next {
    right: var(--flickity-btn-position);
}

.carousel .flickity-prev-next-button.previous {
    left: var(--flickity-btn-position);
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .carousel {
        padding: 0 var(--gutter-mobile);
    }
}

@media only screen and (min-width: 768px) {
    .carousel:not(.flickity-enabled),
    .carousel--inactive {
        display: flex;
        text-align: center;
        justify-content: center;
        overflow: hidden;
    }
    .carousel:not(.flickity-enabled) .carousel__item,
    .carousel--inactive .carousel__item {
        margin-right: var(--grid-gutter);
    }
    .carousel:not(.flickity-enabled) .carousel__item:last-child:not(:only-child),
    .carousel--inactive .carousel__item:last-child:not(:only-child) {
        margin-right: 0;
    }
}

.carousel:not(.flickity-enabled) {
    justify-content: flex-start;
}

@media only screen and (max-width: 767px) {
    .carousel--mobile {
        --item-width-mobile: calc(var(--wrapper-width) - var(--grid-gutter));
        display: flex;
        flex-flow: row nowrap;
        justify-content: flex-start;
        gap: normal;
        margin: 0;
        overflow-x: scroll;
        overflow-y: hidden;
        scroll-behavior: smooth;
        scroll-snap-type: x mandatory;
        scroll-padding: var(--gutter-mobile);
        padding-left: var(--gutter-mobile);
        scrollbar-width: none;
        -ms-overflow-style: none;
    }
    .carousel--mobile::-webkit-scrollbar {
        display: none;
    }
    .carousel--mobile .grid__item,
    .carousel--mobile .carousel__item {
        display: block;
        float: none;
        flex: 0 0 auto;
        scroll-snap-align: start;
        margin-right: var(--grid-gutter);
        padding-bottom: 0;
        width: var(--item-width-mobile);
    }
    .carousel--mobile .grid__item:last-child,
    .carousel--mobile .carousel__item:last-child {
        margin-right: 0;
    }
    .carousel--mobile::after {
        content: "";
        display: block;
        position: relative;
        padding-right: var(--gutter-mobile);
    }
}

.carousel__item {
    width: calc(var(--wrapper-width) - var(--grid-gutter));
    display: block;
    white-space: normal;
    flex: 0 0 auto;
}

@media only screen and (min-width: 768px) {
    .carousel__item {
        margin-right: var(--grid-gutter);
    }
}

@media only screen and (max-width: 767px) {
    .grid--mobile,
    .stacked--mobile {
        gap: var(--grid-gutter);
        display: grid;
        grid-template-columns: var(--grid-tablet);
        padding-left: var(--gutter-mobile);
        padding-right: var(--gutter-mobile);
    }
}

@media only screen and (max-width: 479px) {
    .grid--mobile,
    .stacked--mobile {
        grid-template-columns: var(--grid-mobile);
    }
}

@media only screen and (max-width: 767px) {
    .stacked--mobile {
        grid-template-columns: minmax(0, 1fr);
    }
}

@media only screen and (min-width: 1440px) {
    .one-whole {
        width: var(--wrapper-width);
    }
    .one-half {
        width: calc((var(--wrapper-width) - var(--grid-gutter)) / 2);
    }
    .one-third {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 2) / 3);
    }
    .one-quarter {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 3) / 4);
    }
    .one-fifth {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 4) / 5);
    }
    .one-sixth {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 5) / 6);
    }
    .one-seventh {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 6) / 7);
    }
    .one-eighth {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 7) / 8);
    }
}

@media only screen and (min-width: 1024px) and (max-width: 1439px) {
    .one-whole {
        width: calc(var(--wrapper-width) - var(--grid-gutter));
    }
    .one-half {
        width: calc((var(--wrapper-width) - var(--grid-gutter)) / 2);
    }
    .one-third {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 2) / 3);
    }
    .one-quarter {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 3) / 4);
    }
    .one-fifth {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 4) / 5);
    }
    .one-sixth {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 5) / 6);
    }
    .one-seventh {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 6) / 7);
    }
    .one-eighth {
        width: calc((var(--wrapper-width) - var(--grid-gutter) * 7) / 8);
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .one-whole {
        width: calc(var(--wrapper-width) * 0.9 - var(--grid-gutter));
    }
    .one-half,
    .one-third,
    .one-quarter {
        width: calc((var(--wrapper-width) * 0.9 - var(--grid-gutter)) / 2);
    }
    .one-fifth,
    .one-sixth,
    .one-seventh,
    .one-eighth {
        width: calc((var(--wrapper-width) * 0.9 - var(--grid-gutter)) / 4);
    }
}

@media only screen and (max-width: 767px) {
    .one-whole {
        width: calc(var(--wrapper-width) * 0.9 - var(--grid-gutter));
    }
    .one-half,
    .one-third,
    .one-quarter,
    .one-fifth,
    .one-sixth,
    .one-seventh,
    .one-eighth {
        width: calc((var(--wrapper-width) * 0.9 - var(--grid-gutter)) / 2);
    }
    .grid--mobile .one-half,
    .grid--mobile .one-third,
    .grid--mobile .one-quarter,
    .grid--mobile .one-fifth,
    .grid--mobile .one-sixth,
    .grid--mobile .one-seventh,
    .grid--mobile .one-eighth {
        width: 100%;
    }
    .grid__item:only-child,
    .carousel__item:only-child {
        margin: 0 auto;
    }
}

@media only screen and (max-width: 479px) {
    .mobile--one-whole {
        width: calc(var(--wrapper-width) * 0.9 - var(--grid-gutter));
    }
    .mobile--one-half {
        width: calc((var(--wrapper-width) * 0.9 - var(--grid-gutter)) / 2);
    }
    .grid--mobile .grid__item:only-of-type {
        width: 100%;
    }
    .carousel--mobile .mobile--one-half:first-of-type:nth-last-of-type(2),
    .carousel--mobile .mobile--one-half:first-of-type:nth-last-of-type(2)~.mobile--one-half:last-of-type,
    .carousel--mobile .mobile--one-half:only-of-type {
        --item-width-mobile: calc(50% - var(--grid-gutter));
    }
    .mosaic--no-spacing .wrapper--no-full .carousel--mobile .mobile--one-half:first-of-type:nth-last-of-type(2),
    .mosaic--no-spacing .wrapper--no-full .carousel--mobile .mobile--one-half:first-of-type:nth-last-of-type(2)~.mobile--one-half:last-of-type,
    .mosaic--no-spacing .wrapper--no-full .carousel--mobile .mobile--one-half:only-of-type {
        --item-width-mobile: calc(50% - var(--grid-gutter) / 2);
    }
    .carousel--mobile .mobile--one-whole:only-of-type {
        --item-width-mobile: calc(100% - var(--grid-gutter));
    }
    .carousel--mobile .mobile--one-half:only-of-type {
        margin-left: 0;
    }
}

.btn-primary-border .btn--primary.btn--solid,
.btn-primary-border input.btn--solid.btn,
.btn-primary-border input.btn--solid.shopify-payment-button__button--unbranded,
.btn-primary-border .btn--primary .btn--solid.shopify-payment-button__button--unbranded,
.btn--primary .btn-primary-border .btn--solid.shopify-payment-button__button--unbranded,
.btn-primary-border input.btn .btn--solid.shopify-payment-button__button--unbranded,
input.btn .btn-primary-border .btn--solid.shopify-payment-button__button--unbranded,
.btn-primary-border input.shopify-payment-button__button--unbranded .btn--solid.shopify-payment-button__button--unbranded,
input.shopify-payment-button__button--unbranded .btn-primary-border .btn--solid.shopify-payment-button__button--unbranded,
.btn-secondary-border .btn--secondary.btn--solid,
.btn-secondary-border .btn--secondary .btn--solid.shopify-payment-button__button--unbranded,
.btn--secondary .btn-secondary-border .btn--solid.shopify-payment-button__button--unbranded {
    --btn-inner-top-bottom: calc(var(--top-bottom-padding) * var(--adjust-button));
    --btn-inner-left-right: calc(var(--left-right-padding) * var(--adjust-button));
    --btn-border: var(--OUTLINE-SOLID-BUTTONS-PRIMARY-BORDER);
    border-width: var(--BORDER-WIDTH);
}

.btn-secondary-border .btn--secondary.btn--solid,
.btn-secondary-border .btn--secondary .btn--solid.shopify-payment-button__button--unbranded,
.btn--secondary .btn-secondary-border .btn--solid.shopify-payment-button__button--unbranded {
    --btn-border: var(--OUTLINE-SOLID-BUTTONS-SECONDARY-BORDER);
}

.overflow-hidden {
    overflow: hidden !important;
}

.icon {
    fill: none;
    stroke: currentcolor;
    stroke-width: var(--STROKE-WIDTH);
    display: inline-block;
    width: 100%;
    height: 100%;
}

.icon-stroke .icon {
    stroke-width: 3px;
}

@supports (-webkit-hyphens: none) {
    .icon-stroke .icon {
        transform: translateZ(0);
    }
}

.icon-select,
.icon-toggle-plus,
.icon-toggle-minus {
    width: 15px;
    height: 15px;
}

.icon-close {
    display: block;
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
}

.icon-shopping-bag {
    vertical-align: middle;
    pointer-events: none;
}

.icon-filter {
    fill: currentcolor;
    width: 20px;
    height: 13px;
    stroke: none;
}

.icon-hamburger {
    display: block;
    width: 28px;
    height: 28px;
    pointer-events: none;
}

.icon-css-arrow {
    pointer-events: none;
}

.icon-play {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    box-shadow: inset 0 0 0 var(--BORDER-WIDTH) currentcolor;
    fill: currentcolor;
    stroke: none;
    -webkit-transform: translateY(0);
}

.icon-share {
    width: 20px;
    height: calc(19px * var(--adjust-body));
    margin-right: 10px;
}

.icon-check {
    stroke: none;
}

.icon-media-model,
.icon-media-video {
    fill: var(--COLOR-BG);
    stroke: none;
}

.icon-media-model-outline,
.icon-media-video-outline {
    stroke: var(--text-alpha-5);
}

.icon-media-model-element,
.icon-media-video-element {
    fill: var(--text);
}

.icon-check {
    background: var(--icon-check-swatch) no-repeat center center/contain;
}

.icon-rss {
    font-size: calc(1.375rem * var(--adjust-heading));
    margin: -4px 0 -4px 9px;
    width: 28px;
    height: 28px;
}


/*================ Images ================*/

.lazy-image {
    position: relative;
    margin: 0;
    overflow: hidden;
}

.lazy-image::after {
    position: absolute;
    display: block;
    top: -10%;
    left: -10%;
    right: -10%;
    bottom: -10%;
    transform: none;
    background: var(--bg-lighten-darken-shimmer-bg);
    animation: 0.4s ease-out 1 forwards fadeOut, 1s linear 1 forwards shimmerBgOut;
    pointer-events: none;
}

.lazy-image.is-loading {
    background: var(--bg-lighten-darken-shimmer-bg);
    z-index: 1;
}

.lazy-image.is-loading::after {
    content: "";
    z-index: -1;
    animation: 1.6s linear infinite forwards shimmer;
    background: linear-gradient(98deg, var(--bg-lighten-darken-shimmer-bg) 16%, var(--bg-lighten-darken-shimmer-effect) 32%, var(--bg-lighten-darken-shimmer-bg) 48%);
    transform: translateX(-100%);
}

@media only screen and (min-width: 1024px) {
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) img[loading] {
        opacity: 0.000001;
    }
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) .lazy-image {
        background: var(--bg-lighten-darken-shimmer-bg);
        z-index: 1;
    }
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) .lazy-image::after {
        content: "";
        z-index: -1;
        animation: 1.6s linear infinite forwards shimmer;
        background: linear-gradient(98deg, var(--bg-lighten-darken-shimmer-bg) 16%, var(--bg-lighten-darken-shimmer-effect) 32%, var(--bg-lighten-darken-shimmer-bg) 48%);
        transform: translateX(-100%);
    }
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item [data-aos] {
        opacity: 0.000001;
        transform: translateY(var(--move-offset));
    }
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item [data-aos=hero] {
        animation-name: none;
    }
    .grid__item.one-half:nth-child(2n+2) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .skeleton-loading:has(img[loading].is-loading) .grid__item.one-half:nth-child(2n+2) .product-grid-item__image .lazy-image:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--2 .shimmer-sequential__item:nth-of-type(2n + 2) .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--2.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(2n + 2) .lazy-image:after {
        animation-delay: 0.7s;
    }
    .grid__item.one-third:nth-child(3n+2) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .carousel__item.one-half:nth-child(3n+2) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .skeleton-loading:has(img[loading].is-loading) .grid__item.one-third:nth-child(3n+2) .product-grid-item__image .lazy-image:after {
        animation-delay: 0.7s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-half:nth-child(3n+2) .product-grid-item__image .lazy-image:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--3 .shimmer-sequential__item:nth-of-type(3n + 2) .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--3.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(3n + 2) .lazy-image:after {
        animation-delay: 0.7s;
    }
    .grid__item.one-quarter:nth-child(4n+2) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .carousel__item.one-third:nth-child(4n+2) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .skeleton-loading:has(img[loading].is-loading) .grid__item.one-quarter:nth-child(4n+2) .product-grid-item__image .lazy-image:after {
        animation-delay: 0.7s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-third:nth-child(4n+2) .product-grid-item__image .lazy-image:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--4 .shimmer-sequential__item:nth-of-type(4n + 2) .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--4.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(4n + 2) .lazy-image:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--mixed .shimmer-sequential__item:nth-of-type(4n + 2) .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .shimmer-sequential--mixed.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(4n + 2) .lazy-image:after {
        animation-delay: 0.7s;
    }
    .carousel__item.one-quarter:nth-child(5n+2) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 0.7s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-quarter:nth-child(5n+2) .product-grid-item__image .lazy-image:after {
        animation-delay: 0.7s;
    }
    .grid__item.one-third:nth-child(3n+3) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .carousel__item.one-half:nth-child(3n+3) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .skeleton-loading:has(img[loading].is-loading) .grid__item.one-third:nth-child(3n+3) .product-grid-item__image .lazy-image:after {
        animation-delay: 1.4s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-half:nth-child(3n+3) .product-grid-item__image .lazy-image:after {
        animation-delay: 1.4s;
    }
    .shimmer-sequential--3 .shimmer-sequential__item:nth-of-type(3n + 3) .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .shimmer-sequential--3.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(3n + 3) .lazy-image:after {
        animation-delay: 1.4s;
    }
    .grid__item.one-quarter:nth-child(4n+3) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .carousel__item.one-third:nth-child(4n+3) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .skeleton-loading:has(img[loading].is-loading) .grid__item.one-quarter:nth-child(4n+3) .product-grid-item__image .lazy-image:after {
        animation-delay: 1.4s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-third:nth-child(4n+3) .product-grid-item__image .lazy-image:after {
        animation-delay: 1.4s;
    }
    .shimmer-sequential--4 .shimmer-sequential__item:nth-of-type(4n + 3) .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .shimmer-sequential--4.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(4n + 3) .lazy-image:after {
        animation-delay: 1.4s;
    }
    .shimmer-sequential--mixed .shimmer-sequential__item:nth-of-type(4n + 3) .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .shimmer-sequential--mixed.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(4n + 3) .lazy-image:after {
        animation-delay: 1.4s;
    }
    .carousel__item.one-quarter:nth-child(5n+3) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 1.4s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-quarter:nth-child(5n+3) .product-grid-item__image .lazy-image:after {
        animation-delay: 1.4s;
    }
    .grid__item.one-quarter:nth-child(4n+4) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 2.1s;
    }
    .carousel__item.one-third:nth-child(4n+4) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 2.1s;
    }
    .skeleton-loading:has(img[loading].is-loading) .grid__item.one-quarter:nth-child(4n+4) .product-grid-item__image .lazy-image:after {
        animation-delay: 2.1s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-third:nth-child(4n+4) .product-grid-item__image .lazy-image:after {
        animation-delay: 2.1s;
    }
    .shimmer-sequential--4 .shimmer-sequential__item:nth-of-type(4n + 4) .lazy-image.is-loading:after {
        animation-delay: 2.1s;
    }
    .shimmer-sequential--4.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(4n + 4) .lazy-image:after {
        animation-delay: 2.1s;
    }
    .shimmer-sequential--mixed .shimmer-sequential__item:nth-of-type(4n + 4) .lazy-image.is-loading:after {
        animation-delay: 2.1s;
    }
    .shimmer-sequential--mixed.skeleton-loading:has(img[loading].is-loading) .shimmer-sequential__item:nth-of-type(4n + 4) .lazy-image:after {
        animation-delay: 2.1s;
    }
    .carousel__item.one-quarter:nth-child(5n+4) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 2.1s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-quarter:nth-child(5n+4) .product-grid-item__image .lazy-image:after {
        animation-delay: 2.1s;
    }
    .carousel__item.one-quarter:nth-child(5n+5) .product-grid-item__image .lazy-image.is-loading:after {
        animation-delay: 2.8s;
    }
    .skeleton-loading:has(img[loading].is-loading) .carousel__item.one-quarter:nth-child(5n+5) .product-grid-item__image .lazy-image:after {
        animation-delay: 2.8s;
    }
}

.lazy-image--simple.background-size-cover,
.lazy-image:has(.lazy-image__simple).background-size-cover {
    background: var(--bg);
}

.lazy-image--simple::after,
.lazy-image:has(.lazy-image__simple)::after {
    animation: 0.6s ease 1 forwards fadeOut;
}

.lazy-image--simple.is-loading::after,
.lazy-image:has(.lazy-image__simple).is-loading::after {
    animation: 1.6s linear infinite forwards shimmer;
}

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

.original-height-mobile .lazy-image--cover {
    position: relative;
}

.lazy-image img {
    transition: opacity 0.5s ease-in;
}

.lazy-image img.is-loading {
    opacity: 0.000001;
}

.background-size-cover {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block;
    background: var(--bg);
}

.overlapping-images .background-size-cover,
.image-with-text .background-size-cover,
.sticky-images-and-text .background-size-cover,
.product-upsell__image .background-size-cover {
    background: none;
}

.background-size-cover.is-loading {
    background: var(--bg-lighten-darken-shimmer-bg);
}

.background-size-cover img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.img-object-cover {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.img-object-contain {
    display: block;
    object-fit: contain;
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.image-fill {
    position: relative;
    overflow: hidden;
}

.aspect-ratio {
    --aspect-ratio-default: 1 / 1;
    --fallback-ratio-default: 100%;
    --image-ratio-desktop: calc(1 / var(--aspect-ratio-desktop, var(--aspect-ratio-default)));
    --image-ratio-fallback-desktop: calc((100 * var(--aspect-ratio-desktop, var(--fallback-ratio-default))) * 1%);
    --image-ratio-mobile: calc(1 / var(--aspect-ratio-mobile, var(--aspect-ratio-default)));
    --image-ratio-fallback-mobile: calc((100 * var(--aspect-ratio-mobile, var(--fallback-ratio-default))) * 1%);
    aspect-ratio: var(--image-ratio-desktop);
}

@supports not (aspect-ratio: 16/9) {
    .aspect-ratio {
        padding-top: var(--image-ratio-fallback-desktop);
    }
}

@media only screen and (max-width: 767px) {
    .aspect-ratio {
        aspect-ratio: var(--image-ratio-mobile);
    }
    @supports not (aspect-ratio: 16/9) {
        .aspect-ratio {
            padding-top: var(--image-ratio-fallback-mobile);
        }
    }
}

.image-fill .placeholder-svg--overlayed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.placeholder-svg-rect,
.placeholder-svg-sqr {
    position: relative;
    height: auto;
    min-width: 300px;
    padding-top: 100%;
}

.placeholder-svg-rect svg,
.placeholder-svg-sqr svg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.placeholder-svg-rect {
    padding-top: 38.4%;
}

@keyframes shimmer {
    0% {
        transform: translateX(-100%);
    }
    100% {
        transform: translateX(100%);
    }
}

@keyframes shimmerBgOut {
    0% {
        background: var(--bg-lighten-darken-shimmer-bg);
    }
    100% {
        background: var(--bg-lighten-darken-shimmer-enhancement);
    }
}

.no-touch .hover-scale img,
.no-touch .hover-scale .placeholder-svg--overlayed,
.no-touch .hover-scale-svg .placeholder-svg-filled {
    transform: scale(1);
    transition: transform 0.8s cubic-bezier(0.19, 0.61, 0.15, 0.82);
}

.no-touch .hover-scale:hover img,
.no-touch .hover-scale:hover .placeholder-svg--overlayed,
.no-touch .hover-scale-svg:hover .placeholder-svg-filled {
    transform: scale(1.1);
}


/*================ Forms ================*/

.hidden-label {
    position: absolute;
    height: 0;
    width: 0;
    margin-bottom: 0;
    overflow: hidden;
    clip: rect(1px, 1px, 1px, 1px);
}

.form-vertical-wrapper {
    max-width: 480px;
    margin: 0 auto;
    text-align: center;
}

.form-vertical-wrapper p a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.form-vertical-wrapper p a::before,
.form-vertical-wrapper p a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.form-vertical-wrapper p a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.form-vertical-wrapper p a::after {
    transform-origin: right;
}

.no-touch .form-vertical-wrapper p a:hover {
    background: transparent;
    border: 0;
}

.no-touch .form-vertical-wrapper p a:hover::before,
.no-touch .form-vertical-wrapper p a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .form-vertical-wrapper p a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.form-vertical-wrapper button {
    width: 100%;
}

.form-vertical {
    margin-bottom: calc(var(--gutter) / 2);
}

.form-vertical input,
.form-vertical select,
.form-vertical button,
.form-vertical textarea {
    display: block;
    margin-bottom: 10px;
}

.form-vertical input[type=radio],
.form-vertical input[type=checkbox] {
    display: inline-block;
}

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

.form__item {
    padding: 0;
    border: 0;
    margin: 0 0 20px;
}

.form__item .selector-wrapper {
    display: block;
    position: relative;
    margin: 0;
    padding: 0;
    width: 100%;
}

.form__item .selector-wrapper .icon-select {
    position: absolute;
    top: 0;
    right: 0;
    width: 54px;
    padding: 0 20px;
    height: 100%;
    pointer-events: none;
    transform: rotate(90deg);
}

.form__item select {
    margin: 0;
    width: 100%;
}

.form__item--radio,
.form__item--checkbox {
    margin: 20px 0;
}

.form__item--radio label,
.form__item--checkbox label {
    clear: both;
    display: block;
}

.form__item--radio span,
.form__item--checkbox span {
    display: block;
}

.form__item--checkbox+.form__item--checkbox {
    margin-top: -20px;
}

.form__item--submit {
    margin: 30px 0 0;
}

.form__label {
    display: block;
    margin: 0 0 10px;
    font-size: calc(1.35rem * var(--adjust-label));
}

.input--full {
    width: 100%;
}

.input--checkbox,
.input--radio {
    margin: 5px 8px 10px 0;
    float: left;
}

input.error,
select.error,
textarea.error {
    border-color: var(--error);
    background-color: var(--input-bg);
    color: var(--error);
}

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

.input-group {
    --form-margin: 20px;
    --input-height: 54px;
    display: flex;
    flex-direction: column;
    margin: calc(var(--form-margin) / -2);
}

@media only screen and (min-width: 768px) {
    .input-group {
        flex-flow: row wrap;
    }
}

.text-left .input-group,
.item--left .input-group,
.item--bottom-left .input-group,
.item--top-left .input-group,
.align--top-left .input-group,
.align--middle-left .input-group,
.align--middle-split .input-group,
.align--bottom-left .input-group {
    justify-content: flex-start;
}

.text-center .input-group,
.item--center .input-group,
.item--bottom-center .input-group,
.item--top-center .input-group,
.align--top-center .input-group,
.align--middle-center .input-group,
.align--middle-split .input-group,
.align--bottom-center .input-group {
    justify-content: center;
}

@media only screen and (min-width: 768px) {
    .text-right .input-group,
    .item--right .input-group,
    .item--bottom-right .input-group,
    .item--top-right .input-group,
    .align--top-right .input-group,
    .align--middle-right .input-group,
    .align--middle-split .input-group,
    .align--bottom-right .input-group {
        justify-content: flex-end;
    }
}

@media only screen and (max-width: 479px) {
    .input-group {
        --form-margin: 15px;
    }
}

.input-group--inline {
    margin: 0;
    position: relative;
    max-width: 340px;
    flex-wrap: nowrap;
    flex-direction: row;
}

.align--middle-center .input-group--inline {
    margin: 0 auto;
}

@media only screen and (min-width: 768px) {
    .text-right .input-group--inline,
    .item--right .input-group--inline,
    .item--bottom-right .input-group--inline,
    .item--top-right .input-group--inline,
    .align--top-right .input-group--inline,
    .align--middle-right .input-group--inline,
    .align--bottom-right .input-group--inline {
        margin-left: auto;
    }
}

.input-group--inline input::-moz-focus-inner {
    border: 0;
    padding: 0;
    margin-top: -1px;
    margin-bottom: -1px;
}

.input-group--inline .input-group__item {
    flex: 1 1 auto;
    padding: 0;
}

.input-group--inline .input-group__item--btn {
    flex-grow: 0;
    flex-basis: 54px;
    max-width: 54px;
}

.input-group--inline .input-group__field {
    width: 100%;
    border-right: 0;
    border-radius: var(--RADIUS) 0 0 var(--RADIUS);
}

.input-group--inline .input-group__btn--icon {
    display: flex;
    align-items: center;
    justify-content: center;
    border-left: 0;
    border-radius: 0 var(--RADIUS) var(--RADIUS) 0;
}

.input-group--inline .input-group__field,
.input-group--inline .input-group__btn--icon {
    height: var(--input-height);
}

.input-group--inline .input-group__field--text {
    margin: 10px 0;
}

.input-group__item {
    position: relative;
    padding: calc(var(--form-margin) / 2);
    flex-basis: 100%;
    flex-grow: 2;
}

@media only screen and (min-width: 1024px) {
    .input-group__item {
        max-width: 280px;
    }
}

@media only screen and (min-width: 768px) {
    .input-group__item {
        flex-basis: 50%;
    }
}

@media only screen and (min-width: 1440px) {
    .input-group__item {
        flex-basis: 25%;
    }
    .align--middle-split .input-group__item {
        flex-basis: 50%;
    }
}

.input-group__item--btn {
    flex-grow: 0;
}

.input-group__item--text {
    flex-basis: 100%;
}

.input-group__field {
    color: var(--text);
    background: var(--input-bg);
}

.input-group__btn {
    width: 100%;
    height: var(--input-height);
    min-width: 54px;
}

.input-group__error {
    display: none;
    position: absolute;
    left: 0;
    right: 0;
    bottom: var(--inner);
    padding: 0 calc(0.5 * var(--inner) + 20px);
    color: var(--error);
    font-size: calc(0.75rem * var(--adjust-body));
    line-height: 1.05;
    transform: translateY(50%);
}

.has-error .input-group__error {
    display: block;
}

input:-webkit-autofill {
    -webkit-box-shadow: 0 0 0 1000px white inset;
}

input {
    -webkit-appearance: none;
}

.product__form input,
.product__form textarea,
.product__form select,
#collection-sorting input,
#collection-sorting textarea,
#collection-sorting select {
    border: var(--BORDER-WIDTH) solid var(--border);
}

.note,
.errors {
    border-radius: var(--RADIUS);
    padding: 8px 12px;
    margin-bottom: var(--inner);
    border: var(--BORDER-WIDTH) solid transparent;
    font-size: calc(0.75rem * var(--adjust-body));
    text-align: center;
}

.note ul,
.note ol,
.errors ul,
.errors ol {
    margin: 0;
    list-style: none outside;
}

.note li:last-child,
.errors li:last-child {
    margin-bottom: 0;
}

.note p,
.errors p {
    margin-bottom: 0;
    font-size: inherit;
}

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

.errors .input-group__field {
    color: var(--error);
    border-color: var(--error);
}

.form-success {
    color: var(--success);
    border-color: var(--success);
}

.form-success a {
    color: inherit;
    text-decoration: underline;
    text-decoration-thickness: var(--BORDER-WIDTH);
}

.form-success a:hover {
    text-decoration: none;
}

.form-error,
.errors {
    color: var(--error);
    border-color: var(--error);
    clear: both;
}

.form-error a,
.errors a {
    color: var(--error);
    text-decoration: underline;
    text-decoration-thickness: var(--BORDER-WIDTH);
}

.form-error a:hover,
.errors a:hover {
    text-decoration: none;
}

.checkbox>input {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.checkbox>label {
    position: relative;
    display: block;
    padding-left: 22px;
    font-size: calc(0.875rem * var(--adjust-body));
    line-height: 1.43;
    text-align: left;
    cursor: pointer;
}

.checkbox>label:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 16px;
    height: 16px;
    margin-top: 2px;
    color: var(--white);
    border-radius: var(--RADIUS-CHECKBOX);
    border: 1px solid var(--text);
}

.checkbox>input:checked~label:before {
    background: var(--text) var(--icon-check) no-repeat center center;
    background-size: 14px auto;
}


/*
* Pagination
*/

.pagination {
    margin: var(--gutter) 0;
    text-align: center;
}

.pagination .prev,
.pagination .page,
.pagination .next {
    display: inline-block;
    line-height: 1.2;
}

.pagination a:not(.btn):not(.shopify-payment-button__button--unbranded) {
    display: block;
}

.pagination a:not(.btn):not(.shopify-payment-button__button--unbranded),
.pagination .page.current {
    padding: 8px;
}

.pagination .page.current {
    border-bottom: var(--BORDER-WIDTH) solid var(--text);
}

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

.pagination__loading {
    position: relative;
    padding-top: 40px;
    display: inline-block;
    width: 150px;
    height: 150px;
}

.pagination__loading:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--loading-svg) no-repeat top center/320px;
    pointer-events: none;
}

.palette--dark .pagination__loading:after {
    filter: invert(1);
}

.pagination__button--previous {
    transform: rotate(180deg);
}

.dots--animated span {
    animation-name: blink;
    animation-duration: 1.4s;
    animation-iteration-count: infinite;
    animation-fill-mode: both;
}

.dots--animated span:nth-child(2) {
    animation-delay: 0.2s;
}

.dots--animated span:nth-child(3) {
    animation-delay: 0.4s;
}


/*
* Rich Text Editor
*/

.rte {
    margin-bottom: calc(var(--gutter) / 2);
    font-size: calc(1rem * var(--adjust-body));
}

.rte a:not(.btn):not(.shopify-payment-button__button--unbranded) {
    text-decoration: underline;
    text-decoration-thickness: var(--BORDER-WIDTH);
}

.rte p {
    font-size: inherit;
}

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

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

.rte *:last-child {
    margin-bottom: 0;
}

.text-center .rte ul,
.text-center .rte ol {
    display: flex;
    flex-direction: column;
    align-items: center;
}

.rte--header {
    margin-bottom: 0;
}


/*================ Basic Styles ================*/

html {
    scroll-behavior: smooth;
    --scroll-behavior: smooth;
}

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

html body * {
    -webkit-font-smoothing: antialiased;
}

html,
body {
    background: var(--bg);
    min-height: 100%;
    min-width: 320px;
}

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

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

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

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

hr {
    width: 75px;
    margin: 15px auto;
    border-width: var(--BORDER-WIDTH) 0 0;
    border-color: var(--border);
}

.item--left hr,
.item--top-left hr,
.item--bottom-left hr,
.align--middle-left hr,
.align--top-left hr,
.align--bottom-left hr,
.text-left hr {
    margin-left: 0;
}

.text-right hr,
.align--middle-right hr,
.align--top-right hr,
.align--bottom-right hr {
    margin-right: 0;
    margin-left: auto;
}

@media only screen and (max-width: 767px) {
    .item--right hr,
    .item--top-right hr,
    .item--bottom-right hr {
        margin-left: 0;
    }
}

@media only screen and (min-width: 768px) {
    .item--right hr,
    .item--top-right hr,
    .item--bottom-right hr {
        margin-right: 0;
    }
}

hr.hr--clear {
    border-top-color: transparent;
}

hr.hr--full {
    width: 100%;
}

.form__item .hr--full,
.divider-section .hr--full {
    margin: 0;
}

ajaxinate-items,
announcement-bar,
banner-image-component,
cart-element,
collapsible-elements,
columns-slider,
contact-form-message,
drawer-element,
image-accordions,
locations-component,
mosaic-component,
tooltip-component,
tabs-component,
custom-scrollbar,
grid-slider,
look-component,
newsletter-form,
parallax-element,
password-component,
pickup-availability,
popup-bar,
popup-large-promo,
popup-cookie,
product-info,
product-form,
products-list-component,
product-sticky,
recently-viewed,
related-products,
share-button,
social-gallery-slider,
shoppable-blog-component,
slideshow-component,
sticky-images-and-text,
sticky-image-cards,
testimonials-slider,
ticker-bar,
video-popup,
video-background {
    display: block;
}

drawer-toggle,
footer-effect,
quick-add-button,
quick-view-button,
zoom-images {
    display: none;
}

.wrapper--full {
    width: 100%;
    margin: 0 auto;
    padding: 0;
    max-width: 100%;
}

.wrapper--full::after {
    content: "";
    display: table;
    clear: both;
}

.wrapper--full-padded {
    width: 100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 var(--gutter-mobile);
}

.wrapper--full-padded::after {
    content: "";
    display: table;
    clear: both;
}

@media only screen and (min-width: 1024px) {
    .wrapper--full-padded {
        padding: 0 var(--gutter);
    }
}

.wrapper {
    width: var(--site-width);
    max-width: 100%;
    margin: 0 auto;
    padding: 0 var(--gutter-mobile);
}

.wrapper::after {
    content: "";
    display: table;
    clear: both;
}

@media only screen and (min-width: 1024px) {
    .wrapper {
        padding: 0 var(--gutter);
    }
}

.wrapper--narrow {
    width: var(--site-width-narrow);
    max-width: 100%;
    margin: 0 auto;
    padding: 0 var(--gutter-mobile);
}

.wrapper--narrow::after {
    content: "";
    display: table;
    clear: both;
}

@media only screen and (min-width: 1024px) {
    .wrapper--narrow {
        padding: 0 var(--gutter);
    }
}

.section-default {
    background: var(--bg);
}

.section-padding {
    --padding-top: var(--PT);
    --padding-bottom: var(--PB);
    padding-top: var(--padding-top);
    padding-bottom: var(--padding-bottom);
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .section-padding {
        --padding-top: calc(var(--PT) * 0.8);
        --padding-bottom: calc(var(--PB) * 0.8);
    }
}

@media only screen and (max-width: 767px) {
    .section-padding {
        --padding-top: calc(var(--PT) * 0.6);
        --padding-bottom: calc(var(--PB) * 0.6);
    }
}

.block-spacing {
    margin-bottom: var(--block-spacing-bottom, 12px);
}

.block-spacing.main-subheading {
    margin-bottom: var(--block-spacing-bottom, 10px);
}

.block-spacing.main-buttons {
    margin-bottom: var(--block-spacing-bottom, 0);
}

.main-content {
    display: block;
    overflow: initial;
    min-height: var(--content-min);
}

.main-content--parallax {
    position: relative;
    z-index: 3;
    background-color: var(--bg);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: z-index 0s linear 0.4s, box-shadow 0s linear 0.4s;
}

.main-content--parallax~.shopify-section:not(.section-footer) {
    position: relative;
    z-index: 2;
}

.main-content--parallax:has(.search-page) .search-page__head {
    z-index: 112;
}

.main-content--parallax:has(.featured-product-section:only-of-type) .wave-svg,
.main-content--parallax:has(.featured-product-section:last-of-type) .wave-svg,
.main-content--parallax:has(.shopify-section--product:last-of-type) .wave-svg,
.main-content--parallax:has(.shopify-section--product:only-of-type) .wave-svg {
    z-index: 9;
}

.js-drawer-open--inner .main-content--parallax {
    transition: z-index 0s linear 0s, box-shadow 0s linear 0s;
    z-index: 9999;
}

.js-drawer-open--inner .main-content--parallax::before {
    opacity: 0.2;
    visibility: visible;
    transition: visibility 0s, opacity 0.4s ease-in-out;
}

.js-drawer-open--inner:has(.site-header--has-border) .main-content--parallax {
    box-shadow: inset 0 var(--BORDER-WIDTH) var(--text);
}

.js-drawer-open--inner:has(.site-header--has-border) .main-content--parallax.parallax-shadow {
    box-shadow: 0 calc(-1 * var(--BORDER-WIDTH)) var(--text);
}

.js-drawer-open--inner:has(.main-content--parallax) .drawer__overlay {
    display: none;
}

.has-scrolled:has(.main-content--parallax):has(.drawer) .main-content--parallax::before,
.has-scrolled:has(.main-content--parallax):has(.drawer) .main-content--parallax {
    transition-delay: 0.4s;
}

.has-scrolled.js-drawer-open--inner:has(.main-content--parallax):has(.drawer.is-open) .drawer,
.has-scrolled.js-drawer-open--inner:has(.main-content--parallax):has(.drawer.is-open) .main-content--parallax::before,
.has-scrolled.js-drawer-open--inner:has(.main-content--parallax):has(.drawer.is-open) .main-content--parallax {
    transition-delay: 0.3s;
}

.has-scrolled.js-drawer-open--inner:has(.main-content--parallax):has(.drawer.is-open) .site-header--fixed {
    animation: hideCompactHeader 0.3s;
}

body:has(.section-footer ~ .section-footer) .section-footer {
    z-index: 1;
}

body:has(.section-footer ~ .section-footer) .section-footer~.section-footer {
    z-index: 0;
}

.parallax-shadow {
    box-shadow: 0 25px 25px -10px var(--footer-bg);
}

@media only screen and (max-width: 767px) {
    .parallax-shadow {
        box-shadow: none;
    }
}

.parallax-rounded-corners {
    overflow: clip;
    margin-bottom: calc(-1 * var(--radius-large));
    position: relative;
}

.parallax-rounded-corners:has(.wavy) {
    overflow: unset;
}

body:has(.section-footer--visible) .parallax-rounded-corners {
    border-bottom-left-radius: var(--radius-large);
    border-bottom-right-radius: var(--radius-large);
}

.wavy {
    position: relative;
    padding-bottom: 5px;
}

@media only screen and (max-width: 767px) {
    .wavy {
        padding-bottom: 10px;
    }
}

.wavy .wave-svg {
    display: block;
}

.wave-svg {
    --wave-height: 57px;
    position: absolute;
    width: 100%;
    bottom: calc(-1 * var(--wave-height));
    display: none;
    z-index: 105;
    filter: drop-shadow(0 15px 10px var(--footer-bg));
}

.wave-svg svg {
    height: var(--wave-height);
    display: block;
}

.wave-svg #wave-svg__little-wave {
    fill: var(--footer-bg);
}

@media only screen and (max-width: 767px) {
    .wave-svg {
        --wave-height: 28px;
        filter: none;
    }
}

.wave-svg__reversed {
    margin-top: -15px;
    transform: scale(-1);
}

@media only screen and (max-width: 767px) {
    .wave-svg__reversed {
        margin-top: 0;
    }
}

.main-content>.shopify-section:first-child {
    --full-height: var(--content-full);
}

.main-content>.shopify-section:first-child .collection__filters {
    --full-height: 100vh;
}

.section__header {
    --heading-margin: 20px;
    margin-bottom: calc(var(--gutter) / 2);
}

.section__heading {
    margin-bottom: var(--heading-margin);
    text-align: center;
}

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

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

.section__heading a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.section__heading a::before,
.section__heading a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.section__heading a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.section__heading a::after {
    transform-origin: right;
}

.no-touch .section__heading a:hover {
    background: transparent;
    border: 0;
}

.no-touch .section__heading a:hover::before,
.no-touch .section__heading a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .section__heading a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.section__heading [data-has-highlight]::before,
.section__heading [data-has-highlight]::after,
.section__heading .section__link::before,
.section__heading .section__link::after {
    display: none;
}

.section__heading:not(.text-highlight-wrapper) .text-reveal__cropper a::before,
.section__heading:not(.text-highlight-wrapper) .text-reveal__cropper a::after {
    bottom: 0;
}

.section__heading-line {
    --padding: 15px;
    margin-top: calc(var(--padding) - var(--heading-margin) - var(--BORDER-WIDTH) / 2);
    margin-bottom: calc(var(--padding) - var(--BORDER-WIDTH) / 2);
}

.section__heading-line:last-child {
    margin-bottom: 0;
}

.section__text {
    font-size: calc(1rem * var(--adjust-body));
    margin-bottom: calc(var(--gutter) / 2);
}

.section__text:last-child {
    margin-bottom: 0;
}

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

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

.section__text p {
    font-size: inherit;
}

.main-heading {
    margin-bottom: 0;
    color: var(--heading);
}

.main-heading a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.main-heading a::before,
.main-heading a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.main-heading a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.main-heading a::after {
    transform-origin: right;
}

.no-touch .main-heading a:hover {
    background: transparent;
    border: 0;
}

.no-touch .main-heading a:hover::before,
.no-touch .main-heading a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .main-heading a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.main-heading [data-has-highlight]::before,
.main-heading [data-has-highlight]::after,
.main-heading .section__link::before,
.main-heading .section__link::after {
    display: none;
}

.main-heading:not(.text-highlight-wrapper) .text-reveal__cropper a::before,
.main-heading:not(.text-highlight-wrapper) .text-reveal__cropper a::after {
    bottom: 0;
}

.main-subheading {
    margin-bottom: 10px;
}

.main-text {
    display: block;
    margin-bottom: 10px;
    color: var(--text);
}

.main-buttons {
    margin: 4px -8px 0;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
}

.text-left .main-buttons,
.item--left .main-buttons,
.item--bottom-left .main-buttons,
.item--top-left .main-buttons,
.align--top-left .main-buttons,
.align--middle-left .main-buttons,
.align--bottom-left .main-buttons {
    justify-content: flex-start;
}

@media only screen and (min-width: 768px) {
    .text-right .main-buttons,
    .item--right .main-buttons,
    .item--bottom-right .main-buttons,
    .item--top-right .main-buttons,
    .align--top-right .main-buttons,
    .align--middle-right .main-buttons,
    .align--bottom-right .main-buttons {
        justify-content: flex-end;
    }
}

@media only screen and (max-width: 479px) {
    .main-buttons {
        flex-flow: column;
        align-items: normal;
    }
}

.main-buttons--video {
    margin-top: 0;
}

.main-buttons--video .main-buttons__item {
    margin-top: 0;
    margin-bottom: 16px;
}

.main-buttons__item {
    display: flex;
    align-items: center;
    margin: 16px 8px 0;
}

.text-center .main-buttons__item,
.item--center .main-buttons__item,
.item--bottom-center .main-buttons__item,
.item--top-center .main-buttons__item,
.align--top-center .main-buttons__item,
.align--middle-center .main-buttons__item,
.align--bottom-center .main-buttons__item {
    justify-content: center;
}

@media only screen and (min-width: 480px) {
    .main-buttons--stacked {
        --stacked-button: 400px;
        flex-direction: column;
    }
    .main-buttons--stacked .main-buttons__item {
        width: 100%;
        max-width: var(--stacked-button);
    }
    .main-buttons--stacked .main-buttons__item:has(.btn--text) {
        width: auto;
    }
    .main-buttons--stacked .btn,
    .main-buttons--stacked .shopify-payment-button__button--unbranded {
        width: 100%;
    }
    .text-left .main-buttons--stacked {
        align-items: flex-start;
    }
    .text-center .main-buttons--stacked {
        align-items: center;
    }
    .text-right .main-buttons--stacked {
        align-items: flex-end;
    }
}

.item {
    width: 100%;
    position: relative;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

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

.item--center .image-accordion__text,
.item--left .image-accordion__text,
.item--right .image-accordion__text {
    justify-content: center;
}

.item--center .image-accordion__text,
.item--center .countdown__text-container,
.item--center .banner-image__text-container,
.item--center .slide__text__container,
.item--left .image-accordion__text,
.item--left .countdown__text-container,
.item--left .banner-image__text-container,
.item--left .slide__text__container,
.item--right .image-accordion__text,
.item--right .countdown__text-container,
.item--right .banner-image__text-container,
.item--right .slide__text__container {
    align-items: center;
}

.item--center .image-accordion__text,
.item--center .countdown__text-container,
.item--center .banner-image__text-container,
.item--center .slide__text__container {
    justify-content: center;
}

.item--left,
.item--bottom-left,
.item--top-left {
    text-align: left;
}

.item--left .image-accordion__text,
.item--left .countdown__text-container,
.item--left .banner-image__text-container,
.item--left .slide__text__container,
.item--bottom-left .image-accordion__text,
.item--bottom-left .countdown__text-container,
.item--bottom-left .banner-image__text-container,
.item--bottom-left .slide__text__container,
.item--top-left .image-accordion__text,
.item--top-left .countdown__text-container,
.item--top-left .banner-image__text-container,
.item--top-left .slide__text__container {
    justify-content: flex-start;
}

@media only screen and (min-width: 768px) {
    .item--right,
    .item--bottom-right,
    .item--top-right {
        text-align: right;
    }
}

@media only screen and (min-width: 768px) {
    .item--right .image-accordion__text,
    .item--right .countdown__text-container,
    .item--right .banner-image__text-container,
    .item--right .slide__text__container,
    .item--bottom-right .image-accordion__text,
    .item--bottom-right .countdown__text-container,
    .item--bottom-right .banner-image__text-container,
    .item--bottom-right .slide__text__container,
    .item--top-right .image-accordion__text,
    .item--top-right .countdown__text-container,
    .item--top-right .banner-image__text-container,
    .item--top-right .slide__text__container {
        justify-content: flex-end;
    }
}

.item--bottom-left .image-accordion__text,
.item--bottom-left .countdown__text-container,
.item--bottom-left .banner-image__text-container,
.item--bottom-left .slide__text__container,
.item--bottom-right .image-accordion__text,
.item--bottom-right .countdown__text-container,
.item--bottom-right .banner-image__text-container,
.item--bottom-right .slide__text__container {
    align-items: flex-end;
}

.item--top-left .image-accordion__text,
.item--top-left .countdown__text-container,
.item--top-left .banner-image__text-container,
.item--top-left .slide__text__container,
.item--top-right .image-accordion__text,
.item--top-right .countdown__text-container,
.item--top-right .banner-image__text-container,
.item--top-right .slide__text__container {
    align-items: flex-start;
}

.body--rounded-corners {
    --radius: 8px;
    --radius-medium: 5px;
    --radius-small: 4px;
    --radius-large: 8px;
}

.body--rounded-corners-large {
    --radius-large: 34px;
}

.section-header {
    padding-top: var(--gutter);
    padding-bottom: var(--gutter);
    text-align: center;
}

@media only screen and (max-width: 767px) {
    .section-header {
        padding-top: calc(var(--gutter) / 2);
        padding-bottom: calc(var(--gutter) / 2);
    }
}

.table {
    display: table;
    table-layout: fixed;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 2;
    background: var(--overlay);
}

.shopify-challenge__container {
    padding: var(--gutter) var(--gutter-mobile);
}

@media only screen and (min-width: 480px) {
    .shopify-challenge__container {
        padding: var(--gutter) 0;
    }
}

.shopify-challenge__container input.shopify-challenge__button {
    margin-top: 20px;
}


/*================ Loading animations ================*/

.loader--line {
    position: relative;
    height: 4px;
    display: block;
    background-color: var(--PRIMARY-BUTTONS-COLOR-ALPHA-05);
    border-radius: 2px;
    overflow: hidden;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.loader-indeterminate {
    background-color: var(--PRIMARY-BUTTONS-COLOR-BG);
}

.loader-indeterminate:before {
    content: "";
    position: absolute;
    background-color: inherit;
    top: 0;
    left: -35%;
    width: 100%;
    bottom: 0;
    will-change: transform;
    animation: indeterminate 2.1s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}

.loader-indeterminate:after {
    content: "";
    position: absolute;
    background-color: inherit;
    top: 0;
    left: -200%;
    width: 100%;
    bottom: 0;
    will-change: transform;
    animation: indeterminate-short 2.1s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
    animation-delay: 1.15s;
}

.loadMore .loader,
.is-loading .loader {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

@keyframes indeterminate {
    0% {
        transform: translateX(0) scale(0.35, 1);
    }
    60% {
        transform: translateX(50%) scale(0.9, 1);
    }
    100% {
        transform: translateX(100%) scale(0.9, 1);
    }
}

@keyframes indeterminate-short {
    0% {
        transform: translateX(0) scale(2, 1);
    }
    60% {
        transform: translateX(460px) scale(0, 1);
    }
    100% {
        transform: translateX(460px) scale(0, 1);
    }
}

@keyframes pulse-loading {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 0.25;
    }
    100% {
        opacity: 1;
    }
}

[data-collapsible-container] {
    position: relative;
    width: 100%;
    height: 0;
    opacity: 0;
    overflow: hidden;
    visibility: hidden;
    will-change: height;
    transition: opacity 0.3s ease, height 0.3s ease, visibility 0s 0.3s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

[data-collapsible-container].is-expanded {
    opacity: 1;
    overflow: unset;
    visibility: visible;
    transition: opacity 1s ease, height 0.5s ease, visibility 0s;
}

[data-collapsible-content] {
    overflow: hidden;
    will-change: transform;
    transform: translateY(25px);
    transition: transform 0.5s ease;
}

.is-expanded>[data-collapsible-content] {
    transform: translateY(0);
}

[data-collapsible-trigger],
[data-collapsible-trigger-mobile] {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    color: inherit;
    cursor: pointer;
    min-width: 22px;
}

[data-collapsible-trigger] .icon,
[data-collapsible-trigger-mobile] .icon {
    position: absolute;
    color: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
}

[data-collapsible-trigger] .icon-toggle-plus,
[data-collapsible-trigger] .icon-toggle-minus,
[data-collapsible-trigger-mobile] .icon-toggle-plus,
[data-collapsible-trigger-mobile] .icon-toggle-minus {
    width: 16px;
    height: 16px;
}

[data-collapsible-trigger] .icon-toggle-plus,
[data-collapsible-trigger] .icon-toggle-minus,
[data-collapsible-trigger-mobile] .icon-toggle-plus,
[data-collapsible-trigger-mobile] .icon-toggle-minus {
    transition: opacity 0.3s ease, transform 0.3s ease;
}

[data-collapsible-trigger] .icon-toggle-minus,
[data-collapsible-trigger-mobile] .icon-toggle-minus {
    opacity: 0;
}

[data-collapsible-trigger].is-expanded>.icon-toggle-plus,
[data-collapsible-trigger-mobile].is-expanded>.icon-toggle-plus {
    opacity: 0;
    transform: rotate(180deg);
}

[data-collapsible-trigger].is-expanded>.icon-toggle-minus,
[data-collapsible-trigger-mobile].is-expanded>.icon-toggle-minus {
    opacity: 1;
    transform: rotate(180deg);
}

@media only screen and (max-width: 767px) {
    [data-collapsible-container-mobile] {
        position: relative;
        width: 100%;
        height: 0;
        opacity: 0;
        overflow: hidden;
        visibility: hidden;
        will-change: height;
        transition: opacity 0.3s ease, height 0.3s ease, visibility 0s 0.3s;
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
    }
    [data-collapsible-container-mobile].is-expanded {
        opacity: 1;
        overflow: unset;
        visibility: visible;
        transition: opacity 1s ease, height 0.5s ease, visibility 0s;
    }
    [data-collapsible-content-mobile] {
        transform: translateY(25px);
        transition: transform 0.5s ease;
    }
    .is-expanded>[data-collapsible-content-mobile] {
        transform: translateY(0);
    }
}

body:not(.no-outline) [data-collapsible-trigger]:focus {
    outline-offset: -2px;
}


/*================ Cart elements ================*/

.cart__text {
    display: block;
    text-align: center;
    margin: calc(var(--inner) / 2) 0 0;
    font-size: calc(0.815rem * var(--adjust-body));
    line-height: 1.36;
}

@media only screen and (max-width: 767px) {
    .cart__text {
        margin-top: 7px;
    }
}

.cart__total {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
    padding-top: calc(var(--inner) / 2);
    margin-bottom: calc(var(--inner) / 2);
    font-size: calc(0.75rem * var(--adjust-body));
    line-height: 1.33;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
}

.cart__total span:first-child {
    text-transform: uppercase;
    letter-spacing: 0.14em;
}

.cart__total.hidden {
    display: none;
}

.cart__checkout {
    max-width: calc(var(--drawer-width, 100vw) - var(--inner));
    padding-top: 12px;
    padding-bottom: 12px;
}

.cart__checkout--dynamic {
    min-height: 44px;
}

#dynamic-checkout-cart:empty {
    min-height: 0 !important;
}

.cart__item {
    position: relative;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-flow: row wrap;
    padding: var(--inner);
    overflow: hidden;
    will-change: transition, opacity;
}

.cart__item.is-disabled a {
    pointer-events: none;
}

.cart__item--no-border {
    border-bottom: none;
}

.cart__item--open {
    z-index: 1;
    overflow: visible;
}

.cart__item__image {
    position: relative;
    font-size: 0;
    margin-right: var(--inner);
}

.cart__item__image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.cart__item__image a {
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    text-decoration: none;
    transition: opacity 0.3s;
    width: 100px;
    height: 100px;
    border-radius: inherit;
    transform: translateZ(0);
    overflow: hidden;
}

.cart__item__content {
    width: calc(100% - 100px - var(--inner));
}

.cart__item__content-inner {
    display: flex;
    flex-flow: row nowrap;
}

.cart__item__price {
    margin: 0 0 0 auto;
    font-size: calc(0.815rem * var(--adjust-body));
    line-height: 1.25;
    text-align: right;
}

.cart__item__price ins {
    background: none;
    margin-right: 5px;
    color: var(--text-darken);
    text-decoration: none;
}

.cart__item__price del {
    display: inline-block;
    color: var(--text-lighten);
}

.cart__item__price .line__price {
    display: block;
    margin-top: 4px;
}

.cart__item__info {
    max-width: 150px;
}

.cart__item__title {
    font-size: calc(0.815rem * var(--adjust-body));
    font-weight: var(--FONT-WEIGHT-BODY-MEDIUM);
    line-height: 1.3;
    margin: 0;
}

.cart__item__title a {
    text-decoration: none;
    color: var(--text);
}

.cart__item__meta {
    margin: 8px 0 0;
}

.cart__item__meta:empty {
    display: none;
}

.cart__item__selling-plan {
    font-size: calc(0.815rem * var(--adjust-body));
    font-style: var(--FONT-STYLE-BODY-ITALIC);
}

.cart__item__selling-plan span {
    display: block;
    margin: 5px 0;
}

.cart__item__selected-options,
.cart__item__property {
    margin: 2px 0 0;
    font-size: calc(0.75rem * var(--adjust-body));
}

.cart__item__bottom {
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    margin-top: 10px;
    justify-content: space-between;
}

.cart__item__remove {
    font-size: calc(0.75rem * var(--adjust-body));
    color: inherit;
    opacity: 0.6;
    text-decoration: underline;
    text-decoration-thickness: var(--BORDER-WIDTH);
    transition: opacity 0.3s;
    padding: 0 calc(var(--inner) / 2);
}

.cart-drawer .cart__item__remove {
    padding: 0;
}

.cart__item__remove:hover {
    opacity: 1;
    text-decoration: none;
}

.cart-drawer.is-loading .cart__item__remove,
.cart__item.is-disabled .cart__item__remove {
    pointer-events: none;
    opacity: 0.3;
}

.cart__item__quantity {
    position: relative;
    width: 80px;
    transition: opacity 0.4s;
}

.cart__item__quantity.read-only {
    opacity: 0.5;
    pointer-events: none;
}

.cart__item__quantity button {
    position: absolute;
    top: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 20px;
    height: 100%;
    font-size: 0;
    line-height: 1;
    border-radius: 0;
    transform: translateY(-50%);
    transition: color 0.3s;
    color: var(--text-alpha-50);
}

.cart__item__quantity button.is-disabled {
    pointer-events: none;
    opacity: 0.5;
}

.cart__item__quantity button:hover {
    color: var(--text);
}

.cart__item__quantity .icon {
    width: 8px;
    height: 8px;
}

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

.cart__item__quantity input[type=number]::-webkit-outer-spin-button,
.cart__item__quantity input[type=number]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
}

.cart__item__quantity-minus {
    left: 0;
    box-shadow: var(--BORDER-WIDTH) 0 var(--COLOR-BORDER-ALPHA-50);
}

.cart__item__quantity-plus {
    right: 0;
    box-shadow: calc(var(--BORDER-WIDTH) * -1) 0 var(--COLOR-BORDER-ALPHA-50);
}

.cart__item__quantity-field {
    display: flex;
    width: 100%;
    padding: 6px 20px;
    border: var(--BORDER-WIDTH) solid var(--COLOR-BORDER-ALPHA-50);
    border-radius: 1px;
    margin: 0;
    font-size: calc(0.75rem * var(--adjust-body));
    line-height: normal;
    color: inherit;
    text-align: center;
}

.is-loading .cart__item__quantity,
.is-disabled .cart__item__quantity {
    pointer-events: none;
    opacity: 0.6;
}

.cart__widget {
    overflow: hidden;
    font-size: calc(0.815rem * var(--adjust-body));
    line-height: 1.16;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    padding: calc(var(--inner) / 2) 0;
}

.cart__widget .cart__field {
    display: block;
    width: 100%;
    font-size: calc(0.815rem * var(--adjust-body));
    line-height: 1.4;
}

.cart__widget .cart__field--textarea {
    height: 90px;
    resize: none;
    border-radius: var(--RADIUS-TEXTAREA);
}

.cart__widget label {
    display: block;
    margin-bottom: 5px;
}

.cart__widget__wrapper div:last-of-type {
    margin-bottom: calc(var(--inner) / 2);
}

.cart__widget__title {
    display: block;
    position: relative;
    width: calc(100% + var(--inner));
    padding: 12px calc(var(--inner) / 2);
    margin: -12px calc(var(--inner) / -2);
    font-size: calc(0.815rem * var(--adjust-body));
    line-height: 1.16;
    color: var(--text);
    text-align: left;
}

.cart__widget__title .icon {
    top: 0;
    right: calc(var(--inner) / 2);
    height: 100%;
    width: 12px;
}

.cart__widget__content-inner {
    overflow-x: auto;
    position: relative;
    display: flex;
    flex-flow: row nowrap;
    margin-bottom: -38px;
}

.cart__widget__content-inner>* {
    flex: 0 0 auto;
    width: 100%;
    margin-bottom: 22px;
}

.cart__widget__content-inner .product-upsell__btn {
    position: relative;
    display: flex;
    right: auto;
    bottom: auto;
}

.cart__widget__content {
    overflow: hidden;
    position: relative;
    margin-top: var(--inner);
}

.cart__widget__content textarea {
    padding: 5px;
}

.btn--apply-discount {
    margin-top: 5px;
    width: 100%;
}

.cart__discounts {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
    margin-bottom: calc(var(--inner) / 2);
}

.cart__discounts .cart__discount {
    width: auto;
    margin: 0;
}

.cart__discount {
    display: flex;
    align-items: center;
    gap: 5px;
    width: 100%;
    padding: 5px 15px;
    border-radius: var(--radius-small);
    margin: var(--inner) 0 0;
    background-color: var(--PRIMARY-BUTTONS-COLOR-ALPHA-50);
    font-size: calc(0.75rem * var(--adjust-body));
    color: var(--PRIMARY-BUTTONS-COLOR-TEXT);
}

.cart__discount .remove-discount {
    line-height: 1;
}

.cart__discount .icon-tags,
.cart__discount .icon-close {
    display: inline-block;
    vertical-align: middle;
    width: 12px;
    height: 12px;
    stroke: currentcolor;
}

.cart__discount .icon-tags {
    stroke-width: 1px;
}

.cart__discount .icon-close {
    cursor: pointer;
}

.cart__errors {
    position: relative;
    width: 100%;
    visibility: hidden;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity 0.5s ease, max-height 0.5s cubic-bezier(0, 1, 0.5, 1), visibility 0.5s;
}

.cart__errors.is-expanded {
    opacity: 1;
    visibility: visible;
    max-height: 300px;
    transition-timing-function: cubic-bezier(0, 0, 1, 0);
}

.cart__errors__inner {
    position: relative;
    padding: calc(var(--inner) * 0.75) calc(var(--inner) * 2) calc(var(--inner) * 0.75) var(--inner);
    border: var(--BORDER-WIDTH) solid var(--error);
    border-radius: var(--RADIUS-CHECKBOX);
    margin: 0 auto calc(var(--inner) * 0.75);
    background-color: var(--error-bg);
}

@media only screen and (max-width: 767px) {
    .cart__errors__inner {
        padding: calc(var(--inner) / 2) calc(var(--inner) * 2) calc(var(--inner) / 2) var(--gutter-mobile);
    }
}

.cart__errors__close,
.errors__button-close {
    position: absolute;
    top: 50%;
    right: 10px;
    width: 32px;
    height: 32px;
    padding: 8px;
    transform: translateY(-50%);
    color: var(--error);
}

.cart__errors__close .icon,
.errors__button-close .icon {
    display: block;
    width: 100%;
    height: 100%;
    transition: transform 0.3s ease;
}

.cart__errors__close:hover .icon,
.errors__button-close:hover .icon {
    transform: rotate(90deg);
}

.cart__errors__heading {
    margin: 0;
    font-size: calc(0.75rem * var(--adjust-body));
    color: var(--error);
}

.cart__errors__content {
    width: 100%;
    margin: 0;
    font-size: calc(0.75rem * var(--adjust-body));
    color: var(--error);
}

.cart__errors__content--discount {
    padding-top: 10px;
}

.cart__buttons-wrapper {
    display: flex;
    flex-flow: row wrap;
    width: 100%;
}

.cart__acceptance__input {
    display: block;
    width: 13px;
    height: 13px;
    margin: calc(4px * var(--adjust-body)) 7px 5px 0;
    float: none;
}

.cart__acceptance__label {
    display: block;
    cursor: pointer;
    width: calc(100% - 25px);
    font-size: calc(0.815rem * var(--adjust-body));
}

.cart__acceptance__label p {
    margin: 0;
    font-size: inherit;
}

.cart__buttons__fieldset {
    padding: 0;
    margin: 0;
    border: none;
}

.cart__buttons {
    width: 100%;
}

.cart__buttons--disabled {
    position: relative;
}

.cart__buttons--disabled::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    cursor: default;
    background: var(--bg-alpha-35);
    z-index: 1;
    transition: opacity 0.3s ease, visibility 0s linear 0s;
}

.cart__acceptance__input~.cart__buttons {
    margin-top: var(--inner);
}

.cart__acceptance__input:checked~.cart__buttons--disabled::after {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.cart__terms {
    width: 100%;
    margin: 0;
    font-size: calc(0.75rem * var(--adjust-body));
    color: var(--error);
    visibility: hidden;
    max-height: 0;
    opacity: 0;
    overflow: hidden;
    transition: opacity 0.5s ease, margin 0.5s ease, max-height 0.5s cubic-bezier(0, 1, 0.5, 1), visibility 0.5s;
}

.cart__terms.is-expanded {
    opacity: 1;
    visibility: visible;
    max-height: 300px;
    margin-top: var(--inner);
    transition: opacity 0.5s ease, margin 0.5s ease, max-height 0.5s cubic-bezier(0, 0, 1, 0), visibility 0.5s;
}

.cart__pair {
    border-top: var(--BORDER-WIDTH) solid var(--text);
    padding-top: 10px;
    margin-bottom: 30px;
    transition: opacity 0.3s;
}

.cart__pair.fade-out {
    opacity: 0;
}

.cart__pair .flickity-page-dots {
    position: static;
    margin: 9px 0 -25px;
}

.cart__pair:empty {
    display: none;
}

.body--rounded-corners .cart__widget,
.body--rounded-corners .cart__item__image {
    border-radius: var(--radius);
    overflow: hidden;
}


/*
* Social sharing
*/

.share-button .icon-share {
    vertical-align: text-bottom;
}

.custom-scrollbar {
    --thumb-scale: 0;
    --thumb-position: 0;
    --track-width: 100%;
    --radius-scrollbar: 0;
    --scrollbar-bg: var(--COLOR-ACCENT-MIX-ALPHA);
    position: relative;
    min-width: var(--track-width);
    width: 100%;
    height: 5px;
    padding: 0;
    margin-top: 10px;
    background: var(--scrollbar-bg);
    border-radius: var(--radius-scrollbar);
    overflow: hidden;
}

.custom-scrollbar__thumb {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    transform: translateX(var(--thumb-position));
    transform-origin: left;
    transition: transform 0.3s ease-in-out;
    will-change: transform;
}

.custom-scrollbar__thumb:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    background: var(--accent);
    transform: scaleX(var(--thumb-scale));
    transform-origin: left;
    transition: transform 0.3s ease-in-out;
    will-change: transform;
}

.body--rounded-corners .custom-scrollbar {
    --radius-scrollbar: 3px;
}

toggle-ellipsis {
    --bg: var(--bg-ellipsis, var(--COLOR-BG));
    display: block;
    position: relative;
    overflow: hidden;
    height: var(--height, auto);
    transition: height 0.5s ease;
}

.toggle-ellipsis__content {
    overflow: hidden;
    padding-bottom: 0.1rem;
}

.toggle-ellipsis__actions {
    display: none;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 10px 0;
    background: var(--bg);
}

.toggle-ellipsis__actions::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 99.99%;
    right: 0;
    height: 30px;
    background: linear-gradient(to bottom, transparent, var(--bg));
    opacity: 1;
    transition: opacity 0.3s ease;
    pointer-events: none;
}

.toggle-ellipsis__button {
    position: absolute;
    top: -0.1rem;
    left: 0;
}

.toggle-ellipsis__more,
.toggle-ellipsis__less {
    animation: fadeIn 1s ease;
}

.is-enabled .toggle-ellipsis__actions {
    display: block;
    padding-bottom: 15px;
}

.is-enabled .toggle-ellipsis__more {
    display: inline;
}

.is-enabled .toggle-ellipsis__less {
    display: none;
}

.is-open .toggle-ellipsis__actions::before {
    opacity: 0;
}

.is-open .toggle-ellipsis__more {
    display: none;
}

.is-open .toggle-ellipsis__less {
    display: inline;
}


/*================ Site Nav and Dropdowns ================*/

.nav {
    --icon-size: 26px;
    --inner: 15px;
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-size: calc(1rem * var(--adjust-nav));
    cursor: default;
    list-style: none;
    display: flex;
    align-items: stretch;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 100%;
    width: 100%;
    z-index: 0;
}

@media only screen and (min-width: 1024px) {
    .nav {
        padding-right: var(--gutter);
        padding-left: var(--gutter);
    }
}

.nav p {
    font-size: inherit;
}

@media (pointer: coarse) {
    .site-header:not(.js__header__clone) .nav--default {
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    .site-header[data-header-in-editor]:not(.js__header__clone) .nav--default {
        display: none;
    }
}

.site-header--nav-left .nav--default {
    justify-content: flex-start;
    padding-left: calc(var(--gutter) - var(--inner));
}

.site-header--nav-right .nav--default {
    justify-content: flex-end;
}

.site-header--nav-center .nav--default {
    justify-content: center;
}

.site-header--compress .nav {
    justify-content: flex-end;
}

.site-header--compress .nav .menu__item {
    display: none;
}

.site-header--compress .nav .menu__item--compress .menu__item--icon {
    display: flex;
}

.site-header--compress .nav .menu__item--compress,
.site-header--compress .nav .menu__item--mobile-search {
    display: flex;
    margin-left: auto;
}

.site-header--compress .nav .menu__item--compress,
.site-header--compress .nav .menu__item--texts {
    margin-right: -10px;
}

@media only screen and (max-width: 1023px) {
    .site-header--compress .nav .menu__item--compress {
        margin-right: calc(var(--gutter-mobile) - 12px);
    }
}

.nav [data-collapsible-content],
.mobile-nav [data-collapsible-content] {
    transform: translateX(calc(var(--inner) * -1));
}

.nav .is-expanded>[data-collapsible-content],
.mobile-nav .is-expanded>[data-collapsible-content] {
    transform: translateX(0);
}

.cart-indicator {
    fill: var(--accent);
    stroke: none;
    visibility: hidden;
}

.cart__toggle--has-items .cart-indicator {
    visibility: visible;
}

.cart__toggle--animation .cart-indicator {
    animation: pulse 1.7s infinite;
}

.navlink {
    --btn-text: var(--COLOR-MENU-LINK);
    position: relative;
    display: block;
    padding: 3px 0;
    text-decoration: none;
    z-index: 10;
}

.navlink[href="#"] {
    cursor: default;
}

.menu__item>.navlink {
    min-height: 100%;
}

.site-header--nav-normal .navlink {
    font-weight: var(--FONT-WEIGHT-NAV);
}

.site-header--nav-bold .navlink {
    font-weight: var(--FONT-WEIGHT-NAV-BOLD);
}

.site-header--nav-bold .navlink--grandchild {
    font-weight: var(--FONT-WEIGHT-NAV);
}

.navlink--toplevel {
    display: flex;
    align-items: center;
    padding: var(--inner);
    font-size: calc(1rem * var(--adjust-nav-top-level));
    transition: color 0.2s ease;
}

.navlink--line>.navtext {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.navlink--line>.navtext::before,
.navlink--line>.navtext::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.navlink--line>.navtext::before {
    transform: scaleX(0);
    transform-origin: left;
}

.navlink--line>.navtext::after {
    transform-origin: right;
}

.no-touch .navlink--line>.navtext:hover {
    background: transparent;
    border: 0;
}

.no-touch .navlink--line>.navtext:hover::before,
.no-touch .navlink--line>.navtext:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .navlink--line>.navtext:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.navlink--line>.navtext::after {
    opacity: 0;
}

.navlink--dot>.navtext {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
    pointer-events: none;
}

.navlink--dot>.navtext::before,
.navlink--dot>.navtext::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.navlink--dot>.navtext::before {
    transform: scaleX(0);
    transform-origin: left;
}

.navlink--dot>.navtext::after {
    transform-origin: right;
}

.no-touch .navlink--dot>.navtext:hover {
    background: transparent;
    border: 0;
}

.no-touch .navlink--dot>.navtext:hover::before,
.no-touch .navlink--dot>.navtext:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .navlink--dot>.navtext:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.navlink--dot>.navtext::before {
    display: none;
}

.navlink--dot>.navtext::after {
    opacity: 0;
    border-radius: 100%;
    width: 3px;
    height: 3px;
    left: 50%;
    bottom: -0.25rem;
    transform-origin: center;
    transform: translateX(-50%) scale(0.25);
}

.search-opened .menu__item>details>.search-popdown__toggle>.navtext::before,
.search-opened .menu__item>details>.search-popdown__toggle>.navtext::after,
.menu__item:hover>details>.navlink>.navtext::before,
.menu__item:hover>details>.navlink>.navtext::after,
.menu__item:hover>.navlink>.navtext::before,
.menu__item:hover>.navlink>.navtext::after,
.menu__item.is-visible>.navlink>.navtext::before,
.menu__item.is-visible>.navlink>.navtext::after,
.grandparent .navlink--child:hover>.navtext::before,
.grandparent .navlink--child:hover>.navtext::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
}

.search-opened .menu__item>details>.search-popdown__toggle>.navtext::before,
.menu__item:hover>details>.navlink>.navtext::before,
.menu__item:hover>.navlink>.navtext::before,
.menu__item.is-visible>.navlink>.navtext::before,
.grandparent .navlink--child:hover>.navtext::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.search-opened .menu__item>details>.search-popdown__toggle>.navtext::after,
.menu__item:hover>details>.navlink>.navtext::after,
.menu__item:hover>.navlink>.navtext::after,
.menu__item.is-visible>.navlink>.navtext::after,
.grandparent .navlink--child:hover>.navtext::after {
    transform: scaleX(0);
    opacity: 1;
}

.search-opened .menu__item>details>.search-popdown__toggle.navlink--dot>.navtext::after,
.menu__item:hover>details>.navlink--dot>.navtext::after,
.menu__item:hover>.navlink--dot>.navtext::after,
.menu__item.is-visible>.navlink--dot>.navtext::after,
.grandparent .navlink--dot:hover>.navtext::after {
    transform: translateX(-50%) scale(1);
}

.navlink--highlight,
.navlink--highlight .navtext {
    color: var(--highlight);
}

.navlink--highlight .navtext::after,
.navlink--highlight .navtext::before,
.navlink--highlight .navtext .navtext::after,
.navlink--highlight .navtext .navtext::before {
    background: var(--highlight) !important;
}

.navtext__custom-badge,
.mobile-navlink__custom-badge {
    display: inline-block;
    margin-inline-start: 7px;
    color: var(--custom-badge-text-color);
    background: var(--custom-badge-bg-color);
    padding: 3px 5px;
}

.navlink--child,
.navlink--grandchild {
    transition: color 0.25s ease;
}

.navlink--icon {
    padding: 8px;
    display: flex;
    align-items: center;
    transition: color 0.2s ease;
}

.menu__item--texts .navlink--icon {
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    font-size: calc(1rem * var(--adjust-nav-top-level));
    padding: var(--inner);
}

.navlink--icon .icon {
    width: var(--icon-size);
    height: var(--icon-size);
    pointer-events: none;
    stroke-width: calc(var(--STROKE-WIDTH) - 4px);
}

.site-header--nav-normal .navlink--icon .icon {
    stroke-width: calc(var(--STROKE-WIDTH) - 2px);
}

.site-header--nav-bold .navlink--icon .icon {
    stroke-width: var(--STROKE-WIDTH);
}

.navtext {
    position: relative;
    display: block;
}

.navlink--icon .navtext {
    pointer-events: none;
}

.menu__items {
    display: flex;
    align-items: stretch;
    justify-content: center;
}

.menu__items--secondary {
    height: 100%;
}

.menu__items--secondary .grandparent .header__dropdown {
    width: calc(100vw - var(--scrollbar-width));
    left: auto;
    right: calc(-1 * var(--gutter-mobile) + 10px);
}

@media only screen and (min-width: 1024px) {
    .menu__items--secondary .grandparent .header__dropdown {
        right: calc(-1 * var(--gutter) + 10px);
    }
}

.menu__item {
    display: flex;
    align-items: center;
    margin: 0;
}

.megamenu-opened .menu__item:has(.localization-form) {
    z-index: 15;
}

.menu__item--mobile-search {
    display: none;
}

.menu__item--has-items {
    position: relative;
    padding-bottom: 15px;
    margin-bottom: -15px;
}

.menu__item--has-items:hover {
    z-index: 3;
}

.menu__item--texts .menu__item--icon {
    height: 100%;
}

.js__header__clone {
    position: absolute;
    min-width: 1400px;
    transform: translateY(-5000px);
    visibility: hidden;
}

.menu__item--icons {
    position: relative;
    z-index: 12;
    display: flex;
    align-items: center;
    margin: 0 -10px 0 25px;
}

@media only screen and (max-width: 1023px) {
    .menu__item--icons {
        margin-right: 10px;
    }
}

.menu__item--icons.menu__item--secondary {
    margin-left: 0;
}

.menu__item--icons.menu__item--secondary .menu__items--secondary {
    margin-right: 25px;
}

.site-header--nav-left .menu__item--icons,
.site-header--nav-center .menu__item--icons {
    position: absolute;
    top: 0;
    right: var(--gutter);
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    margin-right: -10px;
}

@media only screen and (max-width: 1023px) {
    .site-header--nav-left .menu__item--icons,
    .site-header--nav-center .menu__item--icons {
        right: var(--gutter-mobile);
    }
}

.menu__item--compress {
    display: none;
    align-items: center;
    justify-content: flex-end;
}

.header__dropdown {
    --text: var(--COLOR-MENU-LINK);
    position: absolute;
    top: 100%;
    background: transparent;
    line-height: 22px;
    margin: 0;
    text-align: left;
    visibility: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: visibility 0.5s;
    pointer-events: none;
}

.menu__item.is-visible .header__dropdown {
    visibility: visible;
    pointer-events: all;
    z-index: 14;
}

.menu__item.is-visible .header__dropdown::after {
    --adjust-font-size: calc(1.5rem * var(--adjust-nav) / 2);
    position: absolute;
    content: "";
    top: auto;
    bottom: 100%;
    left: 0;
    right: 0;
    height: calc(var(--header-height) / 2 - var(--adjust-font-size));
}

.menu__item.is-visible .header__dropdown::after,
.has-scrolled .menu__item.is-visible .header__dropdown::after{
    pointer-events:none;
}

.has-scrolled .menu__item.is-visible .header__dropdown::after {
    height: calc(var(--header-sticky-height) / 2 - var(--adjust-font-size));
}

.header__dropdown__wrapper {
    overflow-y: auto;
    max-height: calc(100vh - var(--header-height));
    transform: translateY(-10px);
    opacity: 0;
    transition: transform 0.2s, opacity 0.1s;
}

.menu__item.is-visible .header__dropdown__wrapper {
    transform: translateY(0);
    opacity: 1;
    transition-delay: 0.15s;
}

.has-scrolled .header__dropdown__wrapper {
    max-height: calc(100vh - var(--header-sticky-height));
}

.dropdown__family {
    display: flex;
    flex-direction: column;
    padding-bottom: 10px;
    font-size: calc(1rem * var(--adjust-nav));
}

.header__dropdown__image {
    position: relative;
    letter-spacing: initial;
    opacity: 0;
    transition: opacity 0.75s ease;
}

@media only screen and (min-width: 1024px) {
    .header__dropdown__image {
        max-height: 50vh;
    }
}

.header__dropdown__image .background-size-cover .placeholder-svg-filled {
    background: var(--COLOR-MENU-BG-LIGHTEN-DARKEN-FOREGROUND);
}

@media only screen and (min-width: 1024px) {
    .header__dropdown__image .background-size-cover {
        max-height: 50vh;
    }
}

.header__dropdown__image .hero__title {
    color: var(--text);
    font-size: calc(1.5rem * var(--adjust-heading));
    margin: 0;
}

.header__dropdown__image .hero__description {
    margin: 0;
    color: var(--text);
}

.header__dropdown__image .hero__content {
    padding: 30px;
    margin: 0;
    max-width: none;
}

.header__dropdown__image .hero__content::before {
    background: radial-gradient(var(--COLOR-MENU-LINK-OPPOSITE) 0%, rgba(255, 255, 255, 0) 65%);
}

.hero__content__wrapper {
    display: flex;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 200;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.link-over-image {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    z-index: 20;
}

.parent .header__dropdown {
    top: 100%;
    min-width: 180px;
    max-width: 320px;
    background: var(--COLOR-MENU-BG);
    font-size: calc(0.9375rem * var(--adjust-nav));
    transform-origin: center top;
    transform: scaleY(0);
    transition: transform 0.2s ease, visibility 0s 0.3s;
}

.parent .header__dropdown__wrapper {
    transition: transform 0.2s, opacity 0.1s;
}

.parent .header__dropdown__inner {
    display: flex;
    flex-direction: column;
    padding: 0 2px 10px;
}

.parent .navlink--toplevel::after {
    content: none;
}

.parent .navlink--child {
    display: block;
    padding: 0;
}

.parent .navlink--child>span {
    display: block;
    padding: 6px var(--inner);
    transition: background 0.25s ease;
}

.parent .navlink--child:hover>span {
    background: var(--COLOR-MENU-TEXT-ALPHA-5);
}

.parent.is-visible .header__dropdown {
    z-index: 14;
    transform: scaleY(1);
    transition: transform 0.2s ease, visibility 0s;
}

.parent.is-visible .header__dropdown__wrapper {
    transition: transform 0.1s 0.1s, opacity 0.2s 0.1s;
}

:not(.has-scrolled) .site-header--transparent .parent.is-visible .header__dropdown {
    transition: transform 0.2s ease 0.1s, visibility 0s;
}

:not(.has-scrolled) .site-header--transparent .parent.is-visible .header__dropdown__wrapper {
    transition: transform 0.1s 0.25s, opacity 0.1s 0.25s;
}

.navlink--image .image-fill {
    opacity: 0;
    transition: opacity 0.75s ease;
}

.navlink--image .background-size-cover,
.header__dropdown__image .background-size-cover {
    transform: scale(1.06);
    transform-origin: bottom center;
    transition: transform 0.75s ease;
    will-change: transform;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.is-visible .navlink--image .image-fill,
.is-visible .header__dropdown__image {
    opacity: 1;
}

.is-visible .navlink--image .background-size-cover,
.is-visible .header__dropdown__image .background-size-cover {
    transform: scale(1);
    transition: transform 1.5s ease;
}

.grandparent .header__dropdown {
    width: 100%;
    max-width: 100vw;
    left: 0;
    z-index: -1;
}

@media only screen and (min-width: 768px) {
    .grandparent .header__dropdown {
        margin-top: -70px;
    }
    .has-scrolled .grandparent .header__dropdown {
        margin-top: -45px;
    }
}

.site-header--has-border .grandparent .header__dropdown::before {
    content: "";
    position: absolute;
    z-index: 15;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--BORDER-WIDTH);
    background: var(--border-color);
    opacity: 0;
    transition: opacity 0.2s 0.1s ease, background 0.3s ease;
}

.grandparent .header__dropdown__wrapper {
    padding: 50px 0;
}

.grandparent .header__dropdown__inner {
    display: flex;
    justify-content: space-between;
    margin: 0 auto;
}

.grandparent .header__grandparent__links {
    flex: 3;
    display: grid;
    align-content: start;
    row-gap: 1.5em;
    /* margin-left: calc(var(--gutter) / 2); */
}

.grandparent .menu__block--narrow,
.grandparent .menu__block--wide,
.grandparent .dropdown__family {
    margin-right: calc(var(--gutter) / 2);
}

.grandparent .menu__block--narrow {
    flex: 1;
}

.grandparent .menu__block--wide {
    flex: 3;
}

.grandparent .navlink--child,
.grandparent .navlink--grandchild {
    display: inline-block;
    will-change: transform;
    margin-right: auto;
    padding-right: 5px;
}

.grandparent .navlink--child>.navtext {
    display: inline-block;
    position: relative;
    font-size: calc(1.25rem * var(--adjust-nav));
}

.grandparent .navlink--grandchild>.navtext {
    transition: opacity 0.3s ease;
}

.grandparent .navlink--grandchild:hover>.navtext {
    opacity: 0.65;
}

.grandparent .navlink--child {
    margin-bottom: 5px;
}

.grandparent .navlink--image {
    display: block;
    width: 100%;
    padding-top: 0;
}

.grandparent .navlink--image .image-fill {
    margin: 0 0 20px;
}

.grandparent--all-images .header__dropdown__wrapper {
    padding-left: calc(var(--gutter) / 2);
}

.grandparent.no-images .header__dropdown__links {
    padding-bottom: var(--inner);
}

.grandparent.no-images .header__dropdown__inner {
    width: 100%;
}

@media only screen and (min-width: 1024px) {
    .grandparent.no-images.kids-1 .header__dropdown__inner {
        width: calc(28.75vw - var(--scrollbar-width) - var(--gutter));
    }
}

@media only screen and (min-width: 1024px) {
    .grandparent.no-images.kids-2 .header__dropdown__inner {
        width: calc(50vw - var(--scrollbar-width) - var(--gutter));
    }
}

@media only screen and (min-width: 1024px) {
    .grandparent.no-images.kids-3 .header__dropdown__inner {
        width: calc(75vw - var(--scrollbar-width) - var(--gutter));
    }
}

@media only screen and (min-width: 1024px) {
    .grandparent.no-images.kids-4 .header__dropdown__inner {
        width: calc(100vw - var(--scrollbar-width) - var(--gutter));
    }
}

.grandparent.kids-1 .header__grandparent__links {
    grid-template-columns: repeat(1, minmax(0, 1fr));
}

.grandparent.kids-2 .header__grandparent__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grandparent.kids-3 .header__grandparent__links {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grandparent.kids-4 .header__grandparent__links {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.grandparent.kids-5 .header__grandparent__links {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.grandparent.kids-6 .header__grandparent__links,
.grandparent.kids-7 .header__grandparent__links,
.grandparent.kids-8 .header__grandparent__links,
.grandparent.kids-9 .header__grandparent__links,
.grandparent.kids-10 .header__grandparent__links,
.grandparent.kids-11 .header__grandparent__links,
.grandparent.kids-12 .header__grandparent__links,
.grandparent.kids-13 .header__grandparent__links,
.grandparent.kids-14 .header__grandparent__links,
.grandparent.kids-15 .header__grandparent__links,
.grandparent.kids-16 .header__grandparent__links,
.grandparent.kids-17 .header__grandparent__links,
.grandparent.kids-18 .header__grandparent__links,
.grandparent.kids-19 .header__grandparent__links,
.grandparent.kids-20 .header__grandparent__links {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

[class*=images-].grandparent.kids-4 .header__grandparent__links,
[class*=images-].grandparent.kids-5 .header__grandparent__links,
[class*=images-].grandparent.kids-6 .header__grandparent__links,
[class*=images-].grandparent.kids-7 .header__grandparent__links,
[class*=images-].grandparent.kids-8 .header__grandparent__links,
[class*=images-].grandparent.kids-9 .header__grandparent__links,
[class*=images-].grandparent.kids-10 .header__grandparent__links,
[class*=images-].grandparent.kids-11 .header__grandparent__links,
[class*=images-].grandparent.kids-12 .header__grandparent__links,
[class*=images-].grandparent.kids-13 .header__grandparent__links,
[class*=images-].grandparent.kids-14 .header__grandparent__links,
[class*=images-].grandparent.kids-15 .header__grandparent__links,
[class*=images-].grandparent.kids-16 .header__grandparent__links,
[class*=images-].grandparent.kids-17 .header__grandparent__links,
[class*=images-].grandparent.kids-18 .header__grandparent__links,
[class*=images-].grandparent.kids-19 .header__grandparent__links,
[class*=images-].grandparent.kids-20 .header__grandparent__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

[class*=images-].grandparent .dropdown__family {
    max-width: calc(var(--wrapper-width) / 5 * 2);
}

.grandparent.kids-2.images-1 .header__grandparent__links {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.grandparent.kids-3.images-1 .header__grandparent__links,
.grandparent.kids-4.images-1 .header__grandparent__links,
.grandparent.kids-5.images-1 .header__grandparent__links,
.grandparent.kids-6.images-1 .header__grandparent__links,
.grandparent.kids-7.images-1 .header__grandparent__links,
.grandparent.kids-8.images-1 .header__grandparent__links,
.grandparent.kids-9.images-1 .header__grandparent__links,
.grandparent.kids-10.images-1 .header__grandparent__links,
.grandparent.kids-11.images-1 .header__grandparent__links,
.grandparent.kids-12.images-1 .header__grandparent__links,
.grandparent.kids-13.images-1 .header__grandparent__links,
.grandparent.kids-14.images-1 .header__grandparent__links,
.grandparent.kids-15.images-1 .header__grandparent__links,
.grandparent.kids-16.images-1 .header__grandparent__links,
.grandparent.kids-17.images-1 .header__grandparent__links,
.grandparent.kids-18.images-1 .header__grandparent__links,
.grandparent.kids-19.images-1 .header__grandparent__links,
.grandparent.kids-20.images-1 .header__grandparent__links {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.grandparent.images-2 .header__grandparent__links,
.grandparent.images-2 .menu__block--wide {
    flex: 2;
}

.grandparent.grandparent--all-images .header__grandparent__links {
    flex: 0;
}

.grandparent.grandparent--all-images.images-1 .menu__block--narrow {
    flex-grow: 0;
    flex-basis: 50%;
}

.mobile-menu {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    display: none;
    align-items: center;
    justify-content: flex-end;
    color: var(--text);
    touch-action: manipulation;
    padding-right: calc(var(--gutter) - 12px);
}

@media (pointer: coarse) {
    .mobile-menu {
        display: flex;
    }
}

@media only screen and (max-width: 1023px) {
    .mobile-menu {
        padding-right: 8px;
    }
}

@media only screen and (max-width: 767px) {
    [data-header-in-editor] .mobile-menu {
        display: flex;
    }
}

.mobile-menu__button {
    position: relative;
    z-index: 5;
    display: none;
    align-items: center;
    justify-content: center;
    color: var(--text);
    touch-action: manipulation;
    width: 44px;
    height: 44px;
    padding: 8px;
}

.mobile-menu__button .icon {
    stroke-width: calc(var(--STROKE-WIDTH) - 4px);
}

.site-header--nav-normal .mobile-menu__button .icon {
    stroke-width: calc(var(--STROKE-WIDTH) - 2px);
}

.site-header--nav-bold .mobile-menu__button .icon {
    stroke-width: var(--STROKE-WIDTH);
}

@media (pointer: coarse) {
    .mobile-menu__button {
        display: flex;
    }
}

@media only screen and (max-width: 767px) {
    [data-header-in-editor] .mobile-menu__button {
        display: flex;
    }
}

.mobile-menu__button .icon-search {
    transform: translateX(2px);
}

.mobile-menu__button--burger {
    position: absolute;
    top: 50%;
    left: calc(var(--gutter) - 12px);
    margin-top: -22px;
    margin-right: 0;
}

@media only screen and (max-width: 1023px) {
    .mobile-menu__button--burger {
        left: 8px;
    }
}

.site-header--compress .mobile-menu__button--burger {
    display: flex;
}

.cart__toggle {
    position: relative;
    font-size: calc(0.875rem * var(--adjust-body));
    white-space: nowrap;
}

.mobile-nav {
    --sublist-padding: 8px;
    --line-height: 1.4;
    line-height: var(--line-height);
    font-family: var(--FONT-STACK-NAV);
    font-style: var(--FONT-STYLE-NAV);
    margin: 10px 0 0;
}

.drawer--nav .mobile-nav {
    margin: 0;
}

.mobile-nav--weight-normal {
    font-weight: var(--FONT-WEIGHT-NAV);
}

.mobile-nav--weight-bold {
    font-weight: var(--FONT-WEIGHT-NAV-BOLD);
}

.mobile-nav--weight-bold .mobile-navlink--level-3 {
    font-weight: var(--FONT-WEIGHT-NAV);
}

.mobile-nav--bottom {
    margin-top: 20px;
}

.mobile-nav__sublist {
    margin: 0;
    padding: 5px 0;
}

.mobile-nav__sub-sublist {
    position: relative;
    padding: 0;
    margin: 0;
    overflow: hidden;
}


/* .mobile-nav__sub-sublist::before {
    content: "";
    position: absolute;
    top: var(--sublist-padding);
    bottom: var(--sublist-padding);
    left: 45px;
    width: var(--BORDER-WIDTH);
    background: currentcolor;
} */

.mobile-menu__item {
    position: relative;
    overflow: hidden;
    margin: 0;
    list-style: none;
}

.mobile-menu__item--level-1>.mobile-dropdown {
    margin-top: var(--mobile-dropdown-margin-top, 0);
}

.mobile-menu__item--has-items {
    display: flex;
    align-items: stretch;
    justify-content: flex-start;
    flex-wrap: wrap;
}

.mobile-menu__item--has-items>.mobile-navlink {
    width: calc(100% - 60px);
}

.mobile-navlink {
    display: block;
    width: 100%;
}

.mobile-navlink--highlight {
    --text: var(--highlight);
}

.mobile-navlink--level-1 {
    font-size: calc(1.5rem * var(--adjust-nav-top-level));
    padding: var(--link-item-level-1-padding, 5px) var(--inner);
}

.mobile-navlink--level-2 {
    font-size: calc(1rem * var(--adjust-nav));
    padding: var(--link-item-level-2-padding, 5px) 5px var(--link-item-level-2-padding, 5px) var(--inner);
}

.mobile-navlink--level-3 {
    font-size: calc(1rem * var(--adjust-nav));
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 7px 20px;
}

.mobile-navlink--small {
    font-size: calc(1rem * var(--adjust-nav));
    padding: 5px 5px 5px var(--inner);
}

.drawer--nav .mobile-navlink--small {
    padding: 5px 0;
}

.mobile-navlink--image {
    display: flex;
    align-items: center;
}

.mobile-nav__trigger {
    width: 52px;
    margin: 0 0 0 auto;
}

.mobile-nav__trigger--level-2 {
    align-self: center;
}

.mobile-navlink__image {
    flex: 0 0 74px;
    border-radius: var(--radius);
    margin-right: 8px;
    overflow: hidden;
    perspective: 1px;
}

.body--rounded-corners .navlink--image .image-fill,
.body--rounded-corners .header__dropdown__image,
.body--rounded-corners .parent>.header__dropdown {
    border-radius: var(--radius);
    overflow: hidden;
}

.body--rounded-corners .header__dropdown__image {
    transform: translateZ(0);
}

.body--rounded-corners .navtext__custom-badge,
.body--rounded-corners .mobile-navlink__custom-badge {
    border-radius: var(--radius-small);
}

.body--rounded-corners .parent>.header__dropdown {
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}

body:not(.no-outline) .menu__item:focus>.navlink {
    outline: -webkit-focus-ring-color auto 5px;
}

body:not(.no-outline) .navlink--child:focus {
    outline: -webkit-focus-ring-color inset 1px;
}

body:not(.no-outline) .mobile-menu__item:focus-within {
    overflow: initial;
}


/*================ "Header" ================*/

.shopify-section-header {
    position: relative;
    width: 100%;
    z-index: 9000;
}

header-component {
    display: block;
}

.site-header {
    --text: var(--COLOR-MENU-LINK);
    --bg: var(--COLOR-MENU-BG);
    --highlight: var(--text);
    position: relative;
    z-index: 5;
    width: 100%;
    min-width: 320px;
    background: var(--bg);
    color: var(--text);
    overflow: initial;
    -webkit-overflow-scrolling: touch;
    transition: color 0.2s ease, background 0.3s ease;
}

.site-header>.wrapper:not(.aos-initialized) {
    transform: translateZ(0);
}

.site-header>.wrapper {
    --header-sticky-height: 60px;
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    min-height: var(--header-sticky-height);
    height: inherit;
}

@media (pointer: coarse) {
    .site-header>.wrapper {
        justify-content: center;
    }
}

@media only screen and (max-width: 767px) {
    .site-header[data-header-in-editor]>.wrapper {
        justify-content: center;
    }
}

.site-header a {
    text-decoration: none;
    color: var(--text);
}

.site-header__background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 0;
    transition: height 0.25s ease;
    pointer-events: none;
    background: inherit;
}

.site-header--transparent .site-header__background {
    background: var(--bg);
}

@media (pointer: fine) {
    .site-header:focus-within .site-header__background {
        height: var(--header-height);
    }
    .site-header.site-header--menu-opened:focus-within .site-header__background,
    .site-header.site-header--menu-opened .site-header__background {
        height: var(--header-background-height);
    }
}

@media (hover: hover) {
    .site-header:hover .site-header__background {
        height: var(--header-background-height);
    }
}

.site-header--has-border {
    transition: color 0.2s ease, background 0.2s ease;
}

.site-header--has-border .wrapper::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    pointer-events: none;
    box-shadow: 0 var(--BORDER-WIDTH) var(--border-color);
    opacity: var(--border-opacity, 1);
    transition: box-shadow 0.2s ease;
}

.logo {
    position: relative;
    z-index: 1;
    text-align: left;
    margin: 15px 0;
    padding-right: var(--inner);
    max-width: calc(100% - 120px);
    display: flex;
    align-items: center;
    font-size: calc(1.125rem * var(--adjust-heading));
    line-height: 1.3;
    color: inherit;
    word-break: break-word;
}

@media (pointer: coarse) {
    .logo {
        position: relative;
        padding-left: var(--inner);
        padding-right: var(--inner);
    }
    .logo .logo__image-link--home:not(.logo__image-link--single) {
        left: var(--inner);
        max-width: calc(100% - var(--inner) * 2);
    }
}

@media only screen and (max-width: 479px) {
    .logo {
        max-width: calc(100% - 117px);
    }
}

.site-header--nav-left .logo,
.site-header--compress .logo {
    margin-left: auto;
    margin-right: auto;
    padding-left: var(--inner);
    padding-right: var(--inner);
}

.site-header--nav-left .logo .logo__image-link--home:not(.logo__image-link--single),
.site-header--compress .logo .logo__image-link--home:not(.logo__image-link--single) {
    left: var(--inner);
    max-width: calc(100% - var(--inner) * 2);
}

.logo__image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: contain;
    object-position: left;
    image-rendering: auto;
}

.logo__image-link {
    position: relative;
    color: var(--text);
    max-width: 100%;
}

.logo__image-link--home:not(.logo__image-link--single) {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    transition: opacity 0.4s ease;
}

.site-header--nav-left:not(.site-header--compress) .logo__image-link--home:not(.logo__image-link--single) {
    left: var(--inner);
}

.logo__image-link--other,
.logo__image-link--single {
    display: block;
}

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

.logo__image-push {
    display: block;
    height: 0;
}

@media only screen and (max-width: 479px) {
    .logo__text-link--has-image {
        display: none;
    }
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.shopify-section.supports-transparent-header:first-child {
    --full-height: var(--content-full);
    --content-full: calc(100vh - var(--announcement-height));
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .shopify-section-header {
    height: auto;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .site-header {
    position: absolute;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .banner-content,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .banners--cols .banner,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .banners--row .banners__content,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .image-accordion__text,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .split-images__content {
    padding-top: calc(var(--header-height) + var(--gutter));
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .text-inside,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .banner-image__text-container,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .slide__text__container,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .hero-scrolling__text-container {
    padding-top: var(--header-height);
}

@media only screen and (max-width: 767px) {
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header: first-child):not(:has(.main-content > .supports-transparent-header: first-child [data-prevent-transparent-header])) .main-content > .supports-transparent-header:first-child .banners--row .banners__content {
        padding-top: calc(var(--header-height) + var(--gutter-mobile));
        padding-bottom: calc(var(--header-height) + var(--gutter-mobile));
    }
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .countdown__text-container {
    padding-top: calc(var(--header-height) + var(--gutter) / 2 + var(--PT));
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .countdown.section-padding {
    padding-top: 0;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .countdown__content,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .main-content>.supports-transparent-header:first-child .countdown__aside {
    padding-top: 0;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent {
    background: transparent;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent:not(.site-header--hovered) {
    --text: var(--COLOR-MENU-TRANSPARENT-LINK);
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent .logo__image-link--other {
    opacity: 0;
    transition: opacity 0.4s ease;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent .logo__image-link--home:not(.logo__image-link--single),
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent .logo__image-link--single,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent.site-header--menu-opened .logo__image-link--other {
    opacity: 1;
}

.is-loaded body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent.site-header--has-gradient::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(180deg, var(--COLOR-MENU-BG-ALPHA-10) 30%, rgba(0, 0, 0, 0) 100%);
}

@media (pointer: fine) {
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent:focus-within .logo__image-link--other {
        opacity: 1;
    }
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent:focus-within .logo__image-link--home:not(.logo__image-link--single),
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent.site-header--menu-opened .logo__image-link--home:not(.logo__image-link--single) {
        opacity: 0;
    }
}

@media (hover: hover) {
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent:hover .logo__image-link--other,
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent.site-header--hovered:hover .logo__image-link--other {
        opacity: 1;
    }
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent:hover .logo__image-link--home:not(.logo__image-link--single),
    body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])):not(.search-opened) .site-header--transparent.site-header--hovered:hover .logo__image-link--home:not(.logo__image-link--single) {
        opacity: 0;
    }
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-drawer-open .site-header--transparent.site-header--hovered .logo__image-link--other,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-drawer-open-cart .site-header--transparent.site-header--hovered .logo__image-link--other,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-quick-view-from-cart .site-header--transparent.site-header--hovered .logo__image-link--other,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-quick-view-visible .site-header--transparent.site-header--hovered .logo__image-link--other {
    opacity: 1;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-drawer-open .site-header--transparent.site-header--hovered .logo__image-link--home:not(.logo__image-link--single),
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-drawer-open-cart .site-header--transparent.site-header--hovered .logo__image-link--home:not(.logo__image-link--single),
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-quick-view-from-cart .site-header--transparent.site-header--hovered .logo__image-link--home:not(.logo__image-link--single),
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-quick-view-visible .site-header--transparent.site-header--hovered .logo__image-link--home:not(.logo__image-link--single) {
    opacity: 0;
}

body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-drawer-open .site-header--transparent.site-header .site-header__background,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-drawer-open-cart .site-header--transparent.site-header .site-header__background,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-quick-view-from-cart .site-header--transparent.site-header .site-header__background,
body:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])).js-quick-view-visible .site-header--transparent.site-header .site-header__background {
    height: var(--header-background-height);
}

/* Smooth transition for header elements on scroll */
.site-header,
.site-header > .wrapper,
.site-header .logo,
.site-header .logo__image-link,
.site-header .site-header__background,
.site-header .nav,
.site-header .menu__item {
    transition: height 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                padding 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                margin 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                background-color 0.3s cubic-bezier(0.4, 0, 0.2, 1),
                opacity 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.site-header > .wrapper {
    min-height: 52px;
    padding-top: 4px;
    padding-bottom: 4px;
}

.has-scrolled .shopify-section-header {
    height: var(--header-height);
}

.has-scrolled .site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--header-sticky-height);
}

.has-scrolled .site-header--has-border .wrapper::before {
    box-shadow: none;
}

.has-scrolled .site-header--fixed {
    height: var(--header-sticky-height);
}

.has-scrolled.hide-header .site-header--fixed {
    animation: hideCompactHeader 0.3s;
    animation-fill-mode: forwards;
}

.has-scrolled:has(.site-header[data-transparent=true]):has(.main-content > .supports-transparent-header:first-child):not(:has(.main-content > .supports-transparent-header:first-child [data-prevent-transparent-header])) .site-header {
    position: fixed;
    height: var(--header-sticky-height);
}

.has-scrolled .site-header:not(.site-header--menu-opened):focus-within .site-header__background,
.has-scrolled .site-header:not(.site-header--menu-opened) .site-header__background {
    --header-background-height: var(--header-sticky-height);
}

@media (pointer: fine) {
    .has-scrolled.search-opened .site-header .site-header__background,
    .has-scrolled .site-header:focus-within .site-header__background {
        height: var(--header-sticky-height);
    }
    .has-scrolled .site-header.site-header--menu-opened:focus-within .site-header__background,
    .has-scrolled .site-header.site-header--menu-opened .site-header__background {
        height: var(--header-background-height);
    }
}

@media (hover: hover) {
    .has-scrolled .site-header:not(.site-header--menu-opened):hover .site-header__background {
        --header-background-height: var(--header-sticky-height);
    }
}

.has-scrolled .logo {
    margin-top: 2px;
    margin-bottom: 2px;
}

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

.body--rounded-corners.megamenu-opened .site-header__background {
    border-radius: 0 0 var(--radius) var(--radius);
    overflow: hidden;
}


/*================ Cart message ================*/

.cart-message {
    display: flex;
    flex-flow: row nowrap;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    margin: 0;
    padding: var(--inner);
    font-size: calc(0.815rem * var(--adjust-body));
    transition: max-height 0.3s, padding 0.3s, border 0.3s, opacity 0.3s, visibility 0.3s;
}

.cart-message p {
    font-size: inherit;
}

.cart-drawer .cart-message {
    justify-content: center;
    padding-top: calc(var(--inner) / 2);
    padding-bottom: calc(var(--inner) / 2);
}

.cart .cart-message {
    padding: 0 0 var(--inner);
    margin: 0;
}

.cart-message__success,
.cart-message__default {
    padding-bottom: 6px;
}

.cart-message__success {
    display: none;
}

.is-success .cart-message__success {
    display: inline;
}

.is-success .cart-message__success~.cart-message__default {
    display: none;
}

.cart-message.is-hidden,
.cart-message__default.is-hidden {
    overflow: hidden;
    visibility: hidden;
    max-height: 0;
    padding: 0 15px;
    border: none;
    opacity: 0;
}

.cart-message--custom {
    text-align: center;
    background: var(--accent);
    color: var(--COLOR-ACCENT-OPPOSITE);
}

.cart-message--custom p {
    margin: 0 auto;
}

.cart-drawer .cart-message--drawer {
    border-bottom: var(--BORDER-WIDTH) solid var(--text);
    position: relative;
    z-index: 5;
}

.cart-drawer .cart-message__success,
.cart-drawer .cart-message__default {
    font-size: calc(0.815rem * var(--adjust-body));
    padding-bottom: 2px;
}

.cart-drawer .cart-message--custom p {
    font-size: inherit;
}

.cart .cart-message--custom {
    padding: 16px var(--inner);
    margin-bottom: var(--inner);
}

.body--rounded-corners .cart .cart-message {
    border-radius: var(--radius);
    overflow: hidden;
}

.cart-message__progress-holder {
    display: block;
    width: 100%;
}

.cart-message__progress {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    width: 100%;
    height: 7px;
    border-radius: 6px;
    background-color: var(--text-alpha-10);
    color: var(--PRIMARY-BUTTONS-COLOR-BG);
}

.cart-message__progress:nth-child(2) {
    display: none;
}

.cart-message__progress::-webkit-progress-bar {
    background-color: transparent;
    border-radius: 6px;
}

.cart-message__progress::-webkit-progress-value {
    background-color: var(--accent);
    border-radius: 6px;
}

.aos-initialized .cart-message__progress::-webkit-progress-value {
    width: 0 !important;
    -webkit-transition: width 1s ease 0s;
    transition: width 1s ease 0s;
}

.aos-initialized .cart .cart-message__progress::-webkit-progress-value,
.aos-initialized .cart-message--drawer.aos-animate .cart-message__progress::-webkit-progress-value {
    width: min(var(--progress-width, 100%), 100%) !important;
    transition-delay: 0.5s;
}

.cart-message__progress::-moz-progress-bar {
    background-color: var(--accent);
    border-radius: 6px;
}

@-moz-document url-prefix() {
    .aos-initialized .cart-message__progress:first-child:not(:last-child) {
        display: none;
    }
    .aos-initialized .cart-message__progress:nth-child(2) {
        display: block;
    }
    .aos-initialized .cart-message__progress:indeterminate::-moz-progress-bar {
        width: 0 !important;
        -moz-transition: width 1s ease-in-out 0s;
        transition: width 1s ease-in-out 0s;
    }
    .aos-initialized .cart .cart-message__progress:indeterminate::-moz-progress-bar,
    .aos-initialized .cart-message--drawer.aos-animate .cart-message__progress:indeterminate::-moz-progress-bar {
        width: min(var(--progress-width, 100%), 100%) !important;
        transition-delay: 0.5s;
    }
}

.announcement .cart-message__success,
.announcement .cart-message__default {
    padding: 0;
}

.announcement__text .cart-message {
    padding: 0;
    margin: 0;
    width: 100%;
    font-size: inherit;
}

.announcement__text .cart-message.is-hidden {
    visibility: visible;
    max-height: none;
    opacity: 1;
    padding: 0;
}

.announcement__text .cart-message .cart-message__default {
    padding-bottom: 0;
}

.announcement__text .cart-message .cart-message__default.is-hidden {
    display: none;
}


/*================ "Announcement bar" & "Marquee" ================*/

.announcement-bar-static {
    position: relative;
    z-index: 135;
    background: var(--bg);
}

.announcement-bar-static .announcement {
    min-height: var(--announcement-height);
}

.announcement-bar-static,
.shopify-section--marquee {
    overflow: hidden;
}

.section-marquee {
    background: var(--bg);
    background-clip: content-box;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .section-marquee.desktop {
        display: none;
    }
}

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

.announcement {
    --adjust-text: var(--adjust-text-size, var(--adjust-body));
    --text-size: calc(0.75rem * var(--adjust-text));
    font-size: var(--text-size);
    font-family: var(--font-family, var(--FONT-STACK-BODY));
    font-style: var(--font-style, var(--FONT-STYLE-BODY));
    font-weight: var(--font-weight, var(--FONT-WEIGHT-BODY));
    position: relative;
    width: 100%;
    min-width: 32px;
    text-align: center;
    color: var(--text);
    letter-spacing: var(--letter-spacing);
    white-space: nowrap;
    line-height: 0;
    text-transform: none;
}

.announcement * {
    line-height: 0;
}

.announcement .announcement__text * {
    line-height: var(--line-height, 1.5);
}

.announcement.caps {
    text-transform: uppercase;
}

.announcement a {
    display: inline-block;
    color: inherit;
}

.announcement p {
    font-size: inherit;
}

.announcement-bar-static .announcement {
    z-index: 100;
}

.announcement .text-highlight-wrapper--squiggle,
.announcement .text-highlight-wrapper--circle,
.announcement .text-highlight-wrapper--circle-hand-drawn {
    margin-bottom: 0;
}

.announcement--top-border {
    border-top: var(--BORDER-WIDTH) solid var(--border);
}

.announcement--bottom-border {
    border-bottom: var(--BORDER-WIDTH) solid var(--border);
}

.announcement__block {
    --spacing-inline: calc(5px + (var(--adjust-text) - 0.5) * (20px / 4.5));
}

.announcement__slider:has([data-parallax-animation]) {
    transform: translate3d(var(--offsetX, 0), 0, 0);
}

.announcement__slider[data-slider] {
    --flickity-btn-size: 18px;
    --flickity-btn-position: var(--gutter-mobile);
}

@media only screen and (min-width: 1024px) {
    .announcement__slider[data-slider] {
        --flickity-btn-position: var(--gutter);
    }
}

.announcement__slider[data-slider] .flickity-viewport,
.announcement__slider[data-slider] .announcement__slide.is-selected {
    overflow: initial;
}

.announcement__slider[data-slider] .announcement__slide {
    overflow: hidden;
}

.announcement__slider[data-slider] .flickity-prev-next-button {
    box-shadow: none;
    background: none;
    border-radius: 0;
    opacity: 1;
    visibility: visible;
    transform: scale(1) translateY(-50%);
}

.announcement__slider[data-slider] .flickity-prev-next-button.previous {
    margin-left: -5px;
}

.announcement__slider[data-slider] .flickity-prev-next-button.next {
    margin-right: -5px;
}

.announcement__slider[data-slider] .flickity-prev-next-button:disabled {
    opacity: 0;
}

.announcement__slider[data-slider][data-slider-arrows] {
    padding: 0 calc(var(--gutter-mobile) + var(--flickity-btn-size));
}

@media only screen and (min-width: 1024px) {
    .announcement__slider[data-slider][data-slider-arrows] {
        padding: 0 calc(var(--gutter) + var(--flickity-btn-size));
    }
}

.announcement__slider[data-slider][data-slider-arrows] .flickity-viewport {
    overflow: hidden;
    -webkit-mask: linear-gradient(90deg, transparent, #000 15px) left/50% 100% no-repeat, linear-gradient(270deg, transparent 0, #000 15px) right/50% 100% no-repeat;
    mask: linear-gradient(90deg, transparent, #000 15px) left/50% 100% no-repeat, linear-gradient(270deg, transparent 0, #000 15px) right/50% 100% no-repeat;
}

.announcement__slide {
    width: 100%;
    padding: var(--padding) 0;
}

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

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

.announcement__icon {
    margin-right: var(--spacing-inline);
    display: inline-block;
    vertical-align: middle;
    color: var(--text);
    background: no-repeat center center/contain;
}

.announcement__icon .icon {
    display: block;
}

.announcement__block--image {
    min-height: var(--image-height);
}

.announcement__block--image figure,
.announcement__block--image figure.lazy-image.is-loading,
.announcement__block--image .placeholder-svg-filled {
    width: var(--image-width);
    height: var(--image-height);
}

.announcement__block--image img {
    width: 100%;
}

.announcement__image {
    height: auto;
    vertical-align: top;
}

.announcement__text {
    display: inline-flex;
    width: max-content;
    white-space: nowrap;
    color: var(--text);
}

.announcement__text .text-highlight__break {
    display: inline-block;
    color: var(--text);
}

.announcement__text p {
    margin: 0;
    display: inline-block;
    vertical-align: middle;
}

.announcement__ticker {
    display: inline-flex;
    vertical-align: middle;
    align-items: center;
    align-self: center;
    position: relative;
}

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

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

.announcement__slide.announcement__block--text .announcement__text a,
.announcement__ticker.announcement__block--text a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.announcement__slide.announcement__block--text .announcement__text a::before,
.announcement__slide.announcement__block--text .announcement__text a::after,
.announcement__ticker.announcement__block--text a::before,
.announcement__ticker.announcement__block--text a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.announcement__slide.announcement__block--text .announcement__text a::before,
.announcement__ticker.announcement__block--text a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.announcement__slide.announcement__block--text .announcement__text a::after,
.announcement__ticker.announcement__block--text a::after {
    transform-origin: right;
}

.no-touch .announcement__slide.announcement__block--text .announcement__text a:hover,
.no-touch .announcement__ticker.announcement__block--text a:hover {
    background: transparent;
    border: 0;
}

.no-touch .announcement__slide.announcement__block--text .announcement__text a:hover::before,
.no-touch .announcement__slide.announcement__block--text .announcement__text a:hover::after,
.no-touch .announcement__ticker.announcement__block--text a:hover::before,
.no-touch .announcement__ticker.announcement__block--text a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .announcement__slide.announcement__block--text .announcement__text a:hover::before,
.no-touch .announcement__ticker.announcement__block--text a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.announcement__slide.announcement__block--text .announcement__text [data-has-highlight]::before,
.announcement__slide.announcement__block--text .announcement__text [data-has-highlight]::after,
.announcement__slide.announcement__block--text .announcement__text .section__link::before,
.announcement__slide.announcement__block--text .announcement__text .section__link::after,
.announcement__ticker.announcement__block--text [data-has-highlight]::before,
.announcement__ticker.announcement__block--text [data-has-highlight]::after,
.announcement__ticker.announcement__block--text .section__link::before,
.announcement__ticker.announcement__block--text .section__link::after {
    display: none;
}

.announcement__slide.announcement__block--text .announcement__text:not(.text-highlight-wrapper) .text-reveal__cropper a::before,
.announcement__slide.announcement__block--text .announcement__text:not(.text-highlight-wrapper) .text-reveal__cropper a::after,
.announcement__ticker.announcement__block--text:not(.text-highlight-wrapper) .text-reveal__cropper a::before,
.announcement__ticker.announcement__block--text:not(.text-highlight-wrapper) .text-reveal__cropper a::after {
    bottom: 0;
}

.announcement__divider {
    margin: 0 calc(var(--spacing-inline) / 2);
    width: 0;
    border-left: 1px solid currentcolor;
    height: calc(var(--line-height, 1.5) * var(--text-size));
    display: inline-block;
    vertical-align: bottom;
}

.announcement__scale {
    display: inline-flex;
    align-items: center;
    transition: opacity 0.2s linear;
}

.announcement__scale.ticker--unloaded {
    opacity: 0;
    position: absolute;
    width: max-content;
}

.ticker--animated {
    animation-iteration-count: infinite;
    animation-timing-function: linear;
    animation-name: ticker;
    animation-duration: var(--animation-time);
    animation-play-state: paused;
    display: inline-flex;
    width: max-content;
    will-change: transform, padding, width;
}

.ticker-rtl {
    animation-direction: normal;
}

.ticker-ltr {
    animation-direction: reverse;
}

.announcement__slider {
    position: relative;
    z-index: 2;
}

.announcement-bar-static .announcement__slider {
    overflow: hidden;
}

.announcement__slider .flickity-slider {
    display: flex;
    align-items: center;
}

.announcement__slider>.announcement__slide [data-stop] .ticker--animated {
    animation-play-state: paused;
}

.announcement__slider>.announcement__slide .ticker--animated,
.is-selected .ticker--animated {
    animation-play-state: running;
}

.ticker__comparitor {
    position: absolute;
    transform: translateY(-5000px);
    visibility: hidden;
}

.announcement__slider:not(.flickity-enabled) .announcement__slide:not(:first-child) {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}

.body--rounded-corners .wrapper .section-marquee,
.body--rounded-corners .wrapper--full-padded .section-marquee,
.body--rounded-corners .wrapper .announcement,
.body--rounded-corners .announcement__image {
    border-radius: var(--radius);
    overflow: hidden;
}


/*================ "Slideshow" ================*/

.slider {
    --flickity-btn-position: calc((var(--gutter) - var(--flickity-btn-size)) / 2);
    --scale: 1;
    position: relative;
    overflow: hidden;
}

.slider .flickity-prev-next-button {
    z-index: 1;
}

@media only screen and (max-width: 1023px) {
    .slider .flickity-prev-next-button {
        display: none;
    }
}

.slider .flickity-page-dots {
    bottom: 10px;
    padding: 0 var(--gutter-mobile);
    margin-bottom: 15px;
    z-index: 10;
}

@media only screen and (min-width: 1024px) {
    .slider .flickity-page-dots {
        padding: 0 var(--gutter);
    }
}

.slider .dot:first-child {
    margin-left: 0;
}

.slider .dot:last-child {
    margin-right: 0;
}

.slider .overlay {
    pointer-events: none;
}

.slider .item {
    opacity: 0 !important;
    transition: opacity 0s 0.5s;
    min-height: var(--item-min-h, var(--min-h));
}

.slider .item.is-selected {
    opacity: 1 !important;
    transition: opacity 0s;
}

.slider .slide__text__wrapper {
    color: var(--text);
    overflow-wrap: break-word;
}

@media only screen and (min-width: 1024px) {
    .slider .slide__text__wrapper {
        padding: var(--gutter);
        max-width: var(--content-width, 50%);
    }
}

.slider--first .item:not(.is-selected) {
    opacity: 0.001 !important;
}

.slider--first.slider--wipe .item.is-selected .slide__image__inner,
.slider--first.slider--slide .item.is-selected .slide__image__inner {
    opacity: 0.001;
}

.slider--first.slider--wipe.img-in .item:only-of-type .slide__image__inner,
.slider--first.slider--wipe.flickity-enabled.img-in .item.is-selected .slide__image__inner,
.slider--first.slider--slide.img-in .item:only-of-type .slide__image__inner,
.slider--first.slider--slide.flickity-enabled.img-in .item.is-selected .slide__image__inner {
    opacity: 1;
}

[data-current-style=text-dark] .slider__scroll-down {
    color: var(--text);
}

[data-current-style=text-dark] .flickity-page-dots .dot {
    border-color: var(--text);
}

[data-current-style=text-light] .slider__scroll-down {
    color: var(--white);
}

[data-current-style=text-light] .flickity-page-dots .dot {
    border-color: var(--white);
}

.slider .item {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
}

.slide__image__container {
    padding-top: var(--container-padding-top, 0);
}

.slide__image__container .video-wrapper {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden;
    border-radius: inherit;
    transform: translateZ(0);
    display: flex;
    flex-direction: column;
}

.slider .overlay,
.slide__image__container,
.slide__text__container {
    grid-row-start: 1;
    grid-column-start: 1;
    min-height: 100%;
}

@media only screen and (max-width: 767px) and (orientation: landscape) {
    .slider .overlay,
    .slide__image__container,
    .slide__text__container {
        min-height: auto;
    }
}


/*
  Prevent CLS on page load
  Images are stacked until flickity is initialized which causes CLS
  Position absolute makes them stay unchanged (if only JS is enabled)
*/

.slider:not(.flickity-enabled) .item:not(:first-of-type) {
    position: absolute;
    top: 0;
    left: 0;
    visibility: hidden;
}

.slider--zoom-out {
    --scale-factor: 1.2;
    --duration: 0.9s;
    --easing: cubic-bezier(0.25, 0.6, 0.5, 0.95);
}

.slider--zoom-out .item {
    transition: opacity 0s 0.3s;
}

.slider--zoom-out .item.is-selected {
    transition: opacity 0.3s;
}

.slider--zoom-out .slide__image__inner {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    transform: scale(var(--scale-factor));
}

.slider--zoom-out.flickity-enabled .slide__image__inner {
    transform: scale(1);
    animation: calc(var(--duration) * 3) var(--easing) zoomIn;
    animation-fill-mode: forwards;
}

.slider--zoom-out.img-in .item:only-of-type .slide__image__inner,
.slider--zoom-out.img-in.flickity-enabled .is-selected .slide__image__inner {
    transform: scale(var(--scale-factor));
    animation: var(--duration) var(--easing) zoomOut;
    animation-fill-mode: forwards;
}

.slider--zoom-out.slider--no-cached-images img {
    transition: opacity 0.15s ease;
}

.slider--zoom-out.slider--no-cached-images.flickity-enabled .is-selected .slide__image__inner {
    transform: scale(var(--scale-factor));
    animation: none;
}

.slider--zoom-out.slider--no-cached-images.slider--img-loaded.flickity-enabled .is-selected .slide__image__inner {
    transform: scale(var(--scale-factor));
    animation: var(--duration) var(--easing) zoomOut;
    animation-fill-mode: forwards;
}

.slider--fade {
    --duration: 0.6s;
    --easing: ease;
}

.slider--fade.flickity-enabled.is-fade .item,
.slider--fade.flickity-enabled.is-fade .item.is-selected {
    transition: opacity var(--duration) var(--easing), visibility var(--duration) var(--easing);
}

.slider--wipe {
    --duration: 0.5s;
    --easing: cubic-bezier(0.75, 0, 1, 0);
}

.slider--wipe .item {
    animation-duration: var(--duration);
    animation-timing-function: var(--easing);
}

.slider--wipe .item.is-selected .slide__image__inner {
    opacity: 0;
}

.slider--wipe.img-in .item:only-of-type,
.slider--wipe.flickity-enabled.img-in .item.is-selected {
    animation-name: clipPathFromRight;
}

.slider--wipe.img-in .item:only-of-type .slide__image__inner,
.slider--wipe.flickity-enabled.img-in .item.is-selected .slide__image__inner {
    opacity: 1;
}

.slider--slide {
    --duration: 0.4s;
    --easing: cubic-bezier(0.25, 0.6, 0.5, 0.95);
}

.slider--slide .item {
    transition: opacity 0s 0.4s ease, visibility 0s 0.4s !important;
}

.slider--slide .item.is-selected .slide__image__inner {
    opacity: 0;
}

.slider--slide.img-in .item:only-of-type {
    animation: sliderRightToLeftOneSlide var(--duration) var(--easing);
}

.slider--slide.img-in .item:only-of-type .slide__image__inner {
    opacity: 1;
}

.slider--slide.flickity-enabled.img-in .item.is-selected {
    transition: opacity 0.25s ease, visibility 0.25s !important;
    animation: sliderRightToLeft var(--duration) var(--easing);
}

.slider--slide.flickity-enabled.img-in .item.is-selected .slide__image__inner {
    opacity: 1;
}

.slider__scroll-down {
    position: absolute;
    display: inline-block;
    left: 50%;
    bottom: 0;
    width: 44px;
    height: 44px;
    margin-left: -22px;
    z-index: 100;
}

.slider__scroll-down .icon-arrow-right {
    display: block;
    width: 100%;
    height: 100%;
    transform: rotate(90deg);
}

.slide__image {
    transform: scale(var(--scale));
}

.slide__text__container {
    display: flex;
    z-index: 100;
}

.item--top-center .slide__text__container {
    justify-content: center;
    align-self: flex-start;
}

.item--bottom-center .slide__text__container {
    justify-content: center;
    align-items: flex-end;
}

.slide__text__wrapper {
    padding: var(--gutter) var(--gutter-mobile);
}

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

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

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

.slider--has-dots .slide__text__wrapper,
.slider--has-arrow .slide__text__wrapper {
    margin-bottom: calc(var(--gutter) / 2);
}

.slide__text__wrapper.text-background {
    margin: var(--gutter);
}

.slider--has-dots .slide__text__wrapper.text-background,
.slider--has-arrow .slide__text__wrapper.text-background {
    margin-bottom: calc(var(--gutter) * 1.5);
}

@media only screen and (max-width: 767px) {
    .slide__text__wrapper.text-background {
        margin: var(--gutter) var(--gutter-mobile);
        padding: calc(var(--gutter) / 2) var(--gutter-mobile);
    }
}

.slider--has-arrow .flickity-page-dots {
    margin-bottom: 35px;
}

.slide__text__wrapper>*:not(.slide__heading) {
    position: relative;
    z-index: 2;
}

.slide__heading a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.slide__heading a::before,
.slide__heading a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.slide__heading a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.slide__heading a::after {
    transform-origin: right;
}

.no-touch .slide__heading a:hover {
    background: transparent;
    border: 0;
}

.no-touch .slide__heading a:hover::before,
.no-touch .slide__heading a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .slide__heading a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.slide__heading [data-has-highlight]::before,
.slide__heading [data-has-highlight]::after,
.slide__heading .section__link::before,
.slide__heading .section__link::after {
    display: none;
}

.slide__heading:not(.text-highlight-wrapper) .text-reveal__cropper a::before,
.slide__heading:not(.text-highlight-wrapper) .text-reveal__cropper a::after {
    bottom: 0;
}

.slide__text>span {
    display: block;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .text-left .slide__text__container .main-buttons--video {
        align-items: flex-start;
    }
    .text-center .slide__text__container .main-buttons--video {
        align-items: center;
    }
    .text-right .slide__text__container .main-buttons--video {
        align-items: flex-end;
    }
}

@media only screen and (max-width: 479px) {
    .slide__btn {
        display: block;
    }
}

.slide__text__wrapper {
    pointer-events: none;
}

.slide__text__wrapper a {
    pointer-events: auto;
}

.slide__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
}

.slider--no-animation .slide__image {
    transform: none;
}

.text-left .slide__text__container .slide__buttons,
.text-left .slide__text__container .main-buttons__item {
    justify-content: flex-start;
}

.text-right .slide__text__container .slide__buttons,
.text-right .slide__text__container .main-buttons__item {
    justify-content: flex-end;
}

.text-center .slide__text__container .slide__buttons,
.text-center .slide__text__container .main-buttons__item {
    justify-content: center;
}

body:not(.no-outline) .slider:focus,
body:not(.no-outline) .item:focus-within,
body:not(.no-outline) .slide__link:focus {
    outline: -webkit-focus-ring-color auto 5px;
    outline-offset: 1px;
    margin: 2px;
    z-index: 1;
}


/*================ "Countdown" ================*/

.countdown {
    --text-gap: 15px;
    --scale: 1;
    position: relative;
}

@media only screen and (max-width: 767px) {
    .countdown .wrapper--full-padded,
    .countdown .wrapper {
        padding: 0;
    }
}

.shopify-section-group-group-footer .countdown {
    background-color: var(--bg);
}

.countdown--stacked .countdown__block--text {
    margin: 0 auto var(--text-gap);
}

.countdown--stacked .countdown-timer__wrapper {
    flex-wrap: wrap;
}

@media only screen and (min-width: 768px) {
    .countdown--content-normal {
        --content: calc(45% + var(--gutter) * 2);
    }
}

@media only screen and (min-width: 768px) {
    .countdown--content-narrow {
        --content: calc(33% + var(--gutter) * 2);
    }
}

.countdown__inner {
    position: relative;
    min-height: var(--min-height);
    overflow: hidden;
    background: var(--bg);
}

.countdown .overlay,
.countdown__image-container,
.countdown__text-container {
    grid-row-start: 1;
    min-height: 100%;
}

@media only screen and (max-width: 767px) and (orientation: landscape) {
    .countdown .overlay,
    .countdown__image-container,
    .countdown__text-container {
        min-height: auto;
    }
}

.countdown__text-container {
    position: relative;
    z-index: 100;
    display: flex;
    flex-flow: column wrap;
    align-items: center;
}

@media only screen and (min-width: 1024px) {
    .countdown__text-container {
        flex-direction: row;
    }
}

@media only screen and (min-width: 768px) {
    .countdown__text-container {
        justify-content: center;
    }
}

@media only screen and (max-width: 767px) {
    .countdown-timer__wrapper {
        justify-content: center;
    }
    .countdown--inline-left .countdown-timer__wrapper {
        justify-content: flex-start;
    }
}

.countdown__link~.countdown__text-container {
    pointer-events: none;
}

.countdown__link~.countdown__text-container a {
    pointer-events: auto;
}

.countdown__link {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    z-index: 100;
}

.countdown__content {
    padding: calc(var(--gutter) / 2) var(--gutter-mobile);
    max-width: var(--content, 100%);
}

@media only screen and (min-width: 1024px) {
    .countdown__content {
        padding: calc(var(--gutter) / 2) var(--gutter);
    }
}

@media only screen and (max-width: 479px) {
    .countdown__content {
        width: 100%;
    }
    .countdown--inline-left .countdown__content .countdown-timer {
        margin-left: 0;
    }
}

.countdown__content:empty {
    display: none;
}

@media only screen and (max-width: 767px) {
    .countdown--inline .countdown__content {
        padding-bottom: var(--text-gap);
    }
}

.countdown__aside {
    padding: calc(var(--gutter) / 2) var(--gutter-mobile);
}

@media only screen and (max-width: 479px) {
    .countdown__aside {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    .countdown__aside--timer-last {
        margin-top: calc(-1 * var(--text-gap));
    }
}

.countdown__image {
    will-change: transform;
    transform: scale(var(--scale));
}

.countdown__block--subheading p,
.countdown__block--heading p,
.countdown__block--text p {
    margin: 0;
}

.countdown__block--text {
    font-size: calc(1rem * var(--adjust-body));
}

.countdown__block--heading a,
.countdown__block--text a {
    text-decoration: underline;
    text-decoration-thickness: var(--BORDER-WIDTH);
}

.countdown__block--heading {
    font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
}

.countdown__block--heading a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.countdown__block--heading a::before,
.countdown__block--heading a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.countdown__block--heading a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.countdown__block--heading a::after {
    transform-origin: right;
}

.no-touch .countdown__block--heading a:hover {
    background: transparent;
    border: 0;
}

.no-touch .countdown__block--heading a:hover::before,
.no-touch .countdown__block--heading a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .countdown__block--heading a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.countdown__block--heading [data-has-highlight]::before,
.countdown__block--heading [data-has-highlight]::after,
.countdown__block--heading .section__link::before,
.countdown__block--heading .section__link::after {
    display: none;
}

.countdown__block--heading:not(.text-highlight-wrapper) .text-reveal__cropper a::before,
.countdown__block--heading:not(.text-highlight-wrapper) .text-reveal__cropper a::after {
    bottom: 0;
}

.countdown__block--button,
.countdown__block--video {
    margin-top: 0;
}

.countdown__block--button {
    margin-top: calc(var(--text-gap) * -1);
}

@media only screen and (min-width: 768px) {
    .countdown__block--button .main-buttons__item {
        margin-top: var(--text-gap);
    }
}

.countdown__block--video .main-buttons__item,
.countdown__content>div:last-child {
    margin-bottom: 0;
}

.countdown__block {
    margin-bottom: var(--text-gap);
}

.countdown__block:last-child {
    margin-bottom: 0;
}

.countdown--inline hr {
    margin-left: 0;
}

@media only screen and (max-width: 767px) {
    .countdown--inline.countdown--inline-center hr {
        margin-left: auto;
    }
}

.countdown--inline .item--center .countdown__content,
.countdown--inline .item--center .countdown-timer__message {
    text-align: left;
}

.countdown--inline .item--center .main-buttons,
.countdown--inline .item--center .main-buttons__item {
    justify-content: flex-start;
}

.countdown--inline .countdown__text-container {
    align-items: flex-start;
}

@media only screen and (min-width: 1024px) {
    .countdown--inline .countdown__text-container {
        align-items: center;
    }
}

@media only screen and (max-width: 767px) {
    .countdown--inline .countdown__text-container {
        align-items: center;
    }
}

@media only screen and (max-width: 1023px) {
    .countdown--inline .countdown__content:not(:empty)+.countdown__aside {
        padding-top: 0;
    }
}

@media only screen and (min-width: 1024px) {
    .countdown--inline .countdown__content:not(:empty)+.countdown__aside {
        padding-left: 0;
        padding-right: var(--gutter);
    }
}

@media only screen and (max-width: 767px) {
    .countdown--inline .countdown-timer {
        display: flex;
        flex-flow: row wrap;
    }
}

@media only screen and (max-width: 767px) {
    .countdown--inline .main-buttons__item {
        justify-content: flex-start;
    }
}

@media only screen and (max-width: 767px) {
    .countdown--inline-center .item--center .countdown__content,
    .countdown--inline-center .item--center .countdown-timer__message {
        text-align: center;
    }
}

@media only screen and (max-width: 767px) {
    .countdown--inline-center .item--center .main-buttons__item,
    .countdown--inline-center .item--center .main-buttons {
        justify-content: center;
    }
}

@media only screen and (min-width: 768px) {
    .body--rounded-corners .wrapper--full-padded .countdown__inner,
    .body--rounded-corners .wrapper .countdown__inner {
        border-radius: var(--radius);
        overflow: hidden;
    }
}

@media only screen and (max-width: 767px) {
    .countdown--inline-left .countdown__text-container {
        align-items: flex-start;
    }
}

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


/*================ "Footer" & "Footer minimal" ================*/

.section-footer--parallax {
    position: sticky;
    left: 0;
    bottom: 0;
    width: 100%;
    height: var(--footer-parallax-height);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    z-index: 0;
    opacity: 0;
    visibility: hidden;
}

@media only screen and (max-width: 767px) {
    .section-footer--parallax {
        position: relative;
        height: auto;
        opacity: 1;
        visibility: visible;
    }
}

.section-footer--parallax.section-footer--visible {
    opacity: 1;
    visibility: visible;
}

.site-footer {
    position: relative;
    z-index: 12;
    background: var(--bg);
    color: var(--text);
}

@media only screen and (min-width: 768px) {
    .site-footer.parallax-wavy {
        --padding-top: max(var(--PT), 75px);
    }
}

.site-footer.wavy {
    margin-top: 18px;
    padding-bottom: var(--padding-bottom);
}

@media only screen and (max-width: 767px) {
    .site-footer.wavy {
        margin-top: 8px;
        --padding-bottom: calc(var(--PB) * 0.6);
    }
}

.site-footer.wavy .wave-svg {
    --footer-bg: var(--bg);
    top: calc(var(--wave-height) * -1 + 1px);
    bottom: auto;
    display: block;
    filter: none;
}

.site-footer.wavy .wave-svg__reversed {
    display: none;
}

.parallax-rounded-corners~.section-footer .site-footer {
    --padding-top: calc(var(--PT) * 0.6 + var(--radius-large));
}

@media only screen and (min-width: 768px) {
    .parallax-rounded-corners~.section-footer .site-footer {
        --padding-top: calc(var(--PT) + var(--radius-large));
    }
}

.section-footer--parallax .site-footer {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: var(--footer-parallax-height);
    transform: matrix(1, 0, 0, 1, 0, var(--transformY, 0));
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform-style: preserve-3d;
}

@media only screen and (max-width: 767px) {
    .section-footer--parallax .site-footer {
        position: relative;
        transform: none;
        height: auto;
    }
}

@media only screen and (min-width: 768px) {
    .parallax-shadow~.section-footer--parallax .site-footer {
        --padding-top: max(var(--PT), 35px);
    }
}

@media only screen and (min-width: 768px) {
    .parallax-rounded-corners~.section-footer--parallax .site-footer {
        --padding-top: max(calc(var(--PT) + var(--radius-large)), calc(35px + var(--radius-large)));
    }
}

.wavy~.section-footer--parallax .site-footer::before {
    position: absolute;
    bottom: 100%;
    left: 0;
    width: 100%;
    height: calc(100vh - var(--footer-parallax-height));
    background: var(--bg);
    content: "";
}

@media only screen and (max-width: 767px) {
    .wavy~.section-footer--parallax .site-footer::before {
        display: none;
    }
}

.footer-content {
    overflow: hidden;
}

.footer-blocks {
    --gutter: 40px;
    --offset: calc(var(--gutter) * -1);
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--gutter);
    padding-bottom: var(--gutter);
}

@media only screen and (min-width: 1024px) {
    .footer-blocks {
        display: flex;
        flex-flow: row wrap;
        margin: 0 calc(var(--offset) / 2);
        gap: 0;
        padding-bottom: 0;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .footer-blocks {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .footer-blocks .footer-block--logo-full {
        grid-column: 1/-1;
    }
}

.footer-block {
    display: flex;
    flex-flow: column wrap;
    gap: var(--gutter-mobile);
}

@media only screen and (min-width: 1024px) {
    .footer-block {
        padding: 0 calc(var(--gutter) / 2) var(--gutter);
        flex: 0 0 var(--desktop-width);
    }
}

.text-center .footer-tags-list {
    justify-content: center;
}

.text-center.footer-block--logo {
    align-items: center;
}

.text-center.footer-block--newsletter .input-group--inline,
.text-center .footer-title--links {
    margin: 0 auto;
}

.footer-block .rte,
.footer-title,
.footer-title p,
.footer-title__button {
    margin: 0;
}

.footer-block .rte p:first-child {
    margin-top: 0;
}

.footer-block .rte p:last-child {
    margin-bottom: 0;
}

.footer-block__logo__image {
    display: block;
    max-width: 100%;
}

.footer-block__shop-name {
    color: var(--text);
    font-size: calc(1.125rem * var(--adjust-heading));
    margin-bottom: 0;
}

.footer-block--newsletter .footer-title {
    text-transform: var(--heading-caps);
}

.footer-block--newsletter.text-left .input-group {
    align-items: flex-start;
}

.footer-block--newsletter.text-center .input-group {
    align-items: center;
}

.footer-block--newsletter .input-group:has(.btn, .shopify-payment-button__button--unbranded) {
    flex-direction: column;
}

.footer-block--newsletter .input-group:has(.btn, .shopify-payment-button__button--unbranded) .input-group__item,
.footer-block--newsletter .input-group:has(.btn, .shopify-payment-button__button--unbranded) .input-group__fields {
    flex-basis: 100%;
    max-width: 400px;
    width: 100%;
}

.footer-block--newsletter .btn,
.footer-block--newsletter .shopify-payment-button__button--unbranded {
    display: flex;
    align-items: center;
    justify-content: center;
}

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

.footer-title__button {
    text-align: left;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

@media only screen and (min-width: 768px) {
    .footer-title__button {
        display: block;
        cursor: text;
    }
    .footer-title__button .icon {
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    .footer-title__button {
        position: relative;
        display: block;
        width: 100%;
        padding: 5px 32px 5px 0;
        margin-bottom: calc(var(--gutter-mobile) * -1);
        transition: margin 0.3s ease;
    }
    .footer-title__button.is-expanded {
        margin-bottom: 0;
    }
    .footer-title__button .icon {
        top: 0;
        right: 0;
        width: 14px;
        height: 100%;
    }
}

.footer-link:hover,
.footer-copyright a:hover {
    color: var(--text-alpha-85);
}

.footer-link {
    transition: color 0.25s;
}

.footer-links {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: start;
    list-style: none;
    margin: 0;
    font-size: calc(1rem * var(--adjust-body));
}

.footer-links a {
    color: var(--text);
}

@media only screen and (min-width: 768px) {
    .footer-links {
        transform: none;
    }
}

.footer-links li {
    margin-bottom: 0.5em;
}

.footer-links li:last-child {
    margin-bottom: 0;
}

@media only screen and (min-width: 768px) {
    .footer-links__wrapper {
        height: auto;
        opacity: 1;
        visibility: initial;
    }
}

.footer-articles-list {
    margin: 0;
    list-style: none;
    font-size: calc(1rem * var(--adjust-body));
    line-height: 1.29;
}

.footer-articles-list li {
    margin: 0 0 10px;
}

.footer-tags-list {
    list-style: none;
    margin: 0;
    display: flex;
    flex-wrap: wrap;
    word-break: break-word;
}

.footer-tags-list li {
    margin: 0 8px 8px 0;
}

.footer-link--tags {
    color: var(--text);
    border: var(--BORDER-WIDTH) solid var(--border);
    background: var(--bg);
    border-radius: var(--RADIUS-SMALL);
    font-size: calc(0.75rem * var(--adjust-body));
    text-transform: uppercase;
    letter-spacing: 0.02em;
    display: inline-block;
    padding: 5px 10px;
    transition: color 0.2s ease, border 0.2s ease;
}

.footer-link--tags:hover {
    border-color: var(--border-alpha-60);
    color: var(--text-alpha-50);
}

@media only screen and (max-width: 1023px) {
    .footer-block--divider {
        display: none;
    }
}

@media only screen and (max-width: 1023px) {
    .footer-block--divider-full {
        display: flex;
        grid-column: 1/-1;
    }
}

@media only screen and (max-width: 767px) {
    .footer-block--divider-full {
        display: none;
    }
}

.footer-bottom {
    display: flex;
    flex-direction: column;
    color: inherit;
    position: relative;
    z-index: 110;
}

.footer-bottom::after {
    content: none;
}

@media only screen and (min-width: 768px) {
    .footer-bottom {
        display: grid;
        grid-template-columns: repeat(var(--grid-columns), 1fr);
        column-gap: 10px;
        align-items: center;
        text-align: center;
    }
    .footer-bottom> :only-child {
        text-align: center;
    }
    .footer-bottom> :only-child .localization-form .select-popout__list {
        left: 50%;
        transform: translateX(-50%);
    }
    .footer-bottom> :first-child:not(:only-child) .footer-copyright {
        text-align: left;
    }
    .footer-bottom> :first-child:not(:only-child) .localization-form {
        justify-content: flex-start;
    }
    .footer-bottom> :last-child:not(:only-child) .footer-copyright {
        text-align: right;
    }
    .footer-bottom> :last-child:not(:only-child) .localization-form {
        justify-content: flex-end;
    }
    .footer-bottom .social-sharing-wrapper,
    .footer-bottom .payment-icon-list {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(38px, 1fr));
        gap: 10px;
        justify-content: flex-start;
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .footer-bottom> :first-child:not(:only-child) .localization-form .select-popout__list {
        margin-left: calc(-1 * var(--form-left));
    }
    .footer-bottom> :nth-child(2):not(:last-child) .localization-form .select-popout__list {
        left: 50%;
        transform: translateX(-50%);
    }
    .footer-bottom> :last-child:not(:only-child) .localization-form .select-popout__list {
        left: auto;
        right: 0;
        margin-right: calc(-1 * var(--form-left));
    }
}

@media only screen and (max-width: 767px) {
    .footer-bottom.text-center {
        align-items: center;
    }
    .footer-bottom.text-center .localization-form,
    .footer-bottom.text-center .payment-icon-list,
    .footer-bottom.text-center .social-sharing-wrapper {
        justify-content: center;
    }
    .footer-bottom.text-center .localization-form .select-popout__list {
        left: 50%;
        transform: translateX(-50%);
    }
    .footer-bottom.text-left .localization-form .select-popout__list {
        margin-left: calc(-1 * var(--form-left));
    }
}

.social-sharing-wrapper {
    line-height: 0;
}

@media only screen and (max-width: 767px) {
    .social-sharing-wrapper {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: flex-start;
        margin-bottom: var(--gutter-mobile);
    }
}

.social-sharing-icon {
    display: inline-block;
    position: relative;
    opacity: 1;
    transition: opacity 0.25s;
    color: inherit;
    border-radius: 50%;
    margin-right: 16px;
}

@media only screen and (max-width: 767px) {
    .social-sharing-icon {
        margin: 0 16px 10px 0;
    }
    .social-sharing-icon:last-child {
        margin-right: 0;
    }
    .text-center .social-sharing-icon {
        margin: 0 8px 10px;
    }
}

.social-sharing-icon::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    background: var(--bg);
    border: 1px solid var(--text);
    opacity: 0;
    z-index: -1;
    will-change: transform, opacity;
}

.social-sharing-icon .icon {
    width: 30px;
    height: 30px;
    stroke: none;
    fill: currentcolor;
}

.social-sharing-icon .icon-rss-feed {
    padding: 3px 0;
}

@media only screen and (min-width: 768px) {
    .follow-on-shop {
        grid-column: 1/-1;
        text-align: left;
    }
}

@media only screen and (max-width: 767px) {
    .follow-on-shop {
        flex-basis: 100%;
    }
}

.footer-copyright {
    font-size: calc(0.75rem * var(--adjust-body));
}

.footer-copyright a {
    color: inherit;
}

.footer-copyright__menu {
    margin-top: 10px;
}

.footer-copyright__link {
    margin-right: 10px;
}

.footer-copyright__link:last-child {
    margin-right: 0;
}

.payment-icon-list {
    display: flex;
    flex-wrap: wrap;
    list-style: none;
    margin: 0;
}

@media only screen and (min-width: 768px) {
    .payment-icon-list {
        direction: rtl;
    }
}

@media only screen and (max-width: 767px) {
    .payment-icon-list {
        margin-top: var(--gutter-mobile);
    }
}

.payment-icon-list>li {
    font-size: calc(1.375rem * var(--adjust-body));
    display: block;
    margin-left: 10px;
    margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
    .payment-icon-list>li {
        margin: 0 10px 10px 0;
    }
    .payment-icon-list>li:last-child {
        margin-right: 0;
    }
    .text-center .payment-icon-list>li {
        margin: 0 5px 10px;
    }
}

.payment-icon-list--greyscale {
    filter: grayscale(1);
}

.payment-icon {
    display: block;
}

.footer-block--logo-full {
    width: 100%;
}

.footer-block--logo-full.text-center {
    align-items: center;
}

.footer-block--logo-full.text-right {
    align-items: flex-end;
}

.body--rounded-corners-large .section-footer:not(.section-footer--parallax) {
    position: relative;
    z-index: 0;
}

.aos-initialized [data-aos] {
    transition-duration: 500ms;
    transition-delay: 0s;
}

.aos-initialized [data-aos][data-aos-duration="0"] {
    transition-duration: 0ms;
}

.aos-initialized [data-aos][data-aos-delay="0"] {
    transition-delay: 0ms;
}

.aos-initialized [data-aos][data-aos-duration="50"] {
    transition-duration: 50ms;
}

.aos-initialized [data-aos][data-aos-delay="50"] {
    transition-delay: 50ms;
}

.aos-initialized [data-aos][data-aos-duration="100"] {
    transition-duration: 100ms;
}

.aos-initialized [data-aos][data-aos-delay="100"] {
    transition-delay: 100ms;
}

.aos-initialized [data-aos][data-aos-duration="150"] {
    transition-duration: 150ms;
}

.aos-initialized [data-aos][data-aos-delay="150"] {
    transition-delay: 150ms;
}

.aos-initialized [data-aos][data-aos-duration="200"] {
    transition-duration: 200ms;
}

.aos-initialized [data-aos][data-aos-delay="200"] {
    transition-delay: 200ms;
}

.aos-initialized [data-aos][data-aos-duration="250"] {
    transition-duration: 250ms;
}

.aos-initialized [data-aos][data-aos-delay="250"] {
    transition-delay: 250ms;
}

.aos-initialized [data-aos][data-aos-duration="300"] {
    transition-duration: 300ms;
}

.aos-initialized [data-aos][data-aos-delay="300"] {
    transition-delay: 300ms;
}

.aos-initialized [data-aos][data-aos-duration="350"] {
    transition-duration: 350ms;
}

.aos-initialized [data-aos][data-aos-delay="350"] {
    transition-delay: 350ms;
}

.aos-initialized [data-aos][data-aos-duration="400"] {
    transition-duration: 400ms;
}

.aos-initialized [data-aos][data-aos-delay="400"] {
    transition-delay: 400ms;
}

.aos-initialized [data-aos][data-aos-duration="450"] {
    transition-duration: 450ms;
}

.aos-initialized [data-aos][data-aos-delay="450"] {
    transition-delay: 450ms;
}

.aos-initialized [data-aos][data-aos-duration="500"] {
    transition-duration: 500ms;
}

.aos-initialized [data-aos][data-aos-delay="500"] {
    transition-delay: 500ms;
}

.aos-initialized [data-aos][data-aos-duration="550"] {
    transition-duration: 550ms;
}

.aos-initialized [data-aos][data-aos-delay="550"] {
    transition-delay: 550ms;
}

.aos-initialized [data-aos][data-aos-duration="600"] {
    transition-duration: 600ms;
}

.aos-initialized [data-aos][data-aos-delay="600"] {
    transition-delay: 600ms;
}

.aos-initialized [data-aos][data-aos-duration="650"] {
    transition-duration: 650ms;
}

.aos-initialized [data-aos][data-aos-delay="650"] {
    transition-delay: 650ms;
}

.aos-initialized [data-aos][data-aos-duration="700"] {
    transition-duration: 700ms;
}

.aos-initialized [data-aos][data-aos-delay="700"] {
    transition-delay: 700ms;
}

.aos-initialized [data-aos][data-aos-duration="750"] {
    transition-duration: 750ms;
}

.aos-initialized [data-aos][data-aos-delay="750"] {
    transition-delay: 750ms;
}

.aos-initialized [data-aos][data-aos-duration="800"] {
    transition-duration: 800ms;
}

.aos-initialized [data-aos][data-aos-delay="800"] {
    transition-delay: 800ms;
}

.aos-initialized [data-aos][data-aos-duration="850"] {
    transition-duration: 850ms;
}

.aos-initialized [data-aos][data-aos-delay="850"] {
    transition-delay: 850ms;
}

.aos-initialized [data-aos][data-aos-duration="900"] {
    transition-duration: 900ms;
}

.aos-initialized [data-aos][data-aos-delay="900"] {
    transition-delay: 900ms;
}

.aos-initialized [data-aos][data-aos-duration="950"] {
    transition-duration: 950ms;
}

.aos-initialized [data-aos][data-aos-delay="950"] {
    transition-delay: 950ms;
}

.aos-initialized [data-aos][data-aos-duration="1000"] {
    transition-duration: 1000ms;
}

.aos-initialized [data-aos][data-aos-delay="1000"] {
    transition-delay: 1000ms;
}

.aos-initialized [data-aos][data-aos-duration="1050"] {
    transition-duration: 1050ms;
}

.aos-initialized [data-aos][data-aos-delay="1050"] {
    transition-delay: 1050ms;
}

.aos-initialized [data-aos][data-aos-duration="1100"] {
    transition-duration: 1100ms;
}

.aos-initialized [data-aos][data-aos-delay="1100"] {
    transition-delay: 1100ms;
}

.aos-initialized [data-aos][data-aos-duration="1150"] {
    transition-duration: 1150ms;
}

.aos-initialized [data-aos][data-aos-delay="1150"] {
    transition-delay: 1150ms;
}

.aos-initialized [data-aos][data-aos-duration="1200"] {
    transition-duration: 1200ms;
}

.aos-initialized [data-aos][data-aos-delay="1200"] {
    transition-delay: 1200ms;
}

.aos-initialized [data-aos][data-aos-duration="1250"] {
    transition-duration: 1250ms;
}

.aos-initialized [data-aos][data-aos-delay="1250"] {
    transition-delay: 1250ms;
}

.aos-initialized [data-aos][data-aos-duration="1300"] {
    transition-duration: 1300ms;
}

.aos-initialized [data-aos][data-aos-delay="1300"] {
    transition-delay: 1300ms;
}

.aos-initialized [data-aos][data-aos-duration="1350"] {
    transition-duration: 1350ms;
}

.aos-initialized [data-aos][data-aos-delay="1350"] {
    transition-delay: 1350ms;
}

.aos-initialized [data-aos][data-aos-duration="1400"] {
    transition-duration: 1400ms;
}

.aos-initialized [data-aos][data-aos-delay="1400"] {
    transition-delay: 1400ms;
}

.aos-initialized [data-aos][data-aos-duration="1450"] {
    transition-duration: 1450ms;
}

.aos-initialized [data-aos][data-aos-delay="1450"] {
    transition-delay: 1450ms;
}

.aos-initialized [data-aos][data-aos-duration="1500"] {
    transition-duration: 1500ms;
}

.aos-initialized [data-aos][data-aos-delay="1500"] {
    transition-delay: 1500ms;
}

.aos-initialized [data-aos][data-aos-duration="1550"] {
    transition-duration: 1550ms;
}

.aos-initialized [data-aos][data-aos-delay="1550"] {
    transition-delay: 1550ms;
}

.aos-initialized [data-aos][data-aos-duration="1600"] {
    transition-duration: 1600ms;
}

.aos-initialized [data-aos][data-aos-delay="1600"] {
    transition-delay: 1600ms;
}

.aos-initialized [data-aos][data-aos-duration="1650"] {
    transition-duration: 1650ms;
}

.aos-initialized [data-aos][data-aos-delay="1650"] {
    transition-delay: 1650ms;
}

.aos-initialized [data-aos][data-aos-duration="1700"] {
    transition-duration: 1700ms;
}

.aos-initialized [data-aos][data-aos-delay="1700"] {
    transition-delay: 1700ms;
}

.aos-initialized [data-aos][data-aos-duration="1750"] {
    transition-duration: 1750ms;
}

.aos-initialized [data-aos][data-aos-delay="1750"] {
    transition-delay: 1750ms;
}

.aos-initialized [data-aos][data-aos-duration="1800"] {
    transition-duration: 1800ms;
}

.aos-initialized [data-aos][data-aos-delay="1800"] {
    transition-delay: 1800ms;
}

.aos-initialized [data-aos][data-aos-duration="1850"] {
    transition-duration: 1850ms;
}

.aos-initialized [data-aos][data-aos-delay="1850"] {
    transition-delay: 1850ms;
}

.aos-initialized [data-aos][data-aos-duration="1900"] {
    transition-duration: 1900ms;
}

.aos-initialized [data-aos][data-aos-delay="1900"] {
    transition-delay: 1900ms;
}

.aos-initialized [data-aos][data-aos-duration="1950"] {
    transition-duration: 1950ms;
}

.aos-initialized [data-aos][data-aos-delay="1950"] {
    transition-delay: 1950ms;
}

.aos-initialized [data-aos][data-aos-duration="2000"] {
    transition-duration: 2000ms;
}

.aos-initialized [data-aos][data-aos-delay="2000"] {
    transition-delay: 2000ms;
}

.aos-initialized [data-aos][data-aos-duration="2050"] {
    transition-duration: 2050ms;
}

.aos-initialized [data-aos][data-aos-delay="2050"] {
    transition-delay: 2050ms;
}

.aos-initialized [data-aos][data-aos-duration="2100"] {
    transition-duration: 2100ms;
}

.aos-initialized [data-aos][data-aos-delay="2100"] {
    transition-delay: 2100ms;
}

.aos-initialized [data-aos][data-aos-duration="2150"] {
    transition-duration: 2150ms;
}

.aos-initialized [data-aos][data-aos-delay="2150"] {
    transition-delay: 2150ms;
}

.aos-initialized [data-aos][data-aos-duration="2200"] {
    transition-duration: 2200ms;
}

.aos-initialized [data-aos][data-aos-delay="2200"] {
    transition-delay: 2200ms;
}

.aos-initialized [data-aos][data-aos-duration="2250"] {
    transition-duration: 2250ms;
}

.aos-initialized [data-aos][data-aos-delay="2250"] {
    transition-delay: 2250ms;
}

.aos-initialized [data-aos][data-aos-duration="2300"] {
    transition-duration: 2300ms;
}

.aos-initialized [data-aos][data-aos-delay="2300"] {
    transition-delay: 2300ms;
}

.aos-initialized [data-aos][data-aos-duration="2350"] {
    transition-duration: 2350ms;
}

.aos-initialized [data-aos][data-aos-delay="2350"] {
    transition-delay: 2350ms;
}

.aos-initialized [data-aos][data-aos-duration="2400"] {
    transition-duration: 2400ms;
}

.aos-initialized [data-aos][data-aos-delay="2400"] {
    transition-delay: 2400ms;
}

.aos-initialized [data-aos][data-aos-duration="2450"] {
    transition-duration: 2450ms;
}

.aos-initialized [data-aos][data-aos-delay="2450"] {
    transition-delay: 2450ms;
}

.aos-initialized [data-aos][data-aos-duration="2500"] {
    transition-duration: 2500ms;
}

.aos-initialized [data-aos][data-aos-delay="2500"] {
    transition-delay: 2500ms;
}

.aos-initialized [data-aos][data-aos-easing=linear] {
    transition-timing-function: cubic-bezier(0.25, 0.25, 0.75, 0.75);
}

.aos-initialized [data-aos][data-aos-easing=ease] {
    transition-timing-function: ease;
}

.aos-initialized [data-aos][data-aos-easing=ease-in] {
    transition-timing-function: ease-in;
}

.aos-initialized [data-aos][data-aos-easing=ease-out] {
    transition-timing-function: ease-out;
}

.aos-initialized [data-aos][data-aos-easing=ease-in-out] {
    transition-timing-function: ease-in-out;
}

.aos-initialized [data-aos][data-aos-easing=ease-in-back] {
    transition-timing-function: cubic-bezier(0.6, -0.28, 0.735, 0.045);
}

.aos-initialized [data-aos][data-aos-easing=ease-out-back] {
    transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-out-back] {
    transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-sine] {
    transition-timing-function: cubic-bezier(0.47, 0, 0.745, 0.715);
}

.aos-initialized [data-aos][data-aos-easing=ease-out-sine] {
    transition-timing-function: cubic-bezier(0.39, 0.575, 0.565, 1);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-out-sine] {
    transition-timing-function: cubic-bezier(0.445, 0.05, 0.55, 0.95);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-quad] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.aos-initialized [data-aos][data-aos-easing=ease-out-quad] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-out-quad] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-cubic] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.aos-initialized [data-aos][data-aos-easing=ease-out-cubic] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-out-cubic] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-quart] {
    transition-timing-function: cubic-bezier(0.55, 0.085, 0.68, 0.53);
}

.aos-initialized [data-aos][data-aos-easing=ease-out-quart] {
    transition-timing-function: cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.aos-initialized [data-aos][data-aos-easing=ease-in-out-quart] {
    transition-timing-function: cubic-bezier(0.455, 0.03, 0.515, 0.955);
}

.aos-initialized [data-aos^=fade] {
    opacity: 0.001;
    transition-property: opacity, transform;
}

.aos-initialized [data-aos^=fade].aos-animate {
    opacity: 1;
    transform: translateZ(0);
}

.aos-initialized [data-aos=fade-up] {
    transform: translateY(var(--move-offset));
}

.aos-initialized [data-aos=fade-down] {
    transform: translateY(calc(var(--move-offset) * -1));
}

.aos-initialized [data-aos=fade-right] {
    transform: translate(calc(var(--move-offset) * -1));
}

.aos-initialized [data-aos=fade-left] {
    transform: translate(var(--move-offset));
}

.aos-initialized [data-aos=fade-up-right] {
    transform: translate(calc(var(--move-offset) * -1), var(--move-offset));
}

.aos-initialized [data-aos=fade-up-left] {
    transform: translate(var(--move-offset), var(--move-offset));
}

.aos-initialized [data-aos=fade-down-right] {
    transform: translate(calc(var(--move-offset) * -1), calc(var(--move-offset) * -1));
}

.aos-initialized [data-aos=fade-down-left] {
    transform: translate(var(--move-offset), calc(var(--move-offset) * -1));
}

.aos-initialized [data-aos^=zoom] {
    opacity: 0.001;
    transition-property: opacity, transform;
}

.aos-initialized [data-aos^=zoom].aos-animate {
    opacity: 1;
    transform: translateZ(0) scale(1);
}

.aos-initialized [data-aos=zoom-in] {
    transform: scale(0.6);
}

.aos-initialized [data-aos=zoom-in-up] {
    transform: translateY(var(--move-offset)) scale(0.6);
}

.aos-initialized [data-aos=zoom-in-down] {
    transform: translateY(calc(var(--move-offset) * -1)) scale(0.6);
}

.aos-initialized [data-aos=zoom-in-right] {
    transform: translate(calc(var(--move-offset) * -1)) scale(0.6);
}

.aos-initialized [data-aos=zoom-in-left] {
    transform: translate(var(--move-offset)) scale(0.6);
}

.aos-initialized [data-aos=zoom-out] {
    transform: scale(1.2);
}

.aos-initialized [data-aos=zoom-out-up] {
    transform: translateY(var(--move-offset)) scale(1.2);
}

.aos-initialized [data-aos=zoom-out-down] {
    transform: translateY(calc(var(--move-offset) * -1)) scale(1.2);
}

.aos-initialized [data-aos=zoom-out-right] {
    transform: translate(calc(var(--move-offset) * -1)) scale(1.2);
}

.aos-initialized [data-aos=zoom-out-left] {
    transform: translate(var(--move-offset)) scale(1.2);
}

.aos-initialized [data-aos^=slide] {
    transition-property: transform;
}

.aos-initialized [data-aos^=slide].aos-animate {
    transform: translateZ(0);
}

.aos-initialized [data-aos=slide-up] {
    transform: translateY(100%);
}

.aos-initialized [data-aos=slide-down] {
    transform: translateY(-100%);
}

.aos-initialized [data-aos=slide-right] {
    transform: translateX(-100%);
}

.aos-initialized [data-aos=slide-left] {
    transform: translateX(100%);
}

.aos-initialized [data-aos^=flip] {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition-property: transform;
}

.aos-initialized [data-aos=flip-left] {
    transform: perspective(2500px) rotateY(-100deg);
}

.aos-initialized [data-aos=flip-left].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

.aos-initialized [data-aos=flip-right] {
    transform: perspective(2500px) rotateY(100deg);
}

.aos-initialized [data-aos=flip-right].aos-animate {
    transform: perspective(2500px) rotateY(0);
}

.aos-initialized [data-aos=flip-up] {
    transform: perspective(2500px) rotateX(-100deg);
}

.aos-initialized [data-aos=flip-up].aos-animate {
    transform: perspective(2500px) rotateX(0);
}

.aos-initialized [data-aos=flip-down] {
    transform: perspective(2500px) rotateX(100deg);
}

.aos-initialized [data-aos=flip-down].aos-animate {
    transform: perspective(2500px) rotateX(0);
}

.aos-initialized [data-aos=come-up] {
    transform: translateY(100%);
    opacity: 0.001;
    transition-property: opacity, transform;
}

.aos-initialized [data-aos=come-up].aos-animate {
    transform: translateZ(0);
    opacity: 1;
}

.aos-initialized [data-aos=image-in] {
    transition: none;
    transition-delay: 0s;
}

.aos-initialized [data-aos=image-in][data-aos-delay] {
    transition-delay: 0s;
}

.aos-initialized [data-aos=image-in][data-aos-duration="0"] .image-in {
    --duration: 0ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="0"] .image-in {
    animation-delay: 0ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="50"] .image-in {
    --duration: 50ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="50"] .image-in {
    animation-delay: 50ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="100"] .image-in {
    --duration: 100ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="100"] .image-in {
    animation-delay: 100ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="150"] .image-in {
    --duration: 150ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="150"] .image-in {
    animation-delay: 150ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="200"] .image-in {
    --duration: 200ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="200"] .image-in {
    animation-delay: 200ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="250"] .image-in {
    --duration: 250ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="250"] .image-in {
    animation-delay: 250ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="300"] .image-in {
    --duration: 300ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="300"] .image-in {
    animation-delay: 300ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="350"] .image-in {
    --duration: 350ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="350"] .image-in {
    animation-delay: 350ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="400"] .image-in {
    --duration: 400ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="400"] .image-in {
    animation-delay: 400ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="450"] .image-in {
    --duration: 450ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="450"] .image-in {
    animation-delay: 450ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="500"] .image-in {
    --duration: 500ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="500"] .image-in {
    animation-delay: 500ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="550"] .image-in {
    --duration: 550ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="550"] .image-in {
    animation-delay: 550ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="600"] .image-in {
    --duration: 600ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="600"] .image-in {
    animation-delay: 600ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="650"] .image-in {
    --duration: 650ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="650"] .image-in {
    animation-delay: 650ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="700"] .image-in {
    --duration: 700ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="700"] .image-in {
    animation-delay: 700ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="750"] .image-in {
    --duration: 750ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="750"] .image-in {
    animation-delay: 750ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="800"] .image-in {
    --duration: 800ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="800"] .image-in {
    animation-delay: 800ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="850"] .image-in {
    --duration: 850ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="850"] .image-in {
    animation-delay: 850ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="900"] .image-in {
    --duration: 900ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="900"] .image-in {
    animation-delay: 900ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="950"] .image-in {
    --duration: 950ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="950"] .image-in {
    animation-delay: 950ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1000"] .image-in {
    --duration: 1000ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1000"] .image-in {
    animation-delay: 1000ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1050"] .image-in {
    --duration: 1050ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1050"] .image-in {
    animation-delay: 1050ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1100"] .image-in {
    --duration: 1100ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1100"] .image-in {
    animation-delay: 1100ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1150"] .image-in {
    --duration: 1150ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1150"] .image-in {
    animation-delay: 1150ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1200"] .image-in {
    --duration: 1200ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1200"] .image-in {
    animation-delay: 1200ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1250"] .image-in {
    --duration: 1250ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1250"] .image-in {
    animation-delay: 1250ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1300"] .image-in {
    --duration: 1300ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1300"] .image-in {
    animation-delay: 1300ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1350"] .image-in {
    --duration: 1350ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1350"] .image-in {
    animation-delay: 1350ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1400"] .image-in {
    --duration: 1400ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1400"] .image-in {
    animation-delay: 1400ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1450"] .image-in {
    --duration: 1450ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1450"] .image-in {
    animation-delay: 1450ms;
}

.aos-initialized [data-aos=image-in][data-aos-duration="1500"] .image-in {
    --duration: 1500ms;
}

.aos-initialized [data-aos=image-in][data-aos-delay="1500"] .image-in {
    animation-delay: 1500ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="1"] {
    animation-delay: 300ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="2"] {
    animation-delay: 442.5ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="3"] {
    animation-delay: 570ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="4"] {
    animation-delay: 682.5ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="5"] {
    animation-delay: 780ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="6"] {
    animation-delay: 862.5ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="7"] {
    animation-delay: 930ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="8"] {
    animation-delay: 982.5ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="9"] {
    animation-delay: 1020ms;
}

.aos-initialized [data-aos=image-in]:has([data-aos=hero]) [data-aos-order="10"] {
    animation-delay: 1042.5ms;
}

.aos-initialized [data-aos=image-in] .image-in {
    --duration: 0.8s;
    --easing: ease-in;
    animation-duration: var(--duration);
    animation-timing-function: var(--easing);
    animation-fill-mode: forwards;
}

.aos-initialized [data-aos=image-in] .image-in--reveal {
    --duration: 0.3s;
    --easing: ease-in-out;
    --move-offset: 100%;
    overflow: hidden;
}

.aos-initialized [data-aos=image-in] .image-in--reveal a {
    overflow: hidden;
}

.aos-initialized [data-aos=image-in] .image-in--slide {
    --duration: 0.4s;
    --easing: cubic-bezier(0.25, 0.6, 0.5, 0.95);
}

.aos-initialized [data-aos=image-in] .image-in--wipe {
    --duration: 0.5s;
    --easing: cubic-bezier(0.75, 0, 1, 0);
}

.aos-initialized [data-aos=image-in] .image-in--zoom-out {
    --scale-factor: 1.2;
    --duration: 0.9s;
    --easing: cubic-bezier(0.25, 0.6, 0.5, 0.95);
    transform: scale(var(--scale-factor));
    transition: 0s;
}

.aos-initialized [data-aos=image-in]:not(.aos-animate):has(img[loading].is-loading) .image-in--zoom-out {
    transform: scale(var(--scale-factor));
}

.aos-initialized [data-aos=image-in]:not(.aos-animate):has(img[loading]:not(.is-loading)) .image-in {
    opacity: 0.001;
}

.aos-initialized [data-aos=image-in]:not(.aos-animate):has(img[loading]:not(.is-loading)) .image-in--zoom-out {
    opacity: 1;
    transform: scale(var(--scale-factor));
}

.aos-initialized [data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading)) .image-in {
    opacity: 0.001;
    animation-name: fadeIn;
}

.aos-initialized [data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading)) .image-in--reveal {
    animation-name: heroFade;
}

.aos-initialized [data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading)) .image-in--slide {
    animation-name: fadeIn, imageInSlide;
}

.aos-initialized [data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading)) .image-in--wipe {
    animation-name: fadeIn, clipPathFromRight;
}

.aos-initialized [data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading)) .image-in--zoom-out {
    opacity: 1;
    animation-name: zoomOut;
}

@media only screen and (min-width: 768px) {
    .aos-initialized .skeleton-loading:has([data-aos=image-in].aos-animate: has(img[loading]: not(.is-loading))):has(img[loading]: not(.is-loading)) .image-in {
        opacity: 0.001;
        animation-name: fadeIn;
    }
    .aos-initialized .skeleton-loading:has([data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading))):has(img[loading]:not(.is-loading)) .image-in--reveal {
        animation-name: heroFade;
    }
    .aos-initialized .skeleton-loading:has([data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading))):has(img[loading]:not(.is-loading)) .image-in--slide {
        animation-name: fadeIn, imageInSlide;
    }
    .aos-initialized .skeleton-loading:has([data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading))):has(img[loading]:not(.is-loading)) .image-in--wipe {
        animation-name: fadeIn, clipPathFromRight;
    }
    .aos-initialized .skeleton-loading:has([data-aos=image-in].aos-animate:has(img[loading]:not(.is-loading))):has(img[loading]:not(.is-loading)) .image-in--zoom-out {
        opacity: 1;
        animation-name: zoomOut;
    }
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) [data-aos=image-in] .image-in {
        opacity: 0.001;
        animation: none;
    }
    .aos-initialized .skeleton-loading:has(img[loading].is-loading) [data-aos=image-in] .image-in--zoom-out {
        opacity: 1;
        transform: scale(var(--scale-factor));
    }
}

.aos-initialized .products-list__item [data-aos] {
    opacity: 0.001;
}

.aos-initialized .products-list__item--active [data-aos].aos-animate {
    opacity: 1;
}

.aos-initialized .cart-drawer:not(.is-open) [data-aos]:not(.aos-animate),
.aos-initialized .products-list__item [data-aos]:not(.aos-animate),
.aos-initialized .tabs [data-aos]:not(.aos-animate) {
    transition-duration: 0s;
    transition-delay: 0s;
}

.aos-initialized .product__media__holder {
    will-change: transform;
}

.aos-initialized .text-reveal__cropper {
    --move-offset: 100%;
    display: block;
    overflow: hidden;
}

.aos-initialized .text-reveal__cropper,
.aos-initialized .text-reveal__cropper>span {
    display: block;
}

.aos-initialized [data-aos=hero] {
    opacity: 0.001;
    will-change: transform, opacity;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: none;
}

.aos-initialized [data-aos=hero].aos-animate {
    opacity: 1;
    animation-name: heroFade;
    animation-duration: 0.5s;
    animation-fill-mode: both;
}

.aos-initialized [data-aos=hero].aos-animate.no-animation {
    animation: none;
}

.aos-initialized [data-aos=heading].aos-animate {
    -webkit-mask-image: linear-gradient(90deg, var(--text) 0%, var(--text) 20%, transparent 100%);
    mask-image: linear-gradient(90deg, var(--text) 0%, var(--text) 20%, transparent 100%);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 500%;
    mask-size: 500%;
    animation: headingFade 2s linear both;
}

.aos-initialized [data-aos=when-active-animate-up] {
    opacity: 0.001;
    will-change: transform, opacity;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: none;
}

.aos-initialized .is-active [data-aos=when-active-animate-up].aos-animate {
    opacity: 1;
    animation-name: whenActiveAnimateUp;
    animation-duration: 0.5s;
    animation-fill-mode: both;
}

.aos-initialized [data-aos=come-in-from-right] {
    opacity: 0.001;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transform: translateZ(0);
    transition: none;
}

.aos-initialized [data-aos=come-in-from-right].aos-animate {
    opacity: 1;
    animation-name: comeInFromRight;
    animation-duration: 0.5s;
    animation-fill-mode: both;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="1"] {
    animation-delay: 500ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="2"] {
    animation-delay: 646.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="3"] {
    animation-delay: 785ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="4"] {
    animation-delay: 916.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="5"] {
    animation-delay: 1040ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="6"] {
    animation-delay: 1156.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="7"] {
    animation-delay: 1265ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="8"] {
    animation-delay: 1366.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="9"] {
    animation-delay: 1460ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="10"] {
    animation-delay: 1546.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="11"] {
    animation-delay: 1625ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="12"] {
    animation-delay: 1696.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="13"] {
    animation-delay: 1760ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="14"] {
    animation-delay: 1816.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="15"] {
    animation-delay: 1865ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="16"] {
    animation-delay: 1906.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="17"] {
    animation-delay: 1940ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="18"] {
    animation-delay: 1966.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="19"] {
    animation-delay: 1985ms;
}

.aos-initialized .cart-drawer .cart-drawer__items [data-aos-order="20"] {
    animation-delay: 1996.25ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="1"] {
    animation-delay: 0ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="2"] {
    animation-delay: 48.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="3"] {
    animation-delay: 95ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="4"] {
    animation-delay: 138.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="5"] {
    animation-delay: 180ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="6"] {
    animation-delay: 218.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="7"] {
    animation-delay: 255ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="8"] {
    animation-delay: 288.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="9"] {
    animation-delay: 320ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="10"] {
    animation-delay: 348.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="11"] {
    animation-delay: 375ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="12"] {
    animation-delay: 398.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="13"] {
    animation-delay: 420ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="14"] {
    animation-delay: 438.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="15"] {
    animation-delay: 455ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="16"] {
    animation-delay: 468.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="17"] {
    animation-delay: 480ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="18"] {
    animation-delay: 488.75ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="19"] {
    animation-delay: 495ms;
}

.aos-initialized .cart-drawer .cart-drawer__items.is-updated [data-aos-order="20"] {
    animation-delay: 495ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="1"] {
    animation-delay: 350ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="2"] {
    animation-delay: 450ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="3"] {
    animation-delay: 550ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="4"] {
    animation-delay: 650ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="5"] {
    animation-delay: 750ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="6"] {
    animation-delay: 850ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="7"] {
    animation-delay: 950ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="8"] {
    animation-delay: 1050ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="9"] {
    animation-delay: 1150ms;
}

.aos-initialized .cart-drawer .cart-drawer__empty-message [data-aos-order="10"] {
    animation-delay: 1250ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="1"] {
    animation-delay: 0ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="2"] {
    animation-delay: 100ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="3"] {
    animation-delay: 200ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="4"] {
    animation-delay: 300ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="5"] {
    animation-delay: 400ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="6"] {
    animation-delay: 500ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="7"] {
    animation-delay: 600ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="8"] {
    animation-delay: 700ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="9"] {
    animation-delay: 800ms;
}

.aos-initialized .cart-drawer .is-updated+.cart-drawer__empty-message [data-aos-order="10"] {
    animation-delay: 900ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="1"] {
    animation-delay: 150ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="2"] {
    animation-delay: 248.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="3"] {
    animation-delay: 343.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="4"] {
    animation-delay: 435ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="5"] {
    animation-delay: 523.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="6"] {
    animation-delay: 608.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="7"] {
    animation-delay: 690ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="8"] {
    animation-delay: 768.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="9"] {
    animation-delay: 843.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="10"] {
    animation-delay: 915ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="11"] {
    animation-delay: 983.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="12"] {
    animation-delay: 1048.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="13"] {
    animation-delay: 1110ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="14"] {
    animation-delay: 1168.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="15"] {
    animation-delay: 1223.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="16"] {
    animation-delay: 1275ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="17"] {
    animation-delay: 1323.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="18"] {
    animation-delay: 1368.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="19"] {
    animation-delay: 1410ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="20"] {
    animation-delay: 1448.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="21"] {
    animation-delay: 1483.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="22"] {
    animation-delay: 1515ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="23"] {
    animation-delay: 1543.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="24"] {
    animation-delay: 1568.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="25"] {
    animation-delay: 1590ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="26"] {
    animation-delay: 1608.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="27"] {
    animation-delay: 1623.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="28"] {
    animation-delay: 1635ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="29"] {
    animation-delay: 1643.3333333333ms;
}

.aos-initialized .cart .cart__inner [data-aos-order="30"] {
    animation-delay: 1648.3333333333ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="1"] {
    animation-delay: 0ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="2"] {
    animation-delay: 48.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="3"] {
    animation-delay: 95ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="4"] {
    animation-delay: 138.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="5"] {
    animation-delay: 180ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="6"] {
    animation-delay: 218.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="7"] {
    animation-delay: 255ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="8"] {
    animation-delay: 288.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="9"] {
    animation-delay: 320ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="10"] {
    animation-delay: 348.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="11"] {
    animation-delay: 375ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="12"] {
    animation-delay: 398.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="13"] {
    animation-delay: 420ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="14"] {
    animation-delay: 438.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="15"] {
    animation-delay: 455ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="16"] {
    animation-delay: 468.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="17"] {
    animation-delay: 480ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="18"] {
    animation-delay: 488.75ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="19"] {
    animation-delay: 495ms;
}

.aos-initialized .cart .cart__items.is-updated [data-aos-order="20"] {
    animation-delay: 495ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="1"] {
    animation-delay: 150ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="2"] {
    animation-delay: 250ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="3"] {
    animation-delay: 350ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="4"] {
    animation-delay: 450ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="5"] {
    animation-delay: 550ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="6"] {
    animation-delay: 650ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="7"] {
    animation-delay: 750ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="8"] {
    animation-delay: 850ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="9"] {
    animation-delay: 950ms;
}

.aos-initialized .cart .cart__empty [data-aos-order="10"] {
    animation-delay: 1050ms;
}

.aos-initialized .cart [data-aos].cart__item.is-removed,
.aos-initialized .cart-drawer [data-aos].cart__item.is-removed {
    animation-delay: 0ms;
    animation: cartItemRemoved 0.5s ease;
    animation-fill-mode: forwards;
}

.aos-initialized #resultsPages [data-aos-order="1"] {
    animation-delay: 150ms;
}

.aos-initialized #resultsPages [data-aos-order="2"] {
    animation-delay: 247.5ms;
}

.aos-initialized #resultsPages [data-aos-order="3"] {
    animation-delay: 340ms;
}

.aos-initialized #resultsPages [data-aos-order="4"] {
    animation-delay: 427.5ms;
}

.aos-initialized #resultsPages [data-aos-order="5"] {
    animation-delay: 510ms;
}

.aos-initialized #resultsPages [data-aos-order="6"] {
    animation-delay: 587.5ms;
}

.aos-initialized #resultsPages [data-aos-order="7"] {
    animation-delay: 660ms;
}

.aos-initialized #resultsPages [data-aos-order="8"] {
    animation-delay: 727.5ms;
}

.aos-initialized #resultsPages [data-aos-order="9"] {
    animation-delay: 790ms;
}

.aos-initialized #resultsPages [data-aos-order="10"] {
    animation-delay: 847.5ms;
}

.aos-initialized #resultsPages [data-aos-order="11"] {
    animation-delay: 900ms;
}

.aos-initialized #resultsPages [data-aos-order="12"] {
    animation-delay: 947.5ms;
}

.aos-initialized #resultsPages [data-aos-order="13"] {
    animation-delay: 990ms;
}

.aos-initialized #resultsPages [data-aos-order="14"] {
    animation-delay: 1027.5ms;
}

.aos-initialized #resultsPages [data-aos-order="15"] {
    animation-delay: 1060ms;
}

.aos-initialized #resultsPages [data-aos-order="16"] {
    animation-delay: 1087.5ms;
}

.aos-initialized #resultsPages [data-aos-order="17"] {
    animation-delay: 1110ms;
}

.aos-initialized #resultsPages [data-aos-order="18"] {
    animation-delay: 1127.5ms;
}

.aos-initialized #resultsPages [data-aos-order="19"] {
    animation-delay: 1140ms;
}

.aos-initialized #resultsPages [data-aos-order="20"] {
    animation-delay: 1147.5ms;
}

.aos-initialized .slider [data-aos=hero] {
    opacity: 0.001;
    animation-duration: 0.6s;
    animation-name: none;
    transition: none;
}

.aos-initialized .slider.img-in .item:only-of-type [data-aos=hero].aos-animate,
.aos-initialized .slider.flickity-enabled.img-in .item.is-selected [data-aos=hero].aos-animate {
    opacity: 1;
    animation-name: heroFade;
}

.aos-initialized .banner-image [data-aos=hero] {
    opacity: 0.001;
    animation-duration: 0.6s;
    animation-name: none;
    transition: none;
}

.aos-initialized .banner-image.img-in .banner-image__inner [data-aos=hero].aos-animate {
    opacity: 1;
    animation-name: heroFade;
}

.aos-initialized .promotion-row [data-aos=hero] {
    opacity: 0.001;
    animation-duration: 0.6s;
    animation-name: none;
    transition: none;
}

.aos-initialized .promotion-row.aos-animate .promotion-row__inner [data-aos=hero].aos-animate {
    opacity: 1;
    animation-name: heroFade;
}

.aos-initialized .promotion-row.aos-animate .promotion-row__item__heading:has(text-count-up) [data-aos=hero],
.aos-initialized .promotion-row.aos-animate .promotion-row__item__heading:has(text-count-up) [data-aos=hero].aos-animate {
    opacity: 1;
    animation-name: fadeIn;
    animation-delay: 0.1s;
}

.aos-initialized .banner-image--slide [data-aos-order="1"],
.aos-initialized .slider--slide [data-aos-order="1"] {
    animation-delay: 300ms;
}

.aos-initialized .banner-image--slide [data-aos-order="2"],
.aos-initialized .slider--slide [data-aos-order="2"] {
    animation-delay: 300ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="1"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="1"] {
    animation-delay: 200ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="2"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="2"] {
    animation-delay: 342.5ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="3"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="3"] {
    animation-delay: 470ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="4"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="4"] {
    animation-delay: 582.5ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="5"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="5"] {
    animation-delay: 680ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="6"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="6"] {
    animation-delay: 762.5ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="7"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="7"] {
    animation-delay: 830ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="8"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="8"] {
    animation-delay: 882.5ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="9"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="9"] {
    animation-delay: 920ms;
}

.aos-initialized .banner-image--slide .banner-image__heading [data-aos-order="10"],
.aos-initialized .slider--slide .slide__heading [data-aos-order="10"] {
    animation-delay: 942.5ms;
}

.aos-initialized .banner-image--slide .countdown-timer [data-aos-order="1"] {
    animation-delay: 300ms;
}

.aos-initialized .banner-image--slide .countdown-timer [data-aos-order="2"] {
    animation-delay: 435ms;
}

.aos-initialized .banner-image--slide .countdown-timer [data-aos-order="3"] {
    animation-delay: 540ms;
}

.aos-initialized .banner-image--slide .countdown-timer [data-aos-order="4"] {
    animation-delay: 615ms;
}

.aos-initialized .banner-image--slide .countdown-timer [data-aos-order="5"] {
    animation-delay: 660ms;
}

.aos-initialized .banner-image--fade [data-aos-order="1"],
.aos-initialized .slider--fade [data-aos-order="1"] {
    animation-delay: 350ms;
}

.aos-initialized .banner-image--fade [data-aos-order="2"],
.aos-initialized .slider--fade [data-aos-order="2"] {
    animation-delay: 350ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="1"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="1"] {
    animation-delay: 250ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="2"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="2"] {
    animation-delay: 392.5ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="3"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="3"] {
    animation-delay: 520ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="4"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="4"] {
    animation-delay: 632.5ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="5"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="5"] {
    animation-delay: 730ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="6"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="6"] {
    animation-delay: 812.5ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="7"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="7"] {
    animation-delay: 880ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="8"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="8"] {
    animation-delay: 932.5ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="9"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="9"] {
    animation-delay: 970ms;
}

.aos-initialized .banner-image--fade .banner-image__heading [data-aos-order="10"],
.aos-initialized .slider--fade .slide__heading [data-aos-order="10"] {
    animation-delay: 992.5ms;
}

.aos-initialized .banner-image--fade .countdown-timer [data-aos-order="1"] {
    animation-delay: 350ms;
}

.aos-initialized .banner-image--fade .countdown-timer [data-aos-order="2"] {
    animation-delay: 485ms;
}

.aos-initialized .banner-image--fade .countdown-timer [data-aos-order="3"] {
    animation-delay: 590ms;
}

.aos-initialized .banner-image--fade .countdown-timer [data-aos-order="4"] {
    animation-delay: 665ms;
}

.aos-initialized .banner-image--fade .countdown-timer [data-aos-order="5"] {
    animation-delay: 710ms;
}

.aos-initialized .promotion-row [data-aos-order="1"],
.aos-initialized .split-images-section [data-aos-order="1"],
.aos-initialized .banner-image--zoom-out [data-aos-order="1"],
.aos-initialized .slider--zoom-out [data-aos-order="1"] {
    animation-delay: 250ms;
}

.aos-initialized .promotion-row [data-aos-order="2"],
.aos-initialized .split-images-section [data-aos-order="2"],
.aos-initialized .banner-image--zoom-out [data-aos-order="2"],
.aos-initialized .slider--zoom-out [data-aos-order="2"] {
    animation-delay: 250ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="1"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="1"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="1"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="1"] {
    animation-delay: 150ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="2"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="2"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="2"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="2"] {
    animation-delay: 292.5ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="3"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="3"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="3"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="3"] {
    animation-delay: 420ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="4"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="4"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="4"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="4"] {
    animation-delay: 532.5ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="5"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="5"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="5"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="5"] {
    animation-delay: 630ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="6"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="6"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="6"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="6"] {
    animation-delay: 712.5ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="7"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="7"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="7"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="7"] {
    animation-delay: 780ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="8"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="8"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="8"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="8"] {
    animation-delay: 832.5ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="9"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="9"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="9"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="9"] {
    animation-delay: 870ms;
}

.aos-initialized .promotion-row .promotion-row__item__heading [data-aos-order="10"],
.aos-initialized .split-images-section .split-images__heading [data-aos-order="10"],
.aos-initialized .banner-image--zoom-out .banner-image__heading [data-aos-order="10"],
.aos-initialized .slider--zoom-out .slide__heading [data-aos-order="10"] {
    animation-delay: 892.5ms;
}

.aos-initialized .banner-image--zoom-out .countdown-timer [data-aos-order="1"] {
    animation-delay: 250ms;
}

.aos-initialized .banner-image--zoom-out .countdown-timer [data-aos-order="2"] {
    animation-delay: 385ms;
}

.aos-initialized .banner-image--zoom-out .countdown-timer [data-aos-order="3"] {
    animation-delay: 490ms;
}

.aos-initialized .banner-image--zoom-out .countdown-timer [data-aos-order="4"] {
    animation-delay: 565ms;
}

.aos-initialized .banner-image--zoom-out .countdown-timer [data-aos-order="5"] {
    animation-delay: 610ms;
}

.aos-initialized .banner-image--wipe [data-aos-order="1"],
.aos-initialized .slider--wipe [data-aos-order="1"] {
    animation-delay: 500ms;
}

.aos-initialized .banner-image--wipe [data-aos-order="2"],
.aos-initialized .slider--wipe [data-aos-order="2"] {
    animation-delay: 500ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="1"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="1"] {
    animation-delay: 400ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="2"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="2"] {
    animation-delay: 542.5ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="3"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="3"] {
    animation-delay: 670ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="4"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="4"] {
    animation-delay: 782.5ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="5"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="5"] {
    animation-delay: 880ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="6"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="6"] {
    animation-delay: 962.5ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="7"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="7"] {
    animation-delay: 1030ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="8"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="8"] {
    animation-delay: 1082.5ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="9"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="9"] {
    animation-delay: 1120ms;
}

.aos-initialized .banner-image--wipe .banner-image__heading [data-aos-order="10"],
.aos-initialized .slider--wipe .slide__heading [data-aos-order="10"] {
    animation-delay: 1142.5ms;
}

.aos-initialized .banner-image--wipe .countdown-timer [data-aos-order="1"] {
    animation-delay: 500ms;
}

.aos-initialized .banner-image--wipe .countdown-timer [data-aos-order="2"] {
    animation-delay: 635ms;
}

.aos-initialized .banner-image--wipe .countdown-timer [data-aos-order="3"] {
    animation-delay: 740ms;
}

.aos-initialized .banner-image--wipe .countdown-timer [data-aos-order="4"] {
    animation-delay: 815ms;
}

.aos-initialized .banner-image--wipe .countdown-timer [data-aos-order="5"] {
    animation-delay: 860ms;
}

.aos-initialized .countdown [data-aos-order="1"] {
    animation-delay: 150ms;
}

.aos-initialized .countdown [data-aos-order="2"] {
    animation-delay: 324ms;
}

.aos-initialized .countdown [data-aos-order="3"] {
    animation-delay: 486ms;
}

.aos-initialized .countdown [data-aos-order="4"] {
    animation-delay: 636ms;
}

.aos-initialized .countdown [data-aos-order="5"] {
    animation-delay: 774ms;
}

.aos-initialized .countdown [data-aos-order="6"] {
    animation-delay: 900ms;
}

.aos-initialized .countdown [data-aos-order="7"] {
    animation-delay: 1014ms;
}

.aos-initialized .countdown [data-aos-order="8"] {
    animation-delay: 1116ms;
}

.aos-initialized .countdown [data-aos-order="9"] {
    animation-delay: 1206ms;
}

.aos-initialized .countdown [data-aos-order="10"] {
    animation-delay: 1284ms;
}

.aos-initialized .countdown [data-aos-order="11"] {
    animation-delay: 1350ms;
}

.aos-initialized .countdown [data-aos-order="12"] {
    animation-delay: 1404ms;
}

.aos-initialized .countdown [data-aos-order="13"] {
    animation-delay: 1446ms;
}

.aos-initialized .countdown [data-aos-order="14"] {
    animation-delay: 1476ms;
}

.aos-initialized .countdown [data-aos-order="15"] {
    animation-delay: 1494ms;
}

.aos-initialized .promotion-row__item__heading [data-aos=hero],
.aos-initialized .split-images__heading [data-aos=hero],
.aos-initialized .slide__heading [data-aos=hero],
.aos-initialized .banner-image__heading [data-aos=hero] {
    animation-duration: 0.7s;
    animation-timing-function: ease-in-out;
}

@keyframes heroFade {
    from {
        opacity: 0.001;
        transform: translate3d(0, var(--move-offset), 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes headingFade {
    0% {
        -webkit-mask-size: 0%;
        mask-size: 0%;
    }
    100% {
        -webkit-mask-size: 500%;
        mask-size: 500%;
    }
}

@keyframes comeInFromRight {
    from {
        opacity: 0.001;
        transform: translate3d(var(--move-offset), 0, 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@keyframes whenActiveAnimateUp {
    from {
        opacity: 0.001;
        transform: translate3d(0, var(--move-offset), 0);
    }
    to {
        opacity: 1;
        transform: translate3d(0, 0, 0);
    }
}

@media only screen and (max-width: 767px) {
    html.iframe [data-aos]:not([data-aos=hero]) {
        opacity: 1 !important;
        transform: none !important;
    }
}


/*================ Flickity v2.2.2 ================*/


/* https://flickity.metafizzy.co */

.flickity-enabled {
    position: relative;
}

.flickity-viewport {
    overflow: hidden;
    position: relative;
}

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

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

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

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

.flickity-button {
    position: absolute;
    background: hsla(0, 0%, 100%, 0.75);
    border: none;
    color: #333;
}

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

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

.flickity-button:active {
    opacity: 0.6;
}

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

.flickity-button-icon {
    fill: currentColor;
}

.flickity-prev-next-button {
    top: 50%;
    width: 44px;
    height: 44px;
    border-radius: 50%;
    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-rtl .flickity-page-dots {
    direction: rtl;
}

.flickity-page-dots .dot {
    display: inline-block;
    width: 10px;
    height: 10px;
    margin: 0 8px;
    background: #333;
    border-radius: 50%;
    opacity: 0.25;
    cursor: pointer;
}

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

.flickity-enabled.is-fade .flickity-slider>* {
    pointer-events: none;
    z-index: 0;
    opacity: 0.001 !important;
    visibility: hidden;
    transition: opacity 0.8s ease, visibility 0.8s;
}

.flickity-enabled.is-fade .flickity-slider>.is-selected {
    pointer-events: auto;
    z-index: 1;
    opacity: 1 !important;
    visibility: visible;
}

:root {
    --flickity-btn-size: 40px;
    --flickity-btn-position: 10px;
}

@media only screen and (min-width: 1024px) {
     :root {
        --flickity-btn-position: calc(var(--flickity-btn-size) / -2);
    }
}

.flickity-viewport {
    transition: height 0.2s ease;
}

.flickity-button {
    background-color: transparent;
}

.flickity-button:disabled {
    opacity: 0;
}

.flickity-page-dots {
    pointer-events: none;
}

.flickity-page-dots .dot {
    border: var(--BORDER-WIDTH) solid var(--text);
    background-color: transparent;
    transition: border 0.5s ease, width 0.5s ease, opacity 0.5s ease;
    border-radius: 5px;
    pointer-events: auto;
}

.flickity-page-dots .dot.is-selected {
    width: 25px;
}

.flickity-page-dots .dot:only-child {
    visibility: hidden;
}

.flickity-button-icon {
    display: none;
}

.flickity-prev-next-button,
.pswp__button--arrow--left,
.pswp__button--arrow--right {
    width: var(--flickity-btn-size);
    height: var(--flickity-btn-size);
    color: var(--text);
    background: var(--bg);
    box-shadow: 0 1px 1px rgba(0, 0, 0, 0.08), 0 1px 5px rgba(0, 0, 0, 0.06);
    transform: translateY(-50%);
    transform-origin: top;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    border-radius: 50%;
    transform-origin: top;
    transition: opacity 0.2s ease, transform 0.25s ease-out, visibility 0s linear 0.2s;
}

.flickity-prev-next-button:hover,
.pswp__button--arrow--left:hover,
.pswp__button--arrow--right:hover {
    background: var(--bg);
    transform: scale(1.12) translateY(-50%);
}

.pswp__button--arrow--left {
    left: var(--flickity-btn-position);
}

.pswp__button--arrow--right {
    right: var(--flickity-btn-position);
}

.flickity-prev-next-button.previous {
    left: var(--flickity-btn-position);
}

.flickity-prev-next-button.next {
    right: var(--flickity-btn-position);
}

.flickity-prev-next-button {
    --icon-size: 18px;
    opacity: 0;
    transform: scale(0) translateY(-50%);
    visibility: hidden;
}

.pswp__button {
    --icon-size: 18px;
    opacity: 1;
    visibility: visible;
}

.flickity-prev-next-button:before,
.pswp__button:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    width: var(--icon-size);
    height: var(--icon-size);
    background: var(--text);
    -webkit-mask-size: var(--icon-size);
    mask-size: var(--icon-size);
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-position: center center;
    mask-position: center center;
    max-width: 100%;
    max-height: 100%;
}

.pswp__button--close:before {
    content: none;
}

.flickity-prev-next-button.previous:before,
.pswp__button--arrow--left:before {
    -webkit-mask-image: var(--ICON-ARROW-RIGHT);
    mask-image: var(--ICON-ARROW-RIGHT);
    transform: rotate(180deg);
}

.flickity-prev-next-button.next:before,
.pswp__button--arrow--right:before {
    -webkit-mask-image: var(--ICON-ARROW-RIGHT);
    mask-image: var(--ICON-ARROW-RIGHT);
}

.supports-touch .flickity-prev-next-button:not(:disabled),
.flickity-enabled:hover>.flickity-prev-next-button:not(:disabled),
.flickity-enabled:hover .flickity-button-holder .flickity-prev-next-button:not(:disabled),
section:hover .flickity-enabled>.flickity-prev-next-button:not(:disabled) {
    opacity: 1;
    visibility: visible;
    transform: scale(1) translateY(-50%);
    transition-delay: 0s;
}

.supports-touch .flickity-prev-next-button:not(:disabled):hover,
.flickity-enabled:hover>.flickity-prev-next-button:not(:disabled):hover,
.flickity-enabled:hover .flickity-button-holder .flickity-prev-next-button:not(:disabled):hover,
section:hover .flickity-enabled>.flickity-prev-next-button:not(:disabled):hover {
    transform: scale(1.12) translateY(-50%);
}

body:not(.no-outline) .flickity-prev-next-button {
    opacity: 1;
    visibility: visible;
    transform: none;
}

body:not(.no-outline) .flickity-button:focus {
    box-shadow: 0 0 0 5px #19F;
}


/*================ Blog post item ================*/

.blog__post {
    padding-left: 0;
    padding-right: 0;
    --grid-mobile: repeat(1, minmax(0, 1fr));
}

@media only screen and (min-width: 768px) {
    .blog__post {
        --grid: repeat(1, minmax(0, 1fr));
    }
}

@media only screen and (min-width: 768px) {
    .blog__post--two-col {
        --grid: repeat(2, minmax(0, 1fr));
    }
}

@media only screen and (min-width: 768px) {
    .blog__post--three-col {
        --grid: repeat(3, minmax(0, 1fr));
    }
}

@media only screen and (min-width: 768px) {
    .blog__post--four-col {
        --grid: repeat(3, minmax(0, 1fr));
    }
}

@media only screen and (min-width: 1024px) {
    .blog__post--four-col {
        --grid: repeat(4, minmax(0, 1fr));
    }
}

.blog--standard .blog__post-image-link {
    margin-bottom: 16px;
}

.blog__post-item {
    word-break: break-word;
}

.blog__post-image-link {
    position: relative;
    padding-top: var(--image-height);
    display: block;
    overflow: hidden;
}

.blog__post-image {
    z-index: 0;
    background: unset;
}

.blog__post-excerpt-link {
    display: -webkit-box;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.blog__post-comments {
    margin-bottom: 0;
}

.blog__comments-link {
    color: var(--text);
}

.blog__post-image--accent {
    background: var(--accent);
}

.blog__post-image--default {
    background: var(--text-alpha-25);
}

.blog__post-tags a:after {
    content: ",";
}

.blog__post-tags a:last-child:after {
    content: none;
}

.blog__post-overlay {
    display: none;
}

.blog__post-tags {
    margin-bottom: 16px;
    line-height: 1.25;
}

@media (hover: hover) {
    .blog__post-tags-link:hover,
    .blog__comments-link:hover {
        text-decoration: underline;
        text-decoration-thickness: var(--BORDER-WIDTH);
    }
}

.blog__post-title,
.blog__post-meta {
    margin: 0 0 8px;
}

@media only screen and (max-width: 479px) {
    .blog--photo .blog__post-meta>* {
        display: block;
    }
}

.blog__post-meta>*:not(:last-child):after {
    content: "•";
    padding: 0 7px;
}

@media only screen and (max-width: 479px) {
    .blog--photo .blog__post-meta>*:not(:last-child):after {
        display: none;
    }
}

.blog__post-meta {
    line-height: 1.25;
}

.blog--photo .blog__post-title {
    margin-bottom: 12px;
}

.blog--photo .blog__post-item {
    position: relative;
    overflow: hidden;
    color: var(--text);
}

.blog--photo .blog__post-excerpt-link {
    display: none;
}

.blog--photo .blog__post-content {
    position: absolute;
    padding: calc(var(--gutter) / 3);
    bottom: 0;
    left: 0;
    right: 0;
    pointer-events: none;
}

.blog--photo .blog__post-content a {
    pointer-events: auto;
}

.blog--photo .blog__post-overlay {
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0%;
    left: 0%;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%);
}

.blog--photo .blog__post-meta {
    margin-bottom: 0;
}

.blog--photo .blog__post-content,
.blog--photo .blog__post-title-link,
.blog--photo .blog__post-tags-link,
.blog--photo .blog__post-comments a {
    color: var(--text);
}

@media only screen and (min-width: 480px) and (max-width: 1280px) {
    .blog--photo .collection__products .one-third .blog__post-title,
    .blog--photo .collection__products .one-quarter .blog__post-title {
        margin-bottom: 10px;
        font-size: calc(1.16rem * var(--adjust-heading));
    }
    .blog--photo .collection__products .one-third .blog__post-tags,
    .blog--photo .collection__products .one-quarter .blog__post-tags {
        margin-bottom: 10px;
        font-size: calc(0.75rem * var(--adjust-body));
    }
    .blog--photo .collection__products .one-third .blog__post-meta,
    .blog--photo .collection__products .one-quarter .blog__post-meta {
        font-size: calc(0.75rem * var(--adjust-body));
    }
    .blog--photo .collection__products .one-third .blog__post-meta>*,
    .blog--photo .collection__products .one-quarter .blog__post-meta>* {
        display: block;
    }
    .blog--photo .collection__products .one-third .blog__post-meta>*:not(:last-child):after,
    .blog--photo .collection__products .one-quarter .blog__post-meta>*:not(:last-child):after {
        display: none;
    }
    .blog--photo .collection__products .one-third .blog__post-content,
    .blog--photo .collection__products .one-quarter .blog__post-content {
        padding: calc(var(--gutter) / 4);
    }
}

@media only screen and (max-width: 479px) {
    .blog--photo .collection__products .mobile--one-half .blog__post-title {
        margin-bottom: 10px;
        font-size: calc(1.16rem * var(--adjust-heading));
    }
    .blog--photo .collection__products .mobile--one-half .blog__post-tags {
        margin-bottom: 10px;
        font-size: calc(0.75rem * var(--adjust-body));
    }
    .blog--photo .collection__products .mobile--one-half .blog__post-meta {
        font-size: calc(0.75rem * var(--adjust-body));
    }
    .blog--photo .collection__products .mobile--one-half .blog__post-meta>* {
        display: block;
    }
    .blog--photo .collection__products .mobile--one-half .blog__post-meta>*:not(:last-child):after {
        display: none;
    }
    .blog--photo .collection__products .mobile--one-half .blog__post-content {
        padding: calc(var(--gutter) / 4);
    }
}

.body--rounded-corners .blog__post-overlay,
.body--rounded-corners .blog--photo .blog__post-item,
.body--rounded-corners .blog__post-item .background-size-cover,
.body--rounded-corners .blog__post-image-link {
    border-radius: var(--radius);
    overflow: hidden;
}

.body--rounded-corners .blog__post-image-link {
    transform: translateZ(0);
}

body:not(.no-outline) .blog--photo .blog__post-item:focus-within,
body:not(.no-outline) .blog__post-image-link:focus .blog__post-image {
    outline: -webkit-focus-ring-color auto 5px;
}


/*================ Breadcrumbs ================*/

.breadcrumbs {
    display: flex;
    flex-wrap: wrap;
    font-size: calc(0.875rem * var(--adjust-body));
}

.breadcrumbs__link,
.breadcrumbs__sep {
    margin-right: 7px;
}


/*================ Card scrolling effect ================*/

body:has(.card-scrolling-effect) {
    --offset: 100px;
    --sticky-top: 0;
}

body:has(.card-scrolling-effect):has([data-header-sticky]) {
    --sticky-top: var(--header-sticky-height);
}

body:has(.card-scrolling-effect):has([data-header-sticky]) .main-content>.shopify-section:first-child {
    --sticky-top: 0;
}

.shopify-section:has(.card-scrolling-effect) {
    position: sticky;
    top: var(--sticky-top);
}

.shopify-section:has(.card-scrolling-effect).sticky-top-zero {
    top: 0;
}

.shopify-section:has(.card-scrolling-effect).card-scrolling-hidden {
    opacity: 0;
    visibility: hidden;
}

.shopify-section:has(.card-scrolling-effect).slideshow {
    background-color: var(--bg);
}

.shopify-section:has(.card-scrolling-effect):not(:last-child) .item,
.shopify-section:has(.card-scrolling-effect):not(:last-child) .banner-image__text-container {
    padding-bottom: var(--offset);
}

.shopify-section:has(.card-scrolling-effect):not(:last-child) .flickity-page-dots {
    bottom: calc(10px + var(--offset));
}

.main-content>.shopify-section:has(.card-scrolling-effect)+.shopify-section {
    top: 1px;
    margin-top: calc(var(--offset) * -1);
}

.main-content>.shopify-section:has(.card-scrolling-effect)+.shopify-section:has(.card-scrolling-effect) {
    top: var(--sticky-top);
}

.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:not(:has(.card-scrolling-effect)) {
    position: relative;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    background: var(--bg);
    transform: translateZ(0);
}

.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:not(:has(.card-scrolling-effect)) .recent-products,
.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:not(:has(.card-scrolling-effect)) .related-products,
.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:not(:has(.card-scrolling-effect)) .section-marquee,
.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:not(:has(.card-scrolling-effect)) section {
    background: var(--bg);
}

.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:has(.collection__filters),
.main-content>.shopify-section:has(.card-scrolling-effect)~.shopify-section:has(.drawer) {
    transform: none;
}

.shopify-section:has(.card-scrolling-effect) .card-scrolling-effect::after {
    content: "";
    z-index: 101;
    position: absolute;
    inset: 0;
    background: var(--COLOR-BLACK-WHITE-ALPHA-34);
    pointer-events: none;
    opacity: var(--card-scrolling-overlay, 0);
}

.body--rounded-corners .main-content>.shopify-section:has(.card-scrolling-effect)+.shopify-section {
    --card-scrolling-radius: calc(var(--radius) * 2);
    border-radius: var(--card-scrolling-radius) var(--card-scrolling-radius) 0 0;
    contain: paint;
}

.body--rounded-corners .main-content>.shopify-section:has(.card-scrolling-effect)+.shopify-section:has(.collection__filters),
.body--rounded-corners .main-content>.shopify-section:has(.card-scrolling-effect)+.shopify-section:has(.drawer) {
    contain: none;
    overflow: clip;
}

.body--rounded-corners .main-content>.shopify-section:has(.card-scrolling-effect--rounded-large)+.shopify-section {
    --card-scrolling-radius: 34px;
}


/*================ Countdown Timer ================*/

.countdown-timer {
    --gap: 80px;
    display: block;
    color: var(--text);
}

@media only screen and (max-width: 1439px) {
    .countdown-timer {
        --gap: 50px;
    }
}

@media only screen and (max-width: 1023px) {
    .countdown-timer {
        --gap: 40px;
    }
}

@media only screen and (max-width: 767px) {
    .countdown-timer {
        --gap: 32px;
    }
}

.countdown__aside--timer-large .countdown-timer,
.countdown__block--timer-large .countdown-timer {
    max-width: none;
}

.product__block--timer .countdown-timer {
    --gap: 32px;
}

.countdown-timer--background {
    position: relative;
    z-index: 2;
    padding: var(--inner-mobile);
}

@media only screen and (min-width: 1024px) {
    .countdown-timer--background {
        padding: var(--inner);
    }
}

@media only screen and (min-width: 1440px) {
    .countdown-timer--background {
        padding: var(--inner) var(--gutter);
    }
}

.countdown-timer--background::before {
    content: "";
    z-index: -1;
    position: absolute;
    inset: 0;
    display: block;
    background: var(--timer-bg);
}

.aos-initialized .countdown .countdown-timer--background::before {
    opacity: 0;
    transition: opacity 0.5s var(--timer-bg-delay, 0.25s) ease;
}

.aos-initialized .countdown .countdown-timer--background:has(.aos-animate)::before {
    opacity: 1;
}

.aos-initialized .countdown-timer--background:has(.aos-animate)::before {
    opacity: 1;
}

@media only screen and (min-width: 1440px) {
    .product__block--timer .countdown-timer--background {
        padding: var(--inner);
    }
}

.countdown-timer__wrapper {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    gap: calc(var(--gap) / 2);
}

@media only screen and (max-width: 479px) {
    .countdown-timer__wrapper {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        width: 100%;
    }
}

.countdown-timer--show-message .countdown-timer__wrapper {
    display: none;
}

@media only screen and (min-width: 768px) {
    .countdown-timer__wrapper--inline .countdown-timer__digit {
        margin-right: 10px;
    }
}

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

.countdown-timer__digit {
    font-family: var(--FONT-STACK-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    text-transform: var(--HEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    margin: 0;
    min-width: 2ch;
    font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
    line-height: 1.2;
    color: inherit;
}

@media only screen and (max-width: 767px) {
    .countdown-timer__digit {
        font-size: clamp(9px, var(--heading-size), 35px);
    }
}

.countdown-timer__unit {
    font-size: calc(0.715rem * var(--adjust-unit));
}

.product__block--timer .countdown-timer__unit {
    font-size: calc(1rem * var(--adjust-unit));
}

@media only screen and (max-width: 767px) {
    .countdown-timer__unit {
        font-size: clamp(9px, 0.715rem * var(--adjust-unit), 16px);
    }
}

.countdown-timer__message {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
    --text-size: calc(1rem * var(--adjust-body));
    font-size: var(--text-size);
    display: none;
}

@media only screen and (max-width: 767px) {
    .countdown-timer__message {
        --text-size: calc(0.875rem * var(--adjust-body));
    }
}

.countdown-timer--show-message .countdown-timer__message {
    display: block;
    animation: fadeIn 1s ease;
}

.product__block--timer .countdown-timer__message {
    margin-bottom: 0;
}

.countdown-timer__content {
    margin-bottom: 20px;
}

.countdown-timer__title {
    margin-bottom: 0.25rem;
    color: inherit;
}

.countdown-timer__text>*:first-child {
    margin-top: 0;
}

.countdown-timer__text>*:last-child {
    margin-bottom: 0;
}

.body--rounded-corners .countdown-timer--background {
    border-radius: var(--radius);
    overflow: hidden;
}


/*================ Newsletter form ================*/

.newsletter-form .form-success,
.newsletter-form .errors {
    display: none;
}

.newsletter-form .input-group__field,
.newsletter-form .input-group__btn--icon {
    background: transparent;
}

.newsletter-form.has-error .errors {
    display: inline-block;
}

.newsletter-form.has-success .form-success {
    display: inline-block;
}

.newsletter-form.has-success .input-group__item:not(.input-group__item--text) {
    display: none;
}

.newsletter-form .errors,
.newsletter-form .form-success {
    margin: var(--form-margin) 0;
    text-align: left;
}

@media only screen and (max-width: 479px) {
    .newsletter-form .errors,
    .newsletter-form .form-success {
        width: 100%;
        flex-basis: 100%;
        text-align: center;
    }
}

@media only screen and (min-width: 768px) {
    .newsletter-form .input-group--inline~.form-success {
        margin: 0;
    }
}

.input-group__fields {
    display: flex;
    flex: 1 1 auto;
    padding: 0;
    flex-flow: row wrap;
}

@media only screen and (min-width: 1024px) {
    .input-group__fields {
        max-width: 280px;
    }
}

@media only screen and (min-width: 768px) {
    .input-group__fields {
        flex-basis: 50%;
    }
}

@media only screen and (min-width: 1440px) {
    .input-group__fields {
        flex-basis: 25%;
    }
}

.input-group__fields--name {
    flex-basis: 100%;
}

@media only screen and (min-width: 1024px) {
    .input-group__fields--name {
        max-width: 560px;
    }
}

.input-group__fields--name .errors,
.input-group__fields--first-last-name .errors,
.input-group__fields--name .form-success,
.input-group__fields--first-last-name .form-success {
    margin: calc(var(--form-margin) / 2);
}

.input-group__fields--first-last-name {
    flex-basis: 100%;
}

@media only screen and (min-width: 1024px) {
    .input-group__fields--first-last-name {
        max-width: 840px;
    }
}

.input-group__btn--icon {
    height: 100%;
    width: 54px;
    max-width: 54px;
    color: var(--text);
    background: transparent;
    border: var(--BORDER-WIDTH) solid var(--text);
}

.input-group__btn--icon .icon-select {
    transition: transform 0.3s ease;
}

.input-group__btn--icon:before {
    content: none;
}

.input-group__btn--icon:hover {
    background: transparent;
}

.input-group__btn--icon:hover .icon-select {
    transform: translate(5px);
}

.input-group__field {
    display: block;
    width: 100%;
    border: var(--BORDER-WIDTH) solid var(--text);
    border-radius: var(--RADIUS);
    padding: 12px 0 12px 20px;
}

.input-group__field::input-placeholder {
    color: var(--text);
}

.input-group__field::placeholder {
    color: var(--text);
}

.input-group__field:input-placeholder {
    color: var(--text);
}

.input-group__field:placeholder {
    color: var(--text);
}

.mailer-response {
    display: none;
}


/*================ Product elements ================*/

.product__block {
    padding-bottom: var(--PBB, 0);
}

@media only screen and (max-width: 767px) {
    .product__block {
        padding-bottom: max(var(--PBB, 0) * 0.75, 8px);
    }
    .product__block.product__accordions {
        padding-bottom: calc(var(--PBB, 0) * 0.75);
    }
}

@media only screen and (min-width: 480px) {
    .product__block--half {
        display: inline-block;
        width: 50%;
    }
}

.product__block hr {
    margin: 0;
}

.product__description a,
.product__subheading a,
.product__feature__content a,
.product__accordion__inner a,
.product__popup__link span {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.product__description a::before,
.product__description a::after,
.product__subheading a::before,
.product__subheading a::after,
.product__feature__content a::before,
.product__feature__content a::after,
.product__accordion__inner a::before,
.product__accordion__inner a::after,
.product__popup__link span::before,
.product__popup__link span::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.product__description a::before,
.product__subheading a::before,
.product__feature__content a::before,
.product__accordion__inner a::before,
.product__popup__link span::before {
    transform: scaleX(0);
    transform-origin: left;
}

.product__description a::after,
.product__subheading a::after,
.product__feature__content a::after,
.product__accordion__inner a::after,
.product__popup__link span::after {
    transform-origin: right;
}

.no-touch .product__description a:hover,
.no-touch .product__subheading a:hover,
.no-touch .product__feature__content a:hover,
.no-touch .product__accordion__inner a:hover,
.no-touch .product__popup__link span:hover {
    background: transparent;
    border: 0;
}

.no-touch .product__description a:hover::before,
.no-touch .product__description a:hover::after,
.no-touch .product__subheading a:hover::before,
.no-touch .product__subheading a:hover::after,
.no-touch .product__feature__content a:hover::before,
.no-touch .product__feature__content a:hover::after,
.no-touch .product__accordion__inner a:hover::before,
.no-touch .product__accordion__inner a:hover::after,
.no-touch .product__popup__link span:hover::before,
.no-touch .product__popup__link span:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
    transform: scaleX(0);
}

.no-touch .product__description a:hover::before,
.no-touch .product__subheading a:hover::before,
.no-touch .product__feature__content a:hover::before,
.no-touch .product__accordion__inner a:hover::before,
.no-touch .product__popup__link span:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.product__title-and-price {
    display: grid;
    grid-template-columns: minmax(0, 100%);
    grid-template-rows: min-content;
    align-content: start;
    gap: var(--form-margin);
    margin-bottom: calc(var(--form-margin) / 2);
}

@media only screen and (max-width: 767px) {
    .product__title-and-price {
        margin-bottom: var(--form-margin-mobile);
    }
}

.product__title {
    font-size: calc(2rem * var(--adjust-heading));
    margin-bottom: 0;
}

.product__title,
.product__title a {
    color: var(--text);
}

.product__subheading p {
    font-size: calc(1rem * var(--adjust-body));
    margin: 0;
}

.product__price-and-badge {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: -8px;
}

.product__price-and-badge .product__price {
    padding-right: 10px;
    margin: 0 auto 0 0;
}

.product__price-and-badge .product__unit-price {
    margin-right: 12px;
}

.product__price-wrapper {
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}

.product__price {
    --adjust-price: var(--adjust-body-desktop, var(--FONT-ADJUST-BODY));
    --adjust-body: var(--adjust-price);
    display: flex;
    flex-flow: row wrap;
    align-items: flex-start;
    margin: 0;
    --text-size: calc(1.1rem * var(--adjust-body));
    font-size: var(--text-size);
    transition: opacity 0.3s ease;
}

@media only screen and (max-width: 767px) {
    .product__price {
        --text-size: calc(1rem * var(--adjust-body));
    }
}

@media only screen and (max-width: 767px) {
    .product__price {
        --adjust-body: var(--adjust-body-mobile, var(--adjust-price));
    }
}

.product__price--hidden {
    opacity: 0;
}

.product__price--regular {
    margin: 0 6px 8px 0;
}

.product__price--compare {
    text-decoration: line-through;
    opacity: 0.5;
    margin: 0 12px 8px 0;
}

.product__price--off {
    display: flex;
    flex-flow: row wrap;
    gap: 5px 12px;
    align-items: center;
    font-size: calc(0.75rem * var(--adjust-body) * var(--FONT-ADJUST-BADGES));
}

@media only screen and (max-width: 767px) {
    .product__price--off {
        column-gap: var(--form-margin-mobile);
    }
}

.product__price--off.hidden {
    display: none;
}

.product__price--off .product__price-badge {
    flex-shrink: 0;
    padding: 3px 9px;
    border-radius: var(--RADIUS-BADGE);
    background-color: var(--saving-bg);
    color: var(--saving-text);
}

.product__price--off .product__price-badge em {
    font-style: normal;
    opacity: 0.5;
    padding: 0 4px;
}

.product__price--off .product__price-badge:last-child {
    margin-right: 0;
}

.product__final-sale-wrap {
    display: flex;
    align-items: center;
    color: var(--final-sale-color);
    padding: 3px 9px;
    border: var(--BORDER-WIDTH) solid var(--final-sale-color);
    border-radius: var(--RADIUS-BADGE);
}

.product__final-sale-wrap.hidden {
    display: none;
}

.product__final-sale-question {
    margin-left: 9px;
    --icon-size: calc(0.75rem * var(--adjust-body) * var(--FONT-ADJUST-BADGES));
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 2px;
    text-align: center;
    border-radius: var(--RADIUS-BADGE);
    background: var(--final-sale-color);
}

.product__final-sale-question:hover {
    cursor: help;
}

.product__final-sale-question .icon {
    width: var(--icon-size, 20px);
    height: var(--icon-size, 20px);
    stroke-width: 2px;
}

.product__final-sale-question .icon path {
    stroke: var(--COLOR-BG);
}

.product__unit-price {
    --text-size: calc(0.75rem * var(--adjust-body));
    font-size: var(--text-size);
    line-height: calc(1.71875rem * var(--adjust-body));
    opacity: 0.5;
}

.product-cutline {
    margin: -2px 0 3px;
    font-size: calc(0.8rem * var(--adjust-body));
    line-height: 1;
}

.product__description.rte {
    color: var(--text);
    margin-bottom: 0;
    font-size: calc(0.9rem * var(--adjust-body));
}

.product__description.rte p {
    line-height: inherit;
    margin-block-start: 0;
}

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

.product__accordion {
    background: var(--bg-item);
    text-align: left;
    overflow: hidden;
    position: relative;
    padding: 0 var(--padding-sides);
}

.product__accordion::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: var(--border-width);
    background: var(--text);
    opacity: var(--border-opacity);
    pointer-events: none;
}

.product__accordion__inner {
    margin-bottom: 0;
    padding-block-end: 10px;
    position: relative;
    font-size: calc(0.9rem * var(--adjust-body));
}

.product__accordion__inner p {
    margin-top: 0;
}

.product__accordion__title {
    font-size: calc(0.9rem * var(--adjust-body));
    display: block;
    position: relative;
    width: 100%;
    padding: 10px 53px 10px 0;
    text-align: left;
    color: var(--text);
    background: transparent;
    border: 0;
}

.product__accordion__title::before {
    content: "";
    position: absolute;
    top: 0;
    left: calc(-1 * var(--padding-sides));
    width: calc(100% + 2 * var(--padding-sides));
    height: 100%;
    display: var(--display-pseudo, none);
}

.product__accordion__title .icon {
    top: 0;
    right: 0;
    width: 16px;
    height: 100%;
}

.body--rounded-corners .product__accordion {
    border-radius: var(--radius);
    overflow: hidden;
}

.product__popup__link {
    display: flex;
    align-items: center;
    font-size: calc(1.1rem * var(--adjust-label));
    line-height: 1.5625;
}

.product__popup__link .icon {
    margin-right: 5px;
    width: 16px;
    height: 16px;
    pointer-events: none;
}

.product__popup__link span {
    pointer-events: none;
}

@media only screen and (max-width: 767px) {
    .product__popup__link {
        font-size: calc(1rem * var(--adjust-label));
        line-height: 1.1;
    }
    .product__popup__link .icon {
        width: min(1rem * var(--adjust-label) * 1.1, 16px);
        height: min(1rem * var(--adjust-label) * 1.1, 16px);
    }
}

.product__popup__link:hover span::before,
.product__popup__link:hover span::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
}

.product__popup__link:hover span::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.product__popup__link:hover span::after {
    transform: scaleX(0);
}

.no-touch .product__popup__link span::after {
    opacity: 0;
}

.no-touch .product__popup__link:hover span::after {
    opacity: 1;
}

.complementary-products__title {
    margin: 0 0 var(--form-margin);
}

@media only screen and (max-width: 767px) {
    .complementary-products__title {
        margin: 0 0 var(--form-margin-mobile);
    }
}

.product__complementary:has(.flickity-enabled) {
    padding-bottom: calc(var(--PBB) + 28px);
}

.body--rounded-corners .complementary-products__slider {
    overflow: initial;
}

.complementary-products__slider .flickity-page-dots {
    --text: var(--COLOR-TEXT);
    bottom: -28px;
}

.complementary-products__item {
    --inner: 12px;
    width: 100%;
}

.flickity-slider .complementary-products__item {
    margin-right: var(--inner);
}

.product__icon__row {
    --icon-size: 25px;
    --line-height: 1.5625;
    background-color: var(--bg);
    display: flex;
    align-items: center;
    border-radius: var(--radius);
    font-size: calc(1rem * var(--adjust-body));
    line-height: var(--line-height);
    align-self: start;
}

.product__icon__row--center {
    justify-content: center;
    text-align: center;
}

.product__icon {
    min-height: calc(1rem * var(--adjust-body) * var(--line-height));
    display: flex;
    flex-basis: var(--icon-size);
    flex-shrink: 0;
    align-items: center;
    justify-content: center;
    align-self: center;
    position: relative;
    color: var(--icon-color);
}

.product__icon .icon {
    display: block;
    width: var(--icon-size);
    height: var(--icon-size);
}

.product__icon__holder {
    display: block;
    position: relative;
    width: 100%;
    height: 0;
    padding-top: var(--aspect-ratio);
}

.product__icon__text:not(:only-child) {
    margin-left: 10px;
}

.product__icon__row--multiple {
    display: grid;
    column-gap: calc(var(--grid-gutter) * 2);
}

@media only screen and (min-width: 768px) {
    .product__icon__row--multiple {
        grid-template-columns: repeat(auto-fit, minmax(60px, 1fr));
    }
}

@media only screen and (max-width: 767px) {
    .product__icon__row--multiple {
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        gap: 0;
    }
}

.product__feature {
    width: 100%;
    color: var(--text);
    background-color: var(--bg);
    margin-right: var(--inner);
}

.product__feature__icon__container {
    display: flex;
    align-items: center;
}

.product__feature__icon__container .product__icon {
    margin-right: 10px;
}

.product__feature__content {
    display: grid;
    gap: var(--grid-gutter);
}

.product__feature__content p {
    font-size: calc(0.9rem * var(--adjust-body));
    margin: 0;
}

.product__feature__heading h5 {
    font-family: var(--FONT-STACK-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    text-transform: var(--HEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    margin: 0;
}

.product__features.flickity-enabled {
    --max-bottom-padding: max(54px, var(--padding-bottom));
    padding-bottom: var(--max-bottom-padding);
}

.product__features.flickity-enabled .flickity-page-dots {
    bottom: calc(var(--max-bottom-padding) - 28px);
}

.guide__line {
    display: flex;
}

.guide__line:first-child {
    margin-top: 0;
}

.guide__line:last-child {
    margin-bottom: 0;
}

.guide__line span {
    flex: 1;
    height: 3px;
    border-radius: 3px;
    margin: 0 2px;
    background: var(--text-alpha-25);
    font-size: 0;
    line-height: 0;
}

.guide__line span:first-child {
    margin-left: 0;
}

.guide__line span:last-child {
    margin-right: 0;
}

.guide__line span.is-active {
    background: var(--text);
}

.guide__heading {
    font-size: calc(1.1rem * var(--adjust-label));
}

@media only screen and (max-width: 767px) {
    .guide__heading {
        font-size: calc(1rem * var(--adjust-label));
        line-height: 1.1;
    }
}

.guide__heading,
.guide__line {
    margin: 0 0 calc(var(--form-margin) / 4);
}

@media only screen and (max-width: 767px) {
    .guide__heading,
    .guide__line {
        margin-bottom: var(--form-margin-mobile);
    }
}

.guide__content {
    display: flex;
    justify-content: space-around;
    font-size: calc(1.1rem * var(--adjust-label));
}

.guide__content--skip-right::after,
.guide__content--skip-left::before {
    content: "";
}

.guide__content--skip-right::after,
.guide__content--skip-left::before,
.guide__left,
.guide__right {
    flex: 1 0 0;
}

.guide__middle {
    flex-grow: 0;
    max-width: 70%;
    padding: 0 5px;
    text-align: center;
}

.guide__right {
    text-align: right;
}

.body--rounded-corners .product__feature {
    border-radius: var(--radius);
    overflow: hidden;
}

body:not(.no-outline) .product__accordion__title:focus,
body:not(.no-outline) .product__accordion__title.focus-visible {
    outline: -webkit-focus-ring-color auto 5px;
}

.product__block--timer .countdown-timer__wrapper {
    flex-wrap: wrap;
}

@media only screen and (max-width: 767px) {
    .product__block--timer .countdown-timer__wrapper {
        gap: calc(var(--gap) / 3);
    }
}

.product__block--timer.text-left .countdown-timer__wrapper {
    justify-content: flex-start;
}


/*================ Product form ================*/

:root {
    --form-top: 14px;
    --form-left: 20px;
    --form-margin: 25px;
    --form-padding-mobile: 6px;
    --form-margin-mobile: 8px;
}

.product-notification {
    position: relative;
    background: var(--bg);
    padding: var(--gutter);
    max-width: 500px;
    width: 100%;
    text-align: center;
    margin: auto;
}

.product-notification label {
    display: block;
    font-size: calc(0.875rem * var(--adjust-body));
    margin-bottom: 15px;
}

.product-notification .input-group {
    max-width: 100%;
    flex-direction: column;
}

.product-notification .input-group__item {
    max-width: 100%;
}

.product-notification .input-group__field {
    border: var(--BORDER-WIDTH) solid var(--border);
    border-radius: var(--RADIUS);
}

.product-notification .input-group__item--btn {
    margin-top: var(--form-top);
    flex: 1;
    max-width: 100%;
    width: 100%;
}

.product-notification button[type=submit] {
    width: 100%;
}

@media only screen and (max-width: 767px) {
    .product-notification {
        padding: var(--gutter-mobile);
    }
}

.product-notification .contact-form {
    margin-top: 16px;
    text-align: left;
}

.product-notification__title {
    font-size: calc(2rem * var(--adjust-heading));
    margin-bottom: 0;
}

@media only screen and (max-width: 767px) {
    .product-notification__title {
        padding: 0 var(--inner-mobile);
    }
}

.product-notification__subtitle {
    font-size: calc(1rem * var(--adjust-body));
    margin: 5px 0 0;
}

.product-notification__close {
    position: absolute;
    top: 20px;
    right: 20px;
    width: 30px;
    height: 30px;
    padding: 5px;
    opacity: 1;
    text-indent: 0;
    color: inherit;
    background: none;
}

.product-notification__close:hover .icon-close {
    transform: rotate(90deg);
}

@media only screen and (max-width: 767px) {
    .product-notification__close {
        top: 10px;
        right: 10px;
        width: 25px;
        height: 25px;
    }
}

.product-notification__message {
    display: none;
    margin: var(--gutter) 0;
    text-align: center;
}

.template-product .pswp--success .product-notification__form {
    display: none;
}

.template-product .pswp--success .product-notification__message {
    display: block;
}

.quantity-selector {
    display: block;
    max-width: 7.5rem;
    position: relative;
    margin: 0;
    text-align: left;
}

.quantity__selector {
    display: block;
    width: 100%;
    padding: var(--form-top) 32px;
    font-size: calc(0.875rem * var(--adjust-body));
    text-align: center;
    letter-spacing: 0.02em;
    line-height: 1.3;
}

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

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

@supports (-webkit-touch-callout: none) {
    .quantity__selector {
        font-size: max(0.875rem * var(--adjust-body), 16px);
    }
}

.quantity__btn {
    height: 50%;
    width: 44px;
    color: inherit;
}

.quantity__btn--decrease,
.quantity__btn--increase {
    position: absolute;
    top: 0;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quantity__btn--decrease {
    left: 0;
}

.quantity__btn--increase {
    right: 0;
}

.product__form {
    --form-top: 10px;
    display: grid;
    grid-template-columns: minmax(0, 100%);
    gap: var(--grid-gutter);
    position: relative;
}

@media only screen and (max-width: 767px) {
    .product__form {
        --form-margin: var(--form-margin-mobile);
        gap: calc(var(--form-margin) * 2);
    }
    .variant__labels--hide .product__form {
        gap: var(--form-margin);
    }
}

.product__form .btn--submit {
    position: relative;
    width: 100%;
    transition: color 0.3s ease, border 0.3s ease, background 0.3s linear;
}

.product__form .btn--submit span {
    transition: opacity 0.3s ease;
}

.product__form .btn--submit.is-loading {
    opacity: 1;
    cursor: default;
}

.product__form .btn--submit.is-loading span {
    opacity: 0;
    transition: opacity 0s;
}

.product__form .btn--submit.is-loading::before {
    content: none;
}

.product__form .btn--submit .loader-indeterminate {
    background-color: var(--btn-text);
}

.product__form .btn--submit .loader--line {
    transition: opacity 0.3s ease, visibility 0s linear 0s;
    background-color: var(--btn-text-alpha-10);
}

.product__form .btn,
.product__form .shopify-payment-button__button--unbranded,
.product__form .shopify-payment-button {
    width: 100%;
}

.product__form .errors {
    margin-bottom: 0;
}

.product__form__select {
    display: none;
}

.shop-pay-terms {
    font-size: calc(0.875rem * var(--adjust-body));
}

.shop-pay-terms:empty {
    display: none;
}

.product__submit__holder--spb .shopify-payment-button__button--unbranded {
    border: var(--BORDER-WIDTH) solid transparent;
    padding: var(--form-top) var(--form-left);
}

.product__submit__holder--spb .product__submit__add {
    min-height: 44px;
}

.shopify-payment-button__more-options {
    font-size: calc(0.85rem * var(--adjust-body)) !important;
    margin-top: 5px !important;
}

.product__submit__buttons {
    --form-margin: 12px;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: var(--form-margin);
}

@media only screen and (max-width: 767px) {
    .product__submit__buttons {
        --form-margin: var(--form-margin-mobile);
    }
}

@media only screen and (min-width: 1024px) {
    .btn--half .product__submit__buttons {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .btn--half.variant--soldout .product__submit__holder--notification .product__submit__buttons {
        grid-template-columns: minmax(0, 1fr);
    }
}

.product__submit__buttons .shopify-payment-button__button--hidden {
    display: none;
}

.product__submit__add em {
    font-style: normal;
}

.product__submit__add .product__price--regular {
    margin: 0;
}

.product__submit__add .product__price--regular::before {
    content: "•";
    margin: 0 5px;
}

.product__submit__item .loader--line {
    position: absolute;
    top: 0;
    bottom: 0;
    width: 80%;
    margin: auto;
}

.product__form__errors {
    overflow: hidden;
    position: relative;
    text-align: left;
    max-height: 0;
    visibility: hidden;
    opacity: 0;
    transition: max-height 0.3s, visibility 0.3s, opacity 0.3s, margin 0.3s;
}

.product__form__errors.is-visible {
    max-height: 500px;
    visibility: visible;
    opacity: 1;
    transition: max-height 0.3s 0.3s, visibility 0.3s 0.3s, opacity 0.3s 0.3s, margin 0.3s 0.3s;
}

@media only screen and (max-width: 479px) {
    .product__form__errors {
        max-width: 390px;
    }
}

.product__form__errors .errors {
    max-width: 100%;
    margin: var(--form-margin) 0;
    padding: 15px 40px 15px 15px;
    position: relative;
}

@media only screen and (max-width: 767px) {
    .product__form__errors .errors {
        --form-margin: var(--form-margin-mobile);
    }
}

.product__form__errors .errors__close {
    position: absolute;
    top: 0;
    right: 0;
    width: 32px;
    height: 32px;
    padding: 5px;
    z-index: 20;
    cursor: pointer;
}

.product__form__errors .errors__close .icon-close {
    width: 100%;
    height: 100%;
}

.product__form__errors .errors__close:hover .icon-close {
    transform: rotate(90deg);
}

.product__add__success {
    display: flex;
    align-items: stretch;
    background: var(--bg);
    border-left: var(--BORDER-WIDTH) solid var(--border);
    border-bottom: var(--BORDER-WIDTH) solid var(--border);
}

@media only screen and (max-width: 767px) {
    .product__add__success {
        border-left: none;
    }
}

.product__add__success__image {
    width: 50%;
}

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

.product__add__success__image-bg {
    height: 100%;
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
}

.product__add__success__content {
    width: 50%;
    padding: 50px;
}

@media only screen and (max-width: 767px) {
    .product__add__success__content {
        width: 100%;
        padding: 15px 20px;
    }
}

.product__add__success--hide {
    display: none;
}

.variant--soldout .quantity-selector label,
.variant--soldout .quantity-selector input,
.variant--soldout .quantity-selector button,
.variant--soldout .shopify-payment-button label,
.variant--soldout .shopify-payment-button input,
.variant--soldout .shopify-payment-button button,
.variant--soldout .product__price label,
.variant--soldout .product__price input,
.variant--soldout .product__price button,
.variant--unavailable .quantity-selector label,
.variant--unavailable .quantity-selector input,
.variant--unavailable .quantity-selector button,
.variant--unavailable .shopify-payment-button label,
.variant--unavailable .shopify-payment-button input,
.variant--unavailable .shopify-payment-button button,
.variant--unavailable .product__price label,
.variant--unavailable .product__price input,
.variant--unavailable .product__price button {
    cursor: default;
}

.variant--soldout .product__submit__add,
.variant--soldout .product__submit__add:hover,
.variant--unavailable .product__submit__add,
.variant--unavailable .product__submit__add:hover {
    border-color: transparent;
    background-color: var(--text-alpha-10);
    color: var(--text-alpha-50);
    cursor: not-allowed;
}

.variant--soldout .product__submit__add>*,
.variant--soldout .product__submit__add:hover>*,
.variant--unavailable .product__submit__add>*,
.variant--unavailable .product__submit__add:hover>* {
    pointer-events: none;
}

@media only screen and (max-width: 767px) {
    .variant--soldout .product__submit__add,
    .variant--soldout .product__submit__add:hover,
    .variant--unavailable .product__submit__add,
    .variant--unavailable .product__submit__add:hover {
        transform: none;
        pointer-events: none;
    }
}

.variant--soldout .product__submit__add::before,
.variant--unavailable .product__submit__add::before {
    background-color: var(--text-alpha-25);
}

.variant--soldout .shopify-payment-button,
.variant--unavailable .shopify-payment-button {
    position: relative;
    pointer-events: none;
}

.variant--soldout .shopify-payment-button::after,
.variant--unavailable .shopify-payment-button::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0);
    z-index: 2;
}

.variant--soldout .product__submit__holder--notification .product__submit__add,
.variant--soldout .product__submit__holder--notification .product__submit__add:hover {
    cursor: pointer;
    pointer-events: auto;
}

.variant--unavailable .product__price {
    opacity: 0;
}


/*================ Product gallery ================*/

.product-gallery {
    position: relative;
}

@media only screen and (max-width: 767px) {
    .product-gallery {
        margin-bottom: var(--gutter-mobile);
    }
}

.product-gallery__media-slider {
    margin: 0 auto;
}

@media only screen and (max-width: 479px) {
    .product-gallery__media-slider {
        max-width: 100%;
    }
}

@media only screen and (max-width: 479px) {
    .product-gallery__media-slider .flickity-prev-next-button {
        display: none;
    }
}

.product-gallery__media-slider .flickity-button {
    z-index: 1;
    background: var(--COLOR-BG);
}

.product-gallery__media-slider:not(.has-media-active) .flickity-button {
    transition-delay: 0.15s !important;
}

.no-outline .product-gallery__media-slider.has-media-active .flickity-prev-next-button,
.no-outline .product-gallery__media-slider.has-media-active .flickity-prev-next-button:not(:disabled) {
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0s linear 0.3s;
}

.no-outline .product-gallery__media-slider.has-media-active .flickity-prev-next-button::before,
.no-outline .product-gallery__media-slider.has-media-active .flickity-prev-next-button::after,
.no-outline .product-gallery__media-slider.has-media-active .flickity-prev-next-button:not(:disabled)::before,
.no-outline .product-gallery__media-slider.has-media-active .flickity-prev-next-button:not(:disabled)::after {
    transition: none;
}

.product-gallery__media-slider--single {
    margin: 0;
}

.product-gallery__media-slide--placeholder {
    display: block;
    width: 100%;
    height: 0;
}

.product-gallery__media-slide {
    width: 100%;
    position: relative;
    overflow: hidden;
}

.product-gallery__media-slider--single .product-gallery__media-slide.media--hidden:not(.is-selected) button,
.product-gallery__media-slider--single .product-gallery__media-slide.media--hidden:not(.is-selected) input,
.product-gallery__media-slider--single .product-gallery__media-slide.media--hidden:not(.is-selected) iframe,
.product-gallery__media-slider--single .product-gallery__media-slide.media--hidden:not(.is-selected) .shopify-model-viewer-ui__button,
.product-gallery__media-slider--single .product-gallery__media-slide.media--hidden:not(.is-selected) .shopify-model-viewer-ui__controls-area {
    visibility: visible;
}

.product-gallery__media-slide.is-loading iframe,
.product-gallery__media-slide.is-loading video,
.product-gallery__media-slide.is-loading model-viewer {
    background-image: var(--loading-svg);
    background-size: 320px auto;
    background-repeat: no-repeat;
    background-position: center center;
}

.product-gallery__media {
    position: relative;
    width: 100%;
    height: 0;
    min-height: 1px;
    overflow: hidden;
}

.product-gallery__media img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    margin: 0;
    object-fit: contain;
}

.product-gallery__media .lazy-image,
.product-gallery__media iframe,
.product-gallery__media model-viewer,
.product-gallery__media .shopify-model-viewer-ui,
.product-gallery__media img,
.product-gallery__media>video,
.product-gallery__media .media-item {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    max-width: 100%;
    min-width: 100%;
}

.product-gallery__media iframe,
.product-gallery__media model-viewer,
.product-gallery__media .shopify-model-viewer-ui,
.product-gallery__media .media-item {
    height: 100%;
}

.product-gallery__media--video video {
    height: 100%;
    object-fit: cover;
}

.product-gallery__media-link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media only screen and (min-width: 768px) {
    .product-gallery__media-link {
        cursor: zoom-in;
        cursor: var(--icon-zoom-in), zoom-in;
    }
}

.product-gallery__media--image {
    height: auto;
    background-color: transparent;
}

.product-gallery__media--onboarding {
    padding-top: 66%;
    background-color: transparent;
}

.product-gallery__media--onboarding .placeholder-svg,
.product-gallery__media--onboarding .placeholder-svg-filled {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 150%;
    height: 150%;
    max-width: 150%;
    max-height: 150%;
    transform: translate(-50%, -50%);
}

.product-gallery__media--onboarding.featured-product--two-columns {
    padding-top: 66%;
}

.product-gallery__media-space {
    padding-top: var(--media-padding-top, 0);
}

.product-gallery__view-in-space {
    width: 100%;
    position: relative;
    border-color: transparent;
    color: var(--text);
    background: var(--text-alpha-8);
    margin-top: 10px;
}

.product-gallery__view-in-space:hover {
    color: var(--text);
    background: var(--text-alpha-15);
}

.product-gallery__view-in-space:active,
.product-gallery__view-in-space:focus {
    color: var(--text);
    background: var(--text-alpha-8);
}

.product-gallery__view-in-space .icon {
    display: inline-block;
    vertical-align: middle;
    width: 22px;
    height: 22px;
    line-height: 22px;
    margin-right: 4px;
    fill: transparent;
}

.product-gallery__view-in-space .icon .icon-media-model-outline {
    stroke: none;
}

.product-gallery__view-in-space .icon .icon-media-model-element {
    fill: var(--text);
    opacity: 1;
}

.product-gallery__view-in-space[data-shopify-xr-hidden] {
    visibility: hidden;
    position: absolute;
    width: 0;
    height: 0;
    overflow: hidden;
}

@media only screen and (min-width: 768px) {
    .product-gallery__view-in-space[data-shopify-xr-hidden] {
        display: none;
    }
}

.product-gallery__view-in-space-text {
    display: inline-block;
    vertical-align: middle;
    line-height: 22px;
}

@media only screen and (min-width: 768px) {
    .product-gallery--equal .product-gallery__media-slide {
        display: flex;
    }
}

@media only screen and (min-width: 768px) {
    .product-gallery--equal .product-gallery__media img {
        object-fit: cover;
    }
}

.body--rounded-corners .product-gallery__media-slider .product-gallery__media,
.body--rounded-corners .product-gallery__media-slider .flickity-viewport {
    border-radius: var(--radius);
    overflow: hidden;
}

body:not(.no-outline) .product-gallery__media-slider .flickity-button:focus,
body:not(.no-outline) .product-gallery__media-slider .flickity-button.focus-visible {
    opacity: 1;
}

body:not(.no-outline) .product-gallery__media-link:focus {
    outline: auto;
    outline: -webkit-focus-ring-color auto 5px;
    outline-offset: -6px;
}

body:not(.no-outline) .product-gallery__media-slide:focus,
body:not(.no-outline) .product-gallery__media-slide.focus-visible {
    outline: -webkit-focus-ring-color auto 5px;
}


/*================ Deferred media ================*/

.deferred-media {
    display: block;
}

.deferred-media:not([loaded]) template {
    z-index: -1;
}

.deferred-media[loaded]>.deferred-media__poster {
    display: none;
}

.deferred-media__poster {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    cursor: default;
}

.deferred-media__poster-button {
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -30px 0 0 -30px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    padding: 8px;
    background: var(--COLOR-BG);
    border: var(--BORDER-WIDTH) solid var(--text-alpha-5);
    z-index: 1;
    cursor: pointer;
}

.deferred-media__poster-button .icon-media-video-outline,
.deferred-media__poster-button .icon-media-model-outline {
    stroke: none;
}

.deferred-media__poster-button .icon {
    width: 100%;
    height: 100%;
}

.deferred-media__poster img {
    object-fit: cover;
}

.body--rounded-corners .deferred-media__poster {
    border-radius: var(--radius);
    overflow: hidden;
}

body:not(.no-outline) .deferred-media__poster:focus .deferred-media__poster-button {
    outline: -webkit-focus-ring-color auto 5px;
}

body:not(.no-outline) .deferred-media__poster,
body:not(.no-outline) .deferred-media__poster:focus,
body:not(.no-outline) .deferred-media__poster:focus-visible,
body:not(.no-outline) .deferred-media__poster.focus-visible {
    outline: none;
}


/*================ Product grid item ================*/

:root {
    --product-media-padding-top: var(--PRODUCT-MEDIA-PADDING-TOP);
}

.product-grid-item {
    max-width: 100%;
    --move-offset: 10px;
    position: relative;
    text-align: center;
    white-space: normal;
}

.product-grid-item shopify-payment-terms,
.product-grid-item .shopify-installments {
    display: none;
}

.product-grid-item .errors {
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    padding: 10px;
    border-radius: 0;
    font-size: calc(0.75rem * var(--adjust-product-grid));
    text-align: center;
    cursor: default;
    opacity: 0;
    margin: 0;
    z-index: 1;
}

.product-grid-item .placeholder-svg,
.product-grid-item .placeholder-svg-filled {
    position: absolute;
    top: 0;
    left: 0;
}

.product-grid-item h3,
.product-grid-item .h3 {
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
}

@media only screen and (min-width: 1024px) {
    .collection-items--4 .product-grid-item:nth-child(-n+4) {
        --move-offset: 20px;
    }
}

@media only screen and (min-width: 768px) {
    .tab-collections__container .product-grid-item,
    .look__slide .product-grid-item,
    .collection-items--4 .product-grid-item:nth-child(-n+3),
    .collection-items--3 .product-grid-item:nth-child(-n+3),
    .collection-items--2 .product-grid-item:nth-child(-n+2) {
        --move-offset: 20px;
    }
}

.no-touch .product__media__hover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
    background-color: var(--bg);
    visibility: hidden;
}

.no-touch .product__media__hover--fade-in {
    opacity: 0;
    transition: opacity 0.25s ease-out, visibility 0s 0.25s;
}

.no-touch .product__media__hover--wipe {
    transition: visibility 0s 0.6s;
}

.no-touch .product__media__image--hover-wipe {
    will-change: transform;
    transition: -webkit-clip-path 0.6s cubic-bezier(0.75, -0.01, 0, 1.22);
    transition: clip-path 0.6s cubic-bezier(0.75, -0.01, 0, 1.22);
    transition: clip-path 0.6s cubic-bezier(0.75, -0.01, 0, 1.22), -webkit-clip-path 0.6s cubic-bezier(0.75, -0.01, 0, 1.22);
    -webkit-clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
    clip-path: polygon(100% 0, 0 0, 0 100%, 100% 100%);
}

.no-touch .product__media__image--hover-fade-in {
    transition: opacity 0.25s ease-in, visibility 0s linear 0s;
}

.no-touch .product-grid-item__image--hovered .product__media__hover--wipe,
.no-touch .product-grid-item__image:hover .product__media__hover--wipe {
    visibility: visible;
    transition-delay: 0s;
}

.no-touch .product-grid-item__image--hovered .product__media__image--hover-wipe,
.no-touch .product-grid-item__image:hover .product__media__image--hover-wipe {
    -webkit-clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    clip-path: polygon(0 0, 0 0, 0 100%, 0 100%);
    transition-duration: 0.6s;
    transition-timing-function: cubic-bezier(0.75, -0.01, 0, 1.22);
}

.no-touch .product-grid-item__image--hovered .product__media__image--hover-fade-in,
.no-touch .product-grid-item__image:hover .product__media__image--hover-fade-in {
    opacity: 0;
}

.no-touch .product-grid-item__image--hovered .product__media__hover--fade-in,
.no-touch .product-grid-item__image:hover .product__media__hover--fade-in {
    opacity: 1;
    visibility: visible;
    transition-delay: 0s;
    transition-duration: 0.25s;
    transition-timing-function: ease-out;
}

.no-touch .product__media__image--hover-slide,
.no-touch .product__media__hover--slide {
    visibility: visible;
    transition: transform 0.4s cubic-bezier(1, 0, 0.6, 1);
    transform: none;
}

.no-touch .product__media__hover--slide {
    transform: translateX(100%);
}

.no-touch .product-grid-item__image--hovered .product__media__image--hover-slide,
.no-touch .product-grid-item__image:hover .product__media__image--hover-slide {
    transform: translateX(-100%);
}

.no-touch .product-grid-item__image--hovered .product__media__hover--slide,
.no-touch .product-grid-item__image:hover .product__media__hover--slide {
    transform: none;
}

.product-grid-item__info {
    display: grid;
    grid-template-columns: minmax(0, 100%);
    gap: 9px;
    align-content: start;
    font-size: calc(0.8rem * var(--adjust-product-grid));
}

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

@media only screen and (max-width: 479px) {
    .product-grid-item__info {
        font-size: calc(0.95rem * var(--adjust-product-grid));
    }
}

.product-grid-item__info--inline .product-grid-item__title,
.product-grid-item__info--inline .product-grid-item__price {
    display: inline;
    vertical-align: middle;
}

.product-grid-item__price {
    margin: 0;
    display: block;
    text-decoration: none;
    font-size: calc(0.9rem * var(--adjust-product-grid));
    line-height: 1;
}

@media only screen and (max-width: 479px) {
    .product-grid-item__price {
        font-size: calc(1.1rem * var(--adjust-product-grid));
    }
}

.product-grid-item__price .product__unit-price {
    --text-size: calc(0.75rem * var(--adjust-product-grid));
    line-height: inherit;
}

@media only screen and (max-width: 479px) {
    .product-grid-item__price .product__unit-price {
        --text-size: calc(0.9rem * var(--adjust-product-grid));
    }
}

.product-grid-item__info--inline .product-grid-item__price .product__unit-price {
    --text-size: calc(0.75rem * var(--adjust-product-grid-heading));
}

@media only screen and (max-width: 479px) {
    .product-grid-item__info--inline .product-grid-item__price .product__unit-price {
        --text-size: calc(0.9rem * var(--adjust-product-grid-heading));
    }
}

.product-grid-item__info--inline .product-grid-item__price {
    font-size: calc(0.9rem * var(--adjust-product-grid-heading));
}

@media only screen and (max-width: 479px) {
    .product-grid-item__info--inline .product-grid-item__price {
        font-size: calc(1.1rem * var(--adjust-product-grid-heading));
    }
}

.product-grid-item__price-new {
    margin-right: 5px;
}

.product-grid-item__price-new:last-child {
    margin-right: 0;
}

.product-grid-item__info-separator {
    display: inline-block;
    vertical-align: middle;
    width: 20px;
    height: var(--BORDER-WIDTH);
    margin: 0 8px;
    background: var(--text);
    border-radius: 4px;
}

.product-grid-item__info--inline,
.product-grid-item__info--left {
    text-align: left;
}

.product-grid-item__info--inline .product-grid-item__swatch,
.product-grid-item__info--left .product-grid-item__swatch {
    justify-content: flex-start;
}

.product-grid-item__title {
    display: block;
    text-decoration: none;
    text-transform: none;
    font-weight: var(--FONT-WEIGHT-BODY-BOLD);
    font-size: calc(0.9rem * var(--adjust-product-grid-heading));
    line-height: 1;
}

@media only screen and (max-width: 479px) {
    .product-grid-item__title {
        font-size: calc(1.1rem * var(--adjust-product-grid-heading));
    }
}

.product-grid-item__title.font-heading {
    font-weight: var(--FONT-WEIGHT-HEADING-BOLD);
}

.product-grid-item__info .product-cutline {
    margin: -2px 0 3px;
    line-height: 1;
    font-size: calc(0.8rem * var(--adjust-product-grid));
}

@media only screen and (max-width: 479px) {
    .product-grid-item__info .product-cutline {
        font-size: calc(0.95rem * var(--adjust-product-grid));
    }
}

.product-grid-item__swatch {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    margin: 0 0 -6px;
    min-height: 12px;
}

@-moz-document url-prefix() {
    .product-grid-item__swatch {
        padding-bottom: 1px;
    }
}

@media (pointer: fine) {
    .product-grid-item__swatch::before {
        content: "";
        position: absolute;
        top: -6px;
        left: 0;
        right: 0;
        bottom: 0;
    }
    .product-grid-item__swatch:hover .swatch__button.is-hidden {
        display: inline-block;
        animation: fadeIn 1s ease;
    }
    .product-grid-item__swatch:hover .swatch__text-more {
        display: none;
    }
}

.product-grid-item__swatch.is-visible .swatch__button.is-hidden,
body:not(.no-outline) .product-grid-item__swatch:focus-within .swatch__button.is-hidden {
    display: inline-block;
    animation: fadeIn 1s ease;
}

.product-grid-item__swatch.is-visible .swatch__text-more,
body:not(.no-outline) .product-grid-item__swatch:focus-within .swatch__text-more {
    display: none;
}

.product-grid-item__swatch .swatch__button {
    margin: 0 6px 6px 0;
    padding: 0;
}

.product-grid-item__swatch .swatch__button:last-child {
    margin-right: 0;
}

.product-grid-item__swatch .swatch__button.is-hidden {
    display: none;
}

.product-grid-item__swatch .swatch__button .swatch__label {
    width: 12px;
    height: 12px;
}

@media only screen and (max-width: 479px) {
    .product-grid-item__swatch .swatch__button .swatch__label {
        width: 15px;
        height: 15px;
    }
}

.product-grid__swatch--rectangle .swatch__button .swatch__label {
    border-radius: 0;
    width: 20px;
    height: 10px;
}

@media only screen and (max-width: 479px) {
    .product-grid__swatch--rectangle .swatch__button .swatch__label {
        width: 24px;
        height: 12px;
    }
}

.body--rounded-corners .product-grid__swatch--rectangle .swatch__button .swatch__label {
    border-radius: var(--radius-small);
}

.swatch__link--no-image {
    cursor: default;
}

.swatch__text-more {
    margin: 0 0 6px;
    font-size: calc(0.75rem * var(--adjust-product-grid));
    line-height: 12px;
    animation: fadeIn 1s ease;
}

.product-grid__swatch--rectangle .swatch__text-more {
    line-height: 10px;
}

@media only screen and (max-width: 479px) {
    .swatch__text-more {
        font-size: calc(0.9rem * var(--adjust-product-grid));
    }
}

.soldout .quick__form {
    display: none;
}

.product__media__holder {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.product__media__holder iframe,
.product__media__holder .media-video {
    width: 100%;
    height: 100%;
}

.product__media__holder .media-video--cover {
    object-fit: cover;
}

.product__media__container {
    --aspect-ratio: 1;
    position: relative;
    grid-row-start: 1;
    grid-column-start: 1;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

.product__media__container--portrait {
    width: 0;
    height: 100%;
    padding-right: calc(var(--aspect-ratio) * var(--product-media-padding-top));
}

.product__media__container--landscape {
    width: 100%;
    height: 0;
    padding-top: calc(100% / var(--aspect-ratio));
}

.product__media img {
    image-rendering: auto;
}

.product__media.hidden {
    display: none;
    visibility: hidden;
    content-visibility: hidden;
}

.product__media--featured-secondary {
    z-index: 2;
}

.product__media--featured-visible {
    z-index: 3;
}

.product__media--featured-secondary.product__media--featured-visible {
    animation-name: fadeIn;
    animation-duration: 0.25s;
    animation-fill-mode: forwards;
    animation-iteration-count: 1;
    animation-timing-function: ease-in;
    z-index: 4;
}

.product__media__image--hover-wipe .product__media--featured-secondary.product__media--featured-visible {
    animation-name: clipPathFromLeft;
    animation-duration: 0.6s;
    animation-timing-function: cubic-bezier(0.75, -0.01, 0, 1.22);
}

.product__media__image--hover-slide .product__media--featured-secondary.product__media--featured-visible {
    animation-name: slideInFromLeft;
    animation-duration: 0.4s;
    animation-timing-function: cubic-bezier(1, 0, 0.6, 1);
}

.product__media__image--hover-none .product__media--featured-secondary.product__media--featured-visible {
    animation-duration: 0s;
    animation-delay: 0s;
}

.product__media__image {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
}

.product__media__slider {
    display: block;
    height: 100%;
}

.product__media__slider .flickity-viewport {
    width: 100%;
    height: 100% !important;
}

.supports-touch .product__media__slider {
    display: none;
}

.product__media__slide {
    width: 100%;
    height: 100%;
    background-color: var(--bg);
}

.product__media__hover-img {
    z-index: 0;
}

.product__media__hover-img--visible {
    z-index: 1;
}

.product-grid-item__image {
    position: relative;
    overflow: hidden;
    width: 100%;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    justify-items: center;
    align-items: center;
    margin-bottom: 15px;
}

.product-grid-item__image::before {
    content: "";
    padding-top: var(--product-media-padding-top);
    width: 100%;
    height: 100%;
    grid-row-start: 1;
    grid-column-start: 1;
}

.product-grid-item__image .btn-quick-buy {
    opacity: 0;
    transform: translate(calc(15px + var(--btn-icon-size) / 2), calc(15px + var(--btn-icon-size) / 2)) scale(0);
    transition: transform 0.3s ease, opacity 0.15s ease;
    transform-origin: right bottom;
    z-index: 2;
}

@media only screen and (max-width: 1023px) {
    .product-grid-item__image .btn-quick-buy {
        opacity: 1;
        transform: translate(0);
        will-change: opacity;
    }
}

.product-grid-item__image--hovered .btn-quick-buy,
.product-grid-item__image:hover .btn-quick-buy,
.product-grid-item__image:focus-within .btn-quick-buy {
    opacity: 1;
    transform: translate(0);
    transition-duration: 0.3s;
}

.product-grid-item__image--error .btn-quick-buy,
.product-grid-item__image--error:hover .btn-quick-buy,
.product-grid-item__image--error:focus-within .btn-quick-buy {
    opacity: 0;
    transform: translate(calc(15px + var(--btn-icon-size) / 2), calc(15px + var(--btn-icon-size) / 2)) scale(0);
}

.product-grid-item__image--error .errors {
    animation: fadeInOutError 6s ease;
}

.product-grid-item__quick-buy {
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%;
    z-index: 2;
}

.product-badge {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    max-width: 100%;
    margin: 10px;
    display: grid;
    grid-template-columns: minmax(0, 100%);
    gap: 5px;
    justify-items: start;
    transition: transform 0.2s ease;
    pointer-events: none;
}

.product__block .product-badge {
    position: relative;
    margin: 0;
    pointer-events: auto;
}

.product-badge__item {
    font-family: var(--FONT-STACK-SUBHEADING);
    font-weight: var(--FONT-WEIGHT-SUBHEADING);
    font-size: calc(0.875rem * var(--FONT-ADJUST-SUBHEADING));
    text-transform: var(--SUBHEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-SUBHEADING);
    color: inherit;
    background-color: var(--sale-bg);
    color: var(--sale-text);
    text-align: left;
    font-size: calc(0.6875rem * var(--adjust-badges));
    line-height: 1.2;
    transition: opacity 0.15s ease;
    padding: 6px 8px;
    height: auto;
    border-radius: var(--RADIUS-BADGE);
}

@media only screen and (max-width: 479px) {
    .product-badge__item {
        font-size: calc(0.825rem * var(--adjust-badges));
    }
    .product-grid-item__image .product-badge__item {
        font-size: calc(0.6875rem * var(--adjust-badges));
    }
}

.product-badge__item>span {
    display: block;
}

.product-badge__item--sold {
    background-color: var(--sold-bg);
    color: var(--sold-text);
}

.product-badge__item--custom {
    background-color: var(--custom-bg);
    color: var(--custom-text);
}

.product-badge__item--saving {
    background-color: var(--saving-bg);
    color: var(--saving-text);
}

.body--rounded-corners .product-grid-item__image,
.body--rounded-corners .product__media__container,
.body--rounded-corners .product__media__slider:not(.flickity-enabled) .product-gallery__media {
    border-radius: var(--radius);
    overflow: hidden;
}

body:not(.no-outline) .product-grid-item .btn:focus,
body:not(.no-outline) .product-grid-item .shopify-payment-button__button--unbranded:focus,
body:not(.no-outline) .product-grid-item .btn.focus-visible,
body:not(.no-outline) .product-grid-item .focus-visible.shopify-payment-button__button--unbranded {
    opacity: 1;
    transform: translateY(0);
    transition: none;
}

body:not(.no-outline) .product__media:focus,
body:not(.no-outline) .product__media.focus-visible {
    outline: -webkit-focus-ring-color auto 5px;
}

body:not(.no-outline) .product__media__holder:focus .product__media {
    outline: auto;
    outline: -webkit-focus-ring-color auto 5px;
    outline-offset: -6px;
}

body:not(.no-outline) .product__media__hover {
    display: none;
}

body:not(.no-outline) .product-grid-item__image:hover .product__media__image--hover-wipe {
    -webkit-clip-path: unset;
    clip-path: unset;
}

body:not(.no-outline) .product-grid-item__image .btn-quick-buy {
    transform: scale(1);
}


/*================ Siblings ================*/

.siblings {
    --swatch: var(--text, var(--swatch-default));
    --swatch-size: 44px;
    --inner-offset: calc(var(--BORDER-WIDTH) + 2px);
    --swatches-gap: 12px;
    border: 0;
    margin: 0 0 calc(-1 * var(--swatches-gap));
    padding: 0;
    display: flex;
    width: 100%;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    font-size: 0;
}

@media only screen and (max-width: 767px) {
    .siblings {
        --swatches-gap: 8px;
    }
}

.siblings+.siblings {
    padding-block-start: var(--swatches-gap);
}

.siblings--pc {
    --swatch-size: 12px;
    --inner-offset: calc(var(--BORDER-WIDTH) + 1px);
    --swatches-gap: 6px;
    justify-content: center;
}

@media only screen and (max-width: 479px) {
    .siblings--pc {
        --swatch-size: 15px;
    }
}

.siblings--pc .siblings__swatch--rectangle {
    --swatch-size: 20px;
}

@media only screen and (max-width: 479px) {
    .siblings--pc .siblings__swatch--rectangle {
        --swatch-size: 24px;
    }
}

.body--rounded-corners .siblings--pc .siblings__swatch--rectangle {
    border-radius: var(--radius-small);
}

.siblings--pc .siblings__swatch--rectangle .siblings__button {
    --rectangle-ratio: calc(var(--swatch-size) / 2);
}

.body--rounded-corners .siblings--pc .siblings__swatch--rectangle[aria-current=true] .siblings__button::after {
    border-radius: var(--radius-small);
}

.product-grid-item__info--inline .siblings--pc,
.product-grid-item__info--left .siblings--pc {
    justify-content: flex-start;
}

.siblings__legend {
    flex: 0 0 100%;
}

.siblings__button {
    position: relative;
    width: var(--swatch-size);
    height: var(--swatch-size);
    min-width: var(--swatch-size);
    display: block;
}

.siblings__button .lazy-image {
    height: 100%;
}

.siblings__swatch {
    margin: 0 var(--swatches-gap) var(--swatches-gap) 0;
    overflow: hidden;
}

.siblings__swatch:last-child {
    margin-right: 0;
}

.siblings__swatch[aria-current=true] {
    cursor: default;
}

.siblings__swatch[aria-current=true] .siblings__button::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: var(--swatch-size);
    height: var(--swatch-size);
    min-width: var(--swatch-size);
    border: var(--BORDER-WIDTH) solid var(--swatch, var(--swatch-default));
    z-index: 10;
}

.siblings__swatch[aria-current=true] .siblings__button {
    border: var(--inner-offset) solid var(--bg);
}

.siblings__swatch--sold-out img {
    opacity: 0.8;
}

.siblings__swatch--sold-out .siblings__button::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 2;
    width: var(--BORDER-WIDTH);
    height: 100%;
    border-radius: 0;
    background: var(--text);
    transform: translate(-50%, -50%) rotate(45deg);
}

.siblings__swatch--sold-out[aria-current=true] .siblings__button::before {
    height: calc(100% + 2 * var(--inner-offset));
}

.siblings__swatch--circle img,
.siblings__swatch--circle svg {
    border-radius: 50%;
    overflow: hidden;
}

.siblings__swatch--circle .siblings__button,
.siblings__swatch--circle .siblings__button::after {
    border-radius: 50%;
}

.siblings__swatch--colors {
    --swatch: #CCC;
}

.siblings__swatch--colors .icon-check {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 22px;
    transform: translate(-50%, -50%);
}

.siblings--pc .siblings__swatch--colors .icon-check {
    width: 15px;
}

.siblings__swatch--colors .siblings__button {
    background: var(--swatch, var(--swatch-default)) no-repeat center center/cover;
}

.siblings__swatch--rectangle {
    --swatch-size: 56px;
    --rectangle-ratio: calc(var(--swatch-size) / 1.6);
}

.siblings__swatch--rectangle svg,
.siblings__swatch--rectangle .siblings__button,
.siblings__swatch--rectangle[aria-current=true] .siblings__button::after {
    height: var(--rectangle-ratio);
}

.siblings__swatch--rectangle[aria-current=true] svg {
    height: calc(var(--rectangle-ratio) - var(--inner-offset) * 2);
}

.siblings__swatch--rectangle.siblings__swatch--sold-out .siblings__button::before {
    --offset-diagonals: calc(var(--inner-offset) * 1.4);
    height: calc(var(--swatch-size) + var(--offset-diagonals) * 2);
    transform: translate(-50%, -50%) rotate(59deg);
}

.palette--light .siblings__swatch--colors .siblings__button[data-swatch=white i] {
    border: var(--BORDER-WIDTH) solid var(--COLOR-BORDER);
}

.palette--light .siblings__swatch--colors[aria-current=true] .siblings__button[data-swatch=white i] {
    border: var(--inner-offset) solid var(--COLOR-BLACK-ALPHA-10);
}

.palette--light .siblings__swatch--colors[aria-current=true] .siblings__button[data-swatch=white i]::after {
    border-color: var(--COLOR-BLACK);
}

.palette--light .siblings__swatch--colors.siblings__swatch--sold-out .siblings__button[data-swatch=black i]::before {
    background: var(--COLOR-WHITE);
}

.palette--light .siblings__swatch--image[aria-current=true] .siblings__button[data-swatch=white i]::after {
    border-color: var(--text);
}

.palette--dark .siblings__swatch--colors .siblings__button[data-swatch=black i] {
    border: var(--BORDER-WIDTH) solid var(--COLOR-BORDER);
}

.palette--dark .siblings__swatch--colors[aria-current=true] .siblings__button[data-swatch=black i] {
    border: var(--inner-offset) solid var(--COLOR-WHITE-ALPHA-50);
}

.palette--dark .siblings__swatch--colors[aria-current=true] .siblings__button[data-swatch=black i]::after {
    border-color: var(--COLOR-WHITE);
}

.palette--dark .siblings__swatch--colors.siblings__swatch--sold-out .siblings__button[data-swatch=white i]::before {
    background: var(--COLOR-BLACK);
}

.palette--dark .siblings__swatch--image[aria-current=true] .siblings__button[data-swatch=black i]::after {
    border-color: var(--text);
}


/*================ Product Upsell ================*/

.body--rounded-corners .upsell__products {
    overflow: initial;
}

.upsell__products .flickity-page-dots {
    --text: var(--COLOR-TEXT);
    bottom: -28px;
}

.upsell__products--slider {
    padding-bottom: calc(var(--PBB) + 28px);
}

.product-upsell__holder {
    --heading: var(--upsells-text);
    --text-lighten: var(--upsells-text-lighten);
    --disabled-grey-darken: var(--upsells-disabled-grey-darken);
    --inner: 12px;
    --border-color: var(--upsells-border, transparent);
    border: var(--BORDER-WIDTH) solid var(--border-color);
    padding: var(--inner);
    width: 100%;
    background: var(--upsells-bg);
    color: var(--upsells-text);
    transition: opacity 0.3s;
}

.product-upsell__holder.fade-out {
    opacity: 0;
}

.flickity-slider .product-upsell__holder {
    margin-right: var(--inner);
}

.product-upsell__holder a:not(.product-upsell__btn) {
    color: var(--upsells-text);
}

.product-upsell__holder__title {
    font-weight: var(--FONT-WEIGHT-HEADING);
    --heading-size: calc(1rem * var(--adjust-heading));
    font-size: var(--heading-size);
}

@media only screen and (max-width: 767px) {
    .product-upsell__holder__title {
        --heading-size: calc(0.875rem * var(--adjust-heading));
    }
}

.product-upsell {
    min-height: calc(var(--UPSELLS-HEIGHT) - 2 * (var(--inner) + var(--BORDER-WIDTH)));
    position: relative;
    display: flex;
    justify-content: flex-start;
}

.product-upsell__content {
    position: relative;
    z-index: 2;
    flex: 0 0 calc(100% - var(--UPSELLS-IMAGE-WIDTH));
    max-width: calc(100% - var(--UPSELLS-IMAGE-WIDTH));
    padding: 5px 0 5px var(--inner);
    font-size: calc(1rem * var(--adjust-body));
    display: flex;
    flex-flow: column wrap;
}

.product-upsell__content .shopify-product-form {
    margin-top: auto;
}

.product-upsell__image {
    position: relative;
    max-width: var(--UPSELLS-IMAGE-WIDTH);
    flex: 0 0 var(--UPSELLS-IMAGE-WIDTH);
    display: block;
    background-color: var(--upsells-bg);
    overflow: hidden;
}

.product-upsell__title {
    font-family: var(--FONT-STACK-HEADING);
    font-weight: var(--FONT-WEIGHT-HEADING);
    font-style: var(--FONT-STYLE-HEADING);
    text-transform: var(--HEADING-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-HEADING);
    font-size: calc(1rem * var(--adjust-heading));
    margin: 0 10px 10px 0;
}

.product-upsell__subtitle {
    margin: 0 0 10px;
    font-size: calc(0.75rem * var(--adjust-body));
}

.product-upsell__row {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
}

.product-upsell__variant-title {
    color: var(--text-lighten);
    font-size: calc(0.8rem * var(--adjust-body));
    margin: 0;
}

.product-upsell__variant-title span {
    display: inline-block;
    width: 2px;
    height: 2px;
    border-radius: 50%;
    margin: 0 4px;
    background-color: currentcolor;
    vertical-align: middle;
    opacity: 0.8;
}

.product-upsell__price {
    margin: 0 0 10px;
    font-size: calc(0.75rem * var(--adjust-body));
}

.product-upsell__price-new {
    margin-right: 5px;
}

.product-upsell__price-new:last-child {
    margin-right: 0;
}

.product-upsell__unit-price {
    --text-size: calc(0.75rem * var(--adjust-body));
    font-size: var(--text-size);
    line-height: calc(1.171875 * var(--adjust-body));
    opacity: 0.5;
}

.product-upsell__btn {
    min-width: 0;
    margin-top: auto;
    align-self: flex-start;
}

@media only screen and (max-width: 479px) {
    .product-upsell__btn {
        width: auto;
    }
}

.product-upsell__btn.btn--small {
    --top-bottom-padding: 6px;
    --left-right-padding: 20px;
}

.product-upsell__btn.btn--medium {
    --top-bottom-padding: 9px;
    --left-right-padding: 26px;
}

.product-upsell__btn.btn--large {
    --top-bottom-padding: 12px;
    --left-right-padding: 28px;
}

.product-upsell__btn-hidden {
    visibility: hidden;
    position: absolute;
    top: 0;
    left: 0;
    font-size: 80%;
    opacity: 0;
    white-space: nowrap;
}

.product-upsell__btn-progress {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content-visibility: hidden;
    opacity: 0;
    transition: opacity 0.3s ease;
}

.product-upsell__btn-check {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 14px;
    height: 8px;
    border-left: var(--BORDER-WIDTH) solid var(--white);
    border-bottom: var(--BORDER-WIDTH) solid var(--white);
    margin-top: -2px;
    transform: translate(-50%, -50%) rotate(-45deg);
    opacity: 0;
}

.product-upsell__btn.is-success,
.product-upsell__btn.is-success:disabled,
.product-upsell__btn.is-success:disabled:hover {
    --btn-text: var(--SECONDARY-BUTTONS-COLOR-BG);
    --btn-bg: var(--SECONDARY-BUTTONS-COLOR-TEXT);
    --btn-border: var(--SECONDARY-BUTTONS-COLOR-TEXT);
}

.product-upsell__btn.is-loading .svg-loader circle {
    stroke: var(--SECONDARY-BUTTONS-COLOR-ALPHA-50);
}

.product-upsell__btn.is-loading .svg-loader circle~circle {
    stroke: var(--SECONDARY-BUTTONS-COLOR-TEXT);
}

.product-upsell__btn.is-loading,
.product-upsell__btn.is-loading:disabled,
.product-upsell__btn.is-loading:disabled:hover,
.product-upsell__btn.btn--secondary.is-loading:hover {
    --btn-text: var(--SECONDARY-BUTTONS-COLOR-TEXT);
    --btn-bg: var(--SECONDARY-BUTTONS-COLOR-BG);
}

.product-upsell__btn.btn--secondary.is-loading:hover,
.btn--secondary .product-upsell__btn.is-loading.shopify-payment-button__button--unbranded:hover {
    transition: none;
}

.product-upsell__btn.btn--secondary.is-loading:hover::before,
.btn--secondary .product-upsell__btn.is-loading.shopify-payment-button__button--unbranded:hover::before {
    transform-origin: unset;
    transform: scaleY(0);
}

.product-upsell__btn.is-success>.product-upsell__btn-text,
.product-upsell__btn.is-success>.product-upsell__btn-price {
    opacity: 0;
}

.product-upsell__btn.is-success>.product-upsell__btn-check {
    opacity: 1;
    border-left-color: currentcolor;
    border-bottom-color: currentcolor;
}

.product-upsell__btn.is-loading {
    pointer-events: none;
}

.product-upsell__btn.is-loading>.product-upsell__btn-text,
.product-upsell__btn.is-loading>.product-upsell__btn-price,
.product-upsell__btn.is-loading>.product-upsell__btn-check {
    opacity: 0;
}

.product-upsell__btn.is-loading>.product-upsell__btn-progress {
    opacity: 1;
    content-visibility: visible;
}

.product-upsell__btn.is-loading>.product-upsell__btn-progress circle~circle {
    animation-play-state: running;
}

.product-upsell__out-of-stock {
    display: none;
    color: var(--disabled-grey-darken);
    margin: 8px 0 0;
    font-size: inherit;
}

.product-upsell__btn.is-hidden {
    display: none;
}

.product-upsell__btn.is-hidden~.product-upsell__out-of-stock {
    display: block;
}

.product-upsell__unavailable {
    margin: 0;
    font-size: calc(0.875rem * var(--adjust-body));
    opacity: 0.65;
}

.product-upsell__errors {
    overflow: hidden;
    visibility: hidden;
    position: relative;
    max-height: 0;
    border: var(--BORDER-WIDTH) solid var(--error);
    border-radius: var(--RADIUS-CHECKBOX);
    background-color: var(--error-bg);
    color: var(--error);
    opacity: 0;
    transition: all 0.3s;
}

.product-upsell__errors.is-visible {
    visibility: visible;
    max-height: 100vh;
    margin: 10px 0;
    opacity: 1;
}

.product-upsell__errors .errors {
    padding: 10px 40px 10px 10px;
    margin: 0;
    border: none;
    text-align: left;
}

.product-upsell__errors .errors__close {
    position: absolute;
    top: 4px;
    right: 12px;
    width: 20px;
    height: 20px;
    padding: 5px;
    z-index: 20;
    cursor: pointer;
}

.product-upsell__errors .icon {
    width: 100%;
    height: 100%;
}

.product-upsell__holder--cart .product-upsell,
.product-upsell__holder--cart .product-upsell__errors.is-visible {
    margin-bottom: 0;
}

.product-upsell__holder--cart .product-upsell__title {
    font-size: calc(0.815rem * var(--adjust-body));
}

.product-upsell__holder--cart .product-upsell__btn,
.product-upsell__holder--cart .product-upsell__variant-title {
    font-size: calc(0.6875rem * var(--adjust-body));
}

.body--rounded-corners .product-upsell__image,
.body--rounded-corners .product-upsell__image img,
.body--rounded-corners .product-upsell__holder,
.body--rounded-corners .upsell__products__slider .flickity-viewport,
.body--rounded-corners .complementary-products__slider .flickity-viewport {
    border-radius: var(--radius);
    overflow: hidden;
}


/*================ Progress bar ================*/

.progress-bar {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 4px 8px;
    height: 8px;
    border-radius: 4px;
    z-index: 1;
    pointer-events: none;
}

.progress-bar__inner {
    position: absolute;
    top: 0;
    left: 0;
    height: 4px;
    border-radius: 2px;
    width: 0%;
    background-color: var(--white);
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.04), 0 1px 2px rgba(0, 0, 0, 0.06);
    animation: none;
    animation-fill-mode: forwards;
}

.progress-bar__inner.fill {
    animation: progressBar var(--autoplay-speed) linear;
}

hover-slideshow .btn-quick-buy {
    bottom: 20px;
}


/*================ Recipient form ================*/

.recipient-form .form__label {
    margin: 10px 0;
    font-size: calc(1.1rem * var(--adjust-label));
}

@media only screen and (max-width: 767px) {
    .recipient-form .form__label {
        margin: var(--form-margin-mobile) 0;
        font-size: calc(0.95rem * var(--adjust-label));
    }
}

.recipient-form .recipient-fields__message {
    margin-top: 0;
}

.recipient-form input[type=checkbox]:checked~.recipient-fields {
    display: block;
}

.aos-initialized .recipient-form input[type=checkbox]:checked~.recipient-fields .recipient-fields__field:nth-child(1) {
    animation: fadeInUp 0.2s;
}

.aos-initialized .recipient-form input[type=checkbox]:checked~.recipient-fields .recipient-fields__field:nth-child(2) {
    animation: fadeInUp 0.4s;
}

.aos-initialized .recipient-form input[type=checkbox]:checked~.recipient-fields .recipient-fields__field:nth-child(3) {
    animation: fadeInUp 0.6s;
}

.aos-initialized .recipient-form input[type=checkbox]:checked~.recipient-fields .recipient-fields__field:nth-child(4) {
    animation: fadeInUp 0.8s;
}

.recipient-fields {
    display: none;
}

.recipient-fields__field {
    margin: var(--inner) 0 0;
}

@media only screen and (max-width: 767px) {
    .recipient-fields__field {
        margin: var(--form-margin-mobile) 0 0;
    }
}

@media only screen and (min-width: 768px) {
    .popup-quick-view__item .recipient-fields__field {
        margin-top: calc(var(--inner) / 2);
    }
}

.recipient-fields__message {
    font-size: calc(0.875rem * var(--adjust-body));
    text-align: right;
}


/*================ Rich text ================*/

.rich-text {
    width: 100%;
    position: relative;
}

.rich-text__top-image {
    position: relative;
    overflow: hidden;
    display: inline-block;
    margin-bottom: 10px;
}

.rich-text__top-image-img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: auto;
}

.rich-text__heading {
    margin-bottom: 12px;
}

.rich-text__heading p {
    margin: 0;
}

.rich-text__text p:last-child {
    margin-bottom: 0;
}

.body--rounded-corners .rich-text__top-image {
    border-radius: var(--radius);
    overflow: hidden;
}


/*================ Select popout ================*/

.select-popout {
    --form-left: 15px;
    --arrow-size: 46px;
    position: relative;
    margin-bottom: 10px;
    text-align: left;
    display: block;
}

.select-popout.sold-out .select-popout__toggle,
.select-popout.unavailable .select-popout__toggle {
    background-color: rgba(92, 92, 92, 0.1);
    text-decoration: line-through;
}

.select-popout+.quantity-selector,
.select-popout+.cart__item__quantity {
    display: none;
}

.select-popout.is-active.select-popout--small,
.select-popout.is-active>* {
    display: none;
}

.select-popout.is-active+.quantity-selector,
.select-popout.is-active+.cart__item__quantity {
    display: block;
}

@media only screen and (min-width: 768px) {
    .select-popout {
        --form-left: 20px;
        --arrow-size: 54px;
    }
}

.select-popout__toggle {
    position: relative;
    overflow: hidden;
    display: block;
    width: 100%;
    padding: var(--form-top) var(--arrow-size) var(--form-top) var(--form-left);
    border: var(--BORDER-WIDTH) solid var(--text);
    border-radius: var(--RADIUS);
    line-height: 1.3;
    text-align: inherit;
    white-space: nowrap;
    text-overflow: ellipsis;
    letter-spacing: 0.02em;
    color: var(--text);
    background: var(--input-bg);
    font-size: calc(0.875rem * var(--adjust-body));
    font-family: var(--FONT-STACK-BODY);
}

@media only screen and (max-width: 767px) {
    .select-popout__toggle {
        font-size: calc(0.75rem * var(--adjust-body));
        padding: 10px var(--arrow-size) 10px var(--form-left);
    }
}

.select-popout__toggle .icon-select {
    position: absolute;
    top: 0;
    right: 0;
    width: var(--arrow-size);
    padding: 0 var(--form-left);
    height: 100%;
    transition: transform 0.4s;
    transform: rotate(90deg);
}

.select-popout__toggle[aria-expanded=true] .icon-select {
    transform: rotate(270deg);
}

.cart__item__bottom .select-popout__toggle {
    padding: 6px 38px 6px 14px;
    border: var(--BORDER-WIDTH) solid var(--COLOR-BORDER-ALPHA-50);
    border-radius: 1px;
    font-size: calc(0.75rem * var(--adjust-body));
    line-height: normal;
}

.cart__item__bottom .select-popout__toggle .icon-select {
    width: 38px;
    padding: 0 12px;
}

.sold-out .select-popout__toggle::after {
    content: attr(data-select-soldout);
}

.unavailable .select-popout__toggle::after {
    content: attr(data-select-unavailable);
}

.select-popout__list {
    position: absolute;
    top: 100%;
    left: 0;
    min-width: 100%;
    overflow: hidden;
    border: var(--BORDER-WIDTH) solid var(--text);
    border-radius: var(--RADIUS);
    margin: 5px 0 0;
    background: var(--input-bg);
    opacity: 0;
    visibility: hidden;
    z-index: -1;
    pointer-events: none;
    transition: opacity 0.15s ease, z-index 0.15s, visibility 0s linear 0.15s;
}

.select-popout__list .sold-out,
.select-popout__list .unavailable {
    text-decoration: line-through;
    background-color: rgba(92, 92, 92, 0.1);
}

.cart__item__bottom .select-popout__list {
    border: var(--BORDER-WIDTH) solid var(--COLOR-BORDER-ALPHA-50);
    border-radius: 1px;
}

.select-popout__list--top {
    top: auto;
    bottom: 100%;
    margin-bottom: 5px;
}

.select-popout__list--visible {
    opacity: 1;
    visibility: visible;
    z-index: 110;
    pointer-events: auto;
    transition: opacity 0.3s ease, z-index 0s, visibility 0s linear 0s;
}

.select-popout__list__scroll {
    --min: 170px;
    --adjustment: 0px;
    --available: calc(var(--max-height, 350px) - var(--adjustment));
    overflow-x: hidden;
    overflow-y: auto;
    margin: 0;
    list-style: none;
    max-height: max(var(--available), var(--min));
    position: relative;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-y;
}

.select-popout__list--top .select-popout__list__scroll {
    --adjustment: calc(2 * var(--BORDER-WIDTH));
}

.select-popout__item {
    display: block;
    margin-bottom: 0;
    min-width: 100px;
    color: var(--text);
    transition: color 0.3s ease-in-out, background-color 0.3s ease-in-out;
}

.select-popout__item:hover,
.select-popout__item.sold-out:hover,
.select-popout__item.unavailable:hover {
    color: var(--bg);
    background-color: var(--text);
}

.cart__item__bottom .select-popout__item {
    min-width: 100%;
}

.select-popout__option {
    display: block;
    padding: var(--form-top) var(--form-left);
    color: inherit;
    font-size: calc(0.875rem * var(--adjust-body));
}

@media only screen and (max-width: 767px) {
    .select-popout__option {
        font-size: calc(0.75rem * var(--adjust-body));
    }
}

.cart__item__bottom .select-popout__option {
    padding: 6px 14px;
    font-size: calc(0.75rem * var(--adjust-body));
    line-height: normal;
}

.select-popout--small {
    max-width: 7.5rem;
}

.cart__item__bottom .select-popout--small {
    width: 80px;
    margin-bottom: 0;
}

.localization-form {
    --form-top: 8px;
    --form-left: 15px;
    --arrow-size: 31px;
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    column-gap: var(--gutter-mobile);
    margin-bottom: calc(var(--gutter-mobile) / 2);
}

@media only screen and (max-width: 767px) {
    .localization-form {
        justify-content: flex-start;
    }
}

.localization-form .select-popout {
    --form-left: inherit;
    --arrow-size: inherit;
    margin-bottom: 0;
}

.shopify-section-header .localization-form {
    margin-bottom: 0;
    padding: 0 8px;
}

@media only screen and (max-width: 1439px) {
    .shopify-section-header .localization-form {
        display: none;
    }
}

.localization-form .select-popout__list {
    margin: 0 0 5px;
    background-color: var(--bg);
    border-radius: var(--RADIUS-SMALL);
}

.shopify-section-header .localization-form .select-popout__list {
    bottom: auto;
    top: 100%;
    margin: 5px 0 0;
}

footer .localization-form .select-popout__list {
    top: auto;
    bottom: 100%;
}

@media only screen and (min-width: 1024px) {
    .localization-form .select-popout__list {
        left: 50%;
        transform: translateX(-50%);
    }
}

.localization-form .select-popout--country .select-popout__list {
    min-width: max(210px, 100%);
}

.localization-form .select-popout--country .select-popout__list__scroll,
.localization-form .select-popout--lang .select-popout__list__scroll {
    max-height: calc((0.875rem * var(--adjust-body) * 1.5625 + var(--form-top) * 2) * 4);
}

@media only screen and (max-width: 767px) {
    .localization-form .select-popout--country .select-popout__list__scroll,
    .localization-form .select-popout--lang .select-popout__list__scroll {
        max-height: calc((0.75rem * var(--adjust-body) * 1.5625 + var(--form-top) * 2) * 4);
    }
}

.localization-form.localization-form--country-flag .select-popout--country .select-popout__list {
    min-width: max(240px, 100%);
}

.localization-form .select-popout__toggle {
    padding-left: 0;
    padding-right: calc(var(--arrow-size) - 9px);
    display: flex;
    flex-flow: row wrap;
    align-items: center;
    color: var(--text);
    background-color: var(--bg);
    border: none;
    margin: 0;
}

.site-header--transparent .localization-form .select-popout__toggle {
    background-color: transparent;
}

.localization-form .icon-select {
    right: -9px;
    width: var(--arrow-size);
    padding: 0 var(--form-top);
    pointer-events: none;
}

.localization-form .select-popout__option {
    --text: var(--COLOR-MENU-LINK);
    display: flex;
    flex-flow: row nowrap;
    align-items: center;
}

.localization-form .select-popout__item--current .select-popout__option span {
    border-bottom: var(--BORDER-WIDTH) solid var(--border);
    transition: border-color 0.3s ease-in-out;
}

.site-header .localization-form .select-popout__item--current span,
.drawer .localization-form .select-popout__item--current span {
    border-color: var(--text);
}

.site-header .localization-form .select-popout__item--current:hover .select-popout__option span,
.drawer .localization-form .select-popout__item--current:hover .select-popout__option span {
    border-color: var(--bg);
}

.site-header .localization-form .select-popout__item:hover span,
.drawer .localization-form .select-popout__item:hover span {
    color: var(--bg);
}

.localization-form .select-popout__flag {
    display: inline-block;
    vertical-align: top;
    width: 20px;
    height: 15px;
    margin-right: 8px;
    object-fit: cover;
}


/*================ Star rating ================*/

.rating__star {
    position: relative;
    display: block;
    margin: 0 0 2px;
}

.rating__star .icon {
    display: block;
    width: 12px;
    height: 12px;
}

.rating__star__empty,
.rating__star__full {
    display: flex;
}

.rating__star__empty .icon,
.rating__star__full .icon {
    margin-right: 2px;
}

.rating__star__empty .icon:last-child,
.rating__star__full .icon:last-child {
    margin-right: 0;
}

.rating__star__full {
    position: absolute;
    top: 0;
    left: 0;
    clip-path: inset(0 var(--percent) 0 0);
    -webkit-clip-path: inset(0 var(--percent) 0 0);
}

.rating__star .icon-star {
    stroke: currentcolor;
    stroke-width: 1px;
    fill: currentcolor;
}

.rating__star .icon-star--empty {
    fill: transparent;
}


/*================ Swatches ================*/

.swatch__label:hover {
    cursor: pointer;
}

.swatch__button {
    --swatch: #CCC;
    display: inline-block;
    vertical-align: top;
    position: relative;
    pointer-events: initial;
}

.swatch__input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
    display: block;
}

.swatch__button .swatch__label {
    --inner-offset: calc(var(--BORDER-WIDTH) + 5px);
    --inner-size: calc(var(--swatch-size) - var(--inner-offset));
    --adjust-size: calc(var(--inner-size) - var(--BORDER-WIDTH));
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
    width: var(--swatch-size);
    height: var(--swatch-size);
    margin: 0;
    border-radius: 50%;
    color: var(--black);
    background: var(--swatch, var(--swatch-default)) no-repeat center center/cover;
    overflow: hidden;
}

@media only screen and (max-width: 767px) {
    .swatch__button .swatch__label {
        --inner-offset: calc(var(--BORDER-WIDTH) + 3px);
    }
}

.swatch__button .swatch__label::before {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 2;
    width: var(--inner-size);
    height: var(--inner-size);
    border-radius: 50%;
    border: var(--BORDER-WIDTH) solid var(--bg);
    opacity: 0;
    visibility: hidden;
}

.swatch__button .swatch__label::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    z-index: 1;
    width: var(--adjust-size);
    height: var(--BORDER-WIDTH);
    background-color: var(--text);
    transform: translate(-50%, -50%) rotate(135deg);
    opacity: 0;
    visibility: hidden;
}

.swatch__button .swatch__label--empty {
    border-style: dashed;
}

.swatch__button--rectangle .swatch__label {
    --adjust-size: calc(var(--swatch-width) - var(--BORDER-WIDTH));
    border-radius: var(--RADIUS);
    width: var(--swatch-width);
    height: var(--swatch-height);
    color: var(--swatch, var(--swatch-default));
}

.swatch__button--rectangle .swatch__label::before {
    border-radius: var(--RADIUS);
    width: calc(var(--swatch-width) - var(--inner-offset));
    height: calc(var(--swatch-height) - var(--inner-offset));
}

.swatch__button--rectangle .swatch__label::after {
    width: calc(var(--adjust-size) - 30%);
    height: var(--BORDER-WIDTH);
    transform: translate(-50%, -50%) rotate(152deg);
}

.swatch__button.sold-out .swatch__label::after,
.swatch__button.unavailable .swatch__label::after {
    opacity: 1;
    visibility: visible;
}

.swatch__button .icon-check {
    display: block;
    width: 16px;
    margin-right: 2px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.2s ease, visibility 0s linear 0.2s;
    fill: var(--white);
    position: relative;
}

.swatch__button .swatch__input:checked~.swatch__label::before {
    opacity: 1;
    visibility: visible;
}

.swatch__button:not(.sold-out, .unavailable) .swatch__input:checked~.swatch__label .icon {
    visibility: visible;
    opacity: 1;
    transition-delay: 0s;
}

.palette--light .swatch__button .swatch__label[data-swatch=white i] {
    border: var(--BORDER-WIDTH) solid var(--COLOR-BLACK);
}

.palette--light .swatch__button .swatch__label[data-swatch=white i]::before {
    border-color: inherit;
}

.palette--light .swatch__button .swatch__label--empty[data-swatch=white i] {
    border: var(--BORDER-WIDTH) dashed var(--COLOR-BLACK);
}

.palette--light .swatch__button--circle .swatch__label[data-swatch=white i]::before {
    width: var(--adjust-size);
    height: var(--adjust-size);
}

.palette--light .swatch__button--circle .swatch__label[data-swatch=white i]::after {
    width: calc(var(--adjust-size) - var(--BORDER-WIDTH));
}

.swatch__button.sold-out .swatch__label[data-swatch=white i]::after {
    background-color: var(--COLOR-BLACK);
}

.palette--dark .swatch__button .swatch__label[data-swatch=black i] {
    border: var(--BORDER-WIDTH) solid var(--COLOR-WHITE);
}

.palette--dark .swatch__button .swatch__label[data-swatch=black i]::before {
    border-color: inherit;
}

.palette--dark .swatch__button--circle .swatch__label[data-swatch=black i]::before {
    width: var(--adjust-size);
    height: var(--adjust-size);
}

.palette--dark .swatch__button--circle .swatch__label[data-swatch=black i]::after {
    width: calc(var(--adjust-size) - var(--BORDER-WIDTH));
}

.swatch__button.sold-out .swatch__label[data-swatch=black i]::after {
    background-color: var(--COLOR-WHITE);
}

.swatch__button .swatch__link {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    font-size: 0;
    font-style: normal;
    line-height: 0;
    text-indent: -100%;
    overflow: hidden;
}

.is-focused .swatch__button .swatch__input:focus~.swatch__label::before {
    position: absolute;
    content: "";
    left: -3px;
    bottom: -10px;
    height: 2px;
    width: calc(100% + 6px);
    background: var(--SECONDARY-BUTTONS-COLOR-BG);
}

.is-focused .radio__button input:focus~.swatch__label::before {
    position: absolute;
    content: "";
    left: 0;
    bottom: -10px;
    height: 2px;
    width: 100%;
    background: var(--SECONDARY-BUTTONS-COLOR-BG);
}

body:not(.no-outline) .swatch__button .swatch__input:focus+.swatch__label,
body:not(.no-outline) .swatch__button .swatch__input.focus-visible+.swatch__label {
    outline: -webkit-focus-ring-color auto 5px;
}


/*================ Tabs ================*/

.tabs {
    position: relative;
}

.tabs__head {
    position: relative;
    z-index: 2;
    overflow: hidden;
}

@media only screen and (max-width: 1023px) {
    .tabs__head {
        overflow: visible;
    }
}

.tabs__arrow {
    position: absolute;
    top: 50%;
    display: block;
    width: 24px;
    height: 24px;
    max-height: none;
    margin-top: -12px;
    border-radius: 0;
    background-color: var(--bg);
    box-shadow: none;
}

.tabs__arrow--prev {
    left: 0;
    transform: rotate(90deg);
}

.tabs__arrow--next {
    right: 0;
    transform: rotate(-90deg);
}

.tabs__contents {
    position: relative;
    height: 100% !important;
}

.tabs__nav {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    margin: 0;
    padding: 0;
    list-style: none;
    position: relative;
    white-space: nowrap;
    font-size: calc(1rem * var(--text-size));
    color: var(--text-lighten);
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.tabs__nav::-webkit-scrollbar {
    display: none;
}

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

.tabs__link {
    margin-right: 30px;
    margin-bottom: 0;
    flex: 0 0 auto;
    background: none;
    cursor: pointer;
    vertical-align: bottom;
    border-bottom: 3px solid transparent;
    white-space: normal;
}

.tabs__link:last-child {
    margin-right: 0;
}

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

.tab {
    position: absolute;
    top: 0;
    width: 100%;
    padding-top: 15px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

.tab .flickity-button {
    display: none;
}

.tab.current {
    position: static;
    opacity: 1;
    visibility: visible;
    display: inherit;
    transition: opacity 0.3s ease, visibility 0s linear 0s;
    pointer-events: all;
}

.tab.current .flickity-button {
    display: block;
    background: var(--bg);
}

.tabs-wrapper {
    overflow: hidden;
    position: relative;
    padding-top: 30px;
}

.tabs-scrollbar {
    width: 100%;
}

.tabs-scrollbar__holder {
    display: inline-block;
    overflow-x: auto;
    max-width: 100%;
    text-align: center;
    scrollbar-width: none;
    -ms-overflow-style: none;
}

.tabs-scrollbar__holder::-webkit-scrollbar {
    display: none;
}

@media only screen and (max-width: 1023px) {
    .tabs-scrollbar__holder {
        max-width: calc(100% + var(--gutter-mobile) * 2);
        padding: 0 var(--gutter-mobile);
        margin: 0 calc(var(--gutter-mobile) * -1);
    }
}

.tabs-scrollbar__holder .tabs__nav {
    overflow: visible;
}


/*================ Text highlight decorations and animations ================*/

.text-highlight {
    color: var(--highlight-text-color, var(--heading));
    position: relative;
    display: inline-block;
}

.text-highlight__icon {
    position: absolute;
    z-index: -1;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    background-image: var(--icon-url);
    transform: translate(-50%, -50%);
    color: var(--icon-color);
}

.text-highlight__icon--pseudo {
    background: none;
}

.text-highlight__icon svg {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: auto;
    transform: translate(-50%, -50%);
    pointer-events: none;
    z-index: -1;
}

.text-highlight__break {
    display: block;
}

.haspercentoff a,
.haspercentoff .text-highlight {
    white-space: nowrap;
}

.text-highlight-wrapper {
    --height-multiplier: 0.06;
    --heading-margin: var(--inner);
    --decoration-height: calc(var(--heading-size, 3rem) * var(--height-multiplier));
    position: relative;
    z-index: 1;
}

.text-highlight-wrapper~* {
    position: relative;
    z-index: 2;
}

.text-highlight-wrapper.slide__heading,
.text-highlight-wrapper.split-images__heading,
.video-text-wrapper .text-highlight-wrapper.main-heading {
    margin-bottom: calc(var(--heading-margin) / 1.5);
}

.slide__heading:not(.text-highlight-wrapper):has(a),
.split-images__heading:not(.text-highlight-wrapper):has(a),
.video-text-wrapper .main-heading:not(.text-highlight-wrapper):has(a) {
    margin-bottom: calc(var(--inner) / 1.5);
}

.text-highlight-wrapper [data-has-highlight] {
    text-decoration: none;
}

ul:has(.text-reveal__cropper) li,
ol:has(.text-reveal__cropper) li {
    margin-bottom: 0;
}

.aos-initialized .text-highlight-wrapper .text-reveal__cropper {
    overflow: visible;
}

.aos-initialized .text-highlight-wrapper:has(.text-reveal__cropper.overflow-hidden) .text-reveal__cropper {
    overflow: hidden;
}

.text-highlight-wrapper:has(a:not([data-has-highlight])) .text-reveal__cropper a::before,
.text-highlight-wrapper:has(a:not([data-has-highlight])) .text-reveal__cropper a::after {
    bottom: 0;
}

.text-reveal__cropper:not(:has(.text-highlight)) {
    position: relative;
    z-index: 2;
}

.text-highlight-wrapper--circle {
    margin-bottom: var(--heading-margin);
}

.text-highlight-wrapper--circle .text-highlight {
    z-index: -1;
}

.text-highlight-wrapper--circle .text-highlight path {
    stroke-dasharray: 506;
    stroke-dashoffset: 506;
    opacity: 0;
}

.text-highlight-wrapper--circle .text-highlight__icon {
    width: 125%;
    height: 125%;
    transform: translate(-50%, -50%) scale(-1);
}

.text-highlight-wrapper--circle .text-highlight__icon svg {
    width: 85%;
    transform: translate(-50%, -50%) scaleY(0.8);
}

.text-highlight-wrapper--circle .text-highlight__icon--single-word svg {
    width: 100%;
    transform: translate(-50%, -50%);
}

.text-highlight-wrapper--circle .text-highlight__icon--single-word svg path {
    stroke-width: 4px;
}

.text-highlight-wrapper--circle .text-highlight__icon--short svg {
    transform: translate(-50%, -50%) scaleY(1.5);
}

.text-highlight-wrapper--circle .text-highlight__icon--l1 svg {
    width: 220%;
    transform: translate(-50%, -50%) scaleY(1.8);
}

.text-highlight-wrapper--circle .text-highlight__icon--l2 svg {
    width: 160%;
}

.text-highlight-wrapper--circle .text-highlight__icon--l3 svg {
    width: 130%;
}

.text-highlight-wrapper--circle .text-highlight__icon--long svg {
    width: 85%;
    transform: translate(-50%, -50%) scaleY(0.8);
}

.text-highlight-wrapper--circle .text-highlight__icon--long svg path {
    stroke-width: 2px;
}

.text-highlight-wrapper--circle.haspercentoff .text-highlight__icon svg {
    width: 110%;
    transform: translate(-50%, -50%) scaleY(1.3);
}

.text-highlight-wrapper--circle.haspercentoff .text-highlight__icon path {
    stroke-width: 4px;
}

.text-highlight-wrapper--circle-hand-drawn {
    margin-bottom: var(--heading-margin);
}

.text-highlight-wrapper--circle-hand-drawn .text-highlight {
    z-index: -1;
}

.text-highlight-wrapper--circle-hand-drawn .text-highlight path {
    opacity: 0;
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
}

.text-highlight-wrapper--circle-hand-drawn .text-highlight__icon {
    width: 145%;
    height: 145%;
}

.text-highlight-wrapper--squiggle {
    margin-bottom: var(--heading-margin);
    --height-multiplier: 0.13;
}

@media only screen and (max-width: 767px) {
    .text-highlight-wrapper--squiggle {
        --height-multiplier: 0.15;
    }
}

.text-highlight-wrapper--squiggle svg {
    display: none;
}

.text-highlight-wrapper--squiggle .text-highlight__icon {
    background: currentcolor;
    top: auto;
    left: 0;
    bottom: 0;
    height: var(--decoration-height);
    margin-bottom: calc(-1px * var(--adjust-heading));
    transform: none;
    -webkit-mask: var(--icon-url) repeat-x center;
    mask: var(--icon-url) repeat-x center;
    -webkit-mask-position: 100% 0;
    mask-position: 100% 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
}

.text-highlight-wrapper--stroke:not(.haspercentoff):not(.hasnumberpercent) .text-highlight,
.text-highlight-wrapper--highlight-color:not(.haspercentoff):not(.hasnumberpercent) .text-highlight {
    display: inline;
}

.text-highlight-wrapper--stroke {
    --height-multiplier: 0.03;
}

.text-highlight-wrapper--stroke .text-highlight__string,
.text-highlight-wrapper--stroke .text-highlight__string sup {
    text-stroke: var(--decoration-height) var(--highlight-text-color, var(--text));
    -webkit-text-stroke: var(--decoration-height) var(--highlight-text-color, var(--text));
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    background-repeat: no-repeat;
    background-image: linear-gradient(135deg, transparent 50%, var(--highlight-text-color, var(--text)) 50.1%, var(--highlight-text-color, var(--text)) 100%);
    background-size: 260% 100%;
    background-position: 100% 0;
}

.text-highlight-wrapper--highlight .text-highlight {
    --offset: -2%;
}

.text-highlight-wrapper--highlight .text-highlight__icon--pseudo::before {
    content: "";
    position: absolute;
    top: 0;
    left: var(--offset);
    right: var(--offset);
    height: 100%;
    background: linear-gradient(0deg, var(--highlight-color, transparent), var(--highlight-color, transparent)) no-repeat right bottom/100% 100%;
    transform: scaleX(0);
    transform-origin: 0 0;
    z-index: -1;
}

@media (hover: hover) {
    .text-highlight-wrapper--highlight a:hover .text-highlight__icon--pseudo::before,
    .text-highlight-wrapper--highlight .search-popdown__toggle:hover .text-highlight__icon--pseudo::before {
        transform-origin: 0 100%;
    }
}

.text-highlight-wrapper--highlight-color .text-highlight__string,
.text-highlight-wrapper--highlight-color .text-highlight__string sup {
    background: var(--highlight-text-color, var(--text));
    background-image: linear-gradient(90deg, transparent 10%, var(--text) 40%, var(--text) 100%);
    background-size: 200% 100%;
    background-position: 100% 0;
    -webkit-text-fill-color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
}

.text-highlight-wrapper--alternate-font .text-highlight__string {
    opacity: 0;
    font-family: var(--FONT-STACK-HIGHLIGHT);
    font-weight: var(--FONT-WEIGHT-HIGHLIGHT);
    font-style: var(--FONT-STYLE-HIGHLIGHT);
}

.text-highlight-wrapper--underline .text-highlight {
    --offset: 0;
}

.text-highlight-wrapper--underline .text-highlight__string {
    position: relative;
    display: inline-block;
}

.text-highlight-wrapper--underline .text-highlight__string::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: var(--offset);
    right: var(--offset);
    height: 3px;
    display: block;
    background: var(--highlight-color, var(--text));
    transform: scaleX(0);
    transform-origin: left;
    z-index: -1;
}

.text-highlight-wrapper--underline-hand-drawn .text-highlight__icon svg {
    top: 75%;
    transform: translateX(-50%);
    width: 108%;
}

.text-highlight-wrapper--underline-hand-drawn .text-highlight path {
    opacity: 0;
    stroke-dasharray: 1;
    stroke-dashoffset: 1;
}

.text-highlight-wrapper--line a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
    display: inline;
}

.text-highlight-wrapper--line a::before,
.text-highlight-wrapper--line a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.text-highlight-wrapper--line a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.text-highlight-wrapper--line a::after {
    transform-origin: right;
}

.text-highlight-wrapper--line a::after {
    opacity: 0;
}

.text-highlight-wrapper--line a:hover::before,
.text-highlight-wrapper--line a:hover::after {
    transition: transform 1.1s cubic-bezier(0.19, 1, 0.22, 1);
}

.text-highlight-wrapper--line a:hover::before {
    transform: scaleX(1);
    transition-delay: 0.25s;
}

.text-highlight-wrapper--line a:hover::after {
    transform: scaleX(0);
    opacity: 1;
}

.text-highlight-wrapper--dot a {
    position: relative;
    display: inline-block;
    text-decoration: none !important;
}

.text-highlight-wrapper--dot a::before,
.text-highlight-wrapper--dot a::after {
    content: "";
    position: absolute;
    left: 0;
    bottom: -0.1rem;
    width: 100%;
    height: var(--BORDER-WIDTH);
    display: block;
    background: var(--btn-text, var(--link));
    transition: none;
    pointer-events: none;
}

.text-highlight-wrapper--dot a::before {
    transform: scaleX(0);
    transform-origin: left;
}

.text-highlight-wrapper--dot a::after {
    transform-origin: right;
}

.text-highlight-wrapper--dot a::before {
    content: none;
}

.text-highlight-wrapper--dot a::after {
    left: 50%;
    bottom: -0.25rem;
    width: 3px;
    height: 3px;
    background: currentcolor;
    border-radius: 100%;
    transform-origin: center;
    transform: translateX(-50%) scale(0.25);
    transition: transform 0.3s ease;
    opacity: 0;
}

.text-highlight-wrapper--dot a:hover::after {
    transform: translateX(-50%) scale(1);
    opacity: 1;
}


/*================ Variants ================*/

.product__selectors {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 50%));
    row-gap: var(--grid-gutter);
    margin-right: calc(var(--form-left) * -1);
    z-index: 110;
}

@media only screen and (max-width: 767px) {
    .product__selectors {
        row-gap: calc(var(--form-margin-mobile) * 2);
    }
    .variant__labels--hide .product__selectors {
        row-gap: var(--form-margin-mobile);
    }
}

@media only screen and (max-width: 767px) {
    .product__selectors {
        --swatch-size: var(--swatch-size-mobile);
    }
}

@media only screen and (max-width: 479px) {
    .product__selectors {
        grid-template-columns: minmax(0, 100%);
        margin-right: 0;
    }
}

@media only screen and (max-width: 767px) {
    .product__selectors .swatch__button .swatch__label .icon {
        width: 14px;
        margin-right: 1px;
    }
}

.product__selectors .selector-wrapper {
    margin-right: var(--form-left);
    font-size: 0;
}

@media only screen and (max-width: 479px) {
    .product__selectors .selector-wrapper {
        margin-right: 0;
        width: 100%;
    }
}

.product__selectors .selector-wrapper .select-popout {
    margin-bottom: 0;
}

.product__selectors .selector-wrapper .select-popout--small {
    max-width: none;
}

.product__selectors .selector-wrapper--boxes,
.product__selectors .selector-wrapper--swatches {
    grid-column: 1/-1;
}

.product__selectors .selector-wrapper--swatches {
    order: -1;
    margin-bottom: 0;
}

.selector-wrapper--swatches {
    position: relative;
}

.selector-wrapper--swatches .radio__legend {
    z-index: auto;
}

.selector-wrapper--swatches .radio__legend__label {
    display: block;
}

.selector-wrapper--swatches .radio__fieldset {
    padding-top: calc((var(--BORDER-WIDTH) + 5px) / 2);
    padding-left: calc((var(--BORDER-WIDTH) + 5px) / 2);
    margin-top: calc(-1 * (var(--BORDER-WIDTH) + 5px) / 2);
    margin-left: calc(-1 * (var(--BORDER-WIDTH) + 5px) / 2);
}

.selector-wrapper--swatches .radio__fieldset--circle {
    padding-top: 1px;
    padding-left: 1px;
    margin-top: 1px;
    margin-left: 1px;
}

.selector-wrapper--large .radio__fieldset {
    --label-h: calc(1.1rem * var(--adjust-label) * 1.5625);
    --label-mb: calc(var(--form-margin) / 4);
    --swatch-rows: calc(var(--swatch-height) * 2);
    --swatch-gaps: calc(12px * 2);
    --sf: 1px;
    max-height: calc(var(--label-h) + var(--label-mb) + var(--swatch-rows) + var(--swatch-gaps) - var(--sf));
    overflow: hidden;
    transition: max-height 0.5s ease;
}

@media only screen and (max-width: 767px) {
    .selector-wrapper--large .radio__fieldset {
        --label-h: calc(1rem * var(--adjust-label) * 1.1);
        --label-mb: var(--form-margin-mobile);
        --swatch-gaps: calc(var(--form-margin-mobile) * 2);
    }
}

.variant__labels--hide .selector-wrapper--large .radio__fieldset {
    --label-h: 0px;
    --label-mb: 0px;
}

.selector-wrapper--large .radio__fieldset--circle {
    --swatch-rows: calc(var(--swatch-size) * 2);
}

body:not(.no-outline) .selector-wrapper--swatches .radio__fieldset:focus-within,
.selector-wrapper--visible .radio__fieldset,
.variant__labels--hide .selector-wrapper--visible .radio__fieldset {
    max-height: var(--swatches-max-height, 500px);
}

.radio__legend {
    display: block;
    margin: 0;
    width: 100%;
    z-index: 1;
    margin-bottom: calc(var(--form-margin) / 4);
}

@media only screen and (max-width: 767px) {
    .radio__legend {
        margin-bottom: var(--form-margin-mobile);
    }
}

.radio__legend.is-hidden {
    display: none;
    padding: 0;
    margin: 0;
}

.radio__fieldset--sizeguide .radio__legend {
    display: flex;
    flex-flow: row wrap;
    justify-content: space-between;
    align-items: center;
}

.radio__legend__label {
    font-size: calc(1.1rem * var(--adjust-label));
}

@media only screen and (max-width: 767px) {
    .radio__legend__label {
        display: block;
        font-size: calc(1rem * var(--adjust-label));
        line-height: 1.1;
    }
}

.radio__fieldset--sizeguide .radio__legend__label {
    margin-right: 15px;
}

.radio__label {
    transition: color 0.3s ease, background 0.3s ease, border 0.3s ease;
}

.radio__label:hover {
    cursor: pointer;
}

.radio__button {
    position: relative;
    display: inline-block;
    margin: 0 12px 12px 0;
    border-color: transparent;
    font-size: calc(0.875rem * var(--adjust-body));
}

@media only screen and (max-width: 767px) {
    .radio__button {
        margin: 0 var(--form-margin-mobile) var(--form-margin-mobile) 0;
    }
}

.radio__button.sold-out .radio__label,
.radio__button.unavailable .radio__label {
    background-color: rgba(92, 92, 92, 0.1);
    text-decoration: line-through;
}

.radio__fieldset {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -12px -12px 0;
    border: 0;
    padding: 0;
}

@media only screen and (max-width: 767px) {
    .radio__fieldset {
        margin: 0 -8px -8px 0;
    }
}

.radio__fieldset .radio__label {
    display: block;
    font-size: calc(1rem * var(--adjust-button));
    line-height: 1.3;
    position: relative;
    margin: 0;
    padding: var(--form-top) var(--form-left);
    color: var(--text);
    /* background-color: var(--bg); */
    background-color: var(--bg);
    border: var(--BORDER-WIDTH) solid var(--text-alpha-25);
    border-radius: var(--RADIUS);
    font-family: var(--FONT-STACK-BUTTON);
    font-weight: var(--FONT-WEIGHT-BUTTON);
    font-style: var(--FONT-STYLE-BUTTON);
    text-transform: var(--BUTTON-TEXT-CAPS);
    letter-spacing: var(--LETTER-SPACING-BUTTON);
}

@media only screen and (max-width: 767px) {
    .radio__fieldset .radio__label {
        font-size: calc(0.75rem * var(--adjust-button));
        line-height: 1.1;
        padding: 10px 12px;
        min-width: 60px;
        text-align: center;
    }
}

.radio__fieldset .radio__label:hover,
.radio__fieldset .radio__label:active,
.radio__fieldset .radio__label:focus,
.radio__fieldset .radio__input:checked~.radio__label {
    border-color: var(--text);
}

.radio__fieldset .radio__fieldset-arrow {
    position: absolute;
    bottom: 50%;
    display: block;
    width: 26px;
    height: 26px;
    max-height: none;
    margin-bottom: -26px;
    border-radius: 0;
    box-shadow: none;
}

.radio__fieldset .radio__fieldset-arrow--prev {
    left: 5px;
    transform: scale(-1, 1);
}

.radio__fieldset .radio__fieldset-arrow--next {
    right: 5px;
}

.radio__fieldset .radio__fieldset-arrow::before::before,
.radio__fieldset .radio__fieldset-arrow::before::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 2px;
    border-radius: calc(2px / 2);
    background-color: currentColor;
    right: calc(50% - 10px);
}

.radio__fieldset .radio__fieldset-arrow::before::before {
    top: calc(50% - 2px / 2);
    transform: rotate(calc(180deg - 45deg)) translate(50%, 50%);
}

.radio__fieldset .radio__fieldset-arrow::before::after {
    bottom: calc(50% - 2px / 2);
    transform: rotate(calc(180deg + 45deg)) translate(50%, -50%);
}

.radio__fieldset .swatch__button {
    margin: 0 12px 12px 0;
}

@media only screen and (max-width: 767px) {
    .radio__fieldset .swatch__button {
        margin: 0 var(--form-margin-mobile) var(--form-margin-mobile) 0;
    }
}

.radio__fieldset--sizeguide {
    display: inline-flex;
    width: calc(100% + 12px);
}

.radio__fieldset--sizeguide .radio__legend {
    width: calc(100% - 12px);
}

@media only screen and (max-width: 767px) {
    .radio__fieldset--sizeguide {
        width: calc(100% + var(--form-margin-mobile));
    }
    .radio__fieldset--sizeguide .radio__legend {
        width: calc(100% - var(--form-margin-mobile));
    }
}

@media only screen and (max-width: 767px) {
    .radio__fieldset--rectangle {
        margin-bottom: -4px;
    }
    .radio__fieldset--rectangle .radio__legend {
        margin-bottom: var(--form-margin-mobile);
    }
}

.radio__fieldset--variant-option-image {
    --default-wh: 60px;
    --spacing: var(--form-top);
}

.radio__fieldset--variant-option-image .radio__buttons {
    display: flex;
    flex-wrap: wrap;
}

.radio__fieldset--variant-option-image .radio__button {
    min-width: var(--option-image-width, var(--default-wh));
    min-height: var(--option-image-height, var(--default-wh));
}

.radio__fieldset--variant-option-image .radio__label {
    padding: var(--spacing);
    min-height: 100%;
    display: grid;
    grid-template-columns: var(--default-wh) minmax(0, 1fr);
    align-content: center;
    justify-items: center;
    gap: var(--spacing);
}

@media only screen and (max-width: 767px) {
    .radio__fieldset--variant-option-image .radio__label {
        gap: var(--form-margin-mobile);
    }
}

.radio__fieldset--variant-option-image .option-image,
.radio__fieldset--variant-option-image .option-title {
    display: flex;
    align-items: center;
}

.radio__fieldset--variant-option-image .option-image {
    border-radius: calc(var(--RADIUS) / 2);
    overflow: hidden;
}

.radio__fieldset--variant-option-image .placeholder-svg,
.radio__fieldset--variant-option-image .placeholder-svg-filled {
    width: var(--default-wh);
    height: var(--default-wh);
    max-height: var(--default-wh);
}

.radio__fieldset--variant-option-image-inline img {
    width: var(--default-wh);
    height: auto;
}

.radio__fieldset--variant-option-image-stacked .radio__label {
    grid-template-columns: minmax(0, 1fr);
}

.selector-wrapper--grid {
    display: inline-flex;
}

.selector-wrapper--grid .radio__button {
    flex: 0 0 calc(16.6666666667% - 12px);
    min-width: 60px;
    max-width: 75px;
}

@media only screen and (max-width: 767px) {
    .selector-wrapper--grid .radio__button {
        flex: 0 0 auto;
    }
}

.selector-wrapper--grid .radio__label {
    height: 100%;
    display: flex;
    flex-flow: row wrap;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.selector-wrapper--grid-small .radio__button {
    max-width: 60px;
}

.selector-wrapper.hidden {
    display: none;
}

.radio__input {
    position: absolute;
    top: 0;
    left: 0;
    opacity: 0;
    width: 0;
    height: 0;
    margin: 0;
    overflow: hidden;
    pointer-events: none;
    display: block;
}

.radio__input.sold-out~label,
.radio__input.unavailable~label {
    text-decoration: line-through;
}

.selector-wrapper fieldset label {
    margin-top: unset;
}

.swatch__more {
    display: none;
    font-weight: var(--FONT-WEIGHT-BUTTON);
    font-size: calc(0.75rem * var(--adjust-body));
}

.swatch__more span {
    animation: fadeIn 1s ease;
    pointer-events: none;
}

.swatch__more span:nth-child(1) {
    display: inline-block;
}

.swatch__more span:nth-child(2) {
    display: none;
}

.selector-wrapper--large .swatch__more {
    display: inline-block;
    margin-top: 14px;
}

@media only screen and (max-width: 767px) {
    .selector-wrapper--large .swatch__more {
        margin-top: 8px;
    }
}

@media only screen and (max-width: 767px) {
    .variant__labels--hide .selector-wrapper--large .swatch__more {
        margin-bottom: 4px;
    }
}

.selector-wrapper--visible .swatch__more span:nth-child(1),
body:not(.no-outline) .radio__fieldset:focus-within+.swatch__more span:nth-child(1) {
    display: none;
}

.selector-wrapper--visible .swatch__more span:nth-child(2),
body:not(.no-outline) .radio__fieldset:focus-within+.swatch__more span:nth-child(2) {
    display: inline-block;
}

.product__form .btn.swatch__more,
.product__form .swatch__more.shopify-payment-button__button--unbranded {
    width: auto;
}

.select__fieldset .select-popout {
    margin: 0;
}

.select__fieldset .radio__legend__label,
.select__fieldset .select__label {
    display: block;
    padding-right: 0;
    margin-right: 0;
    margin-bottom: 8px;
    font-size: calc(1.1rem * var(--adjust-label));
}

@media only screen and (max-width: 767px) {
    .select__fieldset .radio__legend__label,
    .select__fieldset .select__label {
        font-size: calc(0.95rem * var(--adjust-label));
        line-height: 1.1;
    }
}

.select__fieldset .radio__legend__label.is-hidden,
.select__fieldset .select__label.is-hidden {
    display: none;
    margin: 0;
    padding: 0;
}

.select__fieldset .radio__legend__label {
    display: block;
    padding-right: 0;
    margin-right: 0;
}

.select__fieldset--small .radio__legend__label {
    display: inline;
    margin-bottom: 0;
    text-transform: uppercase;
    letter-spacing: 0.1em;
}

.variant__labels--hide .radio__legend {
    margin: 0;
}

.variant__labels--hide .radio__legend__label,
.variant__labels--hide .select__label {
    position: absolute;
    overflow: hidden;
    clip: rect(0 0 0 0);
    height: 1px;
    width: 1px;
    margin: -1px;
    padding: 0;
    border: 0;
}

.variant__labels--hide .selector-wrapper--boxes {
    margin-bottom: calc(var(--form-margin) / 2);
}

.selector-wrapper {
    z-index: 10;
}

.selector-wrapper:focus-within {
    z-index: 111;
}

@media (pointer: coarse) {
    .selector-wrapper:has(.select-popout__toggle: hover) {
        z-index: 111;
    }
}

.selector-wrapper .select-popout {
    contain: paint;
}

.selector-wrapper--qty {
    grid-column-start: 1;
}

.selector-wrapper--open {
    z-index: 110;
}

.selector-wrapper--open .select-popout {
    contain: unset;
}

.variant__countdown {
    --line-height: 1;
    --dot-size: 8px;
    font-size: calc(0.9rem * var(--adjust-body));
    line-height: var(--line-height);
    padding: 0;
    margin: 0;
}

@media only screen and (max-width: 767px) {
    .variant__countdown {
        font-size: calc(0.75rem * var(--adjust-body));
    }
}

.variant__countdown--in {
    --dot-color: var(--COLOR-SUCCESS);
}

.variant__countdown--low {
    --dot-color: var(--COLOR-WARN);
}

.variant__countdown--out {
    --dot-color: var(--COLOR-ERROR);
}

.variant__countdown--unavailable {
    --dot-color: var(--text-alpha-50);
}

.count-is-in .variant__countdown--in,
.count-is-low .variant__countdown--low,
.count-is-out .variant__countdown--out,
.count-is-unavailable .variant__countdown--unavailable {
    display: block;
}

.variant__countdown--in,
.variant__countdown--low,
.variant__countdown--out,
.variant__countdown--unavailable {
    display: none;
    padding-left: 16px;
    position: relative;
}

.variant__countdown--in::after,
.variant__countdown--in::before,
.variant__countdown--low::after,
.variant__countdown--low::before,
.variant__countdown--out::after,
.variant__countdown--out::before,
.variant__countdown--unavailable::after,
.variant__countdown--unavailable::before {
    content: "";
    display: block;
    position: absolute;
    top: calc((0.9375rem * var(--adjust-body) * var(--line-height) - var(--dot-size)) / 2);
    left: 0;
    width: var(--dot-size);
    height: var(--dot-size);
    background-color: var(--dot-color);
    border-radius: 50%;
}

@media only screen and (max-width: 767px) {
    .variant__countdown--in::after,
    .variant__countdown--in::before,
    .variant__countdown--low::after,
    .variant__countdown--low::before,
    .variant__countdown--out::after,
    .variant__countdown--out::before,
    .variant__countdown--unavailable::after,
    .variant__countdown--unavailable::before {
        top: calc((0.7375rem * var(--adjust-body) * var(--line-height) - var(--dot-size)) / 2);
    }
}

.variant__countdown--in::after,
.variant__countdown--low::after,
.variant__countdown--out::after,
.variant__countdown--unavailable::after {
    opacity: 1;
}

.variant__countdown--in::before,
.variant__countdown--low::before,
.variant__countdown--out::before,
.variant__countdown--unavailable::before {
    opacity: 0.2;
    animation: pulseOut 2.5s linear;
    animation-iteration-count: infinite;
}

@media only screen and (max-width: 767px) {
    .product__form .variant__countdown .variant__countdown--in::after,
    .product__form .variant__countdown .variant__countdown--in::before,
    .product__form .variant__countdown .variant__countdown--low::after,
    .product__form .variant__countdown .variant__countdown--low::before,
    .product__form .variant__countdown .variant__countdown--out::after,
    .product__form .variant__countdown .variant__countdown--out::before,
    .product__form .variant__countdown .variant__countdown--unavailable::after,
    .product__form .variant__countdown .variant__countdown--unavailable::before {
        top: calc((0.7375rem * var(--adjust-body) * var(--line-height) - var(--dot-size)) / 2);
    }
}

body:not(.no-outline) .radio__button:focus-within input+.radio__label,
body:not(.no-outline) .radio__input:focus+.radio__label,
body:not(.no-outline) .radio__input.focus-visible+.radio__label {
    outline: -webkit-focus-ring-color auto 5px;
}


/*================ Video elements ================*/

.video__container {
    overflow: hidden;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}

.is-paused .video__container {
    z-index: 0;
}

.video-background {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
    display: block;
    background: var(--bg);
}

.video-background.is-loading {
    background: var(--bg-lighten-darken-shimmer-bg);
}

.video-background img {
    display: block;
    object-fit: cover;
    width: 100%;
    height: 100%;
    min-height: 100%;
}

.video-background .placeholder-svg-filled {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    transform: translate(-50%, -50%);
}

.video-background.lazy-image.is-loading {
    z-index: 0;
}

.is-paused .video-background--image {
    z-index: 1;
}

.video__player {
    position: absolute;
    top: 50%;
    left: 50%;
    min-height: 100%;
    min-width: 100%;
    width: 100%;
    height: 100%;
    transform: translate(-50%, -50%);
    overflow: hidden;
    transition: opacity 0.5s ease 0.5s;
}

.video__player video {
    min-width: 100%;
    min-height: 100%;
}

.video__player video::-webkit-media-controls {
    display: none;
}

.video__player.is-loading {
    opacity: 0;
}

.video__iframe {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 200%;
    max-width: none;
    pointer-events: none;
    opacity: 0;
    transform: translate(-50%, -50%);
    transition: opacity 0.2s ease;
}

.loaded .video__iframe {
    opacity: 1;
}

.video__overlay {
    z-index: auto;
}

.is-paused .video__overlay {
    z-index: 2;
}

.video-cover {
    object-fit: cover;
}

.video-fit {
    object-fit: contain;
}

.text-inside {
    display: flex;
    width: 100%;
    height: 100%;
    flex: 1;
}

.brick__video .text-inside {
    padding: var(--inner);
}

.brick-section__wrapper:has(.brick-video--video-fit) {
    align-content: center;
}

.brick-section__wrapper:has(.brick-video--video-fit):has(.brick-block:only-child) {
    height: auto;
    min-height: auto;
}

.brick-section__wrapper:has(.brick-video--video-fit) .brick-block__content,
.brick-section__wrapper:has(.brick-video--video-fit) .brick-block__inner,
.brick-section__wrapper:has(.brick-video--video-fit) .brick-video,
.brick-section__wrapper:has(.brick-video--video-fit) .video-wrapper,
.brick-section__wrapper:has(.brick-video--video-fit) .video__container,
.brick-section__wrapper:has(.brick-video--video-fit) .text-inside,
.brick-section__wrapper:has(.brick-video--video-fit) .video__overlay {
    border-radius: inherit;
}

.brick-video--video-fit .video__container,
.brick-video--video-fit .video-background,
.brick-video--video-fit .video__player,
.brick-video--video-fit .video-fit {
    position: relative;
    top: auto;
    left: auto;
    height: 100%;
}

.brick-video--video-fit .video__player {
    transform: none;
}

.brick-video--video-fit .video-fit {
    display: block;
}

.brick-video--video-fit .video-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    align-content: center;
    height: auto;
    transform: none;
}

@media only screen and (max-width: 767px) {
    .brick-video--video-fit .video-wrapper {
        grid-template-rows: minmax(0, 1fr);
    }
}

.brick-video--video-fit .video__container {
    grid-row-start: 1;
    grid-column-start: 1;
    align-self: center;
}

.brick-video--video-fit .text-inside {
    position: relative;
    display: flex;
    grid-row-start: 1;
    grid-column-start: 1;
}

.brick-video--video-fit .placeholder-svg--overlayed {
    aspect-ratio: 16/9;
}

@supports not (aspect-ratio: 16/9) {
    .brick-video--video-fit .placeholder-svg--overlayed {
        padding-top: 56.25%;
    }
}

.video-text-link {
    font-size: calc(0.875rem * var(--adjust-body));
    display: inline-flex;
    align-items: center;
    line-height: 30px;
    letter-spacing: 2px;
    position: relative;
    text-transform: uppercase;
    color: var(--text);
    font-family: var(--FONT-STACK-BODY);
    font-weight: var(--FONT-WEIGHT-BODY);
    font-style: var(--FONT-STYLE-BODY);
    transition: opacity 0.2s;
}

.video-text-link:hover,
.video-text-link:focus,
.video-text-link:active {
    opacity: 0.7;
}

.video-text-link span {
    display: inline-block;
    vertical-align: middle;
    margin-left: 10px;
}

.video-text-link .icon-play {
    width: 60px;
    height: 60px;
    display: inline-block;
    vertical-align: middle;
}

.video-text-wrapper {
    position: relative;
    padding-top: var(--gutter);
    padding-bottom: var(--gutter);
}

.video-text-wrapper .btn,
.video-text-wrapper .shopify-payment-button__button--unbranded {
    margin-right: 0;
}

.video-text-wrapper .video-text-link .icon-play {
    width: 60px;
    height: 60px;
    margin-right: 0;
}

.video-text-wrapper .main-buttons {
    flex-flow: row wrap;
}

@media only screen and (max-width: 479px) {
    .video-text-wrapper .main-buttons__item {
        width: 100%;
    }
}

@media only screen and (max-width: 767px) {
    .video-text-wrapper .align--top-right,
    .video-text-wrapper .align--middle-right,
    .video-text-wrapper .align--bottom-right {
        justify-content: flex-start;
    }
}

.video-play-button {
    cursor: pointer;
    pointer-events: auto;
}

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


/* Palo Alto quick buy/quick view: ensure modal content paints */

.popup-quick-view,
.popup-quick-view__body,
.popup-quick-view__wrapper,
.modal,
.modal__content {
    content-visibility: visible !important;
    contain: none !important;
}

.navlink.navlink--grandchild {
    position: relative;
}

.navlink.navlink--grandchild:hover::before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    height: 2px;
    bottom: -30px;
    background: #000;
}


/* ============================================
   Mobile Menu - Sliding Submenu Panel
   ============================================ */


/* Parent trigger button styled like a nav link */

.mobile-navlink--panel-trigger {
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    padding: 16px 20px;
    background: transparent;
    border: none;
    font-family: inherit;
    font-size: 22px;
    font-weight: 400;
    color: inherit;
    text-align: left;
    cursor: pointer;
    text-decoration: none;
    line-height: 1.3;
}

.mobile-navlink--panel-trigger .mobile-navlink__chevron {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    flex-shrink: 0;
    margin-left: 12px;
    transform: rotate(-90deg);
    /* point right */
}

.mobile-navlink--panel-trigger .mobile-navlink__chevron svg {
    width: 100%;
    height: 100%;
}


/* ============================================
   Sliding Panel
   ============================================ */

.mobile-panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    max-width: 100%;
    background: #fff;
    z-index: 100;
    transform: translateX(100%);
    transition: transform 0.35s cubic-bezier(0.25, 0.46, 0.45, 0.94);
    visibility: hidden;
    display: flex;
    flex-direction: column;
    overflow: hidden;
    box-shadow: -2px 0 12px rgba(0, 0, 0, 0.05);
}

.mobile-panel.is-open,
.mobile-panel[aria-hidden="false"] {
    transform: translateX(0);
    visibility: visible;
}


/* Panel header */

.mobile-panel__header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 18px 20px;
    border-bottom: 1px solid #eee;
    background: #fff;
    flex-shrink: 0;
}

.mobile-panel__back {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: transparent;
    border: none;
    padding: 4px 0;
    font-family: inherit;
    font-size: 20px;
    font-weight: 400;
    color: inherit;
    cursor: pointer;
}

.mobile-panel__back-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 14px;
    height: 14px;
    transform: rotate(90deg);
    /* point left */
}

.mobile-panel__back-icon svg {
    width: 100%;
    height: 100%;
}

.mobile-panel__title {
    font-size: 22px;
    font-weight: 400;
    line-height: 1.2;
}

.mobile-panel__close {
    background: transparent;
    border: none;
    padding: 4px;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 28px;
}

.mobile-panel__close svg {
    width: 18px;
    height: 18px;
}

.mobile-panel-open .drawer__header,
.mobile-panel-open .drawer__block.drawer__block--menu.custom-menu-2 {
    display: none;
}


/* Panel list */

.mobile-panel__list {
    list-style: none;
    padding: 8px 0;
    margin: 0;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    flex-grow: 1;
}

.mobile-panel__item {
    margin: 0;
    padding: 0;
}


/* Each link row with image + text */

.mobile-panel__link {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 12px 20px;
    text-decoration: none;
    color: inherit;
    transition: background-color 0.2s ease;
}

.mobile-panel__link:hover,
.mobile-panel__link:focus {
    background-color: #f7f7f7;
    text-decoration: none;
}


/* Image wrapper */

.mobile-panel__image-wrapper {
    flex-shrink: 0;
    width: 64px;
    height: 64px;
    border-radius: 4px;
    overflow: hidden;
    background-color: #f4f4f4;
    display: flex;
    align-items: center;
    justify-content: center;
}

.mobile-panel__image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.mobile-panel__image--placeholder {
    background-color: #f0f0f0;
    color: #ccc;
}

.mobile-panel__image--placeholder svg {
    width: 60%;
    height: 60%;
    fill: currentColor;
}


/* Link text */

.mobile-panel__link-text {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.3;
    color: #1a1a1a;
    flex: 1;
}

.mobile-panel__link--highlight .mobile-panel__link-text {
    color: var(--highlight, inherit);
}


/* Shop all link */

.mobile-panel__item--shop-all {
    margin-top: 8px;
    border-top: 1px solid #eee;
    padding-top: 8px;
}

.mobile-panel__shop-all {
    display: block;
    padding: 16px 20px;
    font-size: 16px;
    font-weight: 500;
    text-decoration: underline;
    text-underline-offset: 4px;
    color: inherit;
}


/* Custom badge */

.mobile-navlink__custom-badge {
    display: inline-block;
    margin-left: 8px;
    padding: 2px 8px;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    border-radius: 3px;
    background-color: var(--custom-badge-bg-color, var(--highlight, #000));
    color: var(--custom-badge-text-color, #fff);
    vertical-align: middle;
}


/* Prevent body scroll when panel is open */

body.mobile-panel-open {
    overflow: hidden;
}


/* Small screens fine-tune */

.mobile-navlink--panel-trigger,
.mobile-panel__title {
    font-size: 20px;
}

.mobile-panel__link-text,
.mobile-navlink--level-2,
.mobile-navlink--level-1 {
    font-size: 18px;
}

@media (max-width: 480px) {
    .mobile-panel__image-wrapper {
        width: 56px;
        height: 56px;
    }
}

@media(max-width:768px) {
    .custom-menu-2 .mobile-menu__item a {
        padding-left: 0;
        padding-right: 0;
        line-height: 16px;
        font-size: 16px;
        color: #000;
    }
    .custom-menu-2 {
        border-top: 1px solid #dbd7d7;
    }
}



/*  */
.usp_icons {
    /* margin: 40px 0; */
    margin:20px 0 30px;
    display: flex;
    align-items: center;
    gap: 7px;
    width: 100%;
    height: 100%;
    justify-content: flex-start;
}

.usp_point {
    display: flex;
    align-items: center;
    flex-direction: column;
    background: #F7F6F4;
    border-radius: 10px;
    padding: 18px 16px;
    width: 145px;
    height: 125px;
    gap: 20px;
}

.usp_point span {
    /* font-family: 'Montserrat', sans-serif; */
    font-weight: 500;
    font-size: 12px;
    line-height: 1.4;
    letter-spacing: 0%;
    text-align: center;
}



.product__usp-icon {
  display: inline-flex;
  flex-shrink: 0;
  width: var(--usp-icon-size, 24px);
  height: var(--usp-icon-size, 24px);
}

.product__usp-icon img,
.product__usp-icon svg {
  width: 100%;
  height: 100%;
  object-fit: contain;
}


/*  */
.inventory-status__msg {
  /* font-family: 'Montserrat', sans-serif; */
  font-size: 12px;
  font-weight: 600;
  letter-spacing: .02em;
  color: #C0392B;
  margin: 8px 0 0;
  display: flex;
  align-items: center;
  gap: 6px;
}
.inventory-status__msg::before {
  content: "";
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: currentColor;
  flex: 0 0 auto;
}
.inventory-status__msg.is-hidden { display: none; }


/*  */
/* .limited_block {
    background: #F7F6F4;
    display: inline-flex;
    padding: 5px 7px;
    border-radius: 50px;
    align-items: center;
    gap: 5px;
} */

.limited_block {
    background: linear-gradient(
        100deg,
        #F7F6F4 30%,
        #efece8 50%,
        #F7F6F4 70%
    );
    background-size: 200% 100%;
    animation: limited-sheen 3s ease-in-out infinite;
    /* keep your existing properties */
    display: inline-flex;
    padding: 5px 7px;
    border-radius: 50px;
    align-items: center;
    gap: 5px;
    margin: 0 0 10px;
}

@keyframes limited-sheen {
    0% { background-position: 200% 0; }
    100% { background-position: -200% 0; }
}

.limited_block span {
    /* font-family: 'Montserrat', sans-serif; */
    font-weight: 600;
    font-size: 12px;
    line-height: 21.62px;
    letter-spacing: 0%;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    position: relative;
    padding-left: 20px;
}

.limited_block span::before {
    content: "";
    position: absolute;
    top: 50%;
    left: 5px;
    transform: translateY(-50%);
    width: 5px;
    height: 5px;
    background: black;
    border-radius: 50%;
}


/*  */

@media all and (min-width:1200px){
    .template-product-pdp-rebuild .product-single__wrapper--standard {
       gap: 0!important;
       grid-template-columns: 55% 45%!important;
    }
}

 .template-product-pdp-rebuild .product-single__wrapper--standard h1.product__title {
        font-size: 38.74px;
        line-height: 100%;
        letter-spacing: -2%;
    }

    .template-product-pdp-rebuild .product-single__wrapper--standard .product__price {
        font-family: "Montserrat", sans-serif;
        font-weight: 600;
        font-size: 20px;
        line-height: 21.62px;
    }
.template-product-pdp-rebuild .product-single__wrapper--standard .radio__legend__label,
.template-product-pdp-rebuild .product-single__wrapper--standard .select__fieldset .select__label {
    font-weight: 600;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: -2%;
    font-family: "Montserrat", sans-serif;
}

.template-product-pdp-rebuild .product-single__wrapper--standard .swatch__button--rectangle .swatch__label {
    height: 40px;
    width: 40px;
    border-radius: 50px;
}

.template-product-pdp-rebuild .product-single__wrapper--standard .swatch__button--rectangle .swatch__label::before {
    width: 16px;
    height: 16px;
}
.template-product-pdp-rebuild .product-single__wrapper--standard .product__title-and-price {
    gap: 20px;
}




.template-product-pdp-rebuild .product-single__wrapper--standard .swatch__button .swatch__input:checked label {
    border: 2px solid black;
}
.template-product-pdp-rebuild .product-single__wrapper--standard .swatch__button--rectangle .swatch__label::after {
    display: none;
}
.template-product-pdp-rebuild .product-single__wrapper--standard .swatch__button:not(.sold-out, .unavailable) .swatch__input:checked~.swatch__label .icon {
    display: none;
}
.template-product-pdp-rebuild .product-single__wrapper--standard .swatch__button .swatch__input:checked~.swatch__label::before {
    /* border: 2px solid #000000; */
    border: 2px solid #F66B2E;
    width: 100%;
    height: 100%;
    border-radius: 50px;
}





.template-product-pdp-rebuild square-placement {
    margin: 10px 0 5px!important;
}


/*  */
.loved {
    display: flex;
    align-items: center;
    gap: 12px;
}

.loved img {
    height: auto;
    width: 115px;
}

.loved span {
    background: #FFE4E6;
    padding: 8px 13px;
    border-radius: 50px;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 7px;
    /* font-family: 'Montserrat', sans-serif; */
    font-weight: 500;
    font-size: 10.17px;
    line-height: 100%;
    letter-spacing: 0%;
}


/*  */
.star_rating {
    display: flex;
    align-items: center;
    gap: 12px;
    justify-content: flex-start;
}

.star_rating img {
    height: auto;
    width: 115px;
}

.star_rating .alireviews-review-star-rating {
    margin: 0;
}

/*  */
.payment_icons {
    text-align: center;
}
.payment_icons img.img-fluid {
    max-width: 80%;
    height: auto;
    margin: auto;
}



/*  */
product-form.show_custom_styles .product__form .btn--submit,
product-form.show_custom_styles .product__submit__holder--spb .product__submit__add {
    /* background: #F66B2E; */
    border-radius: 50px;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 14px;
    line-height: 100%;
    letter-spacing: -2%;
    min-height: 47px;
}

product-form.show_custom_styles shopify-paypal-button {
    overflow: hidden;
    border-radius: 50px;
}

product-form.show_custom_styles .product__selectors{
    border-top: 1px solid #CDCDCD;
    padding-top: 24px;
}

/*  */
.upsell_style.upsell__products  h4 {
    /* font-family: "Hedvig Letters Serif", serif; */
    font-weight: 400;
    font-size: 19.37px;
    line-height: 100%;
    letter-spacing: -2%;
    text-align: center;
}
.upsell_style.upsell__products {
    gap: 10px;
    display: flex;
    flex-direction: column;
}
.upsell_style.upsell__products {
    gap: 10px;
    display: flex;
    flex-direction: column;
}

.upsell_style p.product-upsell__subtitle {
    display: none;
}

.upsell_style .product-upsell__title a {
    /* font-family: "Hedvig Letters Serif", serif; */
    font-weight: 500;
    font-size: 17px;
    line-height: 1;
    letter-spacing: -2%;
}

.upsell_style .product-upsell__price {
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: -2%;
}

.upsell_style .product-upsell__row {
    flex-direction: column;
    align-items: flex-start;
}
.upsell_style .product-upsell__btn {
    background: #0B0B0B;
    color: white;
    border-radius: 50px;
    margin-left: auto;
    font-family: 'Poppins';
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 6%;
}


/*  */
@media all and (max-width:767px){
    .template-product-pdp-rebuild .product-single__wrapper--standard h1.product__title {
        font-size: 32.74px;
    }
    .template-product-pdp-rebuild .product-single__wrapper--standard .product__price {
       font-size: 16px;
        line-height: 18px;
    }
    
    .limited_block span {
        font-size: 10px;
    }

    .usp_point {
        padding: 12px;
        height: 108px;
    }

    .usp_point span {
        font-size: 10px;
    }
}


/*  */
.template-product-pdp-rebuild .product-single__details .alireviews-review-star-rating {
    background: #FFEFE2!important;
    padding: 7px 20px;
    border-radius: 50px;
    font-family: 'Montserrat';
    font-weight: 500;
    font-size: 12px;
    line-height: 100%;
    letter-spacing: 0%;
    z-index: 99999;
}

.template-product-pdp-rebuild .product-single__details .alireviews-review-star-rating .alr-wh-comp-rating-star svg {
    fill: #FF7603;
    stroke: #FF7603;
    --ar-wh-icon_border: #FF7603;
}


/* Selleasy APP Css */
.template-product-pdp-rebuild .lb-bundle-title {
    /* font-family: "Hedvig Letters Serif", serif; */
    font-weight: 400!important;
    font-size: 19.37px!important;
    line-height: 100%;
    letter-spacing: -2%;
    text-align: center;
    justify-content: center;
}

.template-product-pdp-rebuild .lb-bundle-cont {
    background-color: transparent!important;
    padding: 0!important;
    margin: 0!important;
}

.template-product-pdp-rebuild .lb-title-ld {
    /* font-family: "Hedvig Letters Serif", serif; */
    font-weight: 500!important;
    font-size: 17px!important;
    line-height: 1;
    letter-spacing: -2%;
}

.template-product-pdp-rebuild .lb-cta-actions {
    margin: 0!important;
}

.template-product-pdp-rebuild .lb-bundle-cta-button .lb-button {
    background: #0B0B0B;
    color: white;
    border-radius: 50px!important;
    font-family: 'Poppins';
    font-weight: 600!important;
    font-size: 12px!important;
    letter-spacing: 6%;
    text-transform: uppercase;
}

.template-product-pdp-rebuild .lb-flat-card {
    background: #F7F6F4!important;
    padding: 12px!important;
}

.template-product-pdp-rebuild .lb-variant-picker {
    width: 100%!important;
}

.template-product-pdp-rebuild .lb-bundle-divider {
    display: none!important;
}

/* Flickity Button on image in PDP*/
.template-product-pdp-rebuild .product__selectors {
    grid-template-columns: 1fr;
}
.template-product-pdp-rebuild .radio__fieldset .radio__label {
    background-color: #F0EDE9;
}
@media all and (min-width:1024px){
    .template-product-pdp-rebuild .product-gallery__media-slider .flickity-prev-next-button.next {
        right: 10px!important;
    }

    .template-product-pdp-rebuild .product-gallery__media-slider .flickity-prev-next-button.previous {
        left: 10px!important;
    }
}
/* ── Mega Menu Experiment Mobile Rules ── */
html:not(.tss-mega-menu-tabbed) .mobile-panel__image-wrapper {
    display: none !important;
}
html:not(.tss-mega-menu-tabbed) .mobile-navlink--level-3 {
    display: block !important;
    padding: 8px 20px !important;
}
html:not(.tss-mega-menu-tabbed) .mobile-panel__link-text {
    font-size: 15px !important;
    font-weight: 400 !important;
    color: #222222 !important;
    line-height: 1.4 !important;
}

html.tss-mega-menu-tabbed .mobile-panel__image-wrapper {
    display: flex !important;
}
html.tss-mega-menu-tabbed .mobile-navlink--level-3 {
    display: flex !important;
    align-items: center !important;
    gap: 12px !important;
    padding: 7px 20px !important;
}
html.tss-mega-menu-tabbed .mobile-panel__link-text {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #1a1a1a !important;
    line-height: 1.3 !important;
}
